diff --git a/CMakeLists.txt b/CMakeLists.txt index 5526e7f..d90c461 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,3 +1,17 @@ +# Copyright 2021 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. + cmake_minimum_required(VERSION 3.12 FATAL_ERROR) # Draco requires C++11. diff --git a/cmake/draco_build_definitions.cmake b/cmake/draco_build_definitions.cmake index f7354c1..4da7d92 100644 --- a/cmake/draco_build_definitions.cmake +++ b/cmake/draco_build_definitions.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_BUILD_DEFINITIONS_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_BUILD_DEFINITIONS_CMAKE_ @@ -36,7 +50,24 @@ macro(draco_set_build_definitions) endif() draco_load_version_info() - set(DRACO_SOVERSION 1) + + # Library version info. See the libtool docs for updating the values: + # https://www.gnu.org/software/libtool/manual/libtool.html#Updating-version-info + # + # c=, r=, a= + # + # libtool generates a .so file as .so.[c-a].a.r, while -version-info c:r:a is + # passed to libtool. + # + # We set DRACO_SOVERSION = [c-a].a.r + set(LT_CURRENT 1) + set(LT_REVISION 0) + set(LT_AGE 0) + math(EXPR DRACO_SOVERSION_MAJOR "${LT_CURRENT} - ${LT_AGE}") + set(DRACO_SOVERSION "${DRACO_SOVERSION_MAJOR}.${LT_AGE}.${LT_REVISION}") + unset(LT_CURRENT) + unset(LT_REVISION) + unset(LT_AGE) list(APPEND draco_include_paths "${draco_root}" "${draco_root}/src" "${draco_build}") diff --git a/cmake/draco_cpu_detection.cmake b/cmake/draco_cpu_detection.cmake index 96e4a28..03ac4b9 100644 --- a/cmake/draco_cpu_detection.cmake +++ b/cmake/draco_cpu_detection.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_CPU_DETECTION_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_CPU_DETECTION_CMAKE_ diff --git a/cmake/draco_emscripten.cmake b/cmake/draco_emscripten.cmake index 10c9350..9d38cf9 100644 --- a/cmake/draco_emscripten.cmake +++ b/cmake/draco_emscripten.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_EMSCRIPTEN_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_EMSCRIPTEN_CMAKE_ @@ -36,7 +50,10 @@ macro(draco_get_required_emscripten_flags) list(APPEND ${em_FLAG_LIST_VAR} "-fno-omit-frame-pointer") list(APPEND ${em_FLAG_LIST_VAR} "-sMODULARIZE=1") list(APPEND ${em_FLAG_LIST_VAR} "-sNO_FILESYSTEM=1") - list(APPEND ${em_FLAG_LIST_VAR} "-sEXPORTED_RUNTIME_METHODS=[]") + list(APPEND ${em_FLAG_LIST_VAR} + "-sEXPORTED_RUNTIME_METHODS=[\"callRuntimeCallbacks\"]") + list(APPEND ${em_FLAG_LIST_VAR} + "-sEXPORTED_FUNCTIONS=[\"_free\", \"_malloc\"]") list(APPEND ${em_FLAG_LIST_VAR} "-sPRECISE_F32=1") list(APPEND ${em_FLAG_LIST_VAR} "-sNODEJS_CATCH_EXIT=0") list(APPEND ${em_FLAG_LIST_VAR} "-sNODEJS_CATCH_REJECTION=0") diff --git a/cmake/draco_flags.cmake b/cmake/draco_flags.cmake index 0397859..59188b7 100644 --- a/cmake/draco_flags.cmake +++ b/cmake/draco_flags.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_FLAGS_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_FLAGS_CMAKE_ diff --git a/cmake/draco_helpers.cmake b/cmake/draco_helpers.cmake index 0b3b804..1f1cf65 100644 --- a/cmake/draco_helpers.cmake +++ b/cmake/draco_helpers.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_HELPERS_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_HELPERS_CMAKE_ diff --git a/cmake/draco_install.cmake b/cmake/draco_install.cmake index 09bfb59..905bca6 100644 --- a/cmake/draco_install.cmake +++ b/cmake/draco_install.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_INSTALL_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_INSTALL_CMAKE_ diff --git a/cmake/draco_intrinsics.cmake b/cmake/draco_intrinsics.cmake index 9011c0d..66a5d97 100644 --- a/cmake/draco_intrinsics.cmake +++ b/cmake/draco_intrinsics.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_INTRINSICS_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_INTRINSICS_CMAKE_ diff --git a/cmake/draco_options.cmake b/cmake/draco_options.cmake index 832bfb6..ea05e83 100644 --- a/cmake/draco_options.cmake +++ b/cmake/draco_options.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_OPTIONS_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_OPTIONS_CMAKE_ diff --git a/cmake/draco_sanitizer.cmake b/cmake/draco_sanitizer.cmake index d2e41a6..bed23cb 100644 --- a/cmake/draco_sanitizer.cmake +++ b/cmake/draco_sanitizer.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_SANITIZER_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_SANITIZER_CMAKE_ diff --git a/cmake/draco_targets.cmake b/cmake/draco_targets.cmake index 0456c4d..f2acc72 100644 --- a/cmake/draco_targets.cmake +++ b/cmake/draco_targets.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TARGETS_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_TARGETS_CMAKE_ @@ -87,7 +101,10 @@ macro(draco_add_executable) endif() add_executable(${exe_NAME} ${exe_SOURCES}) - set_target_properties(${exe_NAME} PROPERTIES VERSION ${DRACO_VERSION}) + + if(NOT EMSCRIPTEN) + set_target_properties(${exe_NAME} PROPERTIES VERSION ${DRACO_VERSION}) + endif() if(exe_OUTPUT_NAME) set_target_properties(${exe_NAME} PROPERTIES OUTPUT_NAME ${exe_OUTPUT_NAME}) @@ -320,11 +337,12 @@ macro(draco_add_library) set_target_properties(${lib_NAME} PROPERTIES PREFIX "") endif() - # VERSION and SOVERSION as necessary - if(NOT lib_TYPE STREQUAL STATIC AND NOT lib_TYPE STREQUAL MODULE) - set_target_properties(${lib_NAME} PROPERTIES VERSION ${DRACO_VERSION}) - if(NOT MSVC) - set_target_properties(${lib_NAME} PROPERTIES SOVERSION ${DRACO_SOVERSION}) + if(NOT EMSCRIPTEN) + # VERSION and SOVERSION as necessary + if((lib_TYPE STREQUAL BUNDLE OR lib_TYPE STREQUAL SHARED) AND NOT MSVC) + set_target_properties(${lib_NAME} + PROPERTIES VERSION ${DRACO_SOVERSION} SOVERSION + ${DRACO_SOVERSION_MAJOR}) endif() endif() diff --git a/cmake/draco_test_config.h.cmake b/cmake/draco_test_config.h.cmake index 77a5741..656cd00 100644 --- a/cmake/draco_test_config.h.cmake +++ b/cmake/draco_test_config.h.cmake @@ -1,3 +1,17 @@ +// Copyright 2021 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_TESTING_DRACO_TEST_CONFIG_H_ #define DRACO_TESTING_DRACO_TEST_CONFIG_H_ diff --git a/cmake/draco_tests.cmake b/cmake/draco_tests.cmake index a6dfc5b..29c1b6e 100644 --- a/cmake/draco_tests.cmake +++ b/cmake/draco_tests.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TESTS_CMAKE) return() endif() diff --git a/cmake/draco_variables.cmake b/cmake/draco_variables.cmake index 8dbc77a..59dd30a 100644 --- a/cmake/draco_variables.cmake +++ b/cmake/draco_variables.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_VARIABLES_CMAKE_) return() endif() # DRACO_CMAKE_DRACO_VARIABLES_CMAKE_ diff --git a/cmake/toolchains/aarch64-linux-gnu.cmake b/cmake/toolchains/aarch64-linux-gnu.cmake index 87e0b4a..e972672 100644 --- a/cmake/toolchains/aarch64-linux-gnu.cmake +++ b/cmake/toolchains/aarch64-linux-gnu.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_AARCH64_LINUX_GNU_CMAKE_) return() endif() # DRACO_CMAKE_TOOLCHAINS_AARCH64_LINUX_GNU_CMAKE_ diff --git a/cmake/toolchains/android-ndk-common.cmake b/cmake/toolchains/android-ndk-common.cmake index 5126d6e..9621b9f 100644 --- a/cmake/toolchains/android-ndk-common.cmake +++ b/cmake/toolchains/android-ndk-common.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_ANDROID_NDK_COMMON_CMAKE_) return() endif() diff --git a/cmake/toolchains/android.cmake b/cmake/toolchains/android.cmake index b8f576d..c25483a 100644 --- a/cmake/toolchains/android.cmake +++ b/cmake/toolchains/android.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_ANDROID_CMAKE_) return() endif() # DRACO_CMAKE_TOOLCHAINS_ANDROID_CMAKE_ diff --git a/cmake/toolchains/arm-ios-common.cmake b/cmake/toolchains/arm-ios-common.cmake index 65326d1..969c4e6 100644 --- a/cmake/toolchains/arm-ios-common.cmake +++ b/cmake/toolchains/arm-ios-common.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_ARM_IOS_COMMON_CMAKE_) return() endif() @@ -13,5 +27,3 @@ set(CMAKE_C_COMPILER clang) set(CMAKE_C_COMPILER_ARG1 "-arch ${CMAKE_SYSTEM_PROCESSOR}") set(CMAKE_CXX_COMPILER clang++) set(CMAKE_CXX_COMPILER_ARG1 "-arch ${CMAKE_SYSTEM_PROCESSOR}") - -# TODO(tomfinegan): Handle bit code embedding. diff --git a/cmake/toolchains/arm-linux-gnueabihf.cmake b/cmake/toolchains/arm-linux-gnueabihf.cmake index 6e45969..5d441d8 100644 --- a/cmake/toolchains/arm-linux-gnueabihf.cmake +++ b/cmake/toolchains/arm-linux-gnueabihf.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_ARM_LINUX_GNUEABIHF_CMAKE_) return() endif() # DRACO_CMAKE_TOOLCHAINS_ARM_LINUX_GNUEABIHF_CMAKE_ diff --git a/cmake/toolchains/arm64-android-ndk-libcpp.cmake b/cmake/toolchains/arm64-android-ndk-libcpp.cmake index 4b6d366..8bbcee6 100644 --- a/cmake/toolchains/arm64-android-ndk-libcpp.cmake +++ b/cmake/toolchains/arm64-android-ndk-libcpp.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_ARM64_ANDROID_NDK_LIBCPP_CMAKE_) return() endif() diff --git a/cmake/toolchains/arm64-ios.cmake b/cmake/toolchains/arm64-ios.cmake index c4ec7e3..4fc672f 100644 --- a/cmake/toolchains/arm64-ios.cmake +++ b/cmake/toolchains/arm64-ios.cmake @@ -1,10 +1,23 @@ +# Copyright 2021 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_TOOLCHAINS_ARM64_IOS_CMAKE_) return() endif() set(DRACO_CMAKE_TOOLCHAINS_ARM64_IOS_CMAKE_ 1) if(XCODE) - # TODO(tomfinegan): Handle arm builds in Xcode. message(FATAL_ERROR "This toolchain does not support Xcode.") endif() diff --git a/cmake/toolchains/arm64-linux-gcc.cmake b/cmake/toolchains/arm64-linux-gcc.cmake index 046ff01..5652779 100644 --- a/cmake/toolchains/arm64-linux-gcc.cmake +++ b/cmake/toolchains/arm64-linux-gcc.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_ARM64_LINUX_GCC_CMAKE_) return() endif() diff --git a/cmake/toolchains/armv7-android-ndk-libcpp.cmake b/cmake/toolchains/armv7-android-ndk-libcpp.cmake index 80ee98b..b19c850 100644 --- a/cmake/toolchains/armv7-android-ndk-libcpp.cmake +++ b/cmake/toolchains/armv7-android-ndk-libcpp.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_ARMV7_ANDROID_NDK_LIBCPP_CMAKE_) return() endif() diff --git a/cmake/toolchains/armv7-ios.cmake b/cmake/toolchains/armv7-ios.cmake index 8ddd699..8e444d8 100644 --- a/cmake/toolchains/armv7-ios.cmake +++ b/cmake/toolchains/armv7-ios.cmake @@ -1,10 +1,23 @@ +# Copyright 2021 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_TOOLCHAINS_ARMV7_IOS_CMAKE_) return() endif() set(DRACO_CMAKE_TOOLCHAINS_ARMV7_IOS_CMAKE_ 1) if(XCODE) - # TODO(tomfinegan): Handle arm builds in Xcode. message(FATAL_ERROR "This toolchain does not support Xcode.") endif() diff --git a/cmake/toolchains/armv7-linux-gcc.cmake b/cmake/toolchains/armv7-linux-gcc.cmake index 9c94723..899560e 100644 --- a/cmake/toolchains/armv7-linux-gcc.cmake +++ b/cmake/toolchains/armv7-linux-gcc.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_ARMV7_LINUX_GCC_CMAKE_) return() endif() diff --git a/cmake/toolchains/armv7s-ios.cmake b/cmake/toolchains/armv7s-ios.cmake index b433025..a0f6d75 100644 --- a/cmake/toolchains/armv7s-ios.cmake +++ b/cmake/toolchains/armv7s-ios.cmake @@ -1,10 +1,23 @@ +# Copyright 2021 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_TOOLCHAINS_ARMV7S_IOS_CMAKE_) return() endif() set(DRACO_CMAKE_TOOLCHAINS_ARMV7S_IOS_CMAKE_ 1) if(XCODE) - # TODO(tomfinegan): Handle arm builds in Xcode. message(FATAL_ERROR "This toolchain does not support Xcode.") endif() diff --git a/cmake/toolchains/i386-ios.cmake b/cmake/toolchains/i386-ios.cmake index e9a1055..92f899d 100644 --- a/cmake/toolchains/i386-ios.cmake +++ b/cmake/toolchains/i386-ios.cmake @@ -1,10 +1,23 @@ +# Copyright 2021 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_TOOLCHAINS_i386_IOS_CMAKE_) return() endif() set(DRACO_CMAKE_TOOLCHAINS_i386_IOS_CMAKE_ 1) if(XCODE) - # TODO(tomfinegan): Handle arm builds in Xcode. message(FATAL_ERROR "This toolchain does not support Xcode.") endif() diff --git a/cmake/toolchains/x86-android-ndk-libcpp.cmake b/cmake/toolchains/x86-android-ndk-libcpp.cmake index d433836..84a9786 100644 --- a/cmake/toolchains/x86-android-ndk-libcpp.cmake +++ b/cmake/toolchains/x86-android-ndk-libcpp.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_X86_ANDROID_NDK_LIBCPP_CMAKE_) return() endif() diff --git a/cmake/toolchains/x86_64-android-ndk-libcpp.cmake b/cmake/toolchains/x86_64-android-ndk-libcpp.cmake index d6fabea..e9aa8d0 100644 --- a/cmake/toolchains/x86_64-android-ndk-libcpp.cmake +++ b/cmake/toolchains/x86_64-android-ndk-libcpp.cmake @@ -1,3 +1,17 @@ +# Copyright 2021 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_TOOLCHAINS_X86_64_ANDROID_NDK_LIBCPP_CMAKE_) return() endif() diff --git a/cmake/toolchains/x86_64-ios.cmake b/cmake/toolchains/x86_64-ios.cmake index 4c50a72..5a0b2da 100644 --- a/cmake/toolchains/x86_64-ios.cmake +++ b/cmake/toolchains/x86_64-ios.cmake @@ -1,10 +1,23 @@ +# Copyright 2021 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_TOOLCHAINS_X86_64_IOS_CMAKE_) return() endif() set(DRACO_CMAKE_TOOLCHAINS_X86_64_IOS_CMAKE_ 1) if(XCODE) - # TODO(tomfinegan): Handle arm builds in Xcode. message(FATAL_ERROR "This toolchain does not support Xcode.") endif() diff --git a/docs/.ruby-version b/docs/.ruby-version index 437459c..005119b 100644 --- a/docs/.ruby-version +++ b/docs/.ruby-version @@ -1 +1 @@ -2.5.0 +2.4.1 diff --git a/docs/Gemfile b/docs/Gemfile index cf0640e..91ceacd 100644 --- a/docs/Gemfile +++ b/docs/Gemfile @@ -1,3 +1,2 @@ source 'https://rubygems.org' -gem 'github-pages', group: :jekyll_plugins -gem 'nokogiri', '~> 1.12' \ No newline at end of file +gem 'github-pages', group: :jekyll_plugins \ No newline at end of file diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock index 0f37af1..fb12c60 100644 --- a/docs/Gemfile.lock +++ b/docs/Gemfile.lock @@ -1,14 +1,13 @@ GEM remote: https://rubygems.org/ specs: - activesupport (6.0.3.5) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 0.7, < 2) + activesupport (4.2.10) + i18n (~> 0.7) minitest (~> 5.1) + thread_safe (~> 0.3, >= 0.3.4) tzinfo (~> 1.1) - zeitwerk (~> 2.2, >= 2.2.2) - addressable (2.8.0) - public_suffix (>= 2.0.2, < 5.0) + addressable (2.5.2) + public_suffix (>= 2.0.2, < 4.0) coffee-script (2.4.1) coffee-script-source execjs @@ -16,138 +15,134 @@ GEM colorator (1.1.0) commonmarker (0.17.13) ruby-enum (~> 0.5) - concurrent-ruby (1.1.8) - dnsruby (1.61.5) - simpleidn (~> 0.1) - em-websocket (0.5.2) + concurrent-ruby (1.1.5) + dnsruby (1.61.2) + addressable (~> 2.5) + em-websocket (0.5.1) eventmachine (>= 0.12.9) http_parser.rb (~> 0.6.0) ethon (0.12.0) ffi (>= 1.3.0) eventmachine (1.2.7) execjs (2.7.0) - faraday (1.3.0) - faraday-net_http (~> 1.0) + faraday (0.15.4) multipart-post (>= 1.2, < 3) - ruby2_keywords - faraday-net_http (1.0.1) - ffi (1.15.0) + ffi (1.10.0) forwardable-extended (2.6.0) - gemoji (3.0.1) - github-pages (212) - github-pages-health-check (= 1.17.0) - jekyll (= 3.9.0) - jekyll-avatar (= 0.7.0) + gemoji (3.0.0) + github-pages (197) + activesupport (= 4.2.10) + github-pages-health-check (= 1.16.1) + jekyll (= 3.7.4) + jekyll-avatar (= 0.6.0) jekyll-coffeescript (= 1.1.1) - jekyll-commonmark-ghpages (= 0.1.6) + jekyll-commonmark-ghpages (= 0.1.5) jekyll-default-layout (= 0.1.4) - jekyll-feed (= 0.15.1) + jekyll-feed (= 0.11.0) jekyll-gist (= 1.5.0) - jekyll-github-metadata (= 2.13.0) - jekyll-mentions (= 1.6.0) - jekyll-optional-front-matter (= 0.3.2) + jekyll-github-metadata (= 2.12.1) + jekyll-mentions (= 1.4.1) + jekyll-optional-front-matter (= 0.3.0) jekyll-paginate (= 1.1.0) - jekyll-readme-index (= 0.3.0) - jekyll-redirect-from (= 0.16.0) - jekyll-relative-links (= 0.6.1) - jekyll-remote-theme (= 0.4.2) + jekyll-readme-index (= 0.2.0) + jekyll-redirect-from (= 0.14.0) + jekyll-relative-links (= 0.6.0) + jekyll-remote-theme (= 0.3.1) jekyll-sass-converter (= 1.5.2) - jekyll-seo-tag (= 2.7.1) - jekyll-sitemap (= 1.4.0) - jekyll-swiss (= 1.0.0) + jekyll-seo-tag (= 2.5.0) + jekyll-sitemap (= 1.2.0) + jekyll-swiss (= 0.4.0) jekyll-theme-architect (= 0.1.1) jekyll-theme-cayman (= 0.1.1) jekyll-theme-dinky (= 0.1.1) - jekyll-theme-hacker (= 0.1.2) + jekyll-theme-hacker (= 0.1.1) jekyll-theme-leap-day (= 0.1.1) jekyll-theme-merlot (= 0.1.1) jekyll-theme-midnight (= 0.1.1) jekyll-theme-minimal (= 0.1.1) jekyll-theme-modernist (= 0.1.1) - jekyll-theme-primer (= 0.5.4) + jekyll-theme-primer (= 0.5.3) jekyll-theme-slate (= 0.1.1) jekyll-theme-tactile (= 0.1.1) jekyll-theme-time-machine (= 0.1.1) - jekyll-titles-from-headings (= 0.5.3) - jemoji (= 0.12.0) - kramdown (= 2.3.0) - kramdown-parser-gfm (= 1.1.0) - liquid (= 4.0.3) + jekyll-titles-from-headings (= 0.5.1) + jemoji (= 0.10.2) + kramdown (= 1.17.0) + liquid (= 4.0.0) + listen (= 3.1.5) mercenary (~> 0.3) - minima (= 2.5.1) - nokogiri (>= 1.10.4, < 2.0) - rouge (= 3.26.0) + minima (= 2.5.0) + nokogiri (>= 1.8.5, < 2.0) + rouge (= 2.2.1) terminal-table (~> 1.4) - github-pages-health-check (1.17.0) + github-pages-health-check (1.16.1) addressable (~> 2.3) dnsruby (~> 1.60) octokit (~> 4.0) - public_suffix (>= 2.0.2, < 5.0) + public_suffix (~> 3.0) typhoeus (~> 1.3) - html-pipeline (2.14.0) + html-pipeline (2.10.0) activesupport (>= 2) nokogiri (>= 1.4) http_parser.rb (0.6.0) i18n (0.9.5) concurrent-ruby (~> 1.0) - jekyll (3.9.0) + jekyll (3.7.4) addressable (~> 2.4) colorator (~> 1.0) em-websocket (~> 0.5) i18n (~> 0.7) jekyll-sass-converter (~> 1.0) jekyll-watch (~> 2.0) - kramdown (>= 1.17, < 3) + kramdown (~> 1.14) liquid (~> 4.0) mercenary (~> 0.3.3) pathutil (~> 0.9) rouge (>= 1.7, < 4) safe_yaml (~> 1.0) - jekyll-avatar (0.7.0) - jekyll (>= 3.0, < 5.0) + jekyll-avatar (0.6.0) + jekyll (~> 3.0) jekyll-coffeescript (1.1.1) coffee-script (~> 2.2) coffee-script-source (~> 1.11.1) - jekyll-commonmark (1.3.1) + jekyll-commonmark (1.2.0) commonmarker (~> 0.14) - jekyll (>= 3.7, < 5.0) - jekyll-commonmark-ghpages (0.1.6) + jekyll (>= 3.0, < 4.0) + jekyll-commonmark-ghpages (0.1.5) commonmarker (~> 0.17.6) - jekyll-commonmark (~> 1.2) - rouge (>= 2.0, < 4.0) + jekyll-commonmark (~> 1) + rouge (~> 2) jekyll-default-layout (0.1.4) jekyll (~> 3.0) - jekyll-feed (0.15.1) - jekyll (>= 3.7, < 5.0) + jekyll-feed (0.11.0) + jekyll (~> 3.3) jekyll-gist (1.5.0) octokit (~> 4.2) - jekyll-github-metadata (2.13.0) - jekyll (>= 3.4, < 5.0) + jekyll-github-metadata (2.12.1) + jekyll (~> 3.4) octokit (~> 4.0, != 4.4.0) - jekyll-mentions (1.6.0) + jekyll-mentions (1.4.1) html-pipeline (~> 2.3) - jekyll (>= 3.7, < 5.0) - jekyll-optional-front-matter (0.3.2) - jekyll (>= 3.0, < 5.0) + jekyll (~> 3.0) + jekyll-optional-front-matter (0.3.0) + jekyll (~> 3.0) jekyll-paginate (1.1.0) - jekyll-readme-index (0.3.0) - jekyll (>= 3.0, < 5.0) - jekyll-redirect-from (0.16.0) - jekyll (>= 3.3, < 5.0) - jekyll-relative-links (0.6.1) - jekyll (>= 3.3, < 5.0) - jekyll-remote-theme (0.4.2) - addressable (~> 2.0) - jekyll (>= 3.5, < 5.0) - jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0) - rubyzip (>= 1.3.0, < 3.0) + jekyll-readme-index (0.2.0) + jekyll (~> 3.0) + jekyll-redirect-from (0.14.0) + jekyll (~> 3.3) + jekyll-relative-links (0.6.0) + jekyll (~> 3.3) + jekyll-remote-theme (0.3.1) + jekyll (~> 3.5) + rubyzip (>= 1.2.1, < 3.0) jekyll-sass-converter (1.5.2) sass (~> 3.4) - jekyll-seo-tag (2.7.1) - jekyll (>= 3.8, < 5.0) - jekyll-sitemap (1.4.0) - jekyll (>= 3.7, < 5.0) - jekyll-swiss (1.0.0) + jekyll-seo-tag (2.5.0) + jekyll (~> 3.3) + jekyll-sitemap (1.2.0) + jekyll (~> 3.3) + jekyll-swiss (0.4.0) jekyll-theme-architect (0.1.1) jekyll (~> 3.5) jekyll-seo-tag (~> 2.0) @@ -157,8 +152,8 @@ GEM jekyll-theme-dinky (0.1.1) jekyll (~> 3.5) jekyll-seo-tag (~> 2.0) - jekyll-theme-hacker (0.1.2) - jekyll (> 3.5, < 5.0) + jekyll-theme-hacker (0.1.1) + jekyll (~> 3.5) jekyll-seo-tag (~> 2.0) jekyll-theme-leap-day (0.1.1) jekyll (~> 3.5) @@ -175,8 +170,8 @@ GEM jekyll-theme-modernist (0.1.1) jekyll (~> 3.5) jekyll-seo-tag (~> 2.0) - jekyll-theme-primer (0.5.4) - jekyll (> 3.5, < 5.0) + jekyll-theme-primer (0.5.3) + jekyll (~> 3.5) jekyll-github-metadata (~> 2.9) jekyll-seo-tag (~> 2.0) jekyll-theme-slate (0.1.1) @@ -188,77 +183,66 @@ GEM jekyll-theme-time-machine (0.1.1) jekyll (~> 3.5) jekyll-seo-tag (~> 2.0) - jekyll-titles-from-headings (0.5.3) - jekyll (>= 3.3, < 5.0) - jekyll-watch (2.2.1) + jekyll-titles-from-headings (0.5.1) + jekyll (~> 3.3) + jekyll-watch (2.1.2) listen (~> 3.0) - jemoji (0.12.0) + jemoji (0.10.2) gemoji (~> 3.0) html-pipeline (~> 2.2) - jekyll (>= 3.0, < 5.0) - kramdown (2.3.0) - rexml - kramdown-parser-gfm (1.1.0) - kramdown (~> 2.0) - liquid (4.0.3) - listen (3.4.1) - rb-fsevent (~> 0.10, >= 0.10.3) - rb-inotify (~> 0.9, >= 0.9.10) + jekyll (~> 3.0) + kramdown (1.17.0) + liquid (4.0.0) + listen (3.1.5) + rb-fsevent (~> 0.9, >= 0.9.4) + rb-inotify (~> 0.9, >= 0.9.7) + ruby_dep (~> 1.2) mercenary (0.3.6) - minima (2.5.1) - jekyll (>= 3.5, < 5.0) + mini_portile2 (2.4.0) + minima (2.5.0) + jekyll (~> 3.5) jekyll-feed (~> 0.9) jekyll-seo-tag (~> 2.1) - minitest (5.14.4) - multipart-post (2.1.1) - nokogiri (1.12.5-x86_64-linux) - racc (~> 1.4) - octokit (4.20.0) - faraday (>= 0.9) + minitest (5.11.3) + multipart-post (2.0.0) + nokogiri (1.10.9) + mini_portile2 (~> 2.4.0) + octokit (4.13.0) sawyer (~> 0.8.0, >= 0.5.3) pathutil (0.16.2) forwardable-extended (~> 2.6) - public_suffix (4.0.6) - racc (1.5.2) - rb-fsevent (0.10.4) - rb-inotify (0.10.1) + public_suffix (3.0.3) + rb-fsevent (0.10.3) + rb-inotify (0.10.0) ffi (~> 1.0) - rexml (3.2.5) - rouge (3.26.0) - ruby-enum (0.9.0) + rouge (2.2.1) + ruby-enum (0.7.2) i18n - ruby2_keywords (0.0.4) - rubyzip (2.3.0) + ruby_dep (1.5.0) + rubyzip (2.1.0) safe_yaml (1.0.5) - sass (3.7.4) + sass (3.7.3) sass-listen (~> 4.0.0) sass-listen (4.0.0) rb-fsevent (~> 0.9, >= 0.9.4) rb-inotify (~> 0.9, >= 0.9.7) - sawyer (0.8.2) - addressable (>= 2.3.5) - faraday (> 0.8, < 2.0) - simpleidn (0.2.1) - unf (~> 0.1.4) + sawyer (0.8.1) + addressable (>= 2.3.5, < 2.6) + faraday (~> 0.8, < 1.0) terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) thread_safe (0.3.6) - typhoeus (1.4.0) + typhoeus (1.3.1) ethon (>= 0.9.0) - tzinfo (1.2.9) + tzinfo (1.2.5) thread_safe (~> 0.1) - unf (0.1.4) - unf_ext - unf_ext (0.0.7.7) - unicode-display_width (1.7.0) - zeitwerk (2.4.2) + unicode-display_width (1.5.0) PLATFORMS - x86_64-linux + ruby DEPENDENCIES github-pages - nokogiri (~> 1.12) BUNDLED WITH - 2.2.14 + 2.0.1 diff --git a/docs/_config.yml b/docs/_config.yml index 1e6e054..e9d2aed 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -26,7 +26,7 @@ timezone: America/Los_Angeles # Build settings markdown: kramdown -plugins: +gems: exclude: - Gemfile - Gemfile.lock diff --git a/javascript/draco_decoder.js b/javascript/draco_decoder.js index 7e78487..ffcc69c 100644 --- a/javascript/draco_decoder.js +++ b/javascript/draco_decoder.js @@ -6,37 +6,23 @@ var DracoDecoderModule = (function() { 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]<=4)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=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;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};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){var 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};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){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.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_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=function 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=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function 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=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 STACK_ALIGN=16;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 addFunctionWasm(func,sig){if(!functionsInTableMap){functionsInTableMap=new WeakMap;for(var i=0;i3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=4)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=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;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};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){var 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};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){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.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=( // EMSCRIPTEN_START_ASM -function instantiate(Vn,Wn){function Mn(Xn){Xn.set=(function(T,Yn){this[T]=Yn});Xn.get=(function(T){return this[T]});return Xn}var a=new ArrayBuffer(16);var b=new Int32Array(a);var c=new Float32Array(a);var d=new Float64Array(a);function Nn(Zn){c[2]=Zn}function On(_n){return b[_n]}function Pn(_n,Zn){b[_n]=Zn}function Qn(){return c[2]}function Rn($n,ao){var e=ao.memory;var f=e.buffer;e.grow=Tn;var g=new $n.Int8Array(f);var h=new $n.Int16Array(f);var i=new $n.Int32Array(f);var j=new $n.Uint8Array(f);var k=new $n.Uint16Array(f);var l=new $n.Uint32Array(f);var m=new $n.Float32Array(f);var n=new $n.Float64Array(f);var o=$n.Math.imul;var p=$n.Math.fround;var q=$n.Math.abs;var r=$n.Math.clz32;var s=$n.Math.min;var t=$n.Math.max;var u=$n.Math.floor;var v=$n.Math.ceil;var w=$n.Math.sqrt;var x=ao.abort;var y=$n.NaN;var z=$n.Infinity;var A=ao.__cxa_allocate_exception;var B=ao.__cxa_throw;var C=ao.fd_close;var D=ao.fd_write;var E=ao.abort;var F=ao.emscripten_resize_heap;var G=ao.emscripten_memcpy_big;var H=ao.setTempRet0;var I=ao.fd_seek;var J=5261744;var K=18864;var L=0; +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>2]=0;i[m+64>>2]=0;i[m+68>>2]=0;i[m+48>>2]=0;i[m+52>>2]=0;i[m+40>>2]=0;i[m+44>>2]=0;i[m+56>>2]=1065353216;i[m+32>>2]=0;i[m+24>>2]=0;i[m+28>>2]=0;A=i[a+124>>2];a:{b:{c:{d:{e:{if((b|0)<1){break e}C=a+400|0;B=a+232|0;D=i[a+216>>2]!=i[a+220>>2];y=1;while(1){h=z;z=h+1|0;f:{g:{h:{i:{j:{if(i[a+420>>2]!=-1){if(Ce(C)){break j}}e=a;if(j[a+308|0]){p=i[a+296>>2];r=i[a+304>>2];c=p+(r>>>3|0)|0;n=i[a+300>>2];if(c>>>0>=n>>>0){break i}d=j[c|0];c=r+1|0;i[a+304>>2]=c;if(!(d>>>(r&7)&1)){break i}u=c>>>3|0;d=p+u|0;k:{if(d>>>0>=n>>>0){d=c;c=0;break k}f=j[d|0];d=r+2|0;i[a+304>>2]=d;u=d>>>3|0;c=f>>>(c&7)&1}f=p+u|0;if(f>>>0>>0){f=j[f|0];i[a+304>>2]=d+1;d=f>>>(d&7)<<1&2}else{d=0}c=(c|d)<<1|1}else{c=1}i[e+416>>2]=c;break g}c=i[a+420>>2];i[a+416>>2]=c;if(c){break g}break h}i[a+416>>2]=0}d=i[m+68>>2];if((d|0)==i[m+64>>2]){break d}s=-1;u=i[a+8>>2];r=i[u+24>>2];c=r;n=d+ -4|0;w=i[n>>2];e=-1;l:{if((w|0)==-1){break l}d=w+1|0;d=(d>>>0)%3|0?d:w+ -2|0;e=-1;if((d|0)==-1){break l}e=i[i[u>>2]+(d<<2)>>2]}d=i[c+(e<<2)>>2];if((d|0)!=-1){c=d+1|0;s=(c>>>0)%3|0?c:d+ -2|0}d=i[u+12>>2];q=o(h,3);c=q+1|0;i[d+(w<<2)>>2]=c;f=c<<2;i[f+d>>2]=w;t=q+2|0;i[d+(s<<2)>>2]=t;h=t<<2;i[h+d>>2]=s;p=-1;c=-1;m:{if((w|0)==-1){break m}d=w+((w>>>0)%3|0?-1:2)|0;c=-1;if((d|0)==-1){break m}c=i[i[u>>2]+(d<<2)>>2]}n:{if((s|0)==-1){break n}d=s+1|0;d=(d>>>0)%3|0?d:s+ -2|0;if((d|0)==-1){break n}p=i[i[u>>2]+(d<<2)>>2]}d=-1;if((c|0)==(e|0)|(e|0)==(p|0)){break c}d=i[u>>2];i[d+(q<<2)>>2]=e;i[d+f>>2]=p;i[d+h>>2]=c;if((c|0)!=-1){i[r+(c<<2)>>2]=t}d=i[a+120>>2]+(e>>>3&536870908)|0;c=i[d>>2];E=d,F=Kn(e)&c,i[E>>2]=F;i[n>>2]=q;hg(B,q);break f}d=-1;o:{p:{q:{r:{s:{t:{u:{v:{w:{switch(c+ -1|0){case 2:case 4:e=i[m+68>>2];if((e|0)==i[m+64>>2]){break d}t=i[a+8>>2];d=i[t+12>>2];q=o(h,3);p=(c|0)==5;n=q+(p?2:1)|0;c=n<<2;u=i[e+ -4>>2];i[d+c>>2]=u;i[d+(u<<2)>>2]=n;$f(t+24|0,11508);d=-1;f=i[a+8>>2];r=i[f+24>>2];if(i[f+28>>2]-r>>2>(A|0)){break c}e=q+2|0;f=i[f>>2];s=f+c|0;d=i[t+28>>2]-i[t+24>>2]|0;c=(d>>2)+ -1|0;i[s>>2]=c;if(d){i[r+(c<<2)>>2]=n}e=p?q:e;n=f+(p+q<<2)|0;x:{y:{z:{if((u|0)!=-1){c=u+((u>>>0)%3|0?-1:2)|0;if((c|0)==-1){break z}c=i[f+(c<<2)>>2];i[f+(e<<2)>>2]=c;if((c|0)==-1){break y}i[r+(c<<2)>>2]=e;break y}i[f+(e<<2)>>2]=-1;d=-1;break x}i[f+(e<<2)>>2]=-1}c=u+1|0;c=(c>>>0)%3|0?c:u+ -2|0;d=-1;if((c|0)==-1){break x}d=i[f+(c<<2)>>2]}i[n>>2]=d;d=i[m+68>>2];i[d+ -4>>2]=q;break v;case 0:p=i[m+68>>2];e=i[m+64>>2];if((p|0)==(e|0)){break d}n=p+ -4|0;w=i[n>>2];i[m+68>>2]=n;q=i[m+44>>2];if(!q){break s}d=i[m+40>>2];t=Jn(q)>>>0>1;f=h&q+2147483647;A:{if(!t){break A}c=h;f=c;if(c>>>0>>0){break A}f=(h>>>0)%(q>>>0)|0}c=i[d+(f<<2)>>2];if(!c){break s}d=i[c>>2];if(!d){break s}r=q+ -1|0;while(1){B:{c=i[d+4>>2];C:{if((h|0)!=(c|0)){D:{if(!t){c=c&r;break D}if(c>>>0>>0){break D}c=(c>>>0)%(q>>>0)|0}if((c|0)!=(f|0)){break s}break C}if((h|0)==i[d+8>>2]){break B}}d=i[d>>2];if(d){continue}break s}break}if((n|0)!=i[m+72>>2]){i[n>>2]=i[d+12>>2];i[m+68>>2]=p;c=e;break r}r=n-e|0;p=r>>2;n=p+1|0;if(n>>>0>=1073741824){break u}f=r>>1;n=p>>>0<536870911?f>>>0>>0?n:f:1073741823;c=0;E:{if(!n){break E}if(n>>>0>=1073741824){break a}c=Dm(n<<2)}f=c+(p<<2)|0;i[f>>2]=i[d+12>>2];d=(n<<2)+c|0;p=f+4|0;if((r|0)>=1){pn(c,e,r)}i[m+72>>2]=d;i[m+68>>2]=p;i[m+64>>2]=c;if(!e){break r}nn(e);p=i[m+68>>2];c=i[m+64>>2];break r;case 6:break w;default:break c}}c=i[a+8>>2];$f(c+24|0,11508);e=i[a+8>>2];q=o(h,3);p=i[c+28>>2]-i[c+24>>2]|0;r=p>>2;f=r+ -1|0;i[i[e>>2]+(q<<2)>>2]=f;$f(e+24|0,11508);n=q+1|0;i[i[e>>2]+(n<<2)>>2]=(i[e+28>>2]-i[e+24>>2]>>2)+ -1;c=i[a+8>>2];$f(c+24|0,11508);e=q+2|0;i[i[c>>2]+(e<<2)>>2]=(i[c+28>>2]-i[c+24>>2]>>2)+ -1;c=i[a+8>>2];t=i[c+24>>2];if(i[c+28>>2]-t>>2>(A|0)){break c}F:{G:{if(!p){i[t+(r<<2)>>2]=n;d=1;break G}i[t+(f<<2)>>2]=q;d=0;if((p|0)==-4){break G}i[t+(r<<2)>>2]=n;d=r+1|0;if((d|0)==-1){break F}}i[t+(d<<2)>>2]=e}c=i[m+68>>2];if((c|0)!=i[m+72>>2]){i[c>>2]=q;d=c+4|0;i[m+68>>2]=d;break v}p=i[m+64>>2];n=c-p|0;f=n>>2;e=f+1|0;if(e>>>0>=1073741824){break t}d=n>>1;e=f>>>0<536870911?d>>>0>>0?e:d:1073741823;c=0;H:{if(!e){break H}if(e>>>0>=1073741824){break a}c=Dm(e<<2)}d=c+(f<<2)|0;i[d>>2]=q;e=c+(e<<2)|0;d=d+4|0;if((n|0)>=1){pn(c,p,n)}i[m+72>>2]=e;i[m+68>>2]=d;i[m+64>>2]=c;if(!p){break v}nn(p);d=i[m+68>>2]}hg(B,i[d+ -4>>2]);d=i[a+40>>2];if((d|0)==i[a+36>>2]){break f}h=(h^-1)+b|0;while(1){c=i[d+ -8>>2];if(c>>>0>h>>>0){break q}if((c|0)!=(h|0)){break f}e=j[d+ -4|0];c=d+ -12|0;d=i[c>>2];i[a+40>>2]=c;if((d|0)<0){break q}f=i[i[m+68>>2]+ -4>>2];i[m+20>>2]=(d^-1)+b;i[m+88>>2]=m+20;ag(m,m+40|0,m+20|0,m+88|0);d=i[m>>2];I:{if(e&1){c=-1;if((f|0)==-1){break I}c=f+1|0;c=(c>>>0)%3|0?c:f+ -2|0;break I}c=-1;if((f|0)==-1){break I}c=f+ -1|0;if((f>>>0)%3|0){break I}c=f+2|0}i[d+12>>2]=c;d=i[a+40>>2];if((d|0)!=i[a+36>>2]){continue}break}break f}Sm();x()}Sm();x()}p=n;c=e}if((c|0)==(p|0)){break q}r=i[p+ -4>>2];d=(r|0)==-1;u=i[a+8>>2];if(i[i[u+12>>2]+(r<<2)>>2]!=-1?!d:0){break q}f=(w|0)==-1;q=i[u+12>>2];if(i[q+(w<<2)>>2]!=-1?!f:0){break q}t=o(h,3);h=t+2|0;i[q+(r<<2)>>2]=h;n=h<<2;i[q+n>>2]=r;c=t+1|0;i[q+(w<<2)>>2]=c;e=c<<2;i[e+q>>2]=w;if(d){break p}v=-1;y=-1;s=i[u>>2];d=s+(t<<2)|0;c=r+((r>>>0)%3|0?-1:2)|0;if((c|0)!=-1){y=i[(c<<2)+s>>2]}i[d>>2]=y;c=r+1|0;c=(c>>>0)%3|0?c:r+ -2|0;if((c|0)==-1){break o}v=i[(c<<2)+s>>2];break o}d=-1;if(y&1){break c}break e}y=-1;s=i[u>>2];i[s+(t<<2)>>2]=-1;v=-1}i[e+s>>2]=v;J:{K:{L:{if(!f){c=w+((w>>>0)%3|0?-1:2)|0;if((c|0)==-1){break L}c=i[(c<<2)+s>>2];i[n+s>>2]=c;if((c|0)==-1){break K}i[i[u+24>>2]+(c<<2)>>2]=h;break K}i[n+s>>2]=-1;r=-1;d=-1;break J}i[n+s>>2]=-1}r=-1;c=w+1|0;c=(c>>>0)%3|0?c:w+ -2|0;d=-1;if((c|0)==-1){break J}r=i[(c<<2)+s>>2];d=c}h=i[a+388>>2];e=y<<2;c=h+e|0;f=c;n=i[c>>2];c=r<<2;i[f>>2]=n+i[c+h>>2];h=c;c=i[u+24>>2];h=h+c|0;if((y|0)!=-1){i[c+e>>2]=i[h>>2]}M:{if((d|0)==-1){break M}while(1){i[(d<<2)+s>>2]=y;c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1){break M}d=i[q+(c<<2)>>2];if((d|0)==-1){break M}c=d+1|0;d=(c>>>0)%3|0?c:d+ -2|0;if((d|0)!=-1){continue}break}}i[h>>2]=-1;N:{if(D){break N}c=i[m+28>>2];if((c|0)!=i[m+32>>2]){i[c>>2]=r;i[m+28>>2]=c+4;break N}O:{n=i[m+24>>2];f=c-n|0;h=f>>2;e=h+1|0;if(e>>>0<1073741824){d=f>>1;e=h>>>0<536870911?d>>>0>>0?e:d:1073741823;c=0;P:{if(!e){break P}if(e>>>0>=1073741824){break O}c=Dm(e<<2)}d=c+(h<<2)|0;i[d>>2]=r;e=c+(e<<2)|0;d=d+4|0;if((f|0)>=1){pn(c,n,f)}i[m+32>>2]=e;i[m+28>>2]=d;i[m+24>>2]=c;if(!n){break N}nn(n);p=i[m+68>>2];break N}Sm();x()}break a}i[p+ -4>>2]=t;hg(B,t)}y=(z|0)<(b|0);if((b|0)!=(z|0)){continue}break}z=b}d=-1;y=i[a+8>>2];if(i[y+28>>2]-i[y+24>>2]>>2>(A|0)){break c}Q:{R:{S:{v=i[m+68>>2];if((v|0)!=i[m+64>>2]){C=a+72|0;b=a+60|0;r=a+312|0;while(1){c=v+ -4|0;t=i[c>>2];i[m+68>>2]=c;T:{U:{V:{W:{if(k[a+270>>1]<=513){if(!j[a+364|0]){break V}e=i[a+360>>2];c=i[a+352>>2]+(e>>>3|0)|0;if(c>>>0>=l[a+356>>2]){break U}c=j[c|0];i[a+360>>2]=e+1;c=c>>>(e&7)&1;break W}c=Ce(r)}if(!c){break U}}p=i[a+8>>2];w=i[p>>2];if((z|0)>=((i[p+4>>2]-w>>2>>>0)/3|0)){break d}h=-1;s=-1;n=i[p+24>>2];f=n;c=-1;X:{if((t|0)==-1){break X}e=t+1|0;e=(e>>>0)%3|0?e:t+ -2|0;c=-1;if((e|0)==-1){break X}c=i[w+(e<<2)>>2]}f=i[f+(c<<2)>>2];Y:{if((f|0)==-1){break Y}e=f+1|0;e=(e>>>0)%3|0?e:f+ -2|0;if((e|0)==-1){break Y}h=e+1|0;h=(h>>>0)%3|0?h:e+ -2|0;if((h|0)!=-1){s=i[w+(h<<2)>>2]}h=e}u=-1;D=-1;n=i[n+(s<<2)>>2];f=-1;Z:{if((n|0)==-1){break Z}e=n+1|0;e=(e>>>0)%3|0?e:n+ -2|0;f=-1;if((e|0)==-1){break Z}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)!=-1){D=i[w+(f<<2)>>2]}f=e}A=i[p+12>>2];q=o(z,3);p=q<<2;i[A+p>>2]=t;i[A+(t<<2)>>2]=q;B=q+1|0;n=B<<2;i[n+A>>2]=h;i[A+(h<<2)>>2]=B;t=q+2|0;e=t<<2;i[e+A>>2]=f;i[A+(f<<2)>>2]=t;i[p+w>>2]=s;n=n+w|0;i[n>>2]=D;f=e+w|0;i[f>>2]=c;p=i[a+120>>2];h=B>>>0>>0?-1:s;e=p+(h>>>3&536870908)|0;c=i[e>>2];E=e,F=Kn(h)&c,i[E>>2]=F;u=(B|0)!=-1?i[n>>2]:u;e=p+(u>>>3&536870908)|0;c=i[e>>2];E=e,F=Kn(u)&c,i[E>>2]=F;v=-1;v=(t|0)!=-1?i[f>>2]:v;e=p+(v>>>3&536870908)|0;c=i[e>>2];E=e,F=Kn(v)&c,i[E>>2]=F;v=i[a+64>>2];e=i[a+68>>2];if((v|0)==e<<5){if((v+1|0)<=-1){break S}c=b;if(v>>>0<=1073741822){h=v+32&-32;e=e<<6;e=e>>>0>>0?h:e}else{e=2147483647}Qc(c,e);v=i[a+64>>2]}z=z+1|0;i[a+64>>2]=v+1;c=i[a+60>>2]+(v>>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>2];if((c|0)!=i[a+80>>2]){i[c>>2]=q;i[a+76>>2]=c+4;break T}p=i[C>>2];n=c-p|0;f=n>>2;h=f+1|0;if(h>>>0>=1073741824){break R}e=n>>1;h=f>>>0<536870911?e>>>0>>0?h:e:1073741823;c=0;_:{if(!h){break _}if(h>>>0>=1073741824){break a}c=Dm(h<<2)}e=c+(f<<2)|0;i[e>>2]=q;h=c+(h<<2)|0;e=e+4|0;if((n|0)>=1){pn(c,p,n)}i[a+80>>2]=h;i[a+76>>2]=e;i[a+72>>2]=c;if(!p){break T}nn(p);break T}c=i[a+64>>2];f=i[a+68>>2];if((c|0)==f<<5){if((c+1|0)<=-1){break S}e=b;if(c>>>0<=1073741822){h=c+32&-32;c=f<<6;c=c>>>0>>0?h:c}else{c=2147483647}Qc(e,c);c=i[a+64>>2]}i[a+64>>2]=c+1;h=i[a+60>>2]+(c>>>3&536870908)|0;e=i[h>>2];E=h,F=Kn(c)&e,i[E>>2]=F;c=i[a+76>>2];if((c|0)!=i[a+80>>2]){i[c>>2]=t;i[a+76>>2]=c+4;break T}p=i[C>>2];n=c-p|0;f=n>>2;h=f+1|0;if(h>>>0>=1073741824){break R}e=n>>1;h=f>>>0<536870911?e>>>0>>0?h:e:1073741823;c=0;$:{if(!h){break $}if(h>>>0>=1073741824){break Q}c=Dm(h<<2)}e=c+(f<<2)|0;i[e>>2]=t;h=c+(h<<2)|0;e=e+4|0;if((n|0)>=1){pn(c,p,n)}i[a+80>>2]=h;i[a+76>>2]=e;i[a+72>>2]=c;if(!p){break T}nn(p)}v=i[m+68>>2];if((v|0)!=i[m+64>>2]){continue}break}y=i[a+8>>2]}if(((i[y+4>>2]-i[y>>2]>>2>>>0)/3|0)!=(z|0)){break c}v=i[y+24>>2];d=i[y+28>>2]-v>>2;s=i[m+24>>2];e=i[m+28>>2];if((s|0)==(e|0)){break b}while(1){h=i[s>>2];z=d+ -1|0;aa:{if(i[(z<<2)+v>>2]!=-1){c=d;break aa}v=i[y+24>>2];while(1){z=d+ -2|0;c=d+ -1|0;d=c;if(i[(z<<2)+v>>2]==-1){continue}break}}if(z>>>0>=h>>>0){i[m>>2]=y;b=z<<2;d=i[b+v>>2];g[m+12|0]=1;i[m+8>>2]=d;i[m+4>>2]=d;f=b;if((d|0)!=-1){i[i[y>>2]+(d<<2)>>2]=h;Jd(m);d=i[m+8>>2];if((d|0)!=-1){while(1){i[i[i[a+8>>2]>>2]+(d<<2)>>2]=h;Jd(m);d=i[m+8>>2];if((d|0)!=-1){continue}break}}y=i[a+8>>2]}b=i[y+24>>2];d=f+b|0;if((h|0)!=-1){i[b+(h<<2)>>2]=i[d>>2]}i[d>>2]=-1;n=1<>2];h=b+(h>>>3&536870908)|0;d=h;f=b+(z>>>3&536870908)|0;b=1<>2];ba:{if(i[f>>2]&b){break ba}z=i[h>>2]&(n^-1)}i[d>>2]=z;i[f>>2]=i[f>>2]&(b^-1);c=c+ -1|0}d=c;s=s+4|0;if((e|0)==(s|0)){break c}v=i[y+24>>2];continue}}Sm();x()}Sm();x()}break a}d=-1}s=i[m+24>>2]}if(s){i[m+28>>2]=s;nn(s)}a=i[m+48>>2];if(a){while(1){b=i[a>>2];nn(a);a=b;if(a){continue}break}}a=i[m+40>>2];i[m+40>>2]=0;if(a){nn(a)}a=i[m+64>>2];if(a){i[m+68>>2]=a;nn(a)}J=m+96|0;return d}Ba(12220);x()}function mn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=J-16|0;J=p;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{if(a>>>0<=244){g=i[4332];f=a>>>0<11?16:a+11&-8;a=f>>>3|0;b=g>>>a|0;if(b&3){c=a+((b^-1)&1)|0;f=c<<3;b=i[f+17376>>2];a=b+8|0;d=i[b+8>>2];f=f+17368|0;m:{if((d|0)==(f|0)){q=17328,r=Kn(c)&g,i[q>>2]=r;break m}i[d+12>>2]=f;i[f+8>>2]=d}c=c<<3;i[b+4>>2]=c|3;b=b+c|0;i[b+4>>2]=i[b+4>>2]|1;break a}k=i[4334];if(f>>>0<=k>>>0){break l}if(b){b=b<>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;c=(c|b)+(a>>>b|0)|0;d=c<<3;b=i[d+17376>>2];a=i[b+8>>2];d=d+17368|0;n:{if((a|0)==(d|0)){g=Kn(c)&g;i[4332]=g;break n}i[a+12>>2]=d;i[d+8>>2]=a}a=b+8|0;i[b+4>>2]=f|3;e=b+f|0;c=c<<3;f=c-f|0;i[e+4>>2]=f|1;i[b+c>>2]=f;if(k){c=k>>>3|0;b=(c<<3)+17368|0;d=i[4337];c=1<>2]}i[b+8>>2]=d;i[c+12>>2]=d;i[d+12>>2]=b;i[d+8>>2]=c}i[4337]=e;i[4334]=f;break a}n=i[4333];if(!n){break l}a=(n&0-n)+ -1|0;b=a>>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;b=i[((c|b)+(a>>>b|0)<<2)+17632>>2];e=(i[b+4>>2]&-8)-f|0;c=b;while(1){p:{a=i[c+16>>2];if(!a){a=i[c+20>>2];if(!a){break p}}d=(i[a+4>>2]&-8)-f|0;c=d>>>0>>0;e=c?d:e;b=c?a:b;c=a;continue}break}o=b+f|0;if(o>>>0<=b>>>0){break k}m=i[b+24>>2];d=i[b+12>>2];if((d|0)!=(b|0)){a=i[b+8>>2];i[a+12>>2]=d;i[d+8>>2]=a;break b}c=b+20|0;a=i[c>>2];if(!a){a=i[b+16>>2];if(!a){break j}c=b+16|0}while(1){h=c;d=a;c=a+20|0;a=i[c>>2];if(a){continue}c=d+16|0;a=i[d+16>>2];if(a){continue}break}i[h>>2]=0;break b}f=-1;if(a>>>0>4294967231){break l}a=a+11|0;f=a&-8;k=i[4333];if(!k){break l}h=31;e=0-f|0;if(f>>>0<=16777215){b=a>>>8|0;a=b+1048320>>>16&8;c=b<>>16&4;g=c<>>16&2;a=(g<>>15|0)-(c|(a|b))|0;h=(a<<1|f>>>a+21&1)+28|0}c=i[(h<<2)+17632>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=f<<((h|0)==31?0:25-(h>>>1|0)|0);while(1){t:{g=(i[c+4>>2]&-8)-f|0;if(g>>>0>=e>>>0){break t}d=c;e=g;if(e){break t}e=0;a=c;break r}g=i[c+20>>2];c=i[((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|d)){a=2<>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;a=i[((c|b)+(a>>>b|0)<<2)+17632>>2]}if(!a){break q}}while(1){c=(i[a+4>>2]&-8)-f|0;b=c>>>0>>0;e=b?c:e;d=b?a:d;b=i[a+16>>2];if(b){a=b}else{a=i[a+20>>2]}if(a){continue}break}}if(!d|e>>>0>=i[4334]-f>>>0){break l}h=d+f|0;if(h>>>0<=d>>>0){break k}m=i[d+24>>2];b=i[d+12>>2];if((d|0)!=(b|0)){a=i[d+8>>2];i[a+12>>2]=b;i[b+8>>2]=a;break c}c=d+20|0;a=i[c>>2];if(!a){a=i[d+16>>2];if(!a){break i}c=d+16|0}while(1){g=c;b=a;c=a+20|0;a=i[c>>2];if(a){continue}c=b+16|0;a=i[b+16>>2];if(a){continue}break}i[g>>2]=0;break c}b=i[4334];if(b>>>0>=f>>>0){a=i[4337];c=b-f|0;u:{if(c>>>0>=16){i[4334]=c;d=a+f|0;i[4337]=d;i[d+4>>2]=c|1;i[a+b>>2]=c;i[a+4>>2]=f|3;break u}i[4337]=0;i[4334]=0;i[a+4>>2]=b|3;b=a+b|0;i[b+4>>2]=i[b+4>>2]|1}a=a+8|0;break a}d=i[4335];if(d>>>0>f>>>0){b=d-f|0;i[4335]=b;a=i[4338];c=a+f|0;i[4338]=c;i[c+4>>2]=b|1;i[a+4>>2]=f|3;a=a+8|0;break a}a=0;e=f+47|0;c=e;if(i[4450]){b=i[4452]}else{i[4453]=-1;i[4454]=-1;i[4451]=4096;i[4452]=4096;i[4450]=p+12&-16^1431655768;i[4455]=0;i[4443]=0;b=4096}g=c+b|0;h=0-b|0;c=g&h;if(c>>>0<=f>>>0){break a}b=i[4442];if(b){k=i[4440];m=k+c|0;if(m>>>0<=k>>>0|m>>>0>b>>>0){break a}}if(j[17772]&4){break f}v:{w:{b=i[4338];if(b){a=17776;while(1){k=i[a>>2];if(k+i[a+4>>2]>>>0>b>>>0?k>>>0<=b>>>0:0){break w}a=i[a+8>>2];if(a){continue}break}}b=on(0);if((b|0)==-1){break g}g=c;a=i[4451];d=a+ -1|0;if(d&b){g=(c-b|0)+(b+d&0-a)|0}if(g>>>0<=f>>>0|g>>>0>2147483646){break g}a=i[4442];if(a){d=i[4440];h=d+g|0;if(h>>>0<=d>>>0|h>>>0>a>>>0){break g}}a=on(g);if((b|0)!=(a|0)){break v}break e}g=h&g-d;if(g>>>0>2147483646){break g}b=on(g);if((b|0)==(i[a>>2]+i[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|f+48>>>0<=g>>>0)){b=i[4452];b=b+(e-g|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((on(b)|0)!=-1){g=b+g|0;b=a;break e}on(0-g|0);break g}b=a;if((a|0)!=-1){break e}break g}x()}d=0;break b}b=0;break c}if((b|0)!=-1){break e}}i[4443]=i[4443]|4}if(c>>>0>2147483646){break d}b=on(c);a=on(0);if(b>>>0>=a>>>0|(b|0)==-1|(a|0)==-1){break d}g=a-b|0;if(g>>>0<=f+40>>>0){break d}}a=i[4440]+g|0;i[4440]=a;if(a>>>0>l[4441]){i[4441]=a}x:{y:{z:{e=i[4338];if(e){a=17776;while(1){c=i[a>>2];d=i[a+4>>2];if((c+d|0)==(b|0)){break z}a=i[a+8>>2];if(a){continue}break}break y}a=i[4336];if(!(b>>>0>=a>>>0?a:0)){i[4336]=b}a=0;i[4445]=g;i[4444]=b;i[4340]=-1;i[4341]=i[4450];i[4447]=0;while(1){c=a<<3;d=c+17368|0;i[c+17376>>2]=d;i[c+17380>>2]=d;a=a+1|0;if((a|0)!=32){continue}break}a=g+ -40|0;c=b+8&7?-8-b&7:0;d=a-c|0;i[4335]=d;c=b+c|0;i[4338]=c;i[c+4>>2]=d|1;i[(a+b|0)+4>>2]=40;i[4339]=i[4454];break x}if(j[a+12|0]&8|b>>>0<=e>>>0|c>>>0>e>>>0){break y}i[a+4>>2]=d+g;a=e+8&7?-8-e&7:0;b=a+e|0;i[4338]=b;c=i[4335]+g|0;a=c-a|0;i[4335]=a;i[b+4>>2]=a|1;i[(c+e|0)+4>>2]=40;i[4339]=i[4454];break x}d=i[4336];if(b>>>0>>0){i[4336]=b;d=0}c=b+g|0;a=17776;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=i[a>>2]){a=i[a+8>>2];if(a){continue}break F}break}if(!(j[a+12|0]&8)){break E}}a=17776;while(1){c=i[a>>2];if(c>>>0<=e>>>0){d=c+i[a+4>>2]|0;if(d>>>0>e>>>0){break D}}a=i[a+8>>2];continue}}i[a>>2]=b;i[a+4>>2]=i[a+4>>2]+g;m=(b+8&7?-8-b&7:0)+b|0;i[m+4>>2]=f|3;b=c+(c+8&7?-8-c&7:0)|0;a=(b-m|0)-f|0;h=f+m|0;if((b|0)==(e|0)){i[4338]=h;a=i[4335]+a|0;i[4335]=a;i[h+4>>2]=a|1;break B}if(i[4337]==(b|0)){i[4337]=h;a=i[4334]+a|0;i[4334]=a;i[h+4>>2]=a|1;i[a+h>>2]=a;break B}c=i[b+4>>2];if((c&3)==1){n=c&-8;G:{if(c>>>0<=255){f=c>>>3|0;c=i[b+8>>2];d=i[b+12>>2];if((d|0)==(c|0)){q=17328,r=i[4332]&Kn(f),i[q>>2]=r;break G}i[c+12>>2]=d;i[d+8>>2]=c;break G}k=i[b+24>>2];g=i[b+12>>2];H:{if((g|0)!=(b|0)){c=i[b+8>>2];i[c+12>>2]=g;i[g+8>>2]=c;break H}I:{e=b+20|0;f=i[e>>2];if(f){break I}e=b+16|0;f=i[e>>2];if(f){break I}g=0;break H}while(1){c=e;g=f;e=f+20|0;f=i[e>>2];if(f){continue}e=g+16|0;f=i[g+16>>2];if(f){continue}break}i[c>>2]=0}if(!k){break G}c=i[b+28>>2];d=(c<<2)+17632|0;J:{if(i[d>>2]==(b|0)){i[d>>2]=g;if(g){break J}q=17332,r=i[4333]&Kn(c),i[q>>2]=r;break G}i[k+(i[k+16>>2]==(b|0)?16:20)>>2]=g;if(!g){break G}}i[g+24>>2]=k;c=i[b+16>>2];if(c){i[g+16>>2]=c;i[c+24>>2]=g}c=i[b+20>>2];if(!c){break G}i[g+20>>2]=c;i[c+24>>2]=g}b=b+n|0;a=a+n|0}i[b+4>>2]=i[b+4>>2]&-2;i[h+4>>2]=a|1;i[a+h>>2]=a;if(a>>>0<=255){b=a>>>3|0;a=(b<<3)+17368|0;c=i[4332];b=1<>2]}i[a+8>>2]=h;i[b+12>>2]=h;i[h+12>>2]=a;i[h+8>>2]=b;break B}e=31;if(a>>>0<=16777215){c=a>>>8|0;b=c+1048320>>>16&8;d=c<>>16&4;f=d<>>16&2;b=(f<>>15|0)-(d|(b|c))|0;e=(b<<1|a>>>b+21&1)+28|0}i[h+28>>2]=e;i[h+16>>2]=0;i[h+20>>2]=0;b=(e<<2)+17632|0;c=i[4333];d=1<>2]=h;i[h+24>>2]=b;break L}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=i[b>>2];while(1){c=b;if((i[b+4>>2]&-8)==(a|0)){break C}b=e>>>29|0;e=e<<1;d=(c+(b&4)|0)+16|0;b=i[d>>2];if(b){continue}break}i[d>>2]=h;i[h+24>>2]=c}i[h+12>>2]=h;i[h+8>>2]=h;break B}a=g+ -40|0;c=b+8&7?-8-b&7:0;h=a-c|0;i[4335]=h;c=b+c|0;i[4338]=c;i[c+4>>2]=h|1;i[(a+b|0)+4>>2]=40;i[4339]=i[4454];a=(d+(d+ -39&7?39-d&7:0)|0)+ -47|0;c=a>>>0>>0?e:a;i[c+4>>2]=27;a=i[4447];i[c+16>>2]=i[4446];i[c+20>>2]=a;a=i[4445];i[c+8>>2]=i[4444];i[c+12>>2]=a;i[4446]=c+8;i[4445]=g;i[4444]=b;i[4447]=0;a=c+24|0;while(1){i[a+4>>2]=7;b=a+8|0;a=a+4|0;if(d>>>0>b>>>0){continue}break}if((c|0)==(e|0)){break x}i[c+4>>2]=i[c+4>>2]&-2;d=c-e|0;i[e+4>>2]=d|1;i[c>>2]=d;if(d>>>0<=255){b=d>>>3|0;a=(b<<3)+17368|0;c=i[4332];b=1<>2]}i[a+8>>2]=e;i[b+12>>2]=e;i[e+12>>2]=a;i[e+8>>2]=b;break x}a=31;i[e+16>>2]=0;i[e+20>>2]=0;if(d>>>0<=16777215){b=d>>>8|0;a=b+1048320>>>16&8;c=b<>>16&4;g=c<>>16&2;a=(g<>>15|0)-(c|(a|b))|0;a=(a<<1|d>>>a+21&1)+28|0}i[e+28>>2]=a;b=(a<<2)+17632|0;c=i[4333];g=1<>2]=e;i[e+24>>2]=b;break N}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);b=i[b>>2];while(1){c=b;if((d|0)==(i[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;g=(c+(b&4)|0)+16|0;b=i[g>>2];if(b){continue}break}i[g>>2]=e;i[e+24>>2]=c}i[e+12>>2]=e;i[e+8>>2]=e;break x}a=i[c+8>>2];i[a+12>>2]=h;i[c+8>>2]=h;i[h+24>>2]=0;i[h+12>>2]=c;i[h+8>>2]=a}a=m+8|0;break a}a=i[c+8>>2];i[a+12>>2]=e;i[c+8>>2]=e;i[e+24>>2]=0;i[e+12>>2]=c;i[e+8>>2]=a}a=i[4335];if(a>>>0<=f>>>0){break d}b=a-f|0;i[4335]=b;a=i[4338];c=a+f|0;i[4338]=c;i[c+4>>2]=b|1;i[a+4>>2]=f|3;a=a+8|0;break a}i[4312]=48;a=0;break a}O:{if(!m){break O}a=i[d+28>>2];c=(a<<2)+17632|0;P:{if(i[c>>2]==(d|0)){i[c>>2]=b;if(b){break P}k=Kn(a)&k;i[4333]=k;break O}i[m+(i[m+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break O}}i[b+24>>2]=m;a=i[d+16>>2];if(a){i[b+16>>2]=a;i[a+24>>2]=b}a=i[d+20>>2];if(!a){break O}i[b+20>>2]=a;i[a+24>>2]=b}Q:{if(e>>>0<=15){a=e+f|0;i[d+4>>2]=a|3;a=a+d|0;i[a+4>>2]=i[a+4>>2]|1;break Q}i[d+4>>2]=f|3;i[h+4>>2]=e|1;i[e+h>>2]=e;if(e>>>0<=255){b=e>>>3|0;a=(b<<3)+17368|0;c=i[4332];b=1<>2]}i[a+8>>2]=h;i[b+12>>2]=h;i[h+12>>2]=a;i[h+8>>2]=b;break Q}a=31;if(e>>>0<=16777215){b=e>>>8|0;a=b+1048320>>>16&8;c=b<>>16&4;f=c<>>16&2;a=(f<>>15|0)-(c|(a|b))|0;a=(a<<1|e>>>a+21&1)+28|0}i[h+28>>2]=a;i[h+16>>2]=0;i[h+20>>2]=0;b=(a<<2)+17632|0;S:{c=1<>2]=h;break T}a=e<<((a|0)==31?0:25-(a>>>1|0)|0);f=i[b>>2];while(1){b=f;if((i[b+4>>2]&-8)==(e|0)){break S}c=a>>>29|0;a=a<<1;c=(b+(c&4)|0)+16|0;f=i[c>>2];if(f){continue}break}i[c>>2]=h}i[h+24>>2]=b;i[h+12>>2]=h;i[h+8>>2]=h;break Q}a=i[b+8>>2];i[a+12>>2]=h;i[b+8>>2]=h;i[h+24>>2]=0;i[h+12>>2]=b;i[h+8>>2]=a}a=d+8|0;break a}U:{if(!m){break U}a=i[b+28>>2];c=(a<<2)+17632|0;V:{if(i[c>>2]==(b|0)){i[c>>2]=d;if(d){break V}q=17332,r=Kn(a)&n,i[q>>2]=r;break U}i[(i[m+16>>2]==(b|0)?16:20)+m>>2]=d;if(!d){break U}}i[d+24>>2]=m;a=i[b+16>>2];if(a){i[d+16>>2]=a;i[a+24>>2]=d}a=i[b+20>>2];if(!a){break U}i[d+20>>2]=a;i[a+24>>2]=d}W:{if(e>>>0<=15){a=e+f|0;i[b+4>>2]=a|3;a=a+b|0;i[a+4>>2]=i[a+4>>2]|1;break W}i[b+4>>2]=f|3;i[o+4>>2]=e|1;i[e+o>>2]=e;if(k){c=k>>>3|0;a=(c<<3)+17368|0;d=i[4337];c=1<>2]}i[a+8>>2]=d;i[c+12>>2]=d;i[d+12>>2]=a;i[d+8>>2]=c}i[4337]=o;i[4334]=e}a=b+8|0}J=p+16|0;return a|0}function Vf(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;m=J-96|0;J=m;i[m+72>>2]=0;i[m+64>>2]=0;i[m+68>>2]=0;i[m+48>>2]=0;i[m+52>>2]=0;i[m+40>>2]=0;i[m+44>>2]=0;i[m+56>>2]=1065353216;i[m+32>>2]=0;i[m+24>>2]=0;i[m+28>>2]=0;A=i[a+124>>2];a:{b:{c:{d:{e:{if((b|0)<1){break e}C=i[a+216>>2]!=i[a+220>>2];q=1;while(1){f=w;w=f+1|0;f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{if(!j[a+308|0]){break q}r:{s:{n=i[a+296>>2];t=i[a+304>>2];c=n+(t>>>3|0)|0;h=i[a+300>>2];if(c>>>0>=h>>>0){break s}d=j[c|0];c=t+1|0;i[a+304>>2]=c;if(!(d>>>(t&7)&1)){break s}p=c>>>3|0;d=n+p|0;t:{if(d>>>0>=h>>>0){d=c;c=0;break t}e=j[d|0];d=t+2|0;i[a+304>>2]=d;p=d>>>3|0;c=e>>>(c&7)&1}e=n+p|0;if(e>>>0>>0){e=j[e|0];i[a+304>>2]=d+1;d=e>>>(d&7)<<1&2}else{d=0}c=(c|d)<<1;switch(c-1|0){case 0:case 2:case 4:break n;case 5:break p;case 1:case 3:break r;default:break q}}d=i[m+68>>2];if((d|0)==i[m+64>>2]){break d}y=-1;u=i[a+8>>2];t=i[u+24>>2];c=t;p=d+ -4|0;q=i[p>>2];e=-1;u:{if((q|0)==-1){break u}d=q+1|0;d=(d>>>0)%3|0?d:q+ -2|0;e=-1;if((d|0)==-1){break u}e=i[i[u>>2]+(d<<2)>>2]}d=i[c+(e<<2)>>2];if((d|0)!=-1){c=d+1|0;y=(c>>>0)%3|0?c:d+ -2|0}d=i[u+12>>2];r=o(f,3);c=r+1|0;i[d+(q<<2)>>2]=c;n=c<<2;i[n+d>>2]=q;s=r+2|0;i[d+(y<<2)>>2]=s;f=s<<2;i[f+d>>2]=y;h=-1;c=-1;v:{if((q|0)==-1){break v}d=q+((q>>>0)%3|0?-1:2)|0;c=-1;if((d|0)==-1){break v}c=i[i[u>>2]+(d<<2)>>2]}w:{if((y|0)==-1){break w}d=y+1|0;d=(d>>>0)%3|0?d:y+ -2|0;if((d|0)==-1){break w}h=i[i[u>>2]+(d<<2)>>2]}d=-1;if((c|0)==(e|0)|(e|0)==(h|0)){break c}d=i[u>>2];i[d+(r<<2)>>2]=e;i[d+n>>2]=h;i[d+f>>2]=c;if((c|0)!=-1){i[t+(c<<2)>>2]=s}d=i[a+120>>2]+(e>>>3&536870908)|0;c=i[d>>2];D=d,E=Kn(e)&c,i[D>>2]=E;i[p>>2]=r;break f}e=i[m+68>>2];if((e|0)==i[m+64>>2]){break d}s=i[a+8>>2];d=i[s+12>>2];r=o(f,3);p=(c|1)==5;n=r+(p?2:1)|0;c=n<<2;u=i[e+ -4>>2];i[d+c>>2]=u;i[d+(u<<2)>>2]=n;$f(s+24|0,11508);d=-1;h=i[a+8>>2];t=i[h+24>>2];if(i[h+28>>2]-t>>2>(A|0)){break c}e=r+2|0;h=i[h>>2];v=h+c|0;d=i[s+28>>2]-i[s+24>>2]|0;c=(d>>2)+ -1|0;i[v>>2]=c;if(d){i[t+(c<<2)>>2]=n}e=p?r:e;n=h+(p+r<<2)|0;x:{y:{z:{if((u|0)!=-1){c=u+((u>>>0)%3|0?-1:2)|0;if((c|0)==-1){break z}c=i[h+(c<<2)>>2];i[h+(e<<2)>>2]=c;if((c|0)==-1){break y}i[t+(c<<2)>>2]=e;break y}i[h+(e<<2)>>2]=-1;d=-1;break x}i[h+(e<<2)>>2]=-1}c=u+1|0;c=(c>>>0)%3|0?c:u+ -2|0;d=-1;if((c|0)==-1){break x}d=i[h+(c<<2)>>2]}i[n>>2]=d;i[i[m+68>>2]+ -4>>2]=r;break o}p=i[m+68>>2];e=i[m+64>>2];if((p|0)==(e|0)){break d}n=p+ -4|0;z=i[n>>2];i[m+68>>2]=n;r=i[m+44>>2];if(!r){break k}d=i[m+40>>2];s=Jn(r)>>>0>1;h=f&r+2147483647;A:{if(!s){break A}c=f;h=c;if(c>>>0>>0){break A}h=(f>>>0)%(r>>>0)|0}c=i[d+(h<<2)>>2];if(!c){break k}d=i[c>>2];if(!d){break k}t=r+ -1|0;while(1){B:{c=i[d+4>>2];C:{if((f|0)!=(c|0)){D:{if(!s){c=c&t;break D}if(c>>>0>>0){break D}c=(c>>>0)%(r>>>0)|0}if((c|0)!=(h|0)){break k}break C}if((f|0)==i[d+8>>2]){break B}}d=i[d>>2];if(d){continue}break k}break}if((n|0)!=i[m+72>>2]){i[n>>2]=i[d+12>>2];i[m+68>>2]=p;c=e;break j}t=n-e|0;p=t>>2;n=p+1|0;if(n>>>0>=1073741824){break m}h=t>>1;n=p>>>0<536870911?h>>>0>>0?n:h:1073741823;c=0;E:{if(!n){break E}if(n>>>0>=1073741824){break a}c=Dm(n<<2)}h=c+(p<<2)|0;i[h>>2]=i[d+12>>2];d=(n<<2)+c|0;p=h+4|0;if((t|0)>=1){pn(c,e,t)}i[m+72>>2]=d;i[m+68>>2]=p;i[m+64>>2]=c;if(!e){break j}nn(e);p=i[m+68>>2];c=i[m+64>>2];break j}c=i[a+8>>2];$f(c+24|0,11508);d=-1;e=i[a+8>>2];r=o(f,3);p=i[c+28>>2]-i[c+24>>2]|0;t=p>>2;h=t+ -1|0;i[i[e>>2]+(r<<2)>>2]=h;$f(e+24|0,11508);n=r+1|0;i[i[e>>2]+(n<<2)>>2]=(i[e+28>>2]-i[e+24>>2]>>2)+ -1;c=i[a+8>>2];$f(c+24|0,11508);e=r+2|0;i[i[c>>2]+(e<<2)>>2]=(i[c+28>>2]-i[c+24>>2]>>2)+ -1;c=i[a+8>>2];s=i[c+24>>2];if(i[c+28>>2]-s>>2>(A|0)){break c}F:{G:{if(!p){i[s+(t<<2)>>2]=n;d=1;break G}i[s+(h<<2)>>2]=r;d=0;if((p|0)==-4){break G}i[s+(t<<2)>>2]=n;d=t+1|0;if((d|0)==-1){break F}}i[s+(d<<2)>>2]=e}c=i[m+68>>2];if((c|0)!=i[m+72>>2]){i[c>>2]=r;i[m+68>>2]=c+4;break o}p=i[m+64>>2];n=c-p|0;h=n>>2;e=h+1|0;if(e>>>0>=1073741824){break l}d=n>>1;e=h>>>0<536870911?d>>>0>>0?e:d:1073741823;c=0;H:{if(!e){break H}if(e>>>0>=1073741824){break a}c=Dm(e<<2)}d=c+(h<<2)|0;i[d>>2]=r;e=c+(e<<2)|0;d=d+4|0;if((n|0)>=1){pn(c,p,n)}i[m+72>>2]=e;i[m+68>>2]=d;i[m+64>>2]=c;if(!p){break o}nn(p)}d=i[a+40>>2];if((d|0)==i[a+36>>2]){break f}f=(f^-1)+b|0;while(1){c=i[d+ -8>>2];if(c>>>0>f>>>0){break i}if((c|0)!=(f|0)){break f}e=j[d+ -4|0];c=d+ -12|0;d=i[c>>2];i[a+40>>2]=c;if((d|0)<0){break i}h=i[i[m+68>>2]+ -4>>2];i[m+20>>2]=(d^-1)+b;i[m+88>>2]=m+20;ag(m,m+40|0,m+20|0,m+88|0);d=i[m>>2];I:{if(e&1){c=-1;if((h|0)==-1){break I}c=h+1|0;c=(c>>>0)%3|0?c:h+ -2|0;break I}c=-1;if((h|0)==-1){break I}c=h+ -1|0;if((h>>>0)%3|0){break I}c=h+2|0}i[d+12>>2]=c;d=i[a+40>>2];if((d|0)!=i[a+36>>2]){continue}break}break f}x()}Sm();x()}Sm();x()}p=n;c=e}if((c|0)==(p|0)){break i}u=i[p+ -4>>2];d=(u|0)==-1;r=i[a+8>>2];if(i[i[r+12>>2]+(u<<2)>>2]!=-1?!d:0){break i}h=(z|0)==-1;s=i[r+12>>2];if(i[s+(z<<2)>>2]!=-1?!h:0){break i}t=o(f,3);f=t+2|0;i[s+(u<<2)>>2]=f;n=f<<2;i[n+s>>2]=u;c=t+1|0;i[s+(z<<2)>>2]=c;e=c<<2;i[e+s>>2]=z;if(d){break h}q=-1;v=-1;y=i[r>>2];d=y+(t<<2)|0;c=u+((u>>>0)%3|0?-1:2)|0;if((c|0)!=-1){v=i[(c<<2)+y>>2]}i[d>>2]=v;c=u+1|0;c=(c>>>0)%3|0?c:u+ -2|0;if((c|0)==-1){break g}q=i[(c<<2)+y>>2];break g}d=-1;if(q&1){break c}break e}v=-1;y=i[r>>2];i[y+(t<<2)>>2]=-1;q=-1}i[e+y>>2]=q;J:{K:{L:{if(!h){c=z+((z>>>0)%3|0?-1:2)|0;if((c|0)==-1){break L}c=i[(c<<2)+y>>2];i[n+y>>2]=c;if((c|0)==-1){break K}i[i[r+24>>2]+(c<<2)>>2]=f;break K}i[n+y>>2]=-1;B=-1;d=-1;break J}i[n+y>>2]=-1}B=-1;c=z+1|0;c=(c>>>0)%3|0?c:z+ -2|0;d=-1;if((c|0)==-1){break J}B=i[(c<<2)+y>>2];d=c}c=i[r+24>>2];e=c+(B<<2)|0;if((v|0)!=-1){i[c+(v<<2)>>2]=i[e>>2]}M:{if((d|0)==-1){break M}while(1){i[(d<<2)+y>>2]=v;c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1){break M}d=i[s+(c<<2)>>2];if((d|0)==-1){break M}c=d+1|0;d=(c>>>0)%3|0?c:d+ -2|0;if((d|0)!=-1){continue}break}}i[e>>2]=-1;N:{if(C){break N}c=i[m+28>>2];if((c|0)!=i[m+32>>2]){i[c>>2]=B;i[m+28>>2]=c+4;break N}O:{n=i[m+24>>2];h=c-n|0;f=h>>2;e=f+1|0;if(e>>>0<1073741824){d=h>>1;e=f>>>0<536870911?d>>>0>>0?e:d:1073741823;c=0;P:{if(!e){break P}if(e>>>0>=1073741824){break O}c=Dm(e<<2)}d=c+(f<<2)|0;i[d>>2]=B;e=c+(e<<2)|0;d=d+4|0;if((h|0)>=1){pn(c,n,h)}i[m+32>>2]=e;i[m+28>>2]=d;i[m+24>>2]=c;if(!n){break N}nn(n);p=i[m+68>>2];break N}Sm();x()}break a}i[p+ -4>>2]=t}q=(w|0)<(b|0);if((b|0)!=(w|0)){continue}break}w=b}d=-1;b=i[a+8>>2];if(i[b+28>>2]-i[b+24>>2]>>2>(A|0)){break c}Q:{R:{S:{q=i[m+68>>2];if((q|0)!=i[m+64>>2]){C=a+72|0;b=a+60|0;t=a+312|0;while(1){c=q+ -4|0;s=i[c>>2];i[m+68>>2]=c;T:{U:{V:{W:{if(k[a+270>>1]<=513){if(!j[a+364|0]){break V}e=i[a+360>>2];c=i[a+352>>2]+(e>>>3|0)|0;if(c>>>0>=l[a+356>>2]){break U}c=j[c|0];i[a+360>>2]=e+1;c=c>>>(e&7)&1;break W}c=Ce(t)}if(!c){break U}}p=i[a+8>>2];z=i[p>>2];if((w|0)>=((i[p+4>>2]-z>>2>>>0)/3|0)){break d}h=-1;v=-1;n=i[p+24>>2];f=n;c=-1;X:{if((s|0)==-1){break X}e=s+1|0;e=(e>>>0)%3|0?e:s+ -2|0;c=-1;if((e|0)==-1){break X}c=i[z+(e<<2)>>2]}f=i[f+(c<<2)>>2];Y:{if((f|0)==-1){break Y}e=f+1|0;e=(e>>>0)%3|0?e:f+ -2|0;if((e|0)==-1){break Y}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)!=-1){v=i[z+(f<<2)>>2]}h=e}q=-1;B=-1;n=i[n+(v<<2)>>2];f=-1;Z:{if((n|0)==-1){break Z}e=n+1|0;e=(e>>>0)%3|0?e:n+ -2|0;f=-1;if((e|0)==-1){break Z}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)!=-1){B=i[z+(f<<2)>>2]}f=e}A=i[p+12>>2];u=o(w,3);p=u<<2;i[A+p>>2]=s;i[A+(s<<2)>>2]=u;r=u+1|0;n=r<<2;i[n+A>>2]=h;i[A+(h<<2)>>2]=r;s=u+2|0;e=s<<2;i[e+A>>2]=f;i[A+(f<<2)>>2]=s;i[p+z>>2]=v;n=n+z|0;i[n>>2]=B;h=e+z|0;i[h>>2]=c;p=i[a+120>>2];f=r>>>0>>0?-1:v;e=p+(f>>>3&536870908)|0;c=i[e>>2];D=e,E=Kn(f)&c,i[D>>2]=E;q=(r|0)!=-1?i[n>>2]:q;e=p+(q>>>3&536870908)|0;c=i[e>>2];D=e,E=Kn(q)&c,i[D>>2]=E;q=-1;q=(s|0)!=-1?i[h>>2]:q;e=p+(q>>>3&536870908)|0;c=i[e>>2];D=e,E=Kn(q)&c,i[D>>2]=E;q=i[a+64>>2];e=i[a+68>>2];if((q|0)==e<<5){if((q+1|0)<=-1){break S}c=b;if(q>>>0<=1073741822){f=q+32&-32;e=e<<6;e=e>>>0>>0?f:e}else{e=2147483647}Qc(c,e);q=i[a+64>>2]}w=w+1|0;i[a+64>>2]=q+1;c=i[a+60>>2]+(q>>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>2];if((c|0)!=i[a+80>>2]){i[c>>2]=u;i[a+76>>2]=c+4;break T}p=i[C>>2];n=c-p|0;h=n>>2;f=h+1|0;if(f>>>0>=1073741824){break R}e=n>>1;f=h>>>0<536870911?e>>>0>>0?f:e:1073741823;c=0;_:{if(!f){break _}if(f>>>0>=1073741824){break a}c=Dm(f<<2)}e=c+(h<<2)|0;i[e>>2]=u;f=c+(f<<2)|0;e=e+4|0;if((n|0)>=1){pn(c,p,n)}i[a+80>>2]=f;i[a+76>>2]=e;i[a+72>>2]=c;if(!p){break T}nn(p);break T}c=i[a+64>>2];h=i[a+68>>2];if((c|0)==h<<5){if((c+1|0)<=-1){break S}e=b;if(c>>>0<=1073741822){f=c+32&-32;c=h<<6;c=c>>>0>>0?f:c}else{c=2147483647}Qc(e,c);c=i[a+64>>2]}i[a+64>>2]=c+1;f=i[a+60>>2]+(c>>>3&536870908)|0;e=i[f>>2];D=f,E=Kn(c)&e,i[D>>2]=E;c=i[a+76>>2];if((c|0)!=i[a+80>>2]){i[c>>2]=s;i[a+76>>2]=c+4;break T}p=i[C>>2];n=c-p|0;h=n>>2;f=h+1|0;if(f>>>0>=1073741824){break R}e=n>>1;f=h>>>0<536870911?e>>>0>>0?f:e:1073741823;c=0;$:{if(!f){break $}if(f>>>0>=1073741824){break Q}c=Dm(f<<2)}e=c+(h<<2)|0;i[e>>2]=s;f=c+(f<<2)|0;e=e+4|0;if((n|0)>=1){pn(c,p,n)}i[a+80>>2]=f;i[a+76>>2]=e;i[a+72>>2]=c;if(!p){break T}nn(p)}q=i[m+68>>2];if((q|0)!=i[m+64>>2]){continue}break}b=i[a+8>>2]}if(((i[b+4>>2]-i[b>>2]>>2>>>0)/3|0)!=(w|0)){break c}q=i[b+24>>2];d=i[b+28>>2]-q>>2;v=i[m+24>>2];f=i[m+28>>2];if((v|0)==(f|0)){break b}while(1){h=i[v>>2];w=d+ -1|0;aa:{if(i[(w<<2)+q>>2]!=-1){c=d;break aa}q=i[b+24>>2];while(1){w=d+ -2|0;c=d+ -1|0;d=c;if(i[(w<<2)+q>>2]==-1){continue}break}}if(w>>>0>=h>>>0){i[m>>2]=b;e=w<<2;d=i[e+q>>2];g[m+12|0]=1;i[m+8>>2]=d;i[m+4>>2]=d;if((d|0)!=-1){i[i[b>>2]+(d<<2)>>2]=h;Jd(m);d=i[m+8>>2];if((d|0)!=-1){while(1){i[i[i[a+8>>2]>>2]+(d<<2)>>2]=h;Jd(m);d=i[m+8>>2];if((d|0)!=-1){continue}break}}b=i[a+8>>2]}d=i[b+24>>2];e=d+e|0;if((h|0)!=-1){i[d+(h<<2)>>2]=i[e>>2]}i[e>>2]=-1;p=1<>2];n=d+(h>>>3&536870908)|0;e=n;h=d+(w>>>3&536870908)|0;d=1<>2];ba:{if(i[h>>2]&d){break ba}w=i[n>>2]&(p^-1)}i[e>>2]=w;i[h>>2]=i[h>>2]&(d^-1);c=c+ -1|0}d=c;v=v+4|0;if((f|0)==(v|0)){break c}q=i[b+24>>2];continue}}Sm();x()}Sm();x()}break a}d=-1}v=i[m+24>>2]}if(v){i[m+28>>2]=v;nn(v)}a=i[m+48>>2];if(a){while(1){b=i[a>>2];nn(a);a=b;if(a){continue}break}}a=i[m+40>>2];i[m+40>>2]=0;if(a){nn(a)}a=i[m+64>>2];if(a){i[m+68>>2]=a;nn(a)}J=m+96|0;return d}Ba(12220);x()}function lg(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;m=J-96|0;J=m;i[m+72>>2]=0;i[m+64>>2]=0;i[m+68>>2]=0;i[m+48>>2]=0;i[m+52>>2]=0;i[m+40>>2]=0;i[m+44>>2]=0;i[m+56>>2]=1065353216;i[m+32>>2]=0;i[m+24>>2]=0;i[m+28>>2]=0;B=i[a+124>>2];a:{b:{c:{d:{e:{if((b|0)<1){break e}A=a+232|0;C=i[a+216>>2]!=i[a+220>>2];t=1;while(1){f=y;y=f+1|0;c=ng(A);f:{if(!c){d=i[m+68>>2];if((d|0)==i[m+64>>2]){break d}w=-1;q=i[a+8>>2];t=i[q+24>>2];c=t;n=d+ -4|0;v=i[n>>2];h=-1;g:{if((v|0)==-1){break g}d=v+1|0;d=(d>>>0)%3|0?d:v+ -2|0;h=-1;if((d|0)==-1){break g}h=i[i[q>>2]+(d<<2)>>2]}d=i[c+(h<<2)>>2];if((d|0)!=-1){c=d+1|0;w=(c>>>0)%3|0?c:d+ -2|0}d=i[q+12>>2];r=o(f,3);c=r+1|0;i[d+(v<<2)>>2]=c;e=c<<2;i[e+d>>2]=v;s=r+2|0;i[d+(w<<2)>>2]=s;f=s<<2;i[f+d>>2]=w;p=-1;c=-1;h:{if((v|0)==-1){break h}d=v+((v>>>0)%3|0?-1:2)|0;c=-1;if((d|0)==-1){break h}c=i[i[q>>2]+(d<<2)>>2]}i:{if((w|0)==-1){break i}d=w+1|0;d=(d>>>0)%3|0?d:w+ -2|0;if((d|0)==-1){break i}p=i[i[q>>2]+(d<<2)>>2]}d=-1;if((c|0)==(h|0)|(h|0)==(p|0)){break c}d=i[q>>2];i[d+(r<<2)>>2]=h;i[d+e>>2]=p;i[d+f>>2]=c;if((c|0)!=-1){i[t+(c<<2)>>2]=s}d=i[a+120>>2]+(h>>>3&536870908)|0;c=i[d>>2];D=d,E=Kn(h)&c,i[D>>2]=E;i[n>>2]=r;og(A,r);break f}d=-1;j:{k:{l:{m:{n:{o:{p:{q:{r:{switch(c+ -1|0){case 2:case 4:h=i[m+68>>2];if((h|0)==i[m+64>>2]){break d}r=i[a+8>>2];d=i[r+12>>2];q=o(f,3);p=(c|0)==5;n=q+(p?2:1)|0;c=n<<2;v=i[h+ -4>>2];i[d+c>>2]=v;i[d+(v<<2)>>2]=n;$f(r+24|0,11508);d=-1;e=i[a+8>>2];s=i[e+24>>2];if(i[e+28>>2]-s>>2>(B|0)){break c}h=q+2|0;e=i[e>>2];u=e+c|0;d=i[r+28>>2]-i[r+24>>2]|0;c=(d>>2)+ -1|0;i[u>>2]=c;if(d){i[s+(c<<2)>>2]=n}h=p?q:h;d=e+(p+q<<2)|0;s:{t:{u:{if((v|0)!=-1){c=v+((v>>>0)%3|0?-1:2)|0;if((c|0)==-1){break u}c=i[e+(c<<2)>>2];i[e+(h<<2)>>2]=c;if((c|0)==-1){break t}i[s+(c<<2)>>2]=h;break t}i[e+(h<<2)>>2]=-1;h=-1;break s}i[e+(h<<2)>>2]=-1}c=v+1|0;c=(c>>>0)%3|0?c:v+ -2|0;h=-1;if((c|0)==-1){break s}h=i[e+(c<<2)>>2]}i[d>>2]=h;d=i[m+68>>2];i[d+ -4>>2]=q;break q;case 0:p=i[m+68>>2];h=i[m+64>>2];if((p|0)==(h|0)){break d}n=p+ -4|0;z=i[n>>2];i[m+68>>2]=n;q=i[m+44>>2];if(!q){break n}d=i[m+40>>2];r=Jn(q)>>>0>1;e=f&q+2147483647;v:{if(!r){break v}c=f;e=c;if(c>>>0>>0){break v}e=(f>>>0)%(q>>>0)|0}c=i[d+(e<<2)>>2];if(!c){break n}d=i[c>>2];if(!d){break n}s=q+ -1|0;while(1){w:{c=i[d+4>>2];x:{if((f|0)!=(c|0)){y:{if(!r){c=c&s;break y}if(c>>>0>>0){break y}c=(c>>>0)%(q>>>0)|0}if((c|0)!=(e|0)){break n}break x}if((f|0)==i[d+8>>2]){break w}}d=i[d>>2];if(d){continue}break n}break}if((n|0)!=i[m+72>>2]){i[n>>2]=i[d+12>>2];i[m+68>>2]=p;c=h;break m}s=n-h|0;p=s>>2;n=p+1|0;if(n>>>0>=1073741824){break p}e=s>>1;n=p>>>0<536870911?e>>>0>>0?n:e:1073741823;c=0;z:{if(!n){break z}if(n>>>0>=1073741824){break a}c=Dm(n<<2)}e=c+(p<<2)|0;i[e>>2]=i[d+12>>2];d=(n<<2)+c|0;p=e+4|0;if((s|0)>=1){pn(c,h,s)}i[m+72>>2]=d;i[m+68>>2]=p;i[m+64>>2]=c;if(!h){break m}nn(h);p=i[m+68>>2];c=i[m+64>>2];break m;case 6:break r;default:break c}}c=i[a+8>>2];$f(c+24|0,11508);h=i[a+8>>2];q=o(f,3);p=i[c+28>>2]-i[c+24>>2]|0;s=p>>2;e=s+ -1|0;i[i[h>>2]+(q<<2)>>2]=e;$f(h+24|0,11508);n=q+1|0;i[i[h>>2]+(n<<2)>>2]=(i[h+28>>2]-i[h+24>>2]>>2)+ -1;c=i[a+8>>2];$f(c+24|0,11508);h=q+2|0;i[i[c>>2]+(h<<2)>>2]=(i[c+28>>2]-i[c+24>>2]>>2)+ -1;c=i[a+8>>2];r=i[c+24>>2];if(i[c+28>>2]-r>>2>(B|0)){break c}A:{B:{if(!p){i[r+(s<<2)>>2]=n;d=1;break B}i[r+(e<<2)>>2]=q;d=0;if((p|0)==-4){break B}i[r+(s<<2)>>2]=n;d=s+1|0;if((d|0)==-1){break A}}i[r+(d<<2)>>2]=h}c=i[m+68>>2];if((c|0)!=i[m+72>>2]){i[c>>2]=q;d=c+4|0;i[m+68>>2]=d;break q}p=i[m+64>>2];n=c-p|0;e=n>>2;h=e+1|0;if(h>>>0>=1073741824){break o}d=n>>1;h=e>>>0<536870911?d>>>0>>0?h:d:1073741823;c=0;C:{if(!h){break C}if(h>>>0>=1073741824){break a}c=Dm(h<<2)}d=c+(e<<2)|0;i[d>>2]=q;h=c+(h<<2)|0;d=d+4|0;if((n|0)>=1){pn(c,p,n)}i[m+72>>2]=h;i[m+68>>2]=d;i[m+64>>2]=c;if(!p){break q}nn(p);d=i[m+68>>2]}og(A,i[d+ -4>>2]);d=i[a+40>>2];if((d|0)==i[a+36>>2]){break f}f=(f^-1)+b|0;while(1){c=i[d+ -8>>2];if(c>>>0>f>>>0){break l}if((c|0)!=(f|0)){break f}h=j[d+ -4|0];c=d+ -12|0;d=i[c>>2];i[a+40>>2]=c;if((d|0)<0){break l}e=i[i[m+68>>2]+ -4>>2];i[m+20>>2]=(d^-1)+b;i[m+88>>2]=m+20;ag(m,m+40|0,m+20|0,m+88|0);d=i[m>>2];D:{if(h&1){c=-1;if((e|0)==-1){break D}c=e+1|0;c=(c>>>0)%3|0?c:e+ -2|0;break D}c=-1;if((e|0)==-1){break D}c=e+ -1|0;if((e>>>0)%3|0){break D}c=e+2|0}i[d+12>>2]=c;d=i[a+40>>2];if((d|0)!=i[a+36>>2]){continue}break}break f}Sm();x()}Sm();x()}p=n;c=h}if((c|0)==(p|0)){break l}s=i[p+ -4>>2];d=(s|0)==-1;v=i[a+8>>2];if(i[i[v+12>>2]+(s<<2)>>2]!=-1?!d:0){break l}e=(z|0)==-1;q=i[v+12>>2];if(i[q+(z<<2)>>2]!=-1?!e:0){break l}r=o(f,3);f=r+2|0;i[q+(s<<2)>>2]=f;n=f<<2;i[n+q>>2]=s;c=r+1|0;i[q+(z<<2)>>2]=c;h=c<<2;i[h+q>>2]=z;if(d){break k}u=-1;t=-1;w=i[v>>2];d=w+(r<<2)|0;c=s+((s>>>0)%3|0?-1:2)|0;if((c|0)!=-1){t=i[(c<<2)+w>>2]}i[d>>2]=t;c=s+1|0;c=(c>>>0)%3|0?c:s+ -2|0;if((c|0)==-1){break j}u=i[(c<<2)+w>>2];break j}d=-1;if(t&1){break c}break e}t=-1;w=i[v>>2];i[w+(r<<2)>>2]=-1;u=-1}i[h+w>>2]=u;E:{F:{G:{if(!e){c=z+((z>>>0)%3|0?-1:2)|0;if((c|0)==-1){break G}c=i[(c<<2)+w>>2];i[n+w>>2]=c;if((c|0)==-1){break F}i[i[v+24>>2]+(c<<2)>>2]=f;break F}i[n+w>>2]=-1;s=-1;d=-1;break E}i[n+w>>2]=-1}s=-1;c=z+1|0;c=(c>>>0)%3|0?c:z+ -2|0;d=-1;if((c|0)==-1){break E}s=i[(c<<2)+w>>2];d=c}f=i[a+388>>2];h=t<<2;c=f+h|0;n=c;e=i[c>>2];c=s<<2;i[n>>2]=e+i[c+f>>2];f=c;c=i[v+24>>2];f=f+c|0;if((t|0)!=-1){i[c+h>>2]=i[f>>2]}H:{if((d|0)==-1){break H}while(1){i[(d<<2)+w>>2]=t;c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1){break H}d=i[q+(c<<2)>>2];if((d|0)==-1){break H}c=d+1|0;d=(c>>>0)%3|0?c:d+ -2|0;if((d|0)!=-1){continue}break}}i[f>>2]=-1;I:{if(C){break I}c=i[m+28>>2];if((c|0)!=i[m+32>>2]){i[c>>2]=s;i[m+28>>2]=c+4;break I}J:{n=i[m+24>>2];e=c-n|0;f=e>>2;h=f+1|0;if(h>>>0<1073741824){d=e>>1;h=f>>>0<536870911?d>>>0>>0?h:d:1073741823;c=0;K:{if(!h){break K}if(h>>>0>=1073741824){break J}c=Dm(h<<2)}d=c+(f<<2)|0;i[d>>2]=s;h=c+(h<<2)|0;d=d+4|0;if((e|0)>=1){pn(c,n,e)}i[m+32>>2]=h;i[m+28>>2]=d;i[m+24>>2]=c;if(!n){break I}nn(n);p=i[m+68>>2];break I}Sm();x()}break a}i[p+ -4>>2]=r;og(A,r)}t=(y|0)<(b|0);if((b|0)!=(y|0)){continue}break}y=b}d=-1;p=i[a+8>>2];if(i[p+28>>2]-i[p+24>>2]>>2>(B|0)){break c}L:{M:{N:{u=i[m+68>>2];if((u|0)!=i[m+64>>2]){B=a+72|0;h=a+60|0;s=a+312|0;while(1){b=u+ -4|0;r=i[b>>2];i[m+68>>2]=b;O:{P:{Q:{R:{if(k[a+270>>1]<=513){if(!j[a+364|0]){break Q}c=i[a+360>>2];b=i[a+352>>2]+(c>>>3|0)|0;if(b>>>0>=l[a+356>>2]){break P}b=j[b|0];i[a+360>>2]=c+1;b=b>>>(c&7)&1;break R}b=Ce(s)}if(!b){break P}}p=i[a+8>>2];w=i[p>>2];if((y|0)>=((i[p+4>>2]-w>>2>>>0)/3|0)){break d}t=-1;b=-1;n=i[p+24>>2];e=n;c=-1;S:{if((r|0)==-1){break S}f=r+1|0;f=(f>>>0)%3|0?f:r+ -2|0;c=-1;if((f|0)==-1){break S}c=i[w+(f<<2)>>2]}e=i[e+(c<<2)>>2];T:{if((e|0)==-1){break T}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)==-1){break T}e=f+1|0;e=(e>>>0)%3|0?e:f+ -2|0;if((e|0)!=-1){b=i[w+(e<<2)>>2]}t=f}A=-1;C=-1;n=i[n+(b<<2)>>2];e=-1;U:{if((n|0)==-1){break U}f=n+1|0;f=(f>>>0)%3|0?f:n+ -2|0;e=-1;if((f|0)==-1){break U}e=f+1|0;e=(e>>>0)%3|0?e:f+ -2|0;if((e|0)!=-1){C=i[w+(e<<2)>>2]}e=f}v=i[p+12>>2];z=o(y,3);p=z<<2;i[v+p>>2]=r;i[v+(r<<2)>>2]=z;q=z+1|0;n=q<<2;i[n+v>>2]=t;i[v+(t<<2)>>2]=q;r=z+2|0;f=r<<2;i[f+v>>2]=e;i[v+(e<<2)>>2]=r;i[p+w>>2]=b;n=n+w|0;i[n>>2]=C;e=f+w|0;i[e>>2]=c;t=i[a+120>>2];f=q>>>0>>0?-1:b;c=t+(f>>>3&536870908)|0;b=i[c>>2];D=c,E=Kn(f)&b,i[D>>2]=E;A=(q|0)!=-1?i[n>>2]:A;c=t+(A>>>3&536870908)|0;b=i[c>>2];D=c,E=Kn(A)&b,i[D>>2]=E;u=-1;u=(r|0)!=-1?i[e>>2]:u;c=t+(u>>>3&536870908)|0;b=i[c>>2];D=c,E=Kn(u)&b,i[D>>2]=E;u=i[a+64>>2];c=i[a+68>>2];if((u|0)==c<<5){if((u+1|0)<=-1){break N}b=h;if(u>>>0<=1073741822){f=u+32&-32;c=c<<6;c=c>>>0>>0?f:c}else{c=2147483647}Qc(b,c);u=i[a+64>>2]}y=y+1|0;i[a+64>>2]=u+1;b=i[a+60>>2]+(u>>>3&536870908)|0;i[b>>2]=i[b>>2]|1<>2];if((b|0)!=i[a+80>>2]){i[b>>2]=z;i[a+76>>2]=b+4;break O}t=i[B>>2];n=b-t|0;e=n>>2;f=e+1|0;if(f>>>0>=1073741824){break M}c=n>>1;f=e>>>0<536870911?c>>>0>>0?f:c:1073741823;b=0;V:{if(!f){break V}if(f>>>0>=1073741824){break a}b=Dm(f<<2)}c=b+(e<<2)|0;i[c>>2]=z;f=b+(f<<2)|0;c=c+4|0;if((n|0)>=1){pn(b,t,n)}i[a+80>>2]=f;i[a+76>>2]=c;i[a+72>>2]=b;if(!t){break O}nn(t);break O}c=i[a+64>>2];e=i[a+68>>2];if((c|0)==e<<5){if((c+1|0)<=-1){break N}b=h;if(c>>>0<=1073741822){f=c+32&-32;c=e<<6;c=c>>>0>>0?f:c}else{c=2147483647}Qc(b,c);c=i[a+64>>2]}i[a+64>>2]=c+1;f=i[a+60>>2]+(c>>>3&536870908)|0;b=i[f>>2];D=f,E=Kn(c)&b,i[D>>2]=E;b=i[a+76>>2];if((b|0)!=i[a+80>>2]){i[b>>2]=r;i[a+76>>2]=b+4;break O}t=i[B>>2];n=b-t|0;e=n>>2;f=e+1|0;if(f>>>0>=1073741824){break M}c=n>>1;f=e>>>0<536870911?c>>>0>>0?f:c:1073741823;b=0;W:{if(!f){break W}if(f>>>0>=1073741824){break L}b=Dm(f<<2)}c=b+(e<<2)|0;i[c>>2]=r;f=b+(f<<2)|0;c=c+4|0;if((n|0)>=1){pn(b,t,n)}i[a+80>>2]=f;i[a+76>>2]=c;i[a+72>>2]=b;if(!t){break O}nn(t)}u=i[m+68>>2];if((u|0)!=i[m+64>>2]){continue}break}p=i[a+8>>2]}if(((i[p+4>>2]-i[p>>2]>>2>>>0)/3|0)!=(y|0)){break c}u=i[p+24>>2];d=i[p+28>>2]-u>>2;b=i[m+24>>2];f=i[m+28>>2];if((b|0)==(f|0)){break b}while(1){e=i[b>>2];y=d+ -1|0;X:{if(i[(y<<2)+u>>2]!=-1){c=d;break X}u=i[p+24>>2];while(1){y=d+ -2|0;c=d+ -1|0;d=c;if(i[(y<<2)+u>>2]==-1){continue}break}}if(y>>>0>=e>>>0){i[m>>2]=p;h=y<<2;d=i[h+u>>2];g[m+12|0]=1;i[m+8>>2]=d;i[m+4>>2]=d;if((d|0)!=-1){i[i[p>>2]+(d<<2)>>2]=e;Jd(m);d=i[m+8>>2];if((d|0)!=-1){while(1){i[i[i[a+8>>2]>>2]+(d<<2)>>2]=e;Jd(m);d=i[m+8>>2];if((d|0)!=-1){continue}break}}p=i[a+8>>2]}d=i[p+24>>2];h=d+h|0;if((e|0)!=-1){i[d+(e<<2)>>2]=i[h>>2]}i[h>>2]=-1;t=1<>2];n=d+(e>>>3&536870908)|0;h=n;e=d+(y>>>3&536870908)|0;d=1<>2];Y:{if(i[e>>2]&d){break Y}y=i[n>>2]&(t^-1)}i[h>>2]=y;i[e>>2]=i[e>>2]&(d^-1);c=c+ -1|0}d=c;b=b+4|0;if((f|0)==(b|0)){break c}u=i[p+24>>2];continue}}Sm();x()}Sm();x()}break a}d=-1}b=i[m+24>>2]}if(b){i[m+28>>2]=b;nn(b)}a=i[m+48>>2];if(a){while(1){b=i[a>>2];nn(a);a=b;if(a){continue}break}}a=i[m+40>>2];i[m+40>>2]=0;if(a){nn(a)}a=i[m+64>>2];if(a){i[m+68>>2]=a;nn(a)}J=m+96|0;return d}Ba(12220);x()}function mh(a,b,c,d,e){var f=0,k=0;f=J-32|0;J=f;i[b+32>>2]=d;i[b+40>>2]=c;i[b+4>>2]=e;jh(a,d,f+16|0);a:{if(i[a>>2]){break a}c=a+4|0;if(g[a+15|0]<=-1){nn(i[c>>2])}e=j[f+23|0];if((M[i[i[b>>2]+8>>2]](b)|0)!=(e|0)){b=Dm(64);i[f>>2]=b;i[f+4>>2]=50;i[f+8>>2]=-2147483584;g[b+50|0]=0;d=j[13665]|j[13666]<<8;g[b+48|0]=d;g[b+49|0]=d>>>8;d=j[13661]|j[13662]<<8|(j[13663]<<16|j[13664]<<24);e=j[13657]|j[13658]<<8|(j[13659]<<16|j[13660]<<24);g[b+40|0]=e;g[b+41|0]=e>>>8;g[b+42|0]=e>>>16;g[b+43|0]=e>>>24;g[b+44|0]=d;g[b+45|0]=d>>>8;g[b+46|0]=d>>>16;g[b+47|0]=d>>>24;d=j[13653]|j[13654]<<8|(j[13655]<<16|j[13656]<<24);e=j[13649]|j[13650]<<8|(j[13651]<<16|j[13652]<<24);g[b+32|0]=e;g[b+33|0]=e>>>8;g[b+34|0]=e>>>16;g[b+35|0]=e>>>24;g[b+36|0]=d;g[b+37|0]=d>>>8;g[b+38|0]=d>>>16;g[b+39|0]=d>>>24;d=j[13645]|j[13646]<<8|(j[13647]<<16|j[13648]<<24);e=j[13641]|j[13642]<<8|(j[13643]<<16|j[13644]<<24);g[b+24|0]=e;g[b+25|0]=e>>>8;g[b+26|0]=e>>>16;g[b+27|0]=e>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[13637]|j[13638]<<8|(j[13639]<<16|j[13640]<<24);e=j[13633]|j[13634]<<8|(j[13635]<<16|j[13636]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[13629]|j[13630]<<8|(j[13631]<<16|j[13632]<<24);e=j[13625]|j[13626]<<8|(j[13627]<<16|j[13628]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13621]|j[13622]<<8|(j[13623]<<16|j[13624]<<24);e=j[13617]|j[13618]<<8|(j[13619]<<16|j[13620]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}d=j[f+21|0];g[b+36|0]=d;k=j[f+22|0];g[b+37|0]=k;if((d+ -1&255)>>>0>=2){b=Dm(32);i[f>>2]=b;i[f+4>>2]=22;i[f+8>>2]=-2147483616;g[b+22|0]=0;d=j[13686]|j[13687]<<8|(j[13688]<<16|j[13689]<<24);e=j[13682]|j[13683]<<8|(j[13684]<<16|j[13685]<<24);g[b+14|0]=e;g[b+15|0]=e>>>8;g[b+16|0]=e>>>16;g[b+17|0]=e>>>24;g[b+18|0]=d;g[b+19|0]=d>>>8;g[b+20|0]=d>>>16;g[b+21|0]=d>>>24;d=j[13680]|j[13681]<<8|(j[13682]<<16|j[13683]<<24);e=j[13676]|j[13677]<<8|(j[13678]<<16|j[13679]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13672]|j[13673]<<8|(j[13674]<<16|j[13675]<<24);e=j[13668]|j[13669]<<8|(j[13670]<<16|j[13671]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-5;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}if(!((d|0)!=2|(e?2:3)>>>0>=k>>>0)){b=Dm(32);i[f>>2]=b;i[f+4>>2]=22;i[f+8>>2]=-2147483616;g[b+22|0]=0;d=j[13709]|j[13710]<<8|(j[13711]<<16|j[13712]<<24);e=j[13705]|j[13706]<<8|(j[13707]<<16|j[13708]<<24);g[b+14|0]=e;g[b+15|0]=e>>>8;g[b+16|0]=e>>>16;g[b+17|0]=e>>>24;g[b+18|0]=d;g[b+19|0]=d>>>8;g[b+20|0]=d>>>16;g[b+21|0]=d>>>24;d=j[13703]|j[13704]<<8|(j[13705]<<16|j[13706]<<24);e=j[13699]|j[13700]<<8|(j[13701]<<16|j[13702]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13695]|j[13696]<<8|(j[13697]<<16|j[13698]<<24);e=j[13691]|j[13692]<<8|(j[13693]<<16|j[13694]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-5;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}d=d<<8|k;h[i[b+32>>2]+38>>1]=d;b:{if((d&65535)>>>0<259|h[f+26>>1]>-1){break b}kh(a,b);if(i[a>>2]){break a}if(g[c+11|0]>-1){break b}nn(i[c>>2])}if(!(M[i[i[b>>2]+12>>2]](b)|0)){b=Dm(48);i[f>>2]=b;i[f+4>>2]=33;i[f+8>>2]=-2147483600;g[b+33|0]=0;g[b+32|0]=j[13746];d=j[13742]|j[13743]<<8|(j[13744]<<16|j[13745]<<24);e=j[13738]|j[13739]<<8|(j[13740]<<16|j[13741]<<24);g[b+24|0]=e;g[b+25|0]=e>>>8;g[b+26|0]=e>>>16;g[b+27|0]=e>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[13734]|j[13735]<<8|(j[13736]<<16|j[13737]<<24);e=j[13730]|j[13731]<<8|(j[13732]<<16|j[13733]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[13726]|j[13727]<<8|(j[13728]<<16|j[13729]<<24);e=j[13722]|j[13723]<<8|(j[13724]<<16|j[13725]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13718]|j[13719]<<8|(j[13720]<<16|j[13721]<<24);e=j[13714]|j[13715]<<8|(j[13716]<<16|j[13717]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}if(!(M[i[i[b>>2]+20>>2]](b)|0)){b=Dm(32);i[f>>2]=b;i[f+4>>2]=31;i[f+8>>2]=-2147483616;g[b+31|0]=0;d=j[13775]|j[13776]<<8|(j[13777]<<16|j[13778]<<24);e=j[13771]|j[13772]<<8|(j[13773]<<16|j[13774]<<24);g[b+23|0]=e;g[b+24|0]=e>>>8;g[b+25|0]=e>>>16;g[b+26|0]=e>>>24;g[b+27|0]=d;g[b+28|0]=d>>>8;g[b+29|0]=d>>>16;g[b+30|0]=d>>>24;d=j[13768]|j[13769]<<8|(j[13770]<<16|j[13771]<<24);e=j[13764]|j[13765]<<8|(j[13766]<<16|j[13767]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[13760]|j[13761]<<8|(j[13762]<<16|j[13763]<<24);e=j[13756]|j[13757]<<8|(j[13758]<<16|j[13759]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13752]|j[13753]<<8|(j[13754]<<16|j[13755]<<24);e=j[13748]|j[13749]<<8|(j[13750]<<16|j[13751]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}if(!(M[i[i[b>>2]+24>>2]](b)|0)){b=Dm(48);i[f>>2]=b;i[f+4>>2]=34;i[f+8>>2]=-2147483600;g[b+34|0]=0;d=j[13812]|j[13813]<<8;g[b+32|0]=d;g[b+33|0]=d>>>8;d=j[13808]|j[13809]<<8|(j[13810]<<16|j[13811]<<24);e=j[13804]|j[13805]<<8|(j[13806]<<16|j[13807]<<24);g[b+24|0]=e;g[b+25|0]=e>>>8;g[b+26|0]=e>>>16;g[b+27|0]=e>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[13800]|j[13801]<<8|(j[13802]<<16|j[13803]<<24);e=j[13796]|j[13797]<<8|(j[13798]<<16|j[13799]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[13792]|j[13793]<<8|(j[13794]<<16|j[13795]<<24);e=j[13788]|j[13789]<<8|(j[13790]<<16|j[13791]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13784]|j[13785]<<8|(j[13786]<<16|j[13787]<<24);e=j[13780]|j[13781]<<8|(j[13782]<<16|j[13783]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}J=f+32|0}function jh(a,b,c){var d=0,e=0,f=0,k=0,m=0,n=0;e=J-16|0;J=e;k=i[b+12>>2];d=i[b+20>>2];f=i[b+16>>2];m=f+5|0;if(m>>>0<5){d=d+1|0}a:{if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}d=f+i[b>>2]|0;k=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);g[c|0]=k;g[c+1|0]=k>>>8;g[c+2|0]=k>>>16;g[c+3|0]=k>>>24;g[c+4|0]=j[d+4|0];k=b;d=i[b+20>>2];f=i[b+16>>2]+5|0;if(f>>>0<5){d=d+1|0}m=f;f=d;i[k+16>>2]=m;i[k+20>>2]=d;if(Nl(c,13566,5)){b=Dm(32);i[e>>2]=b;i[e+4>>2]=17;i[e+8>>2]=-2147483616;g[b+17|0]=0;g[b+16|0]=j[13588];c=j[13584]|j[13585]<<8|(j[13586]<<16|j[13587]<<24);d=j[13580]|j[13581]<<8|(j[13582]<<16|j[13583]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[13576]|j[13577]<<8|(j[13578]<<16|j[13579]<<24);d=j[13572]|j[13573]<<8|(j[13574]<<16|j[13575]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}d=i[b+12>>2];if((d|0)<(f|0)?1:(d|0)<=(f|0)?l[b+8>>2]<=m>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}g[c+5|0]=j[m+i[b>>2]|0];d=i[b+20>>2];f=i[b+16>>2]+1|0;if(f>>>0<1){d=d+1|0}i[b+16>>2]=f;i[k+20>>2]=d;k=i[b+12>>2];if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<=f>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}g[c+6|0]=j[f+i[b>>2]|0];d=i[b+20>>2];f=i[b+16>>2]+1|0;if(f>>>0<1){d=d+1|0}i[b+16>>2]=f;i[b+20>>2]=d;k=i[b+12>>2];if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<=f>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}g[c+7|0]=j[f+i[b>>2]|0];d=i[b+20>>2];f=i[b+16>>2]+1|0;if(f>>>0<1){d=d+1|0}i[b+16>>2]=f;i[b+20>>2]=d;k=i[b+12>>2];if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<=f>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}g[c+8|0]=j[f+i[b>>2]|0];d=i[b+20>>2];f=d;n=i[b+16>>2];m=n+1|0;if(m>>>0<1){d=d+1|0}i[b+16>>2]=m;i[b+20>>2]=d;k=i[b+12>>2];d=f;f=n+3|0;if(f>>>0<3){d=d+1|0}if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}f=c;c=m+i[b>>2]|0;h[f+10>>1]=j[c|0]|j[c+1|0]<<8;c=b;f=b;d=i[b+20>>2];b=i[b+16>>2]+2|0;if(b>>>0<2){d=d+1|0}i[f+16>>2]=b;i[c+20>>2]=d;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0}J=e+16|0}function jg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;q=J+ -64|0;J=q;i[a+132>>2]=0;if(i[a+148>>2]){c=i[a+144>>2];if(c){while(1){b=i[c>>2];nn(c);c=b;if(b){continue}break}}i[a+144>>2]=0;b=i[a+140>>2];if(b){c=0;while(1){i[i[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}i[a+148>>2]=0}a:{b:{c=i[a+4>>2];e=j[c+36|0];b=e<<8|j[c+37|0];c:{if(b>>>0>513){break c}n=i[c+32>>2];if(b>>>0<=511){h=i[n+12>>2];d=i[n+20>>2];m=i[n+16>>2];b=m+4|0;if(b>>>0<4){d=d+1|0}f=b;b=d;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]>>0:0){break b}d=m+i[n>>2]|0;d=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[n+16>>2]=f;i[n+20>>2]=b;i[a+132>>2]=d;break c}if(!Pf(1,q,n)){break b}c=i[a+4>>2];e=j[c+36|0];i[a+132>>2]=i[q>>2]}n=i[c+32>>2];d:{e:{f:{if((e&255)>>>0<=1){e=0;h=i[n+12>>2];b=i[n+20>>2];m=i[n+16>>2];d=m+4|0;if(d>>>0<4){b=b+1|0}f=d;d=b;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]>>0:0){break a}b=m+i[n>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+60>>2]=b;i[n+16>>2]=f;i[n+20>>2]=d;i[a+156>>2]=b;u=a+156|0;break f}e=0;if(!Pf(1,q+60|0,n)){break a}c=i[a+4>>2];b=j[c+36|0];i[a+156>>2]=i[q+60>>2];u=a+156|0;if(b>>>0>1){break e}}h=i[c+32>>2];b=i[h+8>>2];m=i[h+12>>2];p=b;d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?p>>>0>>0:0){break a}d=f+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+56>>2]=p;i[h+16>>2]=c;i[h+20>>2]=b;break d}if(!Pf(1,q+56|0,i[c+32>>2])){break a}p=i[q+56>>2]}if(p>>>0>1431655765|l[u>>2]>o(p,3)>>>0){break a}s=i[a+4>>2];m=i[s+32>>2];t=i[m+8>>2];r=i[m+16>>2];f=i[m+12>>2];c=f;b=i[m+20>>2];if((c|0)<(b|0)?1:(c|0)<=(b|0)?t>>>0<=r>>>0:0){break a}n=i[m>>2];v=j[n+r|0];d=b;h=r+1|0;if(h>>>0<1){d=d+1|0}c=m;i[c+16>>2]=h;i[c+20>>2]=d;g:{if(j[s+36|0]<=1){d=r+5|0;if(d>>>0<5){b=b+1|0}c=d;d=b;if((f|0)<(b|0)?1:(f|0)<=(b|0)?t>>>0>>0:0){break a}b=h+n|0;s=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+52>>2]=s;i[m+16>>2]=c;i[m+20>>2]=d;break g}if(!Pf(1,q+52|0,m)){break a}s=i[q+52>>2]}if(p>>>0>>0|p>>>0>((s>>>0)/3|0)+s>>>0){break a}b=i[a+4>>2];h=i[b+32>>2];h:{if(j[b+36|0]<=1){m=i[h+12>>2];d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]>>0:0){break a}d=f+i[h>>2]|0;t=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+48>>2]=t;i[h+16>>2]=c;i[h+20>>2]=b;break h}if(!Pf(1,q+48|0,h)){break a}t=i[q+48>>2]}if(t>>>0>s>>>0){break a}i[a+28>>2]=i[a+24>>2];b=Dm(88);wk(b);d=i[a+8>>2];i[a+8>>2]=b;r=a+8|0;if(d){Qf(r,d);if(!i[r>>2]){break a}}c=i[a+160>>2];i[a+164>>2]=c;i:{j:{if(i[a+168>>2]-c>>2>>>0>=p>>>0){break j}if(p>>>0>=1073741824){break i}b=p<<2;d=Dm(b);i[a+164>>2]=d;i[a+160>>2]=d;i[a+168>>2]=b+d;if(!c){break j}nn(c)}c=i[a+172>>2];i[a+176>>2]=c;k:{l:{if(i[a+180>>2]-c>>2>>>0>=p>>>0){break l}if(p>>>0>=1073741824){break k}b=p<<2;d=Dm(b);i[a+176>>2]=d;i[a+172>>2]=d;i[a+180>>2]=b+d;if(!c){break l}nn(c)}i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+40>>2]=i[a+36>>2];i[a- -64>>2]=0;i[a+52>>2]=i[a+48>>2];i[a+76>>2]=i[a+72>>2];n=a+216|0;e=i[a+216>>2];d=e;c=i[a+220>>2];if((d|0)!=(c|0)){while(1){b=i[c+ -12>>2];if(b){i[c+ -8>>2]=b;nn(b)}b=i[c+ -28>>2];if(b){i[c+ -24>>2]=b;nn(b)}b=c+ -144|0;d=i[c+ -40>>2];if(d){i[c+ -36>>2]=d;nn(d)}Rf(c+ -140|0);c=b;if((e|0)!=(b|0)){continue}break}d=i[n>>2]}i[a+220>>2]=e;b=(e-d|0)/144|0;m:{if(b>>>0>>0){Sf(n,v-b|0);break m}if(b>>>0<=v>>>0){break m}c=o(v,144)+d|0;if((c|0)!=(e|0)){while(1){b=i[e+ -12>>2];if(b){i[e+ -8>>2]=b;nn(b)}b=i[e+ -28>>2];if(b){i[e+ -24>>2]=b;nn(b)}b=e+ -144|0;d=i[e+ -40>>2];if(d){i[e+ -36>>2]=d;nn(d)}Rf(e+ -140|0);e=b;if((b|0)!=(c|0)){continue}break}}i[a+220>>2]=c}e=0;if(!Gk(i[r>>2],p,i[u>>2]+t|0)){break a}b=i[a+156>>2];g[q|0]=1;Jf(a+120|0,b+t|0,q);d=i[a+4>>2];b=k[d+36>>1];b=(b<<24|b<<8&16711680)>>>16|0;n:{if(b>>>0<=513){h=i[d+32>>2];o:{if(b>>>0<=511){m=i[h+12>>2];d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]>>0:0){break a}d=f+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[h+16>>2]=c;i[h+20>>2]=b;break o}if(!Pf(1,q+44|0,h)){break a}p=i[q+44>>2]}if(!p){break a}c=i[i[a+4>>2]+32>>2];d=i[c+8>>2];b=i[c+16>>2];f=d-b>>>0

>>0;b=i[c+12>>2]-(i[c+20>>2]+(d>>>0>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?f:0){break a}c=zh(q);f=i[i[a+4>>2]+32>>2];b=i[f+16>>2];d=i[f+8>>2];Bh(c,(b+i[f>>2]|0)+p|0,(d-b|0)-p|0,k[f+38>>1]);d=Tf(a,c);if((d|0)==-1){break a}b=d;h=b>>31;break n}b=-1;h=-1;if((Tf(a,i[d+32>>2])|0)==-1){break a}}i[a+376>>2]=a;f=a+232|0;d=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];m=i[d>>2]+i[d+16>>2]|0;c=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];d=i[c+8>>2];c=i[c+16>>2];Bh(f,m,d-c|0,k[i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2]+38>>1]);w=a,y=M[i[i[a>>2]+36>>2]](a)|0,i[w+380>>2]=y;i[a+372>>2]=v;i[a+384>>2]=i[a+156>>2]+t;c=zh(q);p:{if(!kg(f,c)){break p}m=lg(a,s);if((m|0)==-1){break p}f=i[i[a+4>>2]+32>>2];d=i[c+16>>2];e=d+i[c>>2]|0;c=i[c+8>>2];Bh(f,e,c-d|0,k[f+38>>1]);c=i[a+4>>2];d=k[c+36>>1];f=(d<<24|d<<8&16711680)>>>16|0;if(f>>>0<=513){d=i[c+32>>2];c=d;p=c;e=h+i[c+20>>2]|0;d=b+i[c+16>>2]|0;if(d>>>0>>0){e=e+1|0}i[p+16>>2]=d;i[c+20>>2]=e}q:{if(i[a+220>>2]==i[a+216>>2]){break q}b=i[r>>2];d=i[b>>2];b=i[b+4>>2];r:{if(f>>>0>=513){if((b|0)==(d|0)){break q}c=0;break r}if((b|0)==(d|0)){break q}c=0;while(1){if(Wf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0>2]-i[b>>2]>>2>>>0){continue}break q}break}e=0;break p}while(1){if(Xf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0>2]-i[b>>2]>>2>>>0){continue}break q}break}e=0;break p}if(j[a+308|0]){Eh(a+272|0)}if(k[a+270>>1]<=513){Eh(a+328|0)}c=i[a+216>>2];if((c|0)!=i[a+220>>2]){u=0;while(1){e=o(u,144);Qk((e+c|0)+4|0,i[r>>2]);b=i[n>>2];f=b+e|0;c=i[f+132>>2];d=i[f+136>>2];if((c|0)!=(d|0)){Sk(f+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){while(1){Sk((e+i[n>>2]|0)+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){continue}break}}b=i[n>>2]}Rk((b+e|0)+4|0);u=u+1|0;c=i[a+216>>2];if(u>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}b=i[a+8>>2];Yf(a+184|0,i[b+28>>2]-i[b+24>>2]>>2);e=i[a+216>>2];if((e|0)!=i[a+220>>2]){c=0;while(1){b=o(c,144)+e|0;d=i[b+60>>2]-i[b+56>>2]>>2;f=b+104|0;b=i[a+8>>2];b=i[b+28>>2]-i[b+24>>2]>>2;Yf(f,(d|0)<(b|0)?b:d);c=c+1|0;e=i[a+216>>2];if(c>>>0<(i[a+220>>2]-e|0)/144>>>0){continue}break}}e=Zf(a,m)}break a}Ba(12220);x()}Ba(12220);x()}e=0}J=q- -64|0;return e|0}function eg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;q=J+ -64|0;J=q;i[a+132>>2]=0;if(i[a+148>>2]){c=i[a+144>>2];if(c){while(1){b=i[c>>2];nn(c);c=b;if(b){continue}break}}i[a+144>>2]=0;b=i[a+140>>2];if(b){c=0;while(1){i[i[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}i[a+148>>2]=0}a:{b:{c=i[a+4>>2];e=j[c+36|0];b=e<<8|j[c+37|0];c:{if(b>>>0>513){break c}n=i[c+32>>2];if(b>>>0<=511){h=i[n+12>>2];d=i[n+20>>2];m=i[n+16>>2];b=m+4|0;if(b>>>0<4){d=d+1|0}f=b;b=d;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]>>0:0){break b}d=m+i[n>>2]|0;d=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[n+16>>2]=f;i[n+20>>2]=b;i[a+132>>2]=d;break c}if(!Pf(1,q,n)){break b}c=i[a+4>>2];e=j[c+36|0];i[a+132>>2]=i[q>>2]}n=i[c+32>>2];d:{e:{f:{if((e&255)>>>0<=1){e=0;h=i[n+12>>2];b=i[n+20>>2];m=i[n+16>>2];d=m+4|0;if(d>>>0<4){b=b+1|0}f=d;d=b;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]>>0:0){break a}b=m+i[n>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+60>>2]=b;i[n+16>>2]=f;i[n+20>>2]=d;i[a+156>>2]=b;u=a+156|0;break f}e=0;if(!Pf(1,q+60|0,n)){break a}c=i[a+4>>2];b=j[c+36|0];i[a+156>>2]=i[q+60>>2];u=a+156|0;if(b>>>0>1){break e}}h=i[c+32>>2];b=i[h+8>>2];m=i[h+12>>2];p=b;d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?p>>>0>>0:0){break a}d=f+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+56>>2]=p;i[h+16>>2]=c;i[h+20>>2]=b;break d}if(!Pf(1,q+56|0,i[c+32>>2])){break a}p=i[q+56>>2]}if(p>>>0>1431655765|l[u>>2]>o(p,3)>>>0){break a}s=i[a+4>>2];m=i[s+32>>2];t=i[m+8>>2];r=i[m+16>>2];f=i[m+12>>2];c=f;b=i[m+20>>2];if((c|0)<(b|0)?1:(c|0)<=(b|0)?t>>>0<=r>>>0:0){break a}n=i[m>>2];v=j[n+r|0];d=b;h=r+1|0;if(h>>>0<1){d=d+1|0}c=m;i[c+16>>2]=h;i[c+20>>2]=d;g:{if(j[s+36|0]<=1){d=r+5|0;if(d>>>0<5){b=b+1|0}c=d;d=b;if((f|0)<(b|0)?1:(f|0)<=(b|0)?t>>>0>>0:0){break a}b=h+n|0;s=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+52>>2]=s;i[m+16>>2]=c;i[m+20>>2]=d;break g}if(!Pf(1,q+52|0,m)){break a}s=i[q+52>>2]}if(p>>>0>>0|p>>>0>((s>>>0)/3|0)+s>>>0){break a}b=i[a+4>>2];h=i[b+32>>2];h:{if(j[b+36|0]<=1){m=i[h+12>>2];d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]>>0:0){break a}d=f+i[h>>2]|0;t=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+48>>2]=t;i[h+16>>2]=c;i[h+20>>2]=b;break h}if(!Pf(1,q+48|0,h)){break a}t=i[q+48>>2]}if(t>>>0>s>>>0){break a}i[a+28>>2]=i[a+24>>2];b=Dm(88);wk(b);d=i[a+8>>2];i[a+8>>2]=b;r=a+8|0;if(d){Qf(r,d);if(!i[r>>2]){break a}}c=i[a+160>>2];i[a+164>>2]=c;i:{j:{if(i[a+168>>2]-c>>2>>>0>=p>>>0){break j}if(p>>>0>=1073741824){break i}b=p<<2;d=Dm(b);i[a+164>>2]=d;i[a+160>>2]=d;i[a+168>>2]=b+d;if(!c){break j}nn(c)}c=i[a+172>>2];i[a+176>>2]=c;k:{l:{if(i[a+180>>2]-c>>2>>>0>=p>>>0){break l}if(p>>>0>=1073741824){break k}b=p<<2;d=Dm(b);i[a+176>>2]=d;i[a+172>>2]=d;i[a+180>>2]=b+d;if(!c){break l}nn(c)}i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+40>>2]=i[a+36>>2];i[a- -64>>2]=0;i[a+52>>2]=i[a+48>>2];i[a+76>>2]=i[a+72>>2];n=a+216|0;e=i[a+216>>2];d=e;c=i[a+220>>2];if((d|0)!=(c|0)){while(1){b=i[c+ -12>>2];if(b){i[c+ -8>>2]=b;nn(b)}b=i[c+ -28>>2];if(b){i[c+ -24>>2]=b;nn(b)}b=c+ -144|0;d=i[c+ -40>>2];if(d){i[c+ -36>>2]=d;nn(d)}Rf(c+ -140|0);c=b;if((e|0)!=(b|0)){continue}break}d=i[n>>2]}i[a+220>>2]=e;b=(e-d|0)/144|0;m:{if(b>>>0>>0){Sf(n,v-b|0);break m}if(b>>>0<=v>>>0){break m}c=o(v,144)+d|0;if((c|0)!=(e|0)){while(1){b=i[e+ -12>>2];if(b){i[e+ -8>>2]=b;nn(b)}b=i[e+ -28>>2];if(b){i[e+ -24>>2]=b;nn(b)}b=e+ -144|0;d=i[e+ -40>>2];if(d){i[e+ -36>>2]=d;nn(d)}Rf(e+ -140|0);e=b;if((b|0)!=(c|0)){continue}break}}i[a+220>>2]=c}e=0;if(!Gk(i[r>>2],p,i[u>>2]+t|0)){break a}b=i[a+156>>2];g[q|0]=1;Jf(a+120|0,b+t|0,q);d=i[a+4>>2];b=k[d+36>>1];b=(b<<24|b<<8&16711680)>>>16|0;n:{if(b>>>0<=513){h=i[d+32>>2];o:{if(b>>>0<=511){m=i[h+12>>2];d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]>>0:0){break a}d=f+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[h+16>>2]=c;i[h+20>>2]=b;break o}if(!Pf(1,q+44|0,h)){break a}p=i[q+44>>2]}if(!p){break a}c=i[i[a+4>>2]+32>>2];d=i[c+8>>2];b=i[c+16>>2];f=d-b>>>0

>>0;b=i[c+12>>2]-(i[c+20>>2]+(d>>>0>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?f:0){break a}c=zh(q);f=i[i[a+4>>2]+32>>2];b=i[f+16>>2];d=i[f+8>>2];Bh(c,(b+i[f>>2]|0)+p|0,(d-b|0)-p|0,k[f+38>>1]);d=Tf(a,c);if((d|0)==-1){break a}b=d;h=b>>31;break n}b=-1;h=-1;if((Tf(a,i[d+32>>2])|0)==-1){break a}}i[a+376>>2]=a;f=a+232|0;d=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];m=i[d>>2]+i[d+16>>2]|0;c=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];d=i[c+8>>2];c=i[c+16>>2];Bh(f,m,d-c|0,k[i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2]+38>>1]);w=a,y=M[i[i[a>>2]+36>>2]](a)|0,i[w+380>>2]=y;i[a+372>>2]=v;i[a+384>>2]=i[a+156>>2]+t;c=zh(q);p:{if(!fg(f,c)){break p}m=gg(a,s);if((m|0)==-1){break p}f=i[i[a+4>>2]+32>>2];d=i[c+16>>2];e=d+i[c>>2]|0;c=i[c+8>>2];Bh(f,e,c-d|0,k[f+38>>1]);c=i[a+4>>2];d=k[c+36>>1];f=(d<<24|d<<8&16711680)>>>16|0;if(f>>>0<=513){d=i[c+32>>2];c=d;p=c;e=h+i[c+20>>2]|0;d=b+i[c+16>>2]|0;if(d>>>0>>0){e=e+1|0}i[p+16>>2]=d;i[c+20>>2]=e}q:{if(i[a+220>>2]==i[a+216>>2]){break q}b=i[r>>2];d=i[b>>2];b=i[b+4>>2];r:{if(f>>>0>=513){if((b|0)==(d|0)){break q}c=0;break r}if((b|0)==(d|0)){break q}c=0;while(1){if(Wf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0>2]-i[b>>2]>>2>>>0){continue}break q}break}e=0;break p}while(1){if(Xf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0>2]-i[b>>2]>>2>>>0){continue}break q}break}e=0;break p}if(j[a+308|0]){Eh(a+272|0)}if(k[a+270>>1]<=513){Eh(a+328|0)}c=i[a+216>>2];if((c|0)!=i[a+220>>2]){u=0;while(1){e=o(u,144);Qk((e+c|0)+4|0,i[r>>2]);b=i[n>>2];f=b+e|0;c=i[f+132>>2];d=i[f+136>>2];if((c|0)!=(d|0)){Sk(f+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){while(1){Sk((e+i[n>>2]|0)+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){continue}break}}b=i[n>>2]}Rk((b+e|0)+4|0);u=u+1|0;c=i[a+216>>2];if(u>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}b=i[a+8>>2];Yf(a+184|0,i[b+28>>2]-i[b+24>>2]>>2);e=i[a+216>>2];if((e|0)!=i[a+220>>2]){c=0;while(1){b=o(c,144)+e|0;d=i[b+60>>2]-i[b+56>>2]>>2;f=b+104|0;b=i[a+8>>2];b=i[b+28>>2]-i[b+24>>2]>>2;Yf(f,(d|0)<(b|0)?b:d);c=c+1|0;e=i[a+216>>2];if(c>>>0<(i[a+220>>2]-e|0)/144>>>0){continue}break}}e=Zf(a,m)}break a}Ba(12220);x()}Ba(12220);x()}e=0}J=q- -64|0;return e|0}function Of(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;q=J+ -64|0;J=q;i[a+132>>2]=0;if(i[a+148>>2]){c=i[a+144>>2];if(c){while(1){b=i[c>>2];nn(c);c=b;if(b){continue}break}}i[a+144>>2]=0;b=i[a+140>>2];if(b){c=0;while(1){i[i[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}i[a+148>>2]=0}a:{b:{c=i[a+4>>2];f=j[c+36|0];b=f<<8|j[c+37|0];c:{if(b>>>0>513){break c}n=i[c+32>>2];if(b>>>0<=511){h=i[n+12>>2];d=i[n+20>>2];m=i[n+16>>2];b=m+4|0;if(b>>>0<4){d=d+1|0}e=b;b=d;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]>>0:0){break b}d=m+i[n>>2]|0;d=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[n+16>>2]=e;i[n+20>>2]=b;i[a+132>>2]=d;break c}if(!Pf(1,q,n)){break b}c=i[a+4>>2];f=j[c+36|0];i[a+132>>2]=i[q>>2]}n=i[c+32>>2];d:{e:{f:{if((f&255)>>>0<=1){f=0;h=i[n+12>>2];b=i[n+20>>2];m=i[n+16>>2];d=m+4|0;if(d>>>0<4){b=b+1|0}e=d;d=b;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]>>0:0){break a}b=m+i[n>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+60>>2]=b;i[n+16>>2]=e;i[n+20>>2]=d;i[a+156>>2]=b;t=a+156|0;break f}f=0;if(!Pf(1,q+60|0,n)){break a}c=i[a+4>>2];b=j[c+36|0];i[a+156>>2]=i[q+60>>2];t=a+156|0;if(b>>>0>1){break e}}h=i[c+32>>2];b=i[h+8>>2];m=i[h+12>>2];p=b;d=i[h+20>>2];e=i[h+16>>2];b=e+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?p>>>0>>0:0){break a}d=e+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+56>>2]=p;i[h+16>>2]=c;i[h+20>>2]=b;break d}if(!Pf(1,q+56|0,i[c+32>>2])){break a}p=i[q+56>>2]}if(p>>>0>1431655765|l[t>>2]>o(p,3)>>>0){break a}r=i[a+4>>2];m=i[r+32>>2];s=i[m+8>>2];v=i[m+16>>2];e=i[m+12>>2];c=e;b=i[m+20>>2];if((c|0)<(b|0)?1:(c|0)<=(b|0)?s>>>0<=v>>>0:0){break a}n=i[m>>2];u=j[n+v|0];d=b;h=v+1|0;if(h>>>0<1){d=d+1|0}c=m;i[c+16>>2]=h;i[c+20>>2]=d;g:{if(j[r+36|0]<=1){d=v+5|0;if(d>>>0<5){b=b+1|0}c=d;d=b;if((e|0)<(b|0)?1:(e|0)<=(b|0)?s>>>0>>0:0){break a}b=h+n|0;s=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+52>>2]=s;i[m+16>>2]=c;i[m+20>>2]=d;break g}if(!Pf(1,q+52|0,m)){break a}s=i[q+52>>2]}if(p>>>0>>0|p>>>0>((s>>>0)/3|0)+s>>>0){break a}b=i[a+4>>2];h=i[b+32>>2];h:{if(j[b+36|0]<=1){m=i[h+12>>2];d=i[h+20>>2];e=i[h+16>>2];b=e+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]>>0:0){break a}d=e+i[h>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+48>>2]=e;i[h+16>>2]=c;i[h+20>>2]=b;break h}if(!Pf(1,q+48|0,h)){break a}e=i[q+48>>2]}if(e>>>0>s>>>0){break a}i[a+28>>2]=i[a+24>>2];b=Dm(88);wk(b);d=i[a+8>>2];i[a+8>>2]=b;r=a+8|0;if(d){Qf(r,d);if(!i[r>>2]){break a}}c=i[a+160>>2];i[a+164>>2]=c;i:{j:{if(i[a+168>>2]-c>>2>>>0>=p>>>0){break j}if(p>>>0>=1073741824){break i}b=p<<2;d=Dm(b);i[a+164>>2]=d;i[a+160>>2]=d;i[a+168>>2]=b+d;if(!c){break j}nn(c)}c=i[a+172>>2];i[a+176>>2]=c;k:{l:{if(i[a+180>>2]-c>>2>>>0>=p>>>0){break l}if(p>>>0>=1073741824){break k}b=p<<2;d=Dm(b);i[a+176>>2]=d;i[a+172>>2]=d;i[a+180>>2]=b+d;if(!c){break l}nn(c)}i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+40>>2]=i[a+36>>2];i[a- -64>>2]=0;i[a+52>>2]=i[a+48>>2];i[a+76>>2]=i[a+72>>2];n=a+216|0;f=i[a+216>>2];d=f;c=i[a+220>>2];if((d|0)!=(c|0)){while(1){b=i[c+ -12>>2];if(b){i[c+ -8>>2]=b;nn(b)}b=i[c+ -28>>2];if(b){i[c+ -24>>2]=b;nn(b)}b=c+ -144|0;d=i[c+ -40>>2];if(d){i[c+ -36>>2]=d;nn(d)}Rf(c+ -140|0);c=b;if((f|0)!=(b|0)){continue}break}d=i[n>>2]}i[a+220>>2]=f;b=(f-d|0)/144|0;m:{if(b>>>0>>0){Sf(n,u-b|0);break m}if(b>>>0<=u>>>0){break m}c=o(u,144)+d|0;if((c|0)!=(f|0)){while(1){b=i[f+ -12>>2];if(b){i[f+ -8>>2]=b;nn(b)}b=i[f+ -28>>2];if(b){i[f+ -24>>2]=b;nn(b)}b=f+ -144|0;d=i[f+ -40>>2];if(d){i[f+ -36>>2]=d;nn(d)}Rf(f+ -140|0);f=b;if((b|0)!=(c|0)){continue}break}}i[a+220>>2]=c}f=0;if(!Gk(i[r>>2],p,i[t>>2]+e|0)){break a}b=i[a+156>>2];g[q|0]=1;Jf(a+120|0,b+e|0,q);d=i[a+4>>2];b=k[d+36>>1];b=(b<<24|b<<8&16711680)>>>16|0;n:{if(b>>>0<=513){h=i[d+32>>2];o:{if(b>>>0<=511){m=i[h+12>>2];d=i[h+20>>2];e=i[h+16>>2];b=e+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]>>0:0){break a}d=e+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[h+16>>2]=c;i[h+20>>2]=b;break o}if(!Pf(1,q+44|0,h)){break a}p=i[q+44>>2]}if(!p){break a}c=i[i[a+4>>2]+32>>2];d=i[c+8>>2];b=i[c+16>>2];e=d-b>>>0

>>0;b=i[c+12>>2]-(i[c+20>>2]+(d>>>0>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?e:0){break a}c=zh(q);e=i[i[a+4>>2]+32>>2];b=i[e+16>>2];d=i[e+8>>2];Bh(c,(b+i[e>>2]|0)+p|0,(d-b|0)-p|0,k[e+38>>1]);d=Tf(a,c);if((d|0)==-1){break a}b=d;h=b>>31;break n}b=-1;h=-1;if((Tf(a,i[d+32>>2])|0)==-1){break a}}i[a+376>>2]=a;e=a+232|0;d=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];m=i[d>>2]+i[d+16>>2]|0;c=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];d=i[c+8>>2];c=i[c+16>>2];Bh(e,m,d-c|0,k[i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2]+38>>1]);i[a+372>>2]=u;c=zh(q);p:{if(!Uf(e,c)){break p}m=Vf(a,s);if((m|0)==-1){break p}e=i[i[a+4>>2]+32>>2];d=i[c+16>>2];f=d+i[c>>2]|0;c=i[c+8>>2];Bh(e,f,c-d|0,k[e+38>>1]);c=i[a+4>>2];d=k[c+36>>1];e=(d<<24|d<<8&16711680)>>>16|0;if(e>>>0<=513){d=i[c+32>>2];c=d;p=c;f=h+i[c+20>>2]|0;d=b+i[c+16>>2]|0;if(d>>>0>>0){f=f+1|0}i[p+16>>2]=d;i[c+20>>2]=f}q:{if(i[a+220>>2]==i[a+216>>2]){break q}b=i[r>>2];d=i[b>>2];b=i[b+4>>2];r:{if(e>>>0>=513){if((b|0)==(d|0)){break q}c=0;break r}if((b|0)==(d|0)){break q}c=0;while(1){if(Wf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0>2]-i[b>>2]>>2>>>0){continue}break q}break}f=0;break p}while(1){if(Xf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0>2]-i[b>>2]>>2>>>0){continue}break q}break}f=0;break p}if(j[a+308|0]){Eh(a+272|0)}if(k[a+270>>1]<=513){Eh(a+328|0)}c=i[a+216>>2];if((c|0)!=i[a+220>>2]){t=0;while(1){f=o(t,144);Qk((f+c|0)+4|0,i[r>>2]);b=i[n>>2];e=b+f|0;c=i[e+132>>2];d=i[e+136>>2];if((c|0)!=(d|0)){Sk(e+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){while(1){Sk((f+i[n>>2]|0)+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){continue}break}}b=i[n>>2]}Rk((b+f|0)+4|0);t=t+1|0;c=i[a+216>>2];if(t>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}b=i[a+8>>2];Yf(a+184|0,i[b+28>>2]-i[b+24>>2]>>2);f=i[a+216>>2];if((f|0)!=i[a+220>>2]){c=0;while(1){b=o(c,144)+f|0;d=i[b+60>>2]-i[b+56>>2]>>2;e=b+104|0;b=i[a+8>>2];b=i[b+28>>2]-i[b+24>>2]>>2;Yf(e,(d|0)<(b|0)?b:d);c=c+1|0;f=i[a+216>>2];if(c>>>0<(i[a+220>>2]-f|0)/144>>>0){continue}break}}f=Zf(a,m)}break a}Ba(12220);x()}Ba(12220);x()}f=0}J=q- -64|0;return f|0}function sb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;f=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(f){if(f>>>0>=1073741824){break a}e=f<<2;h=Dm(e);i[g+8>>2]=h;d=e+h|0;i[g+16>>2]=d;qn(h,0,e);i[g+12>>2]=d}k=i[a+120>>2];e=i[k>>2];if(e){i[k+4>>2]=e;nn(e);i[k+8>>2]=0;i[k>>2]=0;i[k+4>>2]=0;f=i[a+12>>2];h=i[g+8>>2];d=i[g+12>>2]}i[k+4>>2]=d;i[k>>2]=h;i[k+8>>2]=i[g+16>>2];h=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;b:{if(f){if(f>>>0>=1073741824){break b}e=f<<2;m=Dm(e);i[g+8>>2]=m;h=e+m|0;i[g+16>>2]=h;qn(m,0,e);i[g+12>>2]=h}d=i[a+132>>2];e=i[d>>2];if(e){i[d+4>>2]=e;nn(e);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;m=i[g+8>>2];h=i[g+12>>2]}i[d+4>>2]=h;i[d>>2]=m;i[d+8>>2]=i[g+16>>2];h=g+24|0;i[h>>2]=0;i[h+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);k=i[g+12>>2];e=0;c:{if((k|0)==i[d>>2]){break c}d=i[h>>2]+i[g+28>>2]|0;e=(d>>>0)/341|0;e=i[k+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[e+4>>2]=0;i[e+8>>2]=0;i[e>>2]=b;n=1;e=i[g+28>>2];f=e+1|0;i[g+28>>2]=f;d:{if(f>>>0>>0){break d}while(1){e=i[g+12>>2];h=f+ -1|0;n=h+i[g+24>>2]|0;d=(n>>>0)/341|0;d=i[e+(d<<2)>>2]+o(n-o(d,341)|0,12)|0;u=i[d+8>>2];k=i[d+4>>2];t=i[d>>2];i[g+28>>2]=h;d=i[g+16>>2];e=d-e|0;if((e?o(e>>2,341)+ -1|0:0)-n>>>0>=682){nn(i[d+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}n=0;if(t>>>0>b>>>0){break d}e=i[a+120>>2];v=o(u,12);A=v+i[a+132>>2]|0;m=vl(a,A,k);if(m>>>0>=l[a+12>>2]){break d}z=e+v|0;e:{f:{w=m<<2;e=i[a>>2]-i[w+i[A>>2]>>2]|0;if(!e){if(!t){break f}q=0;while(1){e=0;f=i[c+16>>2];g:{if((f|0)==i[c+20>>2]){break g}while(1){k=o(e,20)+f|0;d=i[z>>2]+(i[k+4>>2]<<2)|0;s=i[k>>2];m=i[k+12>>2];h:{if(m>>>0>3){break h}h=i[c+12>>2];p=k+16|0;if(!i[p>>2]){d=h;break h}n=k+12|0;f=0;while(1){k=pn(h,(f<<2)+d|0,m);m=i[n>>2];h=k+m|0;f=f+1|0;if(f>>>0>2]){continue}break}d=i[c+12>>2]}f=i[c+28>>2];f=j[s+84|0]?f:i[i[s+68>>2]+(f<<2)>>2];if(f>>>0>=l[s+80>>2]){break g}k=i[s+40>>2];pn(i[i[s>>2]>>2]+o(k,f)|0,d,k);e=e+1|0;f=i[c+16>>2];if(e>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;q=q+1|0;if((t|0)!=(q|0)){continue}break}break f}i:{j:{k:{l:{if(t>>>0<=2){e=i[a+108>>2];i[e>>2]=m;h=1;f=i[a+12>>2];if(f>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}k=1<>2];q=u+1|0;s=o(q,12);d=e+s|0;if((d|0)!=(z|0)){ua(d,i[z>>2],i[z+4>>2]);e=i[a+120>>2]}e=w+i[e+s>>2]|0;i[e>>2]=k+i[e>>2];p=r(t)^31;n=i[a+32>>2];k=32-n|0;m:{if((p|0)<=(k|0)){h=i[a+28>>2];if((h|0)==i[a+20>>2]){k=0;break m}d=i[h>>2];e=n+p|0;i[a+32>>2]=e;k=d<>>32-p|0;if((e|0)!=32){break m}i[a+32>>2]=0;i[a+28>>2]=h+4;break m}h=i[a+28>>2];e=h+4|0;if((e|0)==i[a+20>>2]){k=0;break m}d=i[h>>2];i[a+28>>2]=e;e=p-k|0;i[a+32>>2]=e;k=i[h+4>>2]>>>32-e|d<>>32-p}d=(t>>>1|0)-k|0;k=t-d|0;n:{if((k|0)==(d|0)){e=d;break n}p=i[a+88>>2];if((p|0)==i[a+80>>2]){break k}n=i[p>>2];h=i[a+92>>2];e=h+1|0;i[a+92>>2]=e;h=n&-2147483648>>>h;o:{if((e|0)==32){i[a+92>>2]=0;i[a+88>>2]=p+4;if(h){break o}break k}if(!h){break k}}e=k}k=d;break j}while(1){m=(f+ -1|0)==(m|0)?0:m+1|0;i[e+(h<<2)>>2]=m;h=h+1|0;f=i[a+12>>2];if(h>>>0>>0){continue}break}break i}e=d}p=i[a+132>>2];n=p+v|0;h=i[n>>2];d=h+w|0;i[d>>2]=i[d>>2]+1;ua(p+s|0,h,i[n+4>>2]);if(k){d=i[g+28>>2]+i[g+24>>2]|0;n=i[g+16>>2];f=i[g+12>>2];h=n-f|0;if((d|0)==((h?o(h>>2,341)+ -1|0:0)|0)){Nb(g+8|0);n=i[g+16>>2];f=i[g+12>>2];d=i[g+24>>2]+i[g+28>>2]|0}if((f|0)==(n|0)){d=0}else{h=(d>>>0)/341|0;d=i[(h<<2)+f>>2]+o(d-o(h,341)|0,12)|0}i[d+8>>2]=u;i[d+4>>2]=m;i[d>>2]=k;i[g+28>>2]=i[g+28>>2]+1}if(!e){break f}h=i[g+28>>2]+i[g+24>>2]|0;d=i[g+16>>2];f=i[g+12>>2];k=d-f|0;if((h|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);h=i[g+24>>2]+i[g+28>>2]|0;f=i[g+12>>2];d=i[g+16>>2]}if((d|0)==(f|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=q;i[d+4>>2]=m;i[d>>2]=e;f=i[g+28>>2]+1|0;i[g+28>>2]=f;break e}if(!t){break f}v=0;while(1){if(f){p=i[z>>2];n=i[A>>2];u=i[a+96>>2];h=i[a+108>>2];f=0;while(1){w=h+(f<<2)|0;i[u+(i[w>>2]<<2)>>2]=0;e=i[w>>2]<<2;y=i[a>>2]-i[e+n>>2]|0;p:{if(!y){break p}m=e+u|0;s=i[a+52>>2];k=32-s|0;if((y|0)<=(k|0)){d=i[a+48>>2];if((d|0)==i[a+40>>2]){i[m>>2]=0;break p}i[m>>2]=i[d>>2]<>>32-y;e=y+i[a+52>>2]|0;i[a+52>>2]=e;if((e|0)!=32){break p}i[a+52>>2]=0;i[a+48>>2]=d+4;break p}q=i[a+48>>2];e=q+4|0;if((e|0)==i[a+40>>2]){i[m>>2]=0;break p}d=i[q>>2];i[a+48>>2]=e;e=y-k|0;i[a+52>>2]=e;i[m>>2]=i[q+4>>2]>>>32-e|d<>>32-y}d=i[w>>2]<<2;e=d+u|0;i[e>>2]=i[e>>2]|i[d+p>>2];f=f+1|0;if(f>>>0>2]){continue}break}}e=0;f=i[c+16>>2];q:{if((f|0)==i[c+20>>2]){break q}while(1){k=o(e,20)+f|0;d=i[a+96>>2]+(i[k+4>>2]<<2)|0;q=i[k>>2];m=i[k+12>>2];r:{if(m>>>0>3){break r}h=i[c+12>>2];p=k+16|0;if(!i[p>>2]){d=h;break r}n=k+12|0;f=0;while(1){k=pn(h,(f<<2)+d|0,m);m=i[n>>2];h=k+m|0;f=f+1|0;if(f>>>0>2]){continue}break}d=i[c+12>>2]}f=i[c+28>>2];f=j[q+84|0]?f:i[i[q+68>>2]+(f<<2)>>2];if(f>>>0>=l[q+80>>2]){break q}k=i[q+40>>2];pn(i[i[q>>2]>>2]+o(k,f)|0,d,k);e=e+1|0;f=i[c+16>>2];if(e>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;v=v+1|0;if((v|0)==(t|0)){break f}f=i[a+12>>2];continue}}f=i[g+28>>2]}if(f){continue}break}n=1}b=i[g+24>>2];a=(b>>>0)/341|0;f=i[g+12>>2];h=i[g+16>>2];s:{if((f|0)==(h|0)){break s}k=(a<<2)+f|0;d=i[k>>2];m=d+o(b-o(a,341)|0,12)|0;b=b+i[g+28>>2]|0;a=(b>>>0)/341|0;a=i[(a<<2)+f>>2]+o(b-o(a,341)|0,12)|0;if((m|0)==(a|0)){break s}while(1){m=m+12|0;if((m-d|0)==4092){d=i[k+4>>2];m=d;k=k+4|0}if((a|0)!=(m|0)){continue}break}}i[g+28>>2]=0;m=h-f>>2;if(m>>>0>2){while(1){nn(i[f>>2]);f=i[g+12>>2]+4|0;i[g+12>>2]=f;h=i[g+16>>2];m=h-f>>2;if(m>>>0>2){continue}break}}d=170;t:{switch(m+ -1|0){case 1:d=341;case 0:i[g+24>>2]=d;break;default:break t}}u:{if((f|0)==(h|0)){break u}while(1){nn(i[f>>2]);f=f+4|0;if((h|0)!=(f|0)){continue}break}b=i[g+16>>2];a=i[g+12>>2];if((b|0)==(a|0)){break u}i[g+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return n}Sm();x()}Sm();x()}function ub(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;f=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(f){if(f>>>0>=1073741824){break a}e=f<<2;h=Dm(e);i[g+8>>2]=h;d=e+h|0;i[g+16>>2]=d;qn(h,0,e);i[g+12>>2]=d}k=i[a+120>>2];e=i[k>>2];if(e){i[k+4>>2]=e;nn(e);i[k+8>>2]=0;i[k>>2]=0;i[k+4>>2]=0;f=i[a+12>>2];h=i[g+8>>2];d=i[g+12>>2]}i[k+4>>2]=d;i[k>>2]=h;i[k+8>>2]=i[g+16>>2];h=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;b:{if(f){if(f>>>0>=1073741824){break b}e=f<<2;m=Dm(e);i[g+8>>2]=m;h=e+m|0;i[g+16>>2]=h;qn(m,0,e);i[g+12>>2]=h}d=i[a+132>>2];e=i[d>>2];if(e){i[d+4>>2]=e;nn(e);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;m=i[g+8>>2];h=i[g+12>>2]}i[d+4>>2]=h;i[d>>2]=m;i[d+8>>2]=i[g+16>>2];h=g+24|0;i[h>>2]=0;i[h+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);k=i[g+12>>2];e=0;c:{if((k|0)==i[d>>2]){break c}d=i[h>>2]+i[g+28>>2]|0;e=(d>>>0)/341|0;e=i[k+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[e+4>>2]=0;i[e+8>>2]=0;i[e>>2]=b;e=1;d=i[g+28>>2];f=d+1|0;i[g+28>>2]=f;d:{if(f>>>0>>0){break d}while(1){e=i[g+12>>2];k=f+ -1|0;n=k+i[g+24>>2]|0;d=(n>>>0)/341|0;d=i[e+(d<<2)>>2]+o(n-o(d,341)|0,12)|0;v=i[d+8>>2];h=i[d+4>>2];t=i[d>>2];i[g+28>>2]=k;d=i[g+16>>2];e=d-e|0;if((e?o(e>>2,341)+ -1|0:0)-n>>>0>=682){nn(i[d+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}if(t>>>0>b>>>0){e=0;break d}e=0;d=i[a+12>>2];m=(h|0)==(d+ -1|0)?0:h+1|0;if(m>>>0>=d>>>0){break d}k=i[a+120>>2];u=o(v,12);y=k+u|0;e:{f:{q=m<<2;s=u+i[a+132>>2]|0;d=i[a>>2]-i[q+i[s>>2]>>2]|0;if(!d){if(!t){break f}p=0;while(1){q=0;f=i[c+16>>2];g:{if((f|0)==i[c+20>>2]){break g}while(1){e=o(q,20)+f|0;d=i[y>>2]+(i[e+4>>2]<<2)|0;s=i[e>>2];m=i[e+12>>2];h:{if(m>>>0>3){break h}h=i[c+12>>2];n=e+16|0;if(!i[n>>2]){d=h;break h}k=e+12|0;f=0;while(1){e=pn(h,(f<<2)+d|0,m);m=i[k>>2];h=e+m|0;f=f+1|0;if(f>>>0>2]){continue}break}d=i[c+12>>2]}f=i[c+28>>2];f=j[s+84|0]?f:i[i[s+68>>2]+(f<<2)>>2];if(f>>>0>=l[s+80>>2]){break g}e=i[s+40>>2];pn(i[i[s>>2]>>2]+o(e,f)|0,d,e);q=q+1|0;f=i[c+16>>2];if(q>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((t|0)!=(p|0)){continue}break}break f}i:{j:{k:{l:{if(t>>>0<=2){e=i[a+108>>2];i[e>>2]=m;h=1;f=i[a+12>>2];if(f>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}e=u+12|0;ua(e+k|0,i[y>>2],i[y+4>>2]);e=q+i[e+i[a+120>>2]>>2]|0;i[e>>2]=i[e>>2]+(1<>2];k=32-n|0;m:{if((p|0)<=(k|0)){h=i[a+28>>2];if((h|0)==i[a+20>>2]){k=0;break m}d=i[h>>2];e=p+n|0;i[a+32>>2]=e;k=d<>>32-p|0;if((e|0)!=32){break m}i[a+32>>2]=0;i[a+28>>2]=h+4;break m}h=i[a+28>>2];e=h+4|0;if((e|0)==i[a+20>>2]){k=0;break m}d=i[h>>2];i[a+28>>2]=e;e=p-k|0;i[a+32>>2]=e;k=i[h+4>>2]>>>32-e|d<>>32-p}s=v+1|0;d=(t>>>1|0)-k|0;k=t-d|0;n:{if((k|0)==(d|0)){e=d;break n}p=i[a+88>>2];if((p|0)==i[a+80>>2]){break k}n=i[p>>2];h=i[a+92>>2];e=h+1|0;i[a+92>>2]=e;h=n&-2147483648>>>h;o:{if((e|0)==32){i[a+92>>2]=0;i[a+88>>2]=p+4;if(h){break o}break k}if(!h){break k}}e=k}k=d;break j}while(1){m=(f+ -1|0)==(m|0)?0:m+1|0;i[e+(h<<2)>>2]=m;h=h+1|0;f=i[a+12>>2];if(h>>>0>>0){continue}break}break i}e=d}p=i[a+132>>2];n=p+u|0;h=i[n>>2];d=h+q|0;i[d>>2]=i[d>>2]+1;ua(p+o(s,12)|0,h,i[n+4>>2]);if(k){h=i[g+28>>2]+i[g+24>>2]|0;n=i[g+16>>2];f=i[g+12>>2];d=n-f|0;if((h|0)==((d?o(d>>2,341)+ -1|0:0)|0)){Nb(g+8|0);f=i[g+12>>2];n=i[g+16>>2];h=i[g+24>>2]+i[g+28>>2]|0}if((f|0)==(n|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=v;i[d+4>>2]=m;i[d>>2]=k;i[g+28>>2]=i[g+28>>2]+1}if(!e){break f}h=i[g+28>>2]+i[g+24>>2]|0;d=i[g+16>>2];f=i[g+12>>2];k=d-f|0;if((h|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);f=i[g+12>>2];h=i[g+24>>2]+i[g+28>>2]|0;d=i[g+16>>2]}if((d|0)==(f|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=m;i[d>>2]=e;f=i[g+28>>2]+1|0;i[g+28>>2]=f;break e}if(!t){break f}A=0;while(1){if(f){p=i[y>>2];n=i[s>>2];m=i[a+96>>2];h=i[a+108>>2];f=0;while(1){v=h+(f<<2)|0;i[m+(i[v>>2]<<2)>>2]=0;e=i[v>>2]<<2;w=i[a>>2]-i[e+n>>2]|0;p:{if(!w){break p}z=e+m|0;u=i[a+52>>2];k=32-u|0;if((w|0)<=(k|0)){d=i[a+48>>2];if((d|0)==i[a+40>>2]){i[z>>2]=0;break p}i[z>>2]=i[d>>2]<>>32-w;e=w+i[a+52>>2]|0;i[a+52>>2]=e;if((e|0)!=32){break p}i[a+52>>2]=0;i[a+48>>2]=d+4;break p}q=i[a+48>>2];e=q+4|0;if((e|0)==i[a+40>>2]){i[z>>2]=0;break p}d=i[q>>2];i[a+48>>2]=e;e=w-k|0;i[a+52>>2]=e;i[z>>2]=i[q+4>>2]>>>32-e|d<>>32-w}d=i[v>>2]<<2;e=d+m|0;i[e>>2]=i[e>>2]|i[d+p>>2];f=f+1|0;if(f>>>0>2]){continue}break}}q=0;f=i[c+16>>2];q:{if((f|0)==i[c+20>>2]){break q}while(1){e=o(q,20)+f|0;d=i[a+96>>2]+(i[e+4>>2]<<2)|0;p=i[e>>2];m=i[e+12>>2];r:{if(m>>>0>3){break r}h=i[c+12>>2];n=e+16|0;if(!i[n>>2]){d=h;break r}k=e+12|0;f=0;while(1){e=pn(h,(f<<2)+d|0,m);m=i[k>>2];h=e+m|0;f=f+1|0;if(f>>>0>2]){continue}break}d=i[c+12>>2]}f=i[c+28>>2];f=j[p+84|0]?f:i[i[p+68>>2]+(f<<2)>>2];if(f>>>0>=l[p+80>>2]){break q}e=i[p+40>>2];pn(i[i[p>>2]>>2]+o(e,f)|0,d,e);q=q+1|0;f=i[c+16>>2];if(q>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;A=A+1|0;if((A|0)==(t|0)){break f}f=i[a+12>>2];continue}}f=i[g+28>>2]}if(f){continue}break}e=1}b=i[g+24>>2];a=(b>>>0)/341|0;f=i[g+12>>2];h=i[g+16>>2];s:{if((f|0)==(h|0)){break s}k=(a<<2)+f|0;d=i[k>>2];m=d+o(b-o(a,341)|0,12)|0;b=b+i[g+28>>2]|0;a=(b>>>0)/341|0;a=i[(a<<2)+f>>2]+o(b-o(a,341)|0,12)|0;if((m|0)==(a|0)){break s}while(1){m=m+12|0;if((m-d|0)==4092){d=i[k+4>>2];m=d;k=k+4|0}if((a|0)!=(m|0)){continue}break}}i[g+28>>2]=0;m=h-f>>2;if(m>>>0>2){while(1){nn(i[f>>2]);f=i[g+12>>2]+4|0;i[g+12>>2]=f;h=i[g+16>>2];m=h-f>>2;if(m>>>0>2){continue}break}}d=170;t:{switch(m+ -1|0){case 1:d=341;case 0:i[g+24>>2]=d;break;default:break t}}u:{if((f|0)==(h|0)){break u}while(1){nn(i[f>>2]);f=f+4|0;if((h|0)!=(f|0)){continue}break}b=i[g+16>>2];a=i[g+12>>2];if((b|0)==(a|0)){break u}i[g+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return e}Sm();x()}Sm();x()}function xb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;d=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;e=Dm(h);i[g+8>>2]=e;f=e+h|0;i[g+16>>2]=f;qn(e,0,h);i[g+12>>2]=f}h=i[a+628>>2];k=i[h>>2];if(k){i[h+4>>2]=k;nn(k);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;d=i[a+12>>2];e=i[g+8>>2];f=i[g+12>>2]}i[h+4>>2]=f;i[h>>2]=e;i[h+8>>2]=i[g+16>>2];e=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}f=d<<2;h=Dm(f);i[g+8>>2]=h;e=f+h|0;i[g+16>>2]=e;qn(h,0,f);i[g+12>>2]=e}f=i[a+640>>2];d=i[f>>2];if(d){i[f+4>>2]=d;nn(d);i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;h=i[g+8>>2];e=i[g+12>>2]}i[f+4>>2]=e;i[f>>2]=h;i[f+8>>2]=i[g+16>>2];e=g+24|0;i[e>>2]=0;i[e+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);h=i[d>>2];d=i[g+12>>2];f=0;c:{if((h|0)==(d|0)){break c}f=i[e>>2]+i[g+28>>2]|0;e=(f>>>0)/341|0;f=i[d+(e<<2)>>2]+o(f-o(e,341)|0,12)|0}i[f+4>>2]=0;i[f+8>>2]=0;i[f>>2]=b;k=1;f=i[g+28>>2];d=f+1|0;i[g+28>>2]=d;d:{if(d>>>0>>0){break d}while(1){h=i[g+12>>2];d=d+ -1|0;f=d+i[g+24>>2]|0;e=(f>>>0)/341|0;e=i[h+(e<<2)>>2]+o(f-o(e,341)|0,12)|0;n=i[e+8>>2];p=i[e+4>>2];m=i[e>>2];i[g+28>>2]=d;e=i[g+16>>2];d=e-h|0;if((d?o(d>>2,341)+ -1|0:0)-f>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}k=0;if(m>>>0>b>>>0){break d}f=i[a+628>>2];s=o(n,12);t=s+i[a+640>>2]|0;h=vl(a,t,p);if(h>>>0>=l[a+12>>2]){break d}p=f+s|0;e:{f:{q=h<<2;f=i[a>>2]-i[q+i[t>>2]>>2]|0;if(!f){if(!m){break f}s=0;while(1){k=0;d=i[c+16>>2];g:{if((d|0)==i[c+20>>2]){break g}while(1){d=o(k,20)+d|0;f=i[p>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];h:{if(h>>>0>3){break h}e=i[c+12>>2];t=d+16|0;if(!i[t>>2]){f=e;break h}q=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[q>>2];e=e+h|0;d=d+1|0;if(d>>>0>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break g}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((m|0)!=(s|0)){continue}break}break f}i:{j:{k:{l:{if(m>>>0<=2){f=i[a+616>>2];i[f>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<>2];t=n+1|0;k=o(t,12);d=f+k|0;if((d|0)!=(p|0)){ua(d,i[p>>2],i[p+4>>2]);f=i[a+628>>2]}f=q+i[f+k>>2]|0;i[f>>2]=e+i[f>>2];e=0;d=0;f=r(m)^31;if(f){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((f|0)!=(d|0)){continue}break}}e=(m>>>1|0)-e|0;d=m-e|0;m:{if((d|0)==(e|0)){f=e;break m}f=i[a+596>>2];if((f|0)==i[a+588>>2]){break k}m=i[f>>2];p=i[a+600>>2];u=p+1|0;i[a+600>>2]=u;m=m&-2147483648>>>p;n:{if((u|0)==32){i[a+600>>2]=0;i[a+596>>2]=f+4;if(m){break n}break k}if(!m){break k}}f=d}d=e;break j}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[f+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0>>0){continue}break}break i}f=e}e=i[a+640>>2];m=e+s|0;p=i[m>>2];s=p+q|0;i[s>>2]=i[s>>2]+1;ua(e+k|0,p,i[m+4>>2]);if(d){m=i[g+28>>2]+i[g+24>>2]|0;p=i[g+16>>2];e=i[g+12>>2];k=p-e|0;if((m|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+24>>2]+i[g+28>>2]|0;p=i[g+16>>2];e=i[g+12>>2]}k=0;o:{if((e|0)==(p|0)){break o}k=e;e=(m>>>0)/341|0;k=i[k+(e<<2)>>2]+o(m-o(e,341)|0,12)|0}i[k+8>>2]=n;i[k+4>>2]=h;i[k>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!f){break f}e=i[g+28>>2]+i[g+24>>2]|0;m=i[g+16>>2];d=i[g+12>>2];k=m-d|0;if((e|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+16>>2];d=i[g+12>>2];e=i[g+24>>2]+i[g+28>>2]|0}if((d|0)==(m|0)){e=0}else{k=d;d=(e>>>0)/341|0;e=i[k+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[e+8>>2]=t;i[e+4>>2]=h;i[e>>2]=f;d=i[g+28>>2]+1|0;i[g+28>>2]=d;break e}if(!m){break f}s=0;while(1){if(d){u=i[p>>2];y=i[t>>2];h=i[a+604>>2];z=i[a+616>>2];d=0;while(1){k=z+(d<<2)|0;i[h+(i[k>>2]<<2)>>2]=0;e=i[k>>2]<<2;f=i[a>>2]-i[e+y>>2]|0;p:{if(!f){break p}e=e+h|0;n=i[a+560>>2];v=32-n|0;if((f|0)<=(v|0)){q=i[a+556>>2];if((q|0)==i[a+548>>2]){i[e>>2]=0;break p}i[e>>2]=i[q>>2]<>>32-f;f=f+i[a+560>>2]|0;i[a+560>>2]=f;if((f|0)!=32){break p}i[a+560>>2]=0;i[a+556>>2]=q+4;break p}q=i[a+556>>2];w=q+4|0;if((w|0)==i[a+548>>2]){i[e>>2]=0;break p}A=i[q>>2];i[a+556>>2]=w;v=f-v|0;i[a+560>>2]=v;i[e>>2]=i[q+4>>2]>>>32-v|A<>>32-f}f=i[k>>2]<<2;e=f+h|0;i[e>>2]=i[e>>2]|i[f+u>>2];d=d+1|0;if(d>>>0>2]){continue}break}}k=0;d=i[c+16>>2];q:{if((d|0)==i[c+20>>2]){break q}while(1){d=o(k,20)+d|0;f=i[a+604>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];r:{if(h>>>0>3){break r}e=i[c+12>>2];q=d+16|0;if(!i[q>>2]){f=e;break r}u=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[u>>2];e=e+h|0;d=d+1|0;if(d>>>0>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break q}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((s|0)==(m|0)){break f}d=i[a+12>>2];continue}}d=i[g+28>>2]}if(d){continue}break}k=1}a=i[g+24>>2];b=(a>>>0)/341|0;d=i[g+12>>2];e=i[g+16>>2];s:{if((d|0)==(e|0)){break s}m=(b<<2)+d|0;f=i[m>>2];h=f+o(a-o(b,341)|0,12)|0;a=a+i[g+28>>2]|0;b=(a>>>0)/341|0;a=i[(b<<2)+d>>2]+o(a-o(b,341)|0,12)|0;if((h|0)==(a|0)){break s}while(1){h=h+12|0;if((h-f|0)==4092){f=i[m+4>>2];m=m+4|0;h=f}if((a|0)!=(h|0)){continue}break}}i[g+28>>2]=0;h=e-d>>2;if(h>>>0>2){while(1){nn(i[d>>2]);d=i[g+12>>2]+4|0;i[g+12>>2]=d;e=i[g+16>>2];h=e-d>>2;if(h>>>0>2){continue}break}}f=170;t:{switch(h+ -1|0){case 1:f=341;case 0:i[g+24>>2]=f;break;default:break t}}u:{if((d|0)==(e|0)){break u}while(1){nn(i[d>>2]);d=d+4|0;if((e|0)!=(d|0)){continue}break}a=i[g+16>>2];b=i[g+12>>2];if((a|0)==(b|0)){break u}i[g+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return k}Sm();x()}Sm();x()}function zb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;d=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;e=Dm(h);i[g+8>>2]=e;f=e+h|0;i[g+16>>2]=f;qn(e,0,h);i[g+12>>2]=f}h=i[a+628>>2];k=i[h>>2];if(k){i[h+4>>2]=k;nn(k);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;d=i[a+12>>2];e=i[g+8>>2];f=i[g+12>>2]}i[h+4>>2]=f;i[h>>2]=e;i[h+8>>2]=i[g+16>>2];e=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}f=d<<2;h=Dm(f);i[g+8>>2]=h;e=f+h|0;i[g+16>>2]=e;qn(h,0,f);i[g+12>>2]=e}f=i[a+640>>2];d=i[f>>2];if(d){i[f+4>>2]=d;nn(d);i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;h=i[g+8>>2];e=i[g+12>>2]}i[f+4>>2]=e;i[f>>2]=h;i[f+8>>2]=i[g+16>>2];e=g+24|0;i[e>>2]=0;i[e+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);h=i[d>>2];d=i[g+12>>2];f=0;c:{if((h|0)==(d|0)){break c}f=i[e>>2]+i[g+28>>2]|0;e=(f>>>0)/341|0;f=i[d+(e<<2)>>2]+o(f-o(e,341)|0,12)|0}i[f+4>>2]=0;i[f+8>>2]=0;i[f>>2]=b;k=1;f=i[g+28>>2];d=f+1|0;i[g+28>>2]=d;d:{if(d>>>0>>0){break d}while(1){k=i[g+12>>2];h=d+ -1|0;f=h+i[g+24>>2]|0;e=(f>>>0)/341|0;e=i[k+(e<<2)>>2]+o(f-o(e,341)|0,12)|0;n=i[e+8>>2];d=i[e+4>>2];m=i[e>>2];i[g+28>>2]=h;e=i[g+16>>2];h=e-k|0;if((h?o(h>>2,341)+ -1|0:0)-f>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}if(m>>>0>b>>>0){k=0;break d}k=0;f=i[a+12>>2];h=(d|0)==(f+ -1|0)?0:d+1|0;if(h>>>0>=f>>>0){break d}f=i[a+628>>2];p=o(n,12);s=f+p|0;e:{f:{q=h<<2;t=p+i[a+640>>2]|0;e=i[a>>2]-i[q+i[t>>2]>>2]|0;if(!e){if(!m){break f}p=0;while(1){k=0;d=i[c+16>>2];g:{if((d|0)==i[c+20>>2]){break g}while(1){d=o(k,20)+d|0;f=i[s>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];h:{if(h>>>0>3){break h}e=i[c+12>>2];q=d+16|0;if(!i[q>>2]){f=e;break h}t=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[t>>2];e=e+h|0;d=d+1|0;if(d>>>0>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break g}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((m|0)!=(p|0)){continue}break}break f}i:{j:{k:{l:{if(m>>>0<=2){f=i[a+616>>2];i[f>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}d=f;f=p+12|0;ua(d+f|0,i[s>>2],i[s+4>>2]);f=q+i[f+i[a+628>>2]>>2]|0;i[f>>2]=i[f>>2]+(1<>>1|0)-e|0;d=m-e|0;m:{if((d|0)==(e|0)){f=e;break m}f=i[a+596>>2];if((f|0)==i[a+588>>2]){break k}k=i[f>>2];m=i[a+600>>2];t=m+1|0;i[a+600>>2]=t;k=k&-2147483648>>>m;n:{if((t|0)==32){i[a+600>>2]=0;i[a+596>>2]=f+4;if(k){break n}break k}if(!k){break k}}f=d}d=e;break j}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[f+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0>>0){continue}break}break i}f=e}e=i[a+640>>2];k=e+p|0;m=i[k>>2];p=m+q|0;i[p>>2]=i[p>>2]+1;ua(e+o(s,12)|0,m,i[k+4>>2]);if(d){m=i[g+28>>2]+i[g+24>>2]|0;p=i[g+16>>2];e=i[g+12>>2];k=p-e|0;if((m|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+24>>2]+i[g+28>>2]|0;p=i[g+16>>2];e=i[g+12>>2]}k=0;o:{if((e|0)==(p|0)){break o}k=e;e=(m>>>0)/341|0;k=i[k+(e<<2)>>2]+o(m-o(e,341)|0,12)|0}i[k+8>>2]=n;i[k+4>>2]=h;i[k>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!f){break f}e=i[g+28>>2]+i[g+24>>2]|0;m=i[g+16>>2];d=i[g+12>>2];k=m-d|0;if((e|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+16>>2];d=i[g+12>>2];e=i[g+24>>2]+i[g+28>>2]|0}if((d|0)==(m|0)){e=0}else{k=d;d=(e>>>0)/341|0;e=i[k+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[e+8>>2]=s;i[e+4>>2]=h;i[e>>2]=f;d=i[g+28>>2]+1|0;i[g+28>>2]=d;break e}if(!m){break f}p=0;while(1){if(d){v=i[s>>2];y=i[t>>2];h=i[a+604>>2];z=i[a+616>>2];d=0;while(1){k=z+(d<<2)|0;i[h+(i[k>>2]<<2)>>2]=0;e=i[k>>2]<<2;f=i[a>>2]-i[e+y>>2]|0;p:{if(!f){break p}e=e+h|0;n=i[a+560>>2];u=32-n|0;if((f|0)<=(u|0)){q=i[a+556>>2];if((q|0)==i[a+548>>2]){i[e>>2]=0;break p}i[e>>2]=i[q>>2]<>>32-f;f=f+i[a+560>>2]|0;i[a+560>>2]=f;if((f|0)!=32){break p}i[a+560>>2]=0;i[a+556>>2]=q+4;break p}q=i[a+556>>2];w=q+4|0;if((w|0)==i[a+548>>2]){i[e>>2]=0;break p}A=i[q>>2];i[a+556>>2]=w;u=f-u|0;i[a+560>>2]=u;i[e>>2]=i[q+4>>2]>>>32-u|A<>>32-f}f=i[k>>2]<<2;e=f+h|0;i[e>>2]=i[e>>2]|i[f+v>>2];d=d+1|0;if(d>>>0>2]){continue}break}}k=0;d=i[c+16>>2];q:{if((d|0)==i[c+20>>2]){break q}while(1){d=o(k,20)+d|0;f=i[a+604>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];r:{if(h>>>0>3){break r}e=i[c+12>>2];q=d+16|0;if(!i[q>>2]){f=e;break r}v=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[v>>2];e=e+h|0;d=d+1|0;if(d>>>0>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break q}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((p|0)==(m|0)){break f}d=i[a+12>>2];continue}}d=i[g+28>>2]}if(d){continue}break}k=1}a=i[g+24>>2];b=(a>>>0)/341|0;d=i[g+12>>2];e=i[g+16>>2];s:{if((d|0)==(e|0)){break s}m=(b<<2)+d|0;f=i[m>>2];h=f+o(a-o(b,341)|0,12)|0;a=a+i[g+28>>2]|0;b=(a>>>0)/341|0;a=i[(b<<2)+d>>2]+o(a-o(b,341)|0,12)|0;if((h|0)==(a|0)){break s}while(1){h=h+12|0;if((h-f|0)==4092){f=i[m+4>>2];m=m+4|0;h=f}if((a|0)!=(h|0)){continue}break}}i[g+28>>2]=0;h=e-d>>2;if(h>>>0>2){while(1){nn(i[d>>2]);d=i[g+12>>2]+4|0;i[g+12>>2]=d;e=i[g+16>>2];h=e-d>>2;if(h>>>0>2){continue}break}}f=170;t:{switch(h+ -1|0){case 1:f=341;case 0:i[g+24>>2]=f;break;default:break t}}u:{if((d|0)==(e|0)){break u}while(1){nn(i[d>>2]);d=d+4|0;if((e|0)!=(d|0)){continue}break}a=i[g+16>>2];b=i[g+12>>2];if((a|0)==(b|0)){break u}i[g+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return k}Sm();x()}Sm();x()}function Ab(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;d=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;e=Dm(h);i[g+8>>2]=e;f=e+h|0;i[g+16>>2]=f;qn(e,0,h);i[g+12>>2]=f}h=i[a+628>>2];k=i[h>>2];if(k){i[h+4>>2]=k;nn(k);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;d=i[a+12>>2];e=i[g+8>>2];f=i[g+12>>2]}i[h+4>>2]=f;i[h>>2]=e;i[h+8>>2]=i[g+16>>2];e=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}f=d<<2;h=Dm(f);i[g+8>>2]=h;e=f+h|0;i[g+16>>2]=e;qn(h,0,f);i[g+12>>2]=e}f=i[a+640>>2];d=i[f>>2];if(d){i[f+4>>2]=d;nn(d);i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;h=i[g+8>>2];e=i[g+12>>2]}i[f+4>>2]=e;i[f>>2]=h;i[f+8>>2]=i[g+16>>2];e=g+24|0;i[e>>2]=0;i[e+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);h=i[d>>2];d=i[g+12>>2];f=0;c:{if((h|0)==(d|0)){break c}f=i[e>>2]+i[g+28>>2]|0;e=(f>>>0)/341|0;f=i[d+(e<<2)>>2]+o(f-o(e,341)|0,12)|0}i[f+4>>2]=0;i[f+8>>2]=0;i[f>>2]=b;k=1;f=i[g+28>>2];d=f+1|0;i[g+28>>2]=d;d:{if(d>>>0>>0){break d}while(1){h=i[g+12>>2];d=d+ -1|0;f=d+i[g+24>>2]|0;e=(f>>>0)/341|0;e=i[h+(e<<2)>>2]+o(f-o(e,341)|0,12)|0;n=i[e+8>>2];m=i[e>>2];i[g+28>>2]=d;e=i[g+16>>2];d=e-h|0;if((d?o(d>>2,341)+ -1|0:0)-f>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}k=0;if(m>>>0>b>>>0){break d}f=i[a+628>>2];s=o(n,12);t=s+i[a+640>>2]|0;h=wl(a,m,t);if(h>>>0>=l[a+12>>2]){break d}q=f+s|0;e:{f:{p=h<<2;f=i[a>>2]-i[p+i[t>>2]>>2]|0;if(!f){if(!m){break f}s=0;while(1){k=0;d=i[c+16>>2];g:{if((d|0)==i[c+20>>2]){break g}while(1){d=o(k,20)+d|0;f=i[q>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];h:{if(h>>>0>3){break h}e=i[c+12>>2];t=d+16|0;if(!i[t>>2]){f=e;break h}p=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[p>>2];e=e+h|0;d=d+1|0;if(d>>>0>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break g}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((m|0)!=(s|0)){continue}break}break f}i:{j:{k:{l:{if(m>>>0<=2){f=i[a+616>>2];i[f>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<>2];t=n+1|0;k=o(t,12);d=f+k|0;if((d|0)!=(q|0)){ua(d,i[q>>2],i[q+4>>2]);f=i[a+628>>2]}f=p+i[f+k>>2]|0;i[f>>2]=e+i[f>>2];e=0;d=0;f=r(m)^31;if(f){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((f|0)!=(d|0)){continue}break}}e=(m>>>1|0)-e|0;d=m-e|0;m:{if((d|0)==(e|0)){f=e;break m}f=i[a+596>>2];if((f|0)==i[a+588>>2]){break k}m=i[f>>2];q=i[a+600>>2];u=q+1|0;i[a+600>>2]=u;m=m&-2147483648>>>q;n:{if((u|0)==32){i[a+600>>2]=0;i[a+596>>2]=f+4;if(m){break n}break k}if(!m){break k}}f=d}d=e;break j}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[f+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0>>0){continue}break}break i}f=e}e=i[a+640>>2];m=e+s|0;q=i[m>>2];s=q+p|0;i[s>>2]=i[s>>2]+1;ua(e+k|0,q,i[m+4>>2]);if(d){m=i[g+28>>2]+i[g+24>>2]|0;q=i[g+16>>2];e=i[g+12>>2];k=q-e|0;if((m|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+24>>2]+i[g+28>>2]|0;q=i[g+16>>2];e=i[g+12>>2]}k=0;o:{if((e|0)==(q|0)){break o}k=e;e=(m>>>0)/341|0;k=i[k+(e<<2)>>2]+o(m-o(e,341)|0,12)|0}i[k+8>>2]=n;i[k+4>>2]=h;i[k>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!f){break f}e=i[g+28>>2]+i[g+24>>2]|0;m=i[g+16>>2];d=i[g+12>>2];k=m-d|0;if((e|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+16>>2];d=i[g+12>>2];e=i[g+24>>2]+i[g+28>>2]|0}if((d|0)==(m|0)){e=0}else{k=d;d=(e>>>0)/341|0;e=i[k+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[e+8>>2]=t;i[e+4>>2]=h;i[e>>2]=f;d=i[g+28>>2]+1|0;i[g+28>>2]=d;break e}if(!m){break f}s=0;while(1){if(d){u=i[q>>2];y=i[t>>2];h=i[a+604>>2];z=i[a+616>>2];d=0;while(1){k=z+(d<<2)|0;i[h+(i[k>>2]<<2)>>2]=0;e=i[k>>2]<<2;f=i[a>>2]-i[e+y>>2]|0;p:{if(!f){break p}e=e+h|0;n=i[a+560>>2];v=32-n|0;if((f|0)<=(v|0)){p=i[a+556>>2];if((p|0)==i[a+548>>2]){i[e>>2]=0;break p}i[e>>2]=i[p>>2]<>>32-f;f=f+i[a+560>>2]|0;i[a+560>>2]=f;if((f|0)!=32){break p}i[a+560>>2]=0;i[a+556>>2]=p+4;break p}p=i[a+556>>2];w=p+4|0;if((w|0)==i[a+548>>2]){i[e>>2]=0;break p}A=i[p>>2];i[a+556>>2]=w;v=f-v|0;i[a+560>>2]=v;i[e>>2]=i[p+4>>2]>>>32-v|A<>>32-f}f=i[k>>2]<<2;e=f+h|0;i[e>>2]=i[e>>2]|i[f+u>>2];d=d+1|0;if(d>>>0>2]){continue}break}}k=0;d=i[c+16>>2];q:{if((d|0)==i[c+20>>2]){break q}while(1){d=o(k,20)+d|0;f=i[a+604>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];r:{if(h>>>0>3){break r}e=i[c+12>>2];p=d+16|0;if(!i[p>>2]){f=e;break r}u=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[u>>2];e=e+h|0;d=d+1|0;if(d>>>0>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break q}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((s|0)==(m|0)){break f}d=i[a+12>>2];continue}}d=i[g+28>>2]}if(d){continue}break}k=1}a=i[g+24>>2];b=(a>>>0)/341|0;d=i[g+12>>2];e=i[g+16>>2];s:{if((d|0)==(e|0)){break s}m=(b<<2)+d|0;f=i[m>>2];h=f+o(a-o(b,341)|0,12)|0;a=a+i[g+28>>2]|0;b=(a>>>0)/341|0;a=i[(b<<2)+d>>2]+o(a-o(b,341)|0,12)|0;if((h|0)==(a|0)){break s}while(1){h=h+12|0;if((h-f|0)==4092){f=i[m+4>>2];m=m+4|0;h=f}if((a|0)!=(h|0)){continue}break}}i[g+28>>2]=0;h=e-d>>2;if(h>>>0>2){while(1){nn(i[d>>2]);d=i[g+12>>2]+4|0;i[g+12>>2]=d;e=i[g+16>>2];h=e-d>>2;if(h>>>0>2){continue}break}}f=170;t:{switch(h+ -1|0){case 1:f=341;case 0:i[g+24>>2]=f;break;default:break t}}u:{if((d|0)==(e|0)){break u}while(1){nn(i[d>>2]);d=d+4|0;if((e|0)!=(d|0)){continue}break}a=i[g+16>>2];b=i[g+12>>2];if((a|0)==(b|0)){break u}i[g+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return k}Sm();x()}Sm();x()}function vb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;g=J-32|0;J=g;f=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(f){if(f>>>0>=1073741824){break a}d=f<<2;h=Dm(d);i[g+8>>2]=h;e=d+h|0;i[g+16>>2]=e;qn(h,0,d);i[g+12>>2]=e}m=i[a+116>>2];d=i[m>>2];if(d){i[m+4>>2]=d;nn(d);i[m+8>>2]=0;i[m>>2]=0;i[m+4>>2]=0;f=i[a+12>>2];h=i[g+8>>2];e=i[g+12>>2]}i[m+4>>2]=e;i[m>>2]=h;i[m+8>>2]=i[g+16>>2];h=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;b:{if(f){if(f>>>0>=1073741824){break b}d=f<<2;k=Dm(d);i[g+8>>2]=k;h=d+k|0;i[g+16>>2]=h;qn(k,0,d);i[g+12>>2]=h}e=i[a+128>>2];d=i[e>>2];if(d){i[e+4>>2]=d;nn(d);i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;k=i[g+8>>2];h=i[g+12>>2]}i[e+4>>2]=h;i[e>>2]=k;i[e+8>>2]=i[g+16>>2];h=g+24|0;i[h>>2]=0;i[h+4>>2]=0;e=g+16|0;i[e>>2]=0;i[e+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);m=i[g+12>>2];d=0;c:{if((m|0)==i[e>>2]){break c}e=i[h>>2]+i[g+28>>2]|0;d=(e>>>0)/341|0;d=i[m+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;n=1;d=i[g+28>>2];f=d+1|0;i[g+28>>2]=f;d:{if(f>>>0>>0){break d}B=a+16|0;while(1){d=i[g+12>>2];h=f+ -1|0;n=h+i[g+24>>2]|0;e=(n>>>0)/341|0;e=i[d+(e<<2)>>2]+o(n-o(e,341)|0,12)|0;u=i[e+8>>2];m=i[e+4>>2];t=i[e>>2];i[g+28>>2]=h;e=i[g+16>>2];d=e-d|0;if((d?o(d>>2,341)+ -1|0:0)-n>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}n=0;if(t>>>0>b>>>0){break d}d=i[a+116>>2];v=o(u,12);A=v+i[a+128>>2]|0;k=vl(a,A,m);if(k>>>0>=l[a+12>>2]){break d}z=d+v|0;e:{w=k<<2;d=i[a>>2]-i[w+i[A>>2]>>2]|0;if(!d){if(!t){break e}p=0;while(1){m=0;f=i[c+16>>2];f:{if((f|0)==i[c+20>>2]){break f}while(1){d=o(m,20)+f|0;e=i[z>>2]+(i[d+4>>2]<<2)|0;s=i[d>>2];k=i[d+12>>2];g:{if(k>>>0>3){break g}h=i[c+12>>2];q=d+16|0;if(!i[q>>2]){e=h;break g}n=d+12|0;f=0;while(1){d=pn(h,(f<<2)+e|0,k);k=i[n>>2];h=d+k|0;f=f+1|0;if(f>>>0>2]){continue}break}e=i[c+12>>2]}f=i[c+28>>2];f=j[s+84|0]?f:i[i[s+68>>2]+(f<<2)>>2];if(f>>>0>=l[s+80>>2]){break f}d=i[s+40>>2];pn(i[i[s>>2]>>2]+o(d,f)|0,e,d);m=m+1|0;f=i[c+16>>2];if(m>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((t|0)!=(p|0)){continue}break}break e}h:{i:{j:{k:{if(t>>>0<=2){d=i[a+104>>2];i[d>>2]=k;h=1;f=i[a+12>>2];if(f>>>0>1){break k}break h}if(l[a+8>>2]>l[a+4>>2]){break d}m=1<>2];p=u+1|0;s=o(p,12);e=d+s|0;if((e|0)!=(z|0)){ua(e,i[z>>2],i[z+4>>2]);d=i[a+116>>2]}d=w+i[d+s>>2]|0;i[d>>2]=m+i[d>>2];i[g+4>>2]=0;De(B,r(t)^31,g+4|0);e=(t>>>1|0)-i[g+4>>2]|0;d=t-e|0;l:{if((d|0)==(e|0)){d=e;break l}q=i[a+84>>2];if((q|0)==i[a+76>>2]){break j}n=i[q>>2];h=i[a+88>>2];m=h+1|0;i[a+88>>2]=m;h=n&-2147483648>>>h;m:{if((m|0)==32){i[a+88>>2]=0;i[a+84>>2]=q+4;if(h){break m}break j}if(!h){break j}}}m=d;d=e;break i}while(1){k=(f+ -1|0)==(k|0)?0:k+1|0;i[d+(h<<2)>>2]=k;h=h+1|0;f=i[a+12>>2];if(h>>>0>>0){continue}break}break h}m=e}q=i[a+128>>2];n=q+v|0;h=i[n>>2];e=h+w|0;i[e>>2]=i[e>>2]+1;ua(s+q|0,h,i[n+4>>2]);if(d){e=i[g+28>>2]+i[g+24>>2]|0;n=i[g+16>>2];f=i[g+12>>2];h=n-f|0;if((e|0)==((h?o(h>>2,341)+ -1|0:0)|0)){Nb(g+8|0);n=i[g+16>>2];f=i[g+12>>2];e=i[g+24>>2]+i[g+28>>2]|0}if((f|0)==(n|0)){e=0}else{h=(e>>>0)/341|0;e=i[(h<<2)+f>>2]+o(e-o(h,341)|0,12)|0}i[e+8>>2]=u;i[e+4>>2]=k;i[e>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!m){break e}h=i[g+28>>2]+i[g+24>>2]|0;e=i[g+16>>2];f=i[g+12>>2];d=e-f|0;if((h|0)==((d?o(d>>2,341)+ -1|0:0)|0)){Nb(g+8|0);h=i[g+24>>2]+i[g+28>>2]|0;f=i[g+12>>2];e=i[g+16>>2]}if((e|0)==(f|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=p;i[d+4>>2]=k;i[d>>2]=m;i[g+28>>2]=i[g+28>>2]+1;break e}if(!t){break e}v=0;while(1){if(f){q=i[z>>2];n=i[A>>2];u=i[a+92>>2];h=i[a+104>>2];f=0;while(1){w=h+(f<<2)|0;i[u+(i[w>>2]<<2)>>2]=0;d=i[w>>2]<<2;y=i[a>>2]-i[d+n>>2]|0;n:{if(!y){break n}k=d+u|0;s=i[a+48>>2];m=32-s|0;if((y|0)<=(m|0)){e=i[a+44>>2];if((e|0)==i[a+36>>2]){i[k>>2]=0;break n}i[k>>2]=i[e>>2]<>>32-y;d=y+i[a+48>>2]|0;i[a+48>>2]=d;if((d|0)!=32){break n}i[a+48>>2]=0;i[a+44>>2]=e+4;break n}p=i[a+44>>2];d=p+4|0;if((d|0)==i[a+36>>2]){i[k>>2]=0;break n}e=i[p>>2];i[a+44>>2]=d;d=y-m|0;i[a+48>>2]=d;i[k>>2]=i[p+4>>2]>>>32-d|e<>>32-y}e=i[w>>2]<<2;d=e+u|0;i[d>>2]=i[d>>2]|i[e+q>>2];f=f+1|0;if(f>>>0>2]){continue}break}}m=0;f=i[c+16>>2];o:{if((f|0)==i[c+20>>2]){break o}while(1){d=o(m,20)+f|0;e=i[a+92>>2]+(i[d+4>>2]<<2)|0;p=i[d>>2];k=i[d+12>>2];p:{if(k>>>0>3){break p}h=i[c+12>>2];q=d+16|0;if(!i[q>>2]){e=h;break p}n=d+12|0;f=0;while(1){d=pn(h,(f<<2)+e|0,k);k=i[n>>2];h=d+k|0;f=f+1|0;if(f>>>0>2]){continue}break}e=i[c+12>>2]}f=i[c+28>>2];f=j[p+84|0]?f:i[i[p+68>>2]+(f<<2)>>2];if(f>>>0>=l[p+80>>2]){break o}d=i[p+40>>2];pn(i[i[p>>2]>>2]+o(d,f)|0,e,d);m=m+1|0;f=i[c+16>>2];if(m>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;v=v+1|0;if((v|0)==(t|0)){break e}f=i[a+12>>2];continue}}f=i[g+28>>2];if(f){continue}break}n=1}b=i[g+24>>2];a=(b>>>0)/341|0;f=i[g+12>>2];h=i[g+16>>2];q:{if((f|0)==(h|0)){break q}d=(a<<2)+f|0;e=i[d>>2];k=e+o(b-o(a,341)|0,12)|0;b=b+i[g+28>>2]|0;a=(b>>>0)/341|0;a=i[(a<<2)+f>>2]+o(b-o(a,341)|0,12)|0;if((k|0)==(a|0)){break q}while(1){k=k+12|0;if((k-e|0)==4092){e=i[d+4>>2];k=e;d=d+4|0}if((a|0)!=(k|0)){continue}break}}i[g+28>>2]=0;k=h-f>>2;if(k>>>0>2){while(1){nn(i[f>>2]);f=i[g+12>>2]+4|0;i[g+12>>2]=f;h=i[g+16>>2];k=h-f>>2;if(k>>>0>2){continue}break}}e=170;r:{switch(k+ -1|0){case 1:e=341;case 0:i[g+24>>2]=e;break;default:break r}}s:{if((f|0)==(h|0)){break s}while(1){nn(i[f>>2]);f=f+4|0;if((h|0)!=(f|0)){continue}break}b=i[g+16>>2];a=i[g+12>>2];if((b|0)==(a|0)){break s}i[g+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return n}Sm();x()}Sm();x()}function wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;g=J-32|0;J=g;f=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(f){if(f>>>0>=1073741824){break a}d=f<<2;h=Dm(d);i[g+8>>2]=h;e=d+h|0;i[g+16>>2]=e;qn(h,0,d);i[g+12>>2]=e}m=i[a+116>>2];d=i[m>>2];if(d){i[m+4>>2]=d;nn(d);i[m+8>>2]=0;i[m>>2]=0;i[m+4>>2]=0;f=i[a+12>>2];h=i[g+8>>2];e=i[g+12>>2]}i[m+4>>2]=e;i[m>>2]=h;i[m+8>>2]=i[g+16>>2];h=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;b:{if(f){if(f>>>0>=1073741824){break b}d=f<<2;k=Dm(d);i[g+8>>2]=k;h=d+k|0;i[g+16>>2]=h;qn(k,0,d);i[g+12>>2]=h}e=i[a+128>>2];d=i[e>>2];if(d){i[e+4>>2]=d;nn(d);i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;k=i[g+8>>2];h=i[g+12>>2]}i[e+4>>2]=h;i[e>>2]=k;i[e+8>>2]=i[g+16>>2];h=g+24|0;i[h>>2]=0;i[h+4>>2]=0;e=g+16|0;i[e>>2]=0;i[e+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);m=i[g+12>>2];d=0;c:{if((m|0)==i[e>>2]){break c}e=i[h>>2]+i[g+28>>2]|0;d=(e>>>0)/341|0;d=i[m+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;m=1;d=i[g+28>>2];f=d+1|0;i[g+28>>2]=f;d:{if(f>>>0>>0){break d}B=a+16|0;while(1){d=i[g+12>>2];m=f+ -1|0;n=m+i[g+24>>2]|0;e=(n>>>0)/341|0;e=i[d+(e<<2)>>2]+o(n-o(e,341)|0,12)|0;v=i[e+8>>2];h=i[e+4>>2];t=i[e>>2];i[g+28>>2]=m;e=i[g+16>>2];d=e-d|0;if((d?o(d>>2,341)+ -1|0:0)-n>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}if(t>>>0>b>>>0){m=0;break d}m=0;d=i[a+12>>2];k=(h|0)==(d+ -1|0)?0:h+1|0;if(k>>>0>=d>>>0){break d}d=i[a+116>>2];u=o(v,12);y=d+u|0;e:{q=k<<2;s=u+i[a+128>>2]|0;e=i[a>>2]-i[q+i[s>>2]>>2]|0;if(!e){if(!t){break e}p=0;while(1){q=0;f=i[c+16>>2];f:{if((f|0)==i[c+20>>2]){break f}while(1){d=o(q,20)+f|0;e=i[y>>2]+(i[d+4>>2]<<2)|0;s=i[d>>2];k=i[d+12>>2];g:{if(k>>>0>3){break g}h=i[c+12>>2];n=d+16|0;if(!i[n>>2]){e=h;break g}m=d+12|0;f=0;while(1){d=pn(h,(f<<2)+e|0,k);k=i[m>>2];h=d+k|0;f=f+1|0;if(f>>>0>2]){continue}break}e=i[c+12>>2]}f=i[c+28>>2];f=j[s+84|0]?f:i[i[s+68>>2]+(f<<2)>>2];if(f>>>0>=l[s+80>>2]){break f}d=i[s+40>>2];pn(i[i[s>>2]>>2]+o(d,f)|0,e,d);q=q+1|0;f=i[c+16>>2];if(q>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((t|0)!=(p|0)){continue}break}break e}h:{i:{j:{k:{if(t>>>0<=2){d=i[a+104>>2];i[d>>2]=k;h=1;f=i[a+12>>2];if(f>>>0>1){break k}break h}if(l[a+8>>2]>l[a+4>>2]){break d}h=d;d=u+12|0;ua(h+d|0,i[y>>2],i[y+4>>2]);d=q+i[d+i[a+116>>2]>>2]|0;i[d>>2]=i[d>>2]+(1<>2]=0;De(B,r(t)^31,g+4|0);s=v+1|0;e=(t>>>1|0)-i[g+4>>2]|0;d=t-e|0;l:{if((d|0)==(e|0)){d=e;break l}p=i[a+84>>2];if((p|0)==i[a+76>>2]){break j}n=i[p>>2];h=i[a+88>>2];m=h+1|0;i[a+88>>2]=m;h=n&-2147483648>>>h;m:{if((m|0)==32){i[a+88>>2]=0;i[a+84>>2]=p+4;if(h){break m}break j}if(!h){break j}}}m=d;d=e;break i}while(1){k=(f+ -1|0)==(k|0)?0:k+1|0;i[d+(h<<2)>>2]=k;h=h+1|0;f=i[a+12>>2];if(h>>>0>>0){continue}break}break h}m=e}p=i[a+128>>2];n=p+u|0;h=i[n>>2];e=h+q|0;i[e>>2]=i[e>>2]+1;ua(p+o(s,12)|0,h,i[n+4>>2]);if(d){h=i[g+28>>2]+i[g+24>>2]|0;n=i[g+16>>2];f=i[g+12>>2];e=n-f|0;if((h|0)==((e?o(e>>2,341)+ -1|0:0)|0)){Nb(g+8|0);f=i[g+12>>2];n=i[g+16>>2];h=i[g+24>>2]+i[g+28>>2]|0}if((f|0)==(n|0)){e=0}else{e=(h>>>0)/341|0;e=i[(e<<2)+f>>2]+o(h-o(e,341)|0,12)|0}i[e+8>>2]=v;i[e+4>>2]=k;i[e>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!m){break e}h=i[g+28>>2]+i[g+24>>2]|0;e=i[g+16>>2];f=i[g+12>>2];d=e-f|0;if((h|0)==((d?o(d>>2,341)+ -1|0:0)|0)){Nb(g+8|0);f=i[g+12>>2];h=i[g+24>>2]+i[g+28>>2]|0;e=i[g+16>>2]}if((e|0)==(f|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=k;i[d>>2]=m;i[g+28>>2]=i[g+28>>2]+1;break e}if(!t){break e}A=0;while(1){if(f){p=i[y>>2];n=i[s>>2];k=i[a+92>>2];h=i[a+104>>2];f=0;while(1){v=h+(f<<2)|0;i[k+(i[v>>2]<<2)>>2]=0;d=i[v>>2]<<2;w=i[a>>2]-i[d+n>>2]|0;n:{if(!w){break n}z=d+k|0;u=i[a+48>>2];m=32-u|0;if((w|0)<=(m|0)){e=i[a+44>>2];if((e|0)==i[a+36>>2]){i[z>>2]=0;break n}i[z>>2]=i[e>>2]<>>32-w;d=w+i[a+48>>2]|0;i[a+48>>2]=d;if((d|0)!=32){break n}i[a+48>>2]=0;i[a+44>>2]=e+4;break n}q=i[a+44>>2];d=q+4|0;if((d|0)==i[a+36>>2]){i[z>>2]=0;break n}e=i[q>>2];i[a+44>>2]=d;d=w-m|0;i[a+48>>2]=d;i[z>>2]=i[q+4>>2]>>>32-d|e<>>32-w}e=i[v>>2]<<2;d=e+k|0;i[d>>2]=i[d>>2]|i[e+p>>2];f=f+1|0;if(f>>>0>2]){continue}break}}q=0;f=i[c+16>>2];o:{if((f|0)==i[c+20>>2]){break o}while(1){d=o(q,20)+f|0;e=i[a+92>>2]+(i[d+4>>2]<<2)|0;p=i[d>>2];k=i[d+12>>2];p:{if(k>>>0>3){break p}h=i[c+12>>2];n=d+16|0;if(!i[n>>2]){e=h;break p}m=d+12|0;f=0;while(1){d=pn(h,(f<<2)+e|0,k);k=i[m>>2];h=d+k|0;f=f+1|0;if(f>>>0>2]){continue}break}e=i[c+12>>2]}f=i[c+28>>2];f=j[p+84|0]?f:i[i[p+68>>2]+(f<<2)>>2];if(f>>>0>=l[p+80>>2]){break o}d=i[p+40>>2];pn(i[i[p>>2]>>2]+o(d,f)|0,e,d);q=q+1|0;f=i[c+16>>2];if(q>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;A=A+1|0;if((A|0)==(t|0)){break e}f=i[a+12>>2];continue}}f=i[g+28>>2];if(f){continue}break}m=1}b=i[g+24>>2];a=(b>>>0)/341|0;f=i[g+12>>2];h=i[g+16>>2];q:{if((f|0)==(h|0)){break q}d=(a<<2)+f|0;e=i[d>>2];k=e+o(b-o(a,341)|0,12)|0;b=b+i[g+28>>2]|0;a=(b>>>0)/341|0;a=i[(a<<2)+f>>2]+o(b-o(a,341)|0,12)|0;if((k|0)==(a|0)){break q}while(1){k=k+12|0;if((k-e|0)==4092){e=i[d+4>>2];k=e;d=d+4|0}if((a|0)!=(k|0)){continue}break}}i[g+28>>2]=0;k=h-f>>2;if(k>>>0>2){while(1){nn(i[f>>2]);f=i[g+12>>2]+4|0;i[g+12>>2]=f;h=i[g+16>>2];k=h-f>>2;if(k>>>0>2){continue}break}}e=170;r:{switch(k+ -1|0){case 1:e=341;case 0:i[g+24>>2]=e;break;default:break r}}s:{if((f|0)==(h|0)){break s}while(1){nn(i[f>>2]);f=f+4|0;if((h|0)!=(f|0)){continue}break}b=i[g+16>>2];a=i[g+12>>2];if((b|0)==(a|0)){break s}i[g+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return m}Sm();x()}Sm();x()}function Pc(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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;j=J+ -64|0;J=j;i[a+8>>2]=e;f=a+32|0;k=i[f>>2];d=i[a+36>>2]-k>>2;a:{if(d>>>0>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=k+(e<<2)}i[j+56>>2]=0;i[j+60>>2]=0;i[j+48>>2]=0;i[j+52>>2]=0;i[j+40>>2]=0;i[j+44>>2]=0;f=j+32|0;i[f>>2]=0;i[f+4>>2]=0;i[j+24>>2]=0;i[j+28>>2]=0;i[j+16>>2]=0;i[j+20>>2]=0;i[j>>2]=0;d=0;if(e){Ta(j+16|0,e,j);h=i[j+28>>2];d=i[f>>2]}i[j>>2]=0;d=d-h>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}i[j+32>>2]=(e<<2)+h;break b}Ta(j+16|12,e-d|0,j)}i[j>>2]=0;f=i[j+40>>2];d=i[j+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}i[j+44>>2]=f+(e<<2);break c}Ta(j+40|0,e-d|0,j)}i[j>>2]=0;f=i[j+52>>2];d=i[j+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}i[j+56>>2]=f+(e<<2);break d}Ta(j+52|0,e-d|0,j)}e:{if(i[a+8>>2]<=0){break e}g=i[j+16>>2];h=0;while(1){d=h<<2;f=i[d+g>>2];l=i[a+16>>2];f:{if((f|0)>(l|0)){k=i[a+32>>2];i[d+k>>2]=l;break f}k=i[a+32>>2];d=d+k|0;l=i[a+12>>2];if((f|0)<(l|0)){i[d>>2]=l;break f}i[d>>2]=f}h=h+1|0;d=i[a+8>>2];if((h|0)<(d|0)){continue}break}if((d|0)<1){break e}d=0;while(1){g=d<<2;f=g+c|0;g=i[b+g>>2]+i[g+k>>2]|0;i[f>>2]=g;g:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break g}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}A=i[a+52>>2];q=i[a+48>>2];u=Dm(16);d=u;i[d>>2]=0;i[d+4>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[j+8>>2]=0;i[j>>2]=0;i[j+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;t=Dm(d);i[j>>2]=t;f=d+t|0;i[j+8>>2]=f;qn(t,0,d);i[j+4>>2]=f}d=1;f=i[a+56>>2];k=i[f+4>>2];v=i[f>>2];f=k-v|0;i:{if((f|0)<5){break i}d=v-k|0;d=((d|0)>(f|0)?d:f)>>>2|0;B=d>>>0>2?d:2;C=d>>>0>1?d:1;D=e<<2;l=1;while(1){j:{k:{l:{if((l|0)!=(C|0)){m:{n:{k=i[(l<<2)+v>>2];if((k|0)==-1){break n}n=k+((k>>>0)%3|0?-1:2)|0;w=n>>>5|0;m=1;y=1<>2];f=0;d=k;o:{while(1){p:{if(i[z+(d>>>3&536870908)>>2]>>>d&1){break p}g=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break p}r=i[A>>2];h=i[q+28>>2];s=i[r+(i[h+(g<<2)>>2]<<2)>>2];if((s|0)>=(l|0)){break p}p=g+1|0;p=i[r+(i[h+(((p>>>0)%3|0?p:g+ -2|0)<<2)>>2]<<2)>>2];if((p|0)>=(l|0)){break p}g=i[r+(i[h+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(l|0)){break p}if((e|0)>=1){r=i[(j+16|0)+o(f,12)>>2];g=o(e,g);p=o(e,p);s=o(e,s);h=0;while(1){i[r+(h<<2)>>2]=(i[(g+h<<2)+c>>2]+i[(h+p<<2)+c>>2]|0)-i[(h+s<<2)+c>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}g=4;f=f+1|0;if((f|0)==4){break o}}q:{if(m&1){h=-1;g=d+1|0;d=(g>>>0)%3|0?g:d+ -2|0;if((d|0)==-1|i[i[q>>2]+(d>>>3&536870908)>>2]>>>d&1){break q}d=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break q}g=d+1|0;h=(g>>>0)%3|0?g:d+ -2|0;break q}h=-1;d=((d>>>0)%3|0?-1:2)+d|0;if((d|0)==-1|i[i[q>>2]+(d>>>3&536870908)>>2]>>>d&1){break q}d=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break q}if((d>>>0)%3|0){h=d+ -1|0;break q}h=d+2|0}r:{if((h|0)==(k|0)){break r}d=h;g=(h|0)!=-1;h=(g|m^-1)&1;d=h?d:-1;m=g&m;if(!((n|0)==-1|h)){if(i[i[q>>2]+(w<<2)>>2]&y){break r}g=i[i[i[q+64>>2]+12>>2]+(n<<2)>>2];if((g|0)==-1){break r}m=0;if((g>>>0)%3|0){d=g+ -1|0}else{d=g+2|0}}if((d|0)!=-1){continue}}break}g=f;if((g|0)<1){break n}}n=(e|0)<1;if(!n){qn(t,0,D)}d=g+ -1|0;m=(d<<2)+u|0;d=o(d,12)+a|0;r=d+60|0;w=i[d- -64>>2];d=0;y=i[j>>2];k=0;f=0;while(1){h=i[m>>2];i[m>>2]=h+1;if(w>>>0<=h>>>0){break i}s:{if(i[i[r>>2]+(h>>>3&536870908)>>2]>>>h&1){break s}f=f+1|0;if(n){break s}z=i[(j+16|0)+o(k,12)>>2];h=0;while(1){s=h<<2;p=s+y|0;i[p>>2]=i[p>>2]+i[s+z>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}k=k+1|0;if((g|0)!=(k|0)){continue}break}m=o(e,l);g=m;if(!f){break m}h=0;if((e|0)>0){break l}break k}g=o(e,l)}if(i[a+8>>2]<1){break j}m=(o(l+ -1|0,e)<<2)+c|0;h=0;while(1){d=h<<2;f=i[d+m>>2];n=i[a+16>>2];t:{if((f|0)>(n|0)){k=i[a+32>>2];i[d+k>>2]=n;break t}k=i[a+32>>2];d=d+k|0;n=i[a+12>>2];if((f|0)<(n|0)){i[d>>2]=n;break t}i[d>>2]=f}h=h+1|0;f=i[a+8>>2];if((h|0)<(f|0)){continue}break}d=0;if((f|0)<1){break j}f=g<<2;h=f+c|0;m=b+f|0;while(1){g=d<<2;f=g+h|0;g=i[g+m>>2]+i[g+k>>2]|0;i[f>>2]=g;u:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break u}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}break j}Tm();x()}while(1){d=(h<<2)+t|0;i[d>>2]=i[d>>2]/(f|0);h=h+1|0;if((h|0)!=(e|0)){continue}break}}if(i[a+8>>2]<1){break j}h=0;while(1){d=h<<2;f=i[d+t>>2];g=i[a+16>>2];v:{if((f|0)>(g|0)){k=i[a+32>>2];i[d+k>>2]=g;break v}k=i[a+32>>2];d=d+k|0;g=i[a+12>>2];if((f|0)<(g|0)){i[d>>2]=g;break v}i[d>>2]=f}h=h+1|0;f=i[a+8>>2];if((h|0)<(f|0)){continue}break}d=0;if((f|0)<1){break j}f=m<<2;h=f+c|0;m=b+f|0;while(1){g=d<<2;f=g+h|0;g=i[g+m>>2]+i[g+k>>2]|0;i[f>>2]=g;w:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break w}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}d=1;l=l+1|0;if((B|0)!=(l|0)){continue}break}}a=i[j>>2];if(a){i[j+4>>2]=a;nn(a)}nn(u);a=i[j+52>>2];if(a){i[j+56>>2]=a;nn(a)}a=i[j+40>>2];if(a){i[j+44>>2]=a;nn(a)}a=i[j+28>>2];if(a){i[j+32>>2]=a;nn(a)}a=i[j+16>>2];if(a){i[j+20>>2]=a;nn(a)}J=j- -64|0;return d|0}Sm();x()}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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;h=J+ -64|0;J=h;i[a+8>>2]=e;f=a+32|0;k=i[f>>2];d=i[a+36>>2]-k>>2;a:{if(d>>>0>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=k+(e<<2)}i[h+56>>2]=0;i[h+60>>2]=0;i[h+48>>2]=0;i[h+52>>2]=0;i[h+40>>2]=0;i[h+44>>2]=0;d=h+32|0;i[d>>2]=0;i[d+4>>2]=0;i[h+24>>2]=0;i[h+28>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;i[h>>2]=0;f=0;if(e){Ta(h+16|0,e,h);j=i[h+28>>2];f=i[d>>2]}i[h>>2]=0;d=f-j>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}i[h+32>>2]=(e<<2)+j;break b}Ta(h+16|12,e-d|0,h)}i[h>>2]=0;f=i[h+40>>2];d=i[h+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}i[h+44>>2]=f+(e<<2);break c}Ta(h+40|0,e-d|0,h)}i[h>>2]=0;f=i[h+52>>2];d=i[h+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}i[h+56>>2]=f+(e<<2);break d}Ta(h+52|0,e-d|0,h)}e:{if(i[a+8>>2]<=0){break e}g=i[h+16>>2];j=0;while(1){d=j<<2;f=i[d+g>>2];m=i[a+16>>2];f:{if((f|0)>(m|0)){k=i[a+32>>2];i[d+k>>2]=m;break f}k=i[a+32>>2];d=d+k|0;m=i[a+12>>2];if((f|0)<(m|0)){i[d>>2]=m;break f}i[d>>2]=f}j=j+1|0;d=i[a+8>>2];if((j|0)<(d|0)){continue}break}if((d|0)<1){break e}f=0;while(1){g=f<<2;d=g+c|0;g=i[b+g>>2]+i[g+k>>2]|0;i[d>>2]=g;g:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break g}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;if((f|0)>2]){continue}break}}A=i[a+52>>2];z=i[a+48>>2];w=Dm(16);d=w;i[d>>2]=0;i[d+4>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;s=Dm(d);i[h>>2]=s;f=d+s|0;i[h+8>>2]=f;qn(s,0,d);i[h+4>>2]=f}k=1;d=i[a+56>>2];f=i[d+4>>2];y=i[d>>2];d=f-y|0;i:{if((d|0)<5){break i}f=y-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;B=d>>>0>2?d:2;C=d>>>0>1?d:1;D=e<<2;m=1;while(1){j:{k:{l:{if((m|0)!=(C|0)){m:{n:{k=i[(m<<2)+y>>2];if((k|0)==-1){break n}n=i[z+12>>2];u=k+((k>>>0)%3|0?-1:2)|0;v=n+(u<<2)|0;l=1;f=0;d=k;o:{while(1){g=i[n+(d<<2)>>2];p:{if((g|0)==-1){break p}j=-1;r=i[A>>2];p=i[z>>2];t=i[r+(i[p+(g<<2)>>2]<<2)>>2];q=g+1|0;q=(q>>>0)%3|0?q:g+ -2|0;if((q|0)!=-1){q=i[p+(q<<2)>>2]}else{q=-1}g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){j=i[p+(g<<2)>>2]}if((t|0)>=(m|0)){break p}g=i[(q<<2)+r>>2];if((g|0)>=(m|0)){break p}j=i[r+(j<<2)>>2];if((j|0)>=(m|0)){break p}p=i[(h+16|0)+o(f,12)>>2];if((e|0)>=1){r=o(e,j);g=o(e,g);t=o(e,t);j=0;while(1){i[p+(j<<2)>>2]=(i[(j+r<<2)+c>>2]+i[(g+j<<2)+c>>2]|0)-i[(j+t<<2)+c>>2];j=j+1|0;if((j|0)!=(e|0)){continue}break}}g=4;f=f+1|0;if((f|0)==4){break o}}q:{if(l&1){p=d+1|0;d=(p>>>0)%3|0?p:d+ -2|0;g=-1;if((d|0)==-1){break q}d=i[n+(d<<2)>>2];g=-1;if((d|0)==-1){break q}g=d+1|0;g=(g>>>0)%3|0?g:d+ -2|0;break q}d=((d>>>0)%3|0?-1:2)+d|0;g=-1;if((d|0)==-1){break q}d=i[n+(d<<2)>>2];g=-1;if((d|0)==-1){break q}g=d+ -1|0;if((d>>>0)%3|0){break q}g=d+2|0}r:{if((g|0)==(k|0)){break r}d=g;g=(g|0)!=-1;j=(g|l^-1)&1;d=j?d:-1;l=g&l;if(!((u|0)==-1|j)){g=i[v>>2];if((g|0)==-1){break r}l=0;if((g>>>0)%3|0){d=g+ -1|0}else{d=g+2|0}}if((d|0)!=-1){continue}}break}g=f;if((g|0)<1){break n}}n=(e|0)<1;if(!n){qn(s,0,D)}d=g+ -1|0;l=(d<<2)+w|0;d=o(d,12)+a|0;p=d+60|0;r=i[d- -64>>2];k=0;t=i[h>>2];d=0;f=0;while(1){j=i[l>>2];i[l>>2]=j+1;if(r>>>0<=j>>>0){break i}s:{if(i[i[p>>2]+(j>>>3&536870908)>>2]>>>j&1){break s}f=f+1|0;if(n){break s}q=i[(h+16|0)+o(d,12)>>2];j=0;while(1){u=j<<2;v=u+t|0;i[v>>2]=i[v>>2]+i[q+u>>2];j=j+1|0;if((j|0)!=(e|0)){continue}break}}d=d+1|0;if((g|0)!=(d|0)){continue}break}g=o(e,m);d=g;if(!f){break m}j=0;if((e|0)>0){break l}break k}d=o(e,m)}if(i[a+8>>2]<1){break j}l=(o(m+ -1|0,e)<<2)+c|0;j=0;while(1){f=j<<2;g=i[f+l>>2];n=i[a+16>>2];t:{if((g|0)>(n|0)){k=i[a+32>>2];i[f+k>>2]=n;break t}k=i[a+32>>2];f=f+k|0;n=i[a+12>>2];if((g|0)<(n|0)){i[f>>2]=n;break t}i[f>>2]=g}j=j+1|0;g=i[a+8>>2];if((j|0)<(g|0)){continue}break}f=0;if((g|0)<1){break j}d=d<<2;j=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[d>>2]=g;u:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break u}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;if((f|0)>2]){continue}break}break j}Tm();x()}while(1){d=(j<<2)+s|0;i[d>>2]=i[d>>2]/(f|0);j=j+1|0;if((j|0)!=(e|0)){continue}break}}if(i[a+8>>2]<1){break j}j=0;while(1){d=j<<2;f=i[d+s>>2];l=i[a+16>>2];v:{if((f|0)>(l|0)){k=i[a+32>>2];i[d+k>>2]=l;break v}k=i[a+32>>2];d=d+k|0;l=i[a+12>>2];if((f|0)<(l|0)){i[d>>2]=l;break v}i[d>>2]=f}j=j+1|0;d=i[a+8>>2];if((j|0)<(d|0)){continue}break}f=0;if((d|0)<1){break j}d=g<<2;j=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[d>>2]=g;w:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break w}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;if((f|0)>2]){continue}break}}k=1;m=m+1|0;if((B|0)!=(m|0)){continue}break}}a=i[h>>2];if(a){i[h+4>>2]=a;nn(a)}nn(w);a=i[h+52>>2];if(a){i[h+56>>2]=a;nn(a)}a=i[h+40>>2];if(a){i[h+44>>2]=a;nn(a)}a=i[h+28>>2];if(a){i[h+32>>2]=a;nn(a)}a=i[h+16>>2];if(a){i[h+20>>2]=a;nn(a)}J=h- -64|0;return k|0}Sm();x()}function Fl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;e=Dm(h);i[f+8>>2]=e;k=e+h|0;i[f+16>>2]=k;qn(e,0,h);i[f+12>>2]=k}h=i[a+120>>2];g=i[h>>2];if(g){i[h+4>>2]=g;nn(g);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;k=i[f+12>>2];e=i[f+8>>2];d=i[a+12>>2]}i[h+4>>2]=k;i[h>>2]=e;i[h+8>>2]=i[f+16>>2];e=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;j=Dm(d);i[f+8>>2]=j;e=d+j|0;i[f+16>>2]=e;qn(j,0,d);i[f+12>>2]=e}d=i[a+132>>2];h=i[d>>2];if(h){i[d+4>>2]=h;nn(h);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;j=i[f+8>>2];e=i[f+12>>2]}i[d+4>>2]=e;i[d>>2]=j;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;h=f+16|0;i[h>>2]=0;i[h+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[h>>2];h=i[f+12>>2];d=0;c:{if((g|0)==(h|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[h+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0>>0){break d}y=a+96|0;while(1){j=i[f+12>>2];g=d+ -1|0;d=g+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[j+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;s=i[e+8>>2];n=i[e+4>>2];h=i[e>>2];i[f+28>>2]=g;e=i[f+16>>2];g=e-j|0;if((g?o(g>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(h>>>0>b>>>0){break d}d=i[a+120>>2];k=o(s,12);p=k+i[a+132>>2]|0;j=vl(a,p,n);if(j>>>0>=l[a+12>>2]){break d}g=d+k|0;e:{f:{n=j<<2;d=i[a>>2]-i[n+i[p>>2]>>2]|0;if(!d){d=0;if(!h){break f}while(1){Ml(c,g);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((h|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(h>>>0<=2){k=i[a+108>>2];i[k>>2]=j;e=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<>2];t=s+1|0;p=o(t,12);m=d+p|0;if((m|0)!=(g|0)){ua(m,i[g>>2],i[g+4>>2]);d=i[a+120>>2]}d=n+i[d+p>>2]|0;i[d>>2]=e+i[d>>2];d=r(h)^31;e=i[a+32>>2];m=32-e|0;k:{if((d|0)<=(m|0)){g=i[a+28>>2];if((g|0)==i[a+20>>2]){e=0;break k}m=i[g>>2];q=d+e|0;i[a+32>>2]=q;e=m<>>32-d|0;if((q|0)!=32){break k}i[a+32>>2]=0;i[a+28>>2]=g+4;break k}g=i[a+28>>2];q=g+4|0;if((q|0)==i[a+20>>2]){e=0;break k}v=i[g>>2];i[a+28>>2]=q;m=d-m|0;i[a+32>>2]=m;e=i[g+4>>2]>>>32-m|v<>>32-d}d=(h>>>1|0)-e|0;e=h-d|0;l:{if((e|0)==(d|0)){e=d;break l}h=i[a+88>>2];if((h|0)==i[a+80>>2]){break i}g=i[h>>2];m=i[a+92>>2];q=m+1|0;i[a+92>>2]=q;g=g&-2147483648>>>m;m:{if((q|0)==32){i[a+92>>2]=0;i[a+88>>2]=h+4;if(g){break m}break i}if(!g){break i}}}h=e;e=d;break h}while(1){j=(d+ -1|0)==(j|0)?0:j+1|0;i[k+(e<<2)>>2]=j;e=e+1|0;d=i[a+12>>2];if(e>>>0>>0){continue}break}break g}h=d}d=i[a+132>>2];g=d+k|0;k=i[g>>2];n=k+n|0;i[n>>2]=i[n>>2]+1;ua(d+p|0,k,i[g+4>>2]);if(e){k=i[f+28>>2]+i[f+24>>2]|0;g=i[f+16>>2];d=i[f+12>>2];p=g-d|0;if((k|0)==((p?o(p>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+24>>2]+i[f+28>>2]|0;g=i[f+16>>2];d=i[f+12>>2]}if((d|0)==(g|0)){d=0}else{g=d;d=(k>>>0)/341|0;d=i[g+(d<<2)>>2]+o(k-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=j;i[d>>2]=e;i[f+28>>2]=i[f+28>>2]+1}if(!h){break f}e=i[f+28>>2]+i[f+24>>2]|0;k=i[f+16>>2];d=i[f+12>>2];g=k-d|0;if((e|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);e=i[f+24>>2]+i[f+28>>2]|0;k=i[f+16>>2];d=i[f+12>>2]}g=0;n:{if((d|0)==(k|0)){break n}g=d;d=(e>>>0)/341|0;g=i[g+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[g+8>>2]=t;i[g+4>>2]=j;i[g>>2]=h;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!h){break f}s=0;while(1){if(d){q=i[g>>2];v=i[p>>2];k=i[a+96>>2];z=i[a+108>>2];d=0;while(1){n=z+(d<<2)|0;i[k+(i[n>>2]<<2)>>2]=0;j=i[n>>2]<<2;e=i[a>>2]-i[j+v>>2]|0;o:{if(!e){break o}j=j+k|0;t=i[a+52>>2];u=32-t|0;if((e|0)<=(u|0)){m=i[a+48>>2];if((m|0)==i[a+40>>2]){i[j>>2]=0;break o}i[j>>2]=i[m>>2]<>>32-e;e=e+i[a+52>>2]|0;i[a+52>>2]=e;if((e|0)!=32){break o}i[a+52>>2]=0;i[a+48>>2]=m+4;break o}m=i[a+48>>2];w=m+4|0;if((w|0)==i[a+40>>2]){i[j>>2]=0;break o}A=i[m>>2];i[a+48>>2]=w;u=e-u|0;i[a+52>>2]=u;i[j>>2]=i[m+4>>2]>>>32-u|A<>>32-e}e=i[n>>2]<<2;j=e+k|0;i[j>>2]=i[j>>2]|i[e+q>>2];d=d+1|0;if(d>>>0>2]){continue}break}}Ml(c,y);i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((s|0)==(h|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];j=i[f+16>>2];p:{if((a|0)==(j|0)){break p}k=(c<<2)+a|0;e=i[k>>2];d=e+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break p}while(1){d=d+12|0;if((d-e|0)==4092){e=i[k+4>>2];k=k+4|0;d=e}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=j-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;j=i[f+16>>2];d=j-a>>2;if(d>>>0>2){continue}break}}e=170;q:{switch(d+ -1|0){case 1:e=341;case 0:i[f+24>>2]=e;break;default:break q}}r:{if((a|0)==(j|0)){break r}while(1){nn(i[a>>2]);a=a+4|0;if((j|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break r}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function Gl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}e=d<<2;g=Dm(e);i[f+8>>2]=g;h=e+g|0;i[f+16>>2]=h;qn(g,0,e);i[f+12>>2]=h}e=i[a+120>>2];k=i[e>>2];if(k){i[e+4>>2]=k;nn(k);i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;h=i[f+12>>2];g=i[f+8>>2];d=i[a+12>>2]}i[e+4>>2]=h;i[e>>2]=g;i[e+8>>2]=i[f+16>>2];g=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;j=Dm(d);i[f+8>>2]=j;g=d+j|0;i[f+16>>2]=g;qn(j,0,d);i[f+12>>2]=g}d=i[a+132>>2];e=i[d>>2];if(e){i[d+4>>2]=e;nn(e);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;j=i[f+8>>2];g=i[f+12>>2]}i[d+4>>2]=g;i[d>>2]=j;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;k=f+16|0;i[k>>2]=0;i[k+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[k>>2];k=i[f+12>>2];d=0;c:{if((g|0)==(k|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[k+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0>>0){break d}v=a+96|0;while(1){h=i[f+12>>2];j=d+ -1|0;d=j+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[h+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;q=i[e+8>>2];g=i[e+4>>2];k=i[e>>2];i[f+28>>2]=j;e=i[f+16>>2];j=e-h|0;if((j?o(j>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(k>>>0>b>>>0){break d}d=i[a+12>>2];j=(g|0)==(d+ -1|0)?0:g+1|0;if(j>>>0>=d>>>0){break d}d=i[a+120>>2];g=o(q,12);h=d+g|0;e:{f:{p=j<<2;s=g+i[a+132>>2]|0;e=i[a>>2]-i[p+i[s>>2]>>2]|0;if(!e){d=0;if(!k){break f}while(1){Ml(c,h);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((k|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(k>>>0<=2){e=i[a+108>>2];i[e>>2]=j;g=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}m=d;d=g+12|0;ua(m+d|0,i[h>>2],i[h+4>>2]);d=p+i[d+i[a+120>>2]>>2]|0;i[d>>2]=i[d>>2]+(1<>2];n=32-e|0;k:{if((d|0)<=(n|0)){h=i[a+28>>2];if((h|0)==i[a+20>>2]){e=0;break k}n=i[h>>2];m=d+e|0;i[a+32>>2]=m;e=n<>>32-d|0;if((m|0)!=32){break k}i[a+32>>2]=0;i[a+28>>2]=h+4;break k}h=i[a+28>>2];m=h+4|0;if((m|0)==i[a+20>>2]){e=0;break k}s=i[h>>2];i[a+28>>2]=m;n=d-n|0;i[a+32>>2]=n;e=i[h+4>>2]>>>32-n|s<>>32-d}n=q+1|0;d=(k>>>1|0)-e|0;e=k-d|0;l:{if((e|0)==(d|0)){e=d;break l}k=i[a+88>>2];if((k|0)==i[a+80>>2]){break i}h=i[k>>2];m=i[a+92>>2];s=m+1|0;i[a+92>>2]=s;h=h&-2147483648>>>m;m:{if((s|0)==32){i[a+92>>2]=0;i[a+88>>2]=k+4;if(h){break m}break i}if(!h){break i}}}k=e;e=d;break h}while(1){j=(d+ -1|0)==(j|0)?0:j+1|0;i[e+(g<<2)>>2]=j;g=g+1|0;d=i[a+12>>2];if(g>>>0>>0){continue}break}break g}k=d}d=i[a+132>>2];g=d+g|0;h=i[g>>2];p=h+p|0;i[p>>2]=i[p>>2]+1;ua(d+o(n,12)|0,h,i[g+4>>2]);if(e){g=i[f+28>>2]+i[f+24>>2]|0;h=i[f+16>>2];d=i[f+12>>2];p=h-d|0;if((g|0)==((p?o(p>>2,341)+ -1|0:0)|0)){Nb(f+8|0);g=i[f+24>>2]+i[f+28>>2]|0;h=i[f+16>>2];d=i[f+12>>2]}if((d|0)==(h|0)){d=0}else{m=d;d=(g>>>0)/341|0;d=i[m+(d<<2)>>2]+o(g-o(d,341)|0,12)|0}i[d+8>>2]=q;i[d+4>>2]=j;i[d>>2]=e;i[f+28>>2]=i[f+28>>2]+1}if(!k){break f}g=i[f+28>>2]+i[f+24>>2]|0;h=i[f+16>>2];d=i[f+12>>2];e=h-d|0;if((g|0)==((e?o(e>>2,341)+ -1|0:0)|0)){Nb(f+8|0);g=i[f+24>>2]+i[f+28>>2]|0;h=i[f+16>>2];d=i[f+12>>2]}e=0;n:{if((d|0)==(h|0)){break n}e=d;d=(g>>>0)/341|0;e=i[e+(d<<2)>>2]+o(g-o(d,341)|0,12)|0}i[e+8>>2]=n;i[e+4>>2]=j;i[e>>2]=k;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!k){break f}q=0;while(1){if(d){w=i[h>>2];y=i[s>>2];j=i[a+96>>2];z=i[a+108>>2];d=0;while(1){p=z+(d<<2)|0;i[j+(i[p>>2]<<2)>>2]=0;g=i[p>>2]<<2;e=i[a>>2]-i[g+y>>2]|0;o:{if(!e){break o}g=g+j|0;n=i[a+52>>2];t=32-n|0;if((e|0)<=(t|0)){m=i[a+48>>2];if((m|0)==i[a+40>>2]){i[g>>2]=0;break o}i[g>>2]=i[m>>2]<>>32-e;e=e+i[a+52>>2]|0;i[a+52>>2]=e;if((e|0)!=32){break o}i[a+52>>2]=0;i[a+48>>2]=m+4;break o}m=i[a+48>>2];u=m+4|0;if((u|0)==i[a+40>>2]){i[g>>2]=0;break o}A=i[m>>2];i[a+48>>2]=u;t=e-t|0;i[a+52>>2]=t;i[g>>2]=i[m+4>>2]>>>32-t|A<>>32-e}e=i[p>>2]<<2;g=e+j|0;i[g>>2]=i[g>>2]|i[e+w>>2];d=d+1|0;if(d>>>0>2]){continue}break}}Ml(c,v);i[a+8>>2]=i[a+8>>2]+1;q=q+1|0;if((q|0)==(k|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];j=i[f+16>>2];p:{if((a|0)==(j|0)){break p}h=(c<<2)+a|0;g=i[h>>2];d=g+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break p}while(1){d=d+12|0;if((d-g|0)==4092){g=i[h+4>>2];h=h+4|0;d=g}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=j-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;j=i[f+16>>2];d=j-a>>2;if(d>>>0>2){continue}break}}g=170;q:{switch(d+ -1|0){case 1:g=341;case 0:i[f+24>>2]=g;break;default:break q}}r:{if((a|0)==(j|0)){break r}while(1){nn(i[a>>2]);a=a+4|0;if((j|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break r}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function Bb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;e=J-720|0;J=e;a:{b:{c:{d:{e:{f:{if(k[b+38>>1]>=515){i[e+680>>2]=0;i[e+672>>2]=0;i[e+676>>2]=0;if((M[i[i[a>>2]+24>>2]](a)|0)<1){break d}t=a+36|0;q=e+24|0;while(1){c=M[i[i[a>>2]+20>>2]](a,p)|0;d=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];if(i[d+28>>2]==9){f=i[e+672>>2];c=i[e+676>>2]-f>>2;r=g[d+24|0];g:{if(c>>>0>>0){na(e+672|0,r-c|0);break g}if(c>>>0<=r>>>0){break g}i[e+676>>2]=f+(r<<2)}d=i[b+12>>2];c=i[b+20>>2];n=i[b+16>>2];h=r<<2;f=h;u=n+f|0;if(u>>>0>>0){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]>>0:0){break b}pn(i[e+672>>2],n+i[b>>2]|0,h);c=b;h=c;d=i[c+20>>2];n=f+i[c+16>>2]|0;if(n>>>0>>0){d=d+1|0}f=n;i[h+16>>2]=f;i[c+20>>2]=d;s=i[b+12>>2];h=s;c=d;n=f+4|0;if(n>>>0<4){d=d+1|0}u=i[b+8>>2];if((h|0)<(d|0)?1:(h|0)<=(d|0)?u>>>0>>0:0){break b}v=i[b>>2];h=v+f|0;h=j[h|0]|j[h+1|0]<<8|(j[h+2|0]<<16|j[h+3|0]<<24);i[b+16>>2]=n;i[b+20>>2]=d;if((s|0)<(d|0)?1:(s|0)<=(d|0)?u>>>0<=n>>>0:0){break b}n=j[n+v|0];f=f+5|0;if(f>>>0<5){c=c+1|0}d=b;i[d+16>>2]=f;i[d+20>>2]=c;if(n>>>0>31){break b}i[e+20>>2]=-1;i[e+16>>2]=1140;c=q;i[c+8>>2]=0;i[c+12>>2]=0;i[c>>2]=0;i[c+4>>2]=0;c=0;h:{if(!ta(e+16|0,n,i[e+672>>2],r,(Pn(2,h),Qn()))){break h}if(!Ca(e+16|0,i[i[a+60>>2]+((i[a+40>>2]-i[a+36>>2]|0)/24<<2)>>2])){break h}c=i[a+40>>2];i:{if((c|0)!=i[a+44>>2]){i[c>>2]=1140;d=i[e+20>>2];i[c+16>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+4>>2]=d;d=i[e+28>>2]-i[e+24>>2]|0;if(d){f=d>>2;if(f>>>0>=1073741824){break f}d=Dm(d);i[c+8>>2]=d;i[c+12>>2]=d;i[c+16>>2]=d+(f<<2);f=c;n=i[e+24>>2];r=i[e+28>>2]-n|0;if((r|0)>=1){d=pn(d,n,r)+r|0}i[f+12>>2]=d}m[c+20>>2]=m[e+36>>2];i[a+40>>2]=c+24;break i}Cb(t,e+16|0)}c=1}i[e+16>>2]=1140;d=i[e+24>>2];if(d){i[e+28>>2]=d;nn(d)}if(!c){break c}}p=p+1|0;if((p|0)<(M[i[i[a>>2]+24>>2]](a)|0)){continue}break}break d}n=M[i[i[a>>2]+24>>2]](a)|0;i[e+712>>2]=0;i[e+704>>2]=0;i[e+708>>2]=0;j:{if(n){if(n>>>0>=214748365){break e}c=o(n,20);d=Dm(c);i[e+704>>2]=d;q=c+d|0;i[e+712>>2]=q;f=qn(d,0,c-((c+ -20>>>0)%20|0)|0);i[e+708>>2]=q;c=0;while(1){d=M[i[i[a>>2]+20>>2]](a,c)|0;q=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(d<<2)>>2];p=i[q+28>>2];d=Fh(p);h=(d|0)>0?d:0;if(h>>>0>4){break j}d=o(c,20)+f|0;s=g[q+24|0];i[d+16>>2]=s;i[d+12>>2]=h;i[d+8>>2]=p;i[d+4>>2]=r;i[d>>2]=q;r=r+s|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}c=M[i[i[a>>2]+20>>2]](a,0)|0;u=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];g[u+84|0]=1;i[u+72>>2]=i[u+68>>2];s=i[b+8>>2];h=i[b+16>>2];q=i[b+12>>2];d=q;c=i[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?s>>>0<=h>>>0:0){break j}v=i[b>>2];y=j[v+h|0];p=b;d=c;f=h+1|0;if(f>>>0<1){d=d+1|0}t=f;f=d;i[p+16>>2]=t;i[p+20>>2]=d;k:{l:{switch(y|0){case 0:if((q|0)<(f|0)?1:(q|0)<=(f|0)?s>>>0<=t>>>0:0){break j}a=c;f=h+2|0;if(f>>>0<2){a=a+1|0}d=b;i[d+16>>2]=f;i[d+20>>2]=a;a=h+6|0;if(a>>>0<6){c=c+1|0}d=a;a=c;if((q|0)<(c|0)?1:(q|0)<=(c|0)?s>>>0>>0:0){break j}c=f+v|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=d;i[b+20>>2]=a;Ka(u,c);a=e+672|0;i[a+20>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+20>>2]=c;c=a;a=db(e+16|0,e+704|0);c=Db(c,b,a);b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a>>2];if(b){i[a+4>>2]=b;nn(b)}if(c){break k}break j;case 1:break l;default:break j}}if((q|0)<(f|0)?1:(q|0)<=(f|0)?s>>>0<=t>>>0:0){break j}t=j[t+v|0];d=c;p=h+2|0;if(p>>>0<2){d=d+1|0}i[b+16>>2]=p;i[b+20>>2]=d;if(t>>>0>=7){i[e>>2]=t;wn(1620,e);break j}d=h+6|0;if(d>>>0<6){c=c+1|0}f=d;d=c;if((q|0)<(c|0)?1:(q|0)<=(c|0)?s>>>0>>0:0){break j}c=p+v|0;q=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=d;if(n){c=0;while(1){d=M[i[i[a>>2]+20>>2]](a,c)|0;d=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(d<<2)>>2];Ka(d,q);g[d+84|0]=1;i[d+72>>2]=i[d+68>>2];c=c+1|0;if((n|0)!=(c|0)){continue}break}}p=0;a=db(e+672|0,e+704|0);m:{n:{o:{switch(t|0){case 0:c=gb(e+16|0,r);b=eb(c,b,a);fb(c);if(b){break n}break m;case 1:c=gb(e+16|0,r);b=hb(c,b,a);fb(c);if(b){break n}break m;case 2:c=kb(e+16|0,r);b=ib(c,b,a);jb(c);if(b){break n}break m;case 3:c=kb(e+16|0,r);b=lb(c,b,a);jb(c);if(b){break n}break m;case 4:c=ob(e+16|0,r);b=mb(c,b,a);nb(c);if(b){break n}break m;case 5:c=ob(e+16|0,r);b=pb(c,b,a);nb(c);if(b){break n}break m;case 6:break o;default:break m}}c=ob(e+16|0,r);b=qb(c,b,a);nb(c);if(!b){break m}}p=1}b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a>>2];if(b){i[a+4>>2]=b;nn(b)}if(!p){break j}}w=1}a=i[e+704>>2];if(!a){break a}i[e+708>>2]=a;nn(a);break a}Sm();x()}Sm();x()}w=1;if(i[a+52>>2]==i[a+48>>2]){break b}p=0;while(1){if(!Eb(1,e+16|0,b)){break c}c=i[a+48>>2];d=i[e+16>>2];i[c+(p<<2)>>2]=0-(d&1)^d>>>1;p=p+1|0;if(p>>>0>2]-c>>2>>>0){continue}break}break b}w=0}a=i[e+672>>2];if(!a){break a}i[e+676>>2]=a;nn(a)}J=e+720|0;return w|0}function Tf(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0;q=J-16|0;J=q;a:{b:{c:{d:{if(j[i[a+4>>2]+36|0]<=1){p=-1;m=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+4|0;if(d>>>0<4){c=c+1|0}f=d;d=c;if((m|0)<(c|0)?1:(m|0)<=(c|0)?l[b+8>>2]>>0:0){break c}c=e+i[b>>2]|0;r=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[q+12>>2]=r;i[b+16>>2]=f;i[b+20>>2]=d;break d}p=-1;if(!Pf(1,q+12|0,b)){break c}r=i[q+12>>2]}e:{f:{g:{h:{i:{j:{if(!r){break j}c=i[a+8>>2];if(r>>>0>(i[c+4>>2]-i[c>>2]>>2>>>0)/3>>>0){break c}c=k[i[a+4>>2]+36>>1];if((c<<24|c<<8&16711680)>>>16>>>0>=258){v=a+36|0;m=0;k:{l:{while(1){if(!Pf(1,q+8|0,b)){break c}c=i[q+8>>2];if(!Pf(1,q+8|0,b)){break c}m=c+m|0;c=i[q+8>>2];if(m>>>0>>0){break c}n=m-c|0;h=i[a+40>>2];m:{if((h|0)!=i[a+44>>2]){i[h+4>>2]=m;i[h>>2]=n;i[a+40>>2]=h+12;break m}c=i[v>>2];d=h-c|0;e=(d|0)/12|0;h=e+1|0;if(h>>>0>=357913942){break l}t=e<<1;h=e>>>0<178956970?t>>>0>>0?h:t:357913941;f=0;n:{if(!h){break n}if(h>>>0>=357913942){break k}f=Dm(o(h,12))}e=f+o(e,12)|0;i[e+4>>2]=m;i[e>>2]=n;n=e+o((d|0)/-12|0,12)|0;f=f+o(h,12)|0;h=e+12|0;if((d|0)>=1){pn(n,c,d)}i[a+44>>2]=f;i[a+40>>2]=h;i[a+36>>2]=n;if(!c){break m}nn(c)}s=s+1|0;if((s|0)!=(r|0)){continue}break}m=0;Ch(b,0,0);e=r>>>0>1?r:1;while(1){c=j[b+36|0];d=k[i[a+4>>2]+36>>1];o:{if((d<<24|d<<8&16711680)>>>16>>>0<=513){if(!c){break o}h=0;c=i[b+32>>2];r=c>>>3|0;f=i[b+24>>2];d=r+f|0;p=i[b+28>>2];p:{if(d>>>0>=p>>>0){d=c;break p}h=j[d|0];d=c+1|0;i[b+32>>2]=d;r=d>>>3|0;h=h>>>(c&7)&1}if(f+r>>>0>=p>>>0){break o}i[b+32>>2]=d+1;break o}if(!c){break o}h=0;c=i[b+32>>2];d=i[b+24>>2]+(c>>>3|0)|0;if(d>>>0>=l[b+28>>2]){break o}d=j[d|0];i[b+32>>2]=c+1;h=d>>>(c&7)&1}c=i[a+36>>2]+o(m,12)|0;g[c+8|0]=j[c+8|0]&254|h&1;m=m+1|0;if((e|0)!=(m|0)){continue}break}Eh(b);break j}Sm();x()}break a}z=a+36|0;v=q+10|0;while(1){e=i[b+12>>2];m=e;c=i[b+20>>2];d=c;n=i[b+16>>2];f=n+4|0;if(f>>>0<4){c=c+1|0}t=i[b+8>>2];u=f;f=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?t>>>0>>0:0){break c}w=i[b>>2];c=w+n|0;y=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=u;i[b+20>>2]=f;e=m;c=d;f=n+8|0;if(f>>>0<8){c=c+1|0}if((e|0)<(c|0)?1:(e|0)<=(c|0)?t>>>0>>0:0){break c}e=u+w|0;u=j[e|0]|j[e+1|0]<<8|(j[e+2|0]<<16|j[e+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=c;if((m|0)<(c|0)?1:(m|0)<=(c|0)?t>>>0<=f>>>0:0){break c}e=j[f+w|0];c=d;d=n+9|0;if(d>>>0<9){c=c+1|0}i[b+16>>2]=d;i[b+20>>2]=c;h=e&1|h&-2;c=i[a+40>>2];q:{if((c|0)!=i[a+44>>2]){g[c+8|0]=h;i[c+4>>2]=u;i[c>>2]=y;d=j[q+8|0]|j[q+9|0]<<8;g[c+9|0]=d;g[c+10|0]=d>>>8;g[c+11|0]=j[v|0];i[a+40>>2]=c+12;break q}d=i[z>>2];m=c-d|0;c=(m|0)/12|0;f=c+1|0;if(f>>>0>=357913942){break i}n=c<<1;f=c>>>0<178956970?n>>>0>>0?f:n:357913941;e=0;r:{if(!f){break r}if(f>>>0>=357913942){break a}e=Dm(o(f,12))}c=e+o(c,12)|0;g[c+8|0]=h;i[c+4>>2]=u;i[c>>2]=y;n=j[q+8|0]|j[q+9|0]<<8;g[c+9|0]=n;g[c+10|0]=n>>>8;g[c+11|0]=j[v|0];n=c+o((m|0)/-12|0,12)|0;e=e+o(f,12)|0;c=c+12|0;if((m|0)>=1){pn(n,d,m)}i[a+44>>2]=e;i[a+40>>2]=c;i[a+36>>2]=n;if(!d){break q}nn(d)}s=s+1|0;if((s|0)!=(r|0)){continue}break}}i[q+8>>2]=0;c=k[i[a+4>>2]+36>>1];c=(c<<24|c<<8&16711680)>>>16|0;s:{if(c>>>0<=511){p=-1;m=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+4|0;if(d>>>0<4){c=c+1|0}f=d;d=c;if((m|0)<(c|0)?1:(m|0)<=(c|0)?l[b+8>>2]>>0:0){break c}c=e+i[b>>2]|0;r=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=d;break s}if((c|0)!=512){break e}p=-1;if(!Pf(1,q+8|0,b)){break c}r=i[q+8>>2]}if(!r){break e}c=k[i[a+4>>2]+36>>1];if((c<<24|c<<8&16711680)>>>16>>>0<258){break f}s=a+48|0;h=0;m=0;while(1){if(!Pf(1,q+4|0,b)){break g}m=i[q+4>>2]+m|0;c=i[a+52>>2];t:{if((c|0)!=i[a+56>>2]){i[c>>2]=m;i[a+52>>2]=c+4;break t}d=i[s>>2];e=c-d|0;p=e>>2;f=p+1|0;if(f>>>0>=1073741824){break h}n=e>>1;f=p>>>0<536870911?n>>>0>>0?f:n:1073741823;c=0;u:{if(!f){break u}if(f>>>0>=1073741824){break a}c=Dm(f<<2)}p=c+(p<<2)|0;i[p>>2]=m;f=c+(f<<2)|0;p=p+4|0;if((e|0)>=1){pn(c,d,e)}i[a+56>>2]=f;i[a+52>>2]=p;i[a+48>>2]=c;if(!d){break t}nn(d)}h=h+1|0;if((r|0)!=(h|0)){continue}break}break e}Sm();x()}Sm();x()}p=-1;break c}s=a+48|0;p=0;while(1){m=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+4|0;if(d>>>0<4){c=c+1|0}h=d;d=c;if((m|0)<(c|0)?1:(m|0)<=(c|0)?l[b+8>>2]>>0:0){p=-1;break c}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=d;c=i[a+52>>2];v:{if((c|0)!=i[a+56>>2]){i[c>>2]=f;i[a+52>>2]=c+4;break v}d=i[s>>2];m=c-d|0;h=m>>2;e=h+1|0;if(e>>>0>=1073741824){break b}n=m>>1;e=h>>>0<536870911?n>>>0>>0?e:n:1073741823;c=0;w:{if(!e){break w}if(e>>>0>=1073741824){break a}c=Dm(e<<2)}h=c+(h<<2)|0;i[h>>2]=f;e=c+(e<<2)|0;f=h+4|0;if((m|0)>=1){pn(c,d,m)}i[a+56>>2]=e;i[a+52>>2]=f;i[a+48>>2]=c;if(!d){break v}nn(d)}p=p+1|0;if((r|0)!=(p|0)){continue}break}}p=i[b+16>>2]}J=q+16|0;return p}Sm();x()}Ba(12220);x()}function Ul(a,b,c,d,e){var f=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=J-80|0;J=f;i[f+76>>2]=b;z=f+55|0;w=f+56|0;b=0;a:{b:while(1){c:{if((t|0)<0){break c}if((b|0)>(2147483647-t|0)){i[4312]=61;t=-1;break c}t=b+t|0}d:{e:{f:{m=i[f+76>>2];b=m;k=j[b|0];if(k){while(1){g:{k=k&255;h:{if(!k){k=b;break h}if((k|0)!=37){break g}k=b;while(1){if(j[b+1|0]!=37){break h}l=b+2|0;i[f+76>>2]=l;k=k+1|0;p=j[b+2|0];b=l;if((p|0)==37){continue}break}}b=k-m|0;if(a){Vl(a,m,b)}if(b){continue b}k=f;l=!Pl(g[i[f+76>>2]+1|0]);b=i[f+76>>2];i:{if(!(l|j[b+2|0]!=36)){v=g[b+1|0]+ -48|0;x=1;b=b+3|0;break i}v=-1;b=b+1|0}i[k+76>>2]=b;q=0;u=g[b|0];l=u+ -32|0;j:{if(l>>>0>31){k=b;break j}k=b;l=1<>2]=k;q=l|q;u=g[b+1|0];l=u+ -32|0;if(l>>>0>=32){break j}b=k;l=1<>2];if(j[b+2|0]!=36){break m}i[((g[b+1|0]<<2)+e|0)+ -192>>2]=10;r=i[((g[b+1|0]<<3)+d|0)+ -384>>2];x=1;b=b+3|0;break l}if(x){break f}x=0;r=0;if(a){b=i[c>>2];i[c>>2]=b+4;r=i[b>>2]}b=i[f+76>>2]+1|0}i[l+76>>2]=b;if((r|0)>-1){break k}r=0-r|0;q=q|8192;break k}r=Wl(f+76|0);if((r|0)<0){break f}b=i[f+76>>2]}p=-1;n:{if(j[b|0]!=46){break n}if(j[b+1|0]==42){o:{if(!Pl(g[b+2|0])){break o}b=i[f+76>>2];if(j[b+3|0]!=36){break o}i[((g[b+2|0]<<2)+e|0)+ -192>>2]=10;p=i[((g[b+2|0]<<3)+d|0)+ -384>>2];b=b+4|0;i[f+76>>2]=b;break n}if(x){break f}if(a){b=i[c>>2];i[c>>2]=b+4;p=i[b>>2]}else{p=0}b=i[f+76>>2]+2|0;i[f+76>>2]=b;break n}i[f+76>>2]=b+1;p=Wl(f+76|0);b=i[f+76>>2]}k=0;while(1){y=k;s=-1;if(g[b|0]+ -65>>>0>57){break a}u=b+1|0;i[f+76>>2]=u;k=g[b|0];b=u;k=j[(k+o(y,58)|0)+14959|0];if(k+ -1>>>0<8){continue}break}p:{q:{if((k|0)!=19){if(!k){break a}if((v|0)>=0){i[(v<<2)+e>>2]=k;b=(v<<3)+d|0;k=i[b+4>>2];i[f+64>>2]=i[b>>2];i[f+68>>2]=k;break q}if(!a){break d}Xl(f- -64|0,k,c);u=i[f+76>>2];break p}if((v|0)>-1){break a}}b=0;if(!a){continue b}}l=q&-65537;k=q&8192?l:q;s=0;v=15005;q=w;r:{s:{t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{b=g[u+ -1|0];b=y?(b&15)==3?b&-33:b:b;switch(b+ -88|0){case 11:break r;case 9:case 13:case 14:case 15:break s;case 27:break x;case 12:case 17:break A;case 23:break B;case 0:case 32:break C;case 24:break D;case 22:break E;case 29:break F;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 e;default:break G}}H:{switch(b+ -65|0){case 0:case 4:case 5:case 6:break s;case 2:break v;case 1:case 3:break e;default:break H}}if((b|0)==83){break w}break e}b=i[f+64>>2];m=i[f+68>>2];v=15005;break z}b=0;I:{switch(y&255){case 0:i[i[f+64>>2]>>2]=t;continue b;case 1:i[i[f+64>>2]>>2]=t;continue b;case 2:k=i[f+64>>2];i[k>>2]=t;i[k+4>>2]=t>>31;continue b;case 3:h[i[f+64>>2]>>1]=t;continue b;case 4:g[i[f+64>>2]]=t;continue b;case 6:i[i[f+64>>2]>>2]=t;continue b;case 7:break I;default:continue b}}k=i[f+64>>2];i[k>>2]=t;i[k+4>>2]=t>>31;continue b}p=p>>>0>8?p:8;k=k|8;b=120}m=Yl(i[f+64>>2],i[f+68>>2],w,b&32);if(!(k&8)|!(i[f+64>>2]|i[f+68>>2])){break y}v=(b>>>4|0)+15005|0;s=2;break y}m=Zl(i[f+64>>2],i[f+68>>2],w);if(!(k&8)){break y}b=w-m|0;p=(p|0)>(b|0)?p:b+1|0;break y}l=i[f+68>>2];m=l;b=i[f+64>>2];if((l|0)<-1?1:(l|0)<=-1){m=0-(m+(0>>0)|0)|0;b=0-b|0;i[f+64>>2]=b;i[f+68>>2]=m;s=1;v=15005;break z}if(k&2048){s=1;v=15006;break z}s=k&1;v=s?15007:15005}m=_l(b,m,w)}k=(p|0)>-1?k&-65537:k;b=i[f+64>>2];l=i[f+68>>2];if(!(!!(b|l)|p)){p=0;m=w;break e}b=!(b|l)+(w-m|0)|0;p=(p|0)>(b|0)?p:b;break e}b=i[f+64>>2];m=b?b:15015;b=Ql(m,p);q=b?b:p+m|0;k=l;p=b?b-m|0:p;break e}l=i[f+64>>2];if(p){break u}b=0;$l(a,32,r,0,k);break t}i[f+12>>2]=0;i[f+8>>2]=i[f+64>>2];i[f+64>>2]=f+8;p=-1;l=f+8|0}b=0;J:{while(1){m=i[l>>2];if(!m){break J}m=Sl(f+4|0,m);q=(m|0)<0;if(!(q|m>>>0>p-b>>>0)){l=l+4|0;b=b+m|0;if(p>>>0>b>>>0){continue}break J}break}s=-1;if(q){break a}}$l(a,32,r,b,k);if(!b){b=0;break t}u=0;l=i[f+64>>2];while(1){m=i[l>>2];if(!m){break t}m=Sl(f+4|0,m);u=m+u|0;if((u|0)>(b|0)){break t}Vl(a,f+4|0,m);l=l+4|0;if(u>>>0>>0){continue}break}}$l(a,32,r,b,k^8192);b=(r|0)>(b|0)?r:b;continue b}b=M[0](a,n[f+64>>3],r,p,k,b)|0;continue b}g[f+55|0]=i[f+64>>2];p=1;m=z;k=l;break e}l=b+1|0;i[f+76>>2]=l;k=j[b+1|0];b=l;continue}}s=t;if(a){break a}if(!x){break d}b=1;while(1){a=i[(b<<2)+e>>2];if(a){Xl((b<<3)+d|0,a,c);s=1;b=b+1|0;if((b|0)!=10){continue}break a}break}s=1;if(b>>>0>=10){break a}while(1){if(i[(b<<2)+e>>2]){break f}b=b+1|0;if((b|0)!=10){continue}break}break a}s=-1;break a}q=q-m|0;p=(p|0)<(q|0)?q:p;l=p+s|0;b=(r|0)<(l|0)?l:r;$l(a,32,b,l,k);Vl(a,v,s);$l(a,48,b,l,k^65536);$l(a,48,p,q,0);Vl(a,m,q);$l(a,32,b,l,k^8192);continue}break}s=0}J=f+80|0;return s}function fm(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=J-16|0;J=e;i[e+12>>2]=a;a:{if(a>>>0<=211){a=i[gm(15520,15712,e+12|0)>>2];break a}if(a>>>0>=4294967292){im();x()}f=(a>>>0)/210|0;d=o(f,210);i[e+8>>2]=a-d;g=gm(15712,15904,e+8|0)-15712>>2;b:{while(1){a=i[(g<<2)+15712>>2]+d|0;d=5;b=h;c:{d:{while(1){h=b;if((d|0)==47){d=211;while(1){b=(a>>>0)/(d>>>0)|0;if(b>>>0>>0){break c}if((o(b,d)|0)==(a|0)){break d}b=d+10|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+12|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+16|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+18|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+22|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+28|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+30|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+36|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+40|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+42|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+46|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+52|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+58|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+60|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+66|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+70|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+72|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+78|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+82|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+88|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+96|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+100|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+102|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+106|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+108|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+112|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+120|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+126|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+130|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+136|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+138|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+142|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+148|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+150|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+156|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+162|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+166|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+168|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+172|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+178|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+180|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+186|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+190|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+192|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+196|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+198|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+208|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}d=d+210|0;if((o(b,c)|0)!=(a|0)){continue}break}break d}b=i[(d<<2)+15520>>2];c=(a>>>0)/(b>>>0)|0;j=o(b,c);c=c>>>0>>0;if(!c){b=c?a:h;d=d+1|0;if((a|0)!=(j|0)){continue}}break}if((a|0)!=(j|0)|c){break b}}b=g+1|0;a=(b|0)==48;g=a?0:b;f=a+f|0;d=o(f,210);continue}break}i[e+12>>2]=a;break a}i[e+12>>2]=a;a=c?a:h}J=e+16|0;return a}function Jl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}g=d<<2;e=Dm(g);i[f+8>>2]=e;j=e+g|0;i[f+16>>2]=j;qn(e,0,g);i[f+12>>2]=j}g=i[a+628>>2];h=i[g>>2];if(h){i[g+4>>2]=h;nn(h);i[g+8>>2]=0;i[g>>2]=0;i[g+4>>2]=0;j=i[f+12>>2];e=i[f+8>>2];d=i[a+12>>2]}i[g+4>>2]=j;i[g>>2]=e;i[g+8>>2]=i[f+16>>2];e=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;h=Dm(d);i[f+8>>2]=h;e=d+h|0;i[f+16>>2]=e;qn(h,0,d);i[f+12>>2]=e}d=i[a+640>>2];j=i[d>>2];if(j){i[d+4>>2]=j;nn(j);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=i[f+8>>2];e=i[f+12>>2]}i[d+4>>2]=e;i[d>>2]=h;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;j=f+16|0;i[j>>2]=0;i[j+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[j>>2];j=i[f+12>>2];d=0;c:{if((g|0)==(j|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[j+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0>>0){break d}w=a+604|0;while(1){h=i[f+12>>2];g=d+ -1|0;d=g+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[h+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;m=i[e+8>>2];p=i[e+4>>2];j=i[e>>2];i[f+28>>2]=g;e=i[f+16>>2];g=e-h|0;if((g?o(g>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(j>>>0>b>>>0){break d}d=i[a+628>>2];k=o(m,12);q=k+i[a+640>>2]|0;h=vl(a,q,p);if(h>>>0>=l[a+12>>2]){break d}g=d+k|0;e:{f:{p=h<<2;d=i[a>>2]-i[p+i[q>>2]>>2]|0;if(!d){d=0;if(!j){break f}while(1){Ml(c,g);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(j>>>0<=2){m=i[a+616>>2];i[m>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<>2];s=m+1|0;q=o(s,12);n=d+q|0;if((n|0)!=(g|0)){ua(n,i[g>>2],i[g+4>>2]);d=i[a+628>>2]}d=p+i[d+q>>2]|0;i[d>>2]=e+i[d>>2];e=0;d=0;g=r(j)^31;if(g){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((g|0)!=(d|0)){continue}break}}e=(j>>>1|0)-e|0;d=j-e|0;k:{if((d|0)==(e|0)){d=e;break k}j=i[a+596>>2];if((j|0)==i[a+588>>2]){break i}g=i[j>>2];n=i[a+600>>2];u=n+1|0;i[a+600>>2]=u;g=g&-2147483648>>>n;l:{if((u|0)==32){i[a+600>>2]=0;i[a+596>>2]=j+4;if(g){break l}break i}if(!g){break i}}}j=d;d=e;break h}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[m+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0>>0){continue}break}break g}j=e}e=i[a+640>>2];g=e+k|0;k=i[g>>2];p=k+p|0;i[p>>2]=i[p>>2]+1;ua(e+q|0,k,i[g+4>>2]);if(d){k=i[f+28>>2]+i[f+24>>2]|0;q=i[f+16>>2];e=i[f+12>>2];g=q-e|0;if((k|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+24>>2]+i[f+28>>2]|0;q=i[f+16>>2];e=i[f+12>>2]}g=0;m:{if((e|0)==(q|0)){break m}g=e;e=(k>>>0)/341|0;g=i[g+(e<<2)>>2]+o(k-o(e,341)|0,12)|0}i[g+8>>2]=m;i[g+4>>2]=h;i[g>>2]=d;i[f+28>>2]=i[f+28>>2]+1}if(!j){break f}e=i[f+28>>2]+i[f+24>>2]|0;g=i[f+16>>2];d=i[f+12>>2];m=g-d|0;if((e|0)==((m?o(m>>2,341)+ -1|0:0)|0)){Nb(f+8|0);g=i[f+16>>2];e=i[f+24>>2]+i[f+28>>2]|0;d=i[f+12>>2]}if((d|0)==(g|0)){d=0}else{g=d;d=(e>>>0)/341|0;d=i[g+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=h;i[d>>2]=j;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!j){break f}k=0;while(1){if(d){u=i[g>>2];y=i[q>>2];m=i[a+604>>2];z=i[a+616>>2];d=0;while(1){p=z+(d<<2)|0;i[m+(i[p>>2]<<2)>>2]=0;h=i[p>>2]<<2;e=i[a>>2]-i[h+y>>2]|0;n:{if(!e){break n}h=h+m|0;s=i[a+560>>2];t=32-s|0;if((e|0)<=(t|0)){n=i[a+556>>2];if((n|0)==i[a+548>>2]){i[h>>2]=0;break n}i[h>>2]=i[n>>2]<>>32-e;e=e+i[a+560>>2]|0;i[a+560>>2]=e;if((e|0)!=32){break n}i[a+560>>2]=0;i[a+556>>2]=n+4;break n}n=i[a+556>>2];v=n+4|0;if((v|0)==i[a+548>>2]){i[h>>2]=0;break n}A=i[n>>2];i[a+556>>2]=v;t=e-t|0;i[a+560>>2]=t;i[h>>2]=i[n+4>>2]>>>32-t|A<>>32-e}e=i[p>>2]<<2;h=e+m|0;i[h>>2]=i[h>>2]|i[e+u>>2];d=d+1|0;if(d>>>0>2]){continue}break}}Ml(c,w);i[a+8>>2]=i[a+8>>2]+1;k=k+1|0;if((k|0)==(j|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];h=i[f+16>>2];o:{if((a|0)==(h|0)){break o}j=(c<<2)+a|0;e=i[j>>2];d=e+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break o}while(1){d=d+12|0;if((d-e|0)==4092){e=i[j+4>>2];j=j+4|0;d=e}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=h-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;h=i[f+16>>2];d=h-a>>2;if(d>>>0>2){continue}break}}e=170;p:{switch(d+ -1|0){case 1:e=341;case 0:i[f+24>>2]=e;break;default:break p}}q:{if((a|0)==(h|0)){break q}while(1){nn(i[a>>2]);a=a+4|0;if((h|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break q}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function Kl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}g=d<<2;e=Dm(g);i[f+8>>2]=e;j=e+g|0;i[f+16>>2]=j;qn(e,0,g);i[f+12>>2]=j}g=i[a+628>>2];h=i[g>>2];if(h){i[g+4>>2]=h;nn(h);i[g+8>>2]=0;i[g>>2]=0;i[g+4>>2]=0;j=i[f+12>>2];e=i[f+8>>2];d=i[a+12>>2]}i[g+4>>2]=j;i[g>>2]=e;i[g+8>>2]=i[f+16>>2];e=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;h=Dm(d);i[f+8>>2]=h;e=d+h|0;i[f+16>>2]=e;qn(h,0,d);i[f+12>>2]=e}d=i[a+640>>2];j=i[d>>2];if(j){i[d+4>>2]=j;nn(j);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=i[f+8>>2];e=i[f+12>>2]}i[d+4>>2]=e;i[d>>2]=h;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;j=f+16|0;i[j>>2]=0;i[j+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[j>>2];j=i[f+12>>2];d=0;c:{if((g|0)==(j|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[j+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0>>0){break d}v=a+604|0;while(1){k=i[f+12>>2];h=d+ -1|0;d=h+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[k+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;p=i[e+8>>2];g=i[e+4>>2];j=i[e>>2];i[f+28>>2]=h;e=i[f+16>>2];h=e-k|0;if((h?o(h>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(j>>>0>b>>>0){break d}d=i[a+12>>2];h=(g|0)==(d+ -1|0)?0:g+1|0;if(h>>>0>=d>>>0){break d}d=i[a+628>>2];k=o(p,12);g=d+k|0;e:{f:{m=h<<2;s=k+i[a+640>>2]|0;e=i[a>>2]-i[m+i[s>>2]>>2]|0;if(!e){d=0;if(!j){break f}while(1){Ml(c,g);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(j>>>0<=2){k=i[a+616>>2];i[k>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}n=d;d=k+12|0;ua(n+d|0,i[g>>2],i[g+4>>2]);d=m+i[d+i[a+628>>2]>>2]|0;i[d>>2]=i[d>>2]+(1<>>1|0)-e|0;d=j-e|0;k:{if((d|0)==(e|0)){d=e;break k}j=i[a+596>>2];if((j|0)==i[a+588>>2]){break i}g=i[j>>2];n=i[a+600>>2];s=n+1|0;i[a+600>>2]=s;g=g&-2147483648>>>n;l:{if((s|0)==32){i[a+600>>2]=0;i[a+596>>2]=j+4;if(g){break l}break i}if(!g){break i}}}j=d;d=e;break h}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[k+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0>>0){continue}break}break g}j=e}e=i[a+640>>2];g=e+k|0;k=i[g>>2];m=k+m|0;i[m>>2]=i[m>>2]+1;ua(e+o(q,12)|0,k,i[g+4>>2]);if(d){k=i[f+28>>2]+i[f+24>>2]|0;m=i[f+16>>2];e=i[f+12>>2];g=m-e|0;if((k|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+24>>2]+i[f+28>>2]|0;m=i[f+16>>2];e=i[f+12>>2]}g=0;m:{if((e|0)==(m|0)){break m}g=e;e=(k>>>0)/341|0;g=i[g+(e<<2)>>2]+o(k-o(e,341)|0,12)|0}i[g+8>>2]=p;i[g+4>>2]=h;i[g>>2]=d;i[f+28>>2]=i[f+28>>2]+1}if(!j){break f}e=i[f+28>>2]+i[f+24>>2]|0;k=i[f+16>>2];d=i[f+12>>2];g=k-d|0;if((e|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+16>>2];e=i[f+24>>2]+i[f+28>>2]|0;d=i[f+12>>2]}if((d|0)==(k|0)){d=0}else{g=d;d=(e>>>0)/341|0;d=i[g+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+8>>2]=q;i[d+4>>2]=h;i[d>>2]=j;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!j){break f}p=0;while(1){if(d){w=i[g>>2];y=i[s>>2];k=i[a+604>>2];z=i[a+616>>2];d=0;while(1){m=z+(d<<2)|0;i[k+(i[m>>2]<<2)>>2]=0;h=i[m>>2]<<2;e=i[a>>2]-i[h+y>>2]|0;n:{if(!e){break n}h=h+k|0;q=i[a+560>>2];t=32-q|0;if((e|0)<=(t|0)){n=i[a+556>>2];if((n|0)==i[a+548>>2]){i[h>>2]=0;break n}i[h>>2]=i[n>>2]<>>32-e;e=e+i[a+560>>2]|0;i[a+560>>2]=e;if((e|0)!=32){break n}i[a+560>>2]=0;i[a+556>>2]=n+4;break n}n=i[a+556>>2];u=n+4|0;if((u|0)==i[a+548>>2]){i[h>>2]=0;break n}A=i[n>>2];i[a+556>>2]=u;t=e-t|0;i[a+560>>2]=t;i[h>>2]=i[n+4>>2]>>>32-t|A<>>32-e}e=i[m>>2]<<2;h=e+k|0;i[h>>2]=i[h>>2]|i[e+w>>2];d=d+1|0;if(d>>>0>2]){continue}break}}Ml(c,v);i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((p|0)==(j|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];h=i[f+16>>2];o:{if((a|0)==(h|0)){break o}j=(c<<2)+a|0;e=i[j>>2];d=e+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break o}while(1){d=d+12|0;if((d-e|0)==4092){e=i[j+4>>2];j=j+4|0;d=e}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=h-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;h=i[f+16>>2];d=h-a>>2;if(d>>>0>2){continue}break}}e=170;p:{switch(d+ -1|0){case 1:e=341;case 0:i[f+24>>2]=e;break;default:break p}}q:{if((a|0)==(h|0)){break q}while(1){nn(i[a>>2]);a=a+4|0;if((h|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break q}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function Ll(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}g=d<<2;e=Dm(g);i[f+8>>2]=e;j=e+g|0;i[f+16>>2]=j;qn(e,0,g);i[f+12>>2]=j}g=i[a+628>>2];h=i[g>>2];if(h){i[g+4>>2]=h;nn(h);i[g+8>>2]=0;i[g>>2]=0;i[g+4>>2]=0;j=i[f+12>>2];e=i[f+8>>2];d=i[a+12>>2]}i[g+4>>2]=j;i[g>>2]=e;i[g+8>>2]=i[f+16>>2];e=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;h=Dm(d);i[f+8>>2]=h;e=d+h|0;i[f+16>>2]=e;qn(h,0,d);i[f+12>>2]=e}d=i[a+640>>2];j=i[d>>2];if(j){i[d+4>>2]=j;nn(j);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=i[f+8>>2];e=i[f+12>>2]}i[d+4>>2]=e;i[d>>2]=h;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;j=f+16|0;i[j>>2]=0;i[j+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[j>>2];j=i[f+12>>2];d=0;c:{if((g|0)==(j|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[j+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0>>0){break d}w=a+604|0;while(1){h=i[f+12>>2];g=d+ -1|0;d=g+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[h+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;m=i[e+8>>2];j=i[e>>2];i[f+28>>2]=g;e=i[f+16>>2];g=e-h|0;if((g?o(g>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(j>>>0>b>>>0){break d}d=i[a+628>>2];k=o(m,12);p=k+i[a+640>>2]|0;h=wl(a,j,p);if(h>>>0>=l[a+12>>2]){break d}g=d+k|0;e:{f:{q=h<<2;d=i[a>>2]-i[q+i[p>>2]>>2]|0;if(!d){d=0;if(!j){break f}while(1){Ml(c,g);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(j>>>0<=2){m=i[a+616>>2];i[m>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<>2];s=m+1|0;p=o(s,12);n=d+p|0;if((n|0)!=(g|0)){ua(n,i[g>>2],i[g+4>>2]);d=i[a+628>>2]}d=q+i[d+p>>2]|0;i[d>>2]=e+i[d>>2];e=0;d=0;g=r(j)^31;if(g){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((g|0)!=(d|0)){continue}break}}e=(j>>>1|0)-e|0;d=j-e|0;k:{if((d|0)==(e|0)){d=e;break k}j=i[a+596>>2];if((j|0)==i[a+588>>2]){break i}g=i[j>>2];n=i[a+600>>2];u=n+1|0;i[a+600>>2]=u;g=g&-2147483648>>>n;l:{if((u|0)==32){i[a+600>>2]=0;i[a+596>>2]=j+4;if(g){break l}break i}if(!g){break i}}}j=d;d=e;break h}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[m+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0>>0){continue}break}break g}j=e}e=i[a+640>>2];g=e+k|0;k=i[g>>2];q=k+q|0;i[q>>2]=i[q>>2]+1;ua(e+p|0,k,i[g+4>>2]);if(d){k=i[f+28>>2]+i[f+24>>2]|0;p=i[f+16>>2];e=i[f+12>>2];g=p-e|0;if((k|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+24>>2]+i[f+28>>2]|0;p=i[f+16>>2];e=i[f+12>>2]}g=0;m:{if((e|0)==(p|0)){break m}g=e;e=(k>>>0)/341|0;g=i[g+(e<<2)>>2]+o(k-o(e,341)|0,12)|0}i[g+8>>2]=m;i[g+4>>2]=h;i[g>>2]=d;i[f+28>>2]=i[f+28>>2]+1}if(!j){break f}e=i[f+28>>2]+i[f+24>>2]|0;g=i[f+16>>2];d=i[f+12>>2];m=g-d|0;if((e|0)==((m?o(m>>2,341)+ -1|0:0)|0)){Nb(f+8|0);g=i[f+16>>2];e=i[f+24>>2]+i[f+28>>2]|0;d=i[f+12>>2]}if((d|0)==(g|0)){d=0}else{g=d;d=(e>>>0)/341|0;d=i[g+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=h;i[d>>2]=j;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!j){break f}k=0;while(1){if(d){u=i[g>>2];y=i[p>>2];m=i[a+604>>2];z=i[a+616>>2];d=0;while(1){q=z+(d<<2)|0;i[m+(i[q>>2]<<2)>>2]=0;h=i[q>>2]<<2;e=i[a>>2]-i[h+y>>2]|0;n:{if(!e){break n}h=h+m|0;s=i[a+560>>2];t=32-s|0;if((e|0)<=(t|0)){n=i[a+556>>2];if((n|0)==i[a+548>>2]){i[h>>2]=0;break n}i[h>>2]=i[n>>2]<>>32-e;e=e+i[a+560>>2]|0;i[a+560>>2]=e;if((e|0)!=32){break n}i[a+560>>2]=0;i[a+556>>2]=n+4;break n}n=i[a+556>>2];v=n+4|0;if((v|0)==i[a+548>>2]){i[h>>2]=0;break n}A=i[n>>2];i[a+556>>2]=v;t=e-t|0;i[a+560>>2]=t;i[h>>2]=i[n+4>>2]>>>32-t|A<>>32-e}e=i[q>>2]<<2;h=e+m|0;i[h>>2]=i[h>>2]|i[e+u>>2];d=d+1|0;if(d>>>0>2]){continue}break}}Ml(c,w);i[a+8>>2]=i[a+8>>2]+1;k=k+1|0;if((k|0)==(j|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];h=i[f+16>>2];o:{if((a|0)==(h|0)){break o}j=(c<<2)+a|0;e=i[j>>2];d=e+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break o}while(1){d=d+12|0;if((d-e|0)==4092){e=i[j+4>>2];j=j+4|0;d=e}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=h-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;h=i[f+16>>2];d=h-a>>2;if(d>>>0>2){continue}break}}e=170;p:{switch(d+ -1|0){case 1:e=341;case 0:i[f+24>>2]=e;break;default:break p}}q:{if((a|0)==(h|0)){break q}while(1){nn(i[a>>2]);a=a+4|0;if((h|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break q}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function li(a,b,c,d){var e=0,f=0,h=0,o=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:h=1;e:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break e}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break e}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 1:f:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break f}h=i[a>>2];e=i[h+4>>2];h=i[h>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=h+b|0;if(e>>>0<=b>>>0){break b}while(1){h=0;e=g[b|0];if((e|0)<0){break c}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break f}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break c}if((e|0)>=(c|0)){return 1}break a;case 2:h=1;g:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break g}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if((e+128&65535)>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break g}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 3:h=1;h:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break h}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if(e>>>0>127){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break h}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 4:h=1;i:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break i}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e+128>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break i}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 5:h=1;j:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break j}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e>>>0>127){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break j}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 6:h=1;k:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break k}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];r=o+128|0;if(r>>>0<128){e=e+1|0}if(!e&r>>>0>255|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break k}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 7:h=1;l:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break l}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];if(!e&o>>>0>127|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break l}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 8:h=1;m:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break m}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;s=m[b>>2];n:{if(p(q(s))=((e|0)>(c|0)?c:e)<<24>>24){break m}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 9:h=1;o:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break o}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;t=n[b>>3];p:{if(q(t)<2147483648){e=~~t;break p}e=-2147483648}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break o}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}h=1;q:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break q}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break q}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}qn(d+e|0,0,c-e|0)}return h}return 0}qn(d+e|0,0,c-e|0);return 1}function Hl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;e=J-32|0;J=e;d=i[a+12>>2];i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;f=Dm(h);i[e+8>>2]=f;j=f+h|0;i[e+16>>2]=j;qn(f,0,h);i[e+12>>2]=j}h=i[a+116>>2];g=i[h>>2];if(g){i[h+4>>2]=g;nn(g);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;j=i[e+12>>2];f=i[e+8>>2];d=i[a+12>>2]}i[h+4>>2]=j;i[h>>2]=f;i[h+8>>2]=i[e+16>>2];f=0;i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;g=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;g=Dm(d);i[e+8>>2]=g;f=d+g|0;i[e+16>>2]=f;qn(g,0,d);i[e+12>>2]=f}d=i[a+128>>2];h=i[d>>2];if(h){i[d+4>>2]=h;nn(h);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;g=i[e+8>>2];f=i[e+12>>2]}i[d+4>>2]=f;i[d>>2]=g;i[d+8>>2]=i[e+16>>2];f=e+24|0;i[f>>2]=0;i[f+4>>2]=0;h=e+16|0;i[h>>2]=0;i[h+4>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;Nb(e+8|0);k=i[h>>2];h=i[e+12>>2];d=0;c:{if((k|0)==(h|0)){break c}d=i[f>>2]+i[e+28>>2]|0;f=(d>>>0)/341|0;d=i[h+(f<<2)>>2]+o(d-o(f,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;f=i[e+28>>2];d=f+1|0;i[e+28>>2]=d;d:{if(d>>>0>>0){break d}w=a+92|0;y=a+16|0;while(1){j=i[e+12>>2];g=d+ -1|0;d=g+i[e+24>>2]|0;f=(d>>>0)/341|0;f=i[j+(f<<2)>>2]+o(d-o(f,341)|0,12)|0;m=i[f+8>>2];p=i[f+4>>2];h=i[f>>2];i[e+28>>2]=g;f=i[e+16>>2];g=f-j|0;if((g?o(g>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[f+ -4>>2]);i[e+16>>2]=i[e+16>>2]+ -4}if(h>>>0>b>>>0){break d}d=i[a+116>>2];k=o(m,12);q=k+i[a+128>>2]|0;g=vl(a,q,p);if(g>>>0>=l[a+12>>2]){break d}j=d+k|0;e:{p=g<<2;d=i[a>>2]-i[p+i[q>>2]>>2]|0;if(!d){d=0;if(!h){break e}while(1){Ml(c,j);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((h|0)!=(d|0)){continue}break}break e}f:{g:{h:{i:{if(h>>>0<=2){m=i[a+104>>2];i[m>>2]=g;f=1;d=i[a+12>>2];if(d>>>0>1){break i}break f}if(l[a+8>>2]>l[a+4>>2]){break d}f=1<>2];s=m+1|0;q=o(s,12);n=d+q|0;if((n|0)!=(j|0)){ua(n,i[j>>2],i[j+4>>2]);d=i[a+116>>2]}d=p+i[d+q>>2]|0;i[d>>2]=f+i[d>>2];i[e+4>>2]=0;De(y,r(h)^31,e+4|0);d=(h>>>1|0)-i[e+4>>2]|0;f=h-d|0;j:{if((f|0)==(d|0)){f=d;break j}h=i[a+84>>2];if((h|0)==i[a+76>>2]){break h}j=i[h>>2];n=i[a+88>>2];u=n+1|0;i[a+88>>2]=u;j=j&-2147483648>>>n;k:{if((u|0)==32){i[a+88>>2]=0;i[a+84>>2]=h+4;if(j){break k}break h}if(!j){break h}}}h=f;f=d;break g}while(1){g=(d+ -1|0)==(g|0)?0:g+1|0;i[m+(f<<2)>>2]=g;f=f+1|0;d=i[a+12>>2];if(f>>>0>>0){continue}break}break f}h=d}d=i[a+128>>2];j=d+k|0;k=i[j>>2];p=k+p|0;i[p>>2]=i[p>>2]+1;ua(d+q|0,k,i[j+4>>2]);if(f){j=i[e+28>>2]+i[e+24>>2]|0;k=i[e+16>>2];d=i[e+12>>2];q=k-d|0;if((j|0)==((q?o(q>>2,341)+ -1|0:0)|0)){Nb(e+8|0);j=i[e+24>>2]+i[e+28>>2]|0;k=i[e+16>>2];d=i[e+12>>2]}if((d|0)==(k|0)){d=0}else{k=d;d=(j>>>0)/341|0;d=i[k+(d<<2)>>2]+o(j-o(d,341)|0,12)|0}i[d+8>>2]=m;i[d+4>>2]=g;i[d>>2]=f;i[e+28>>2]=i[e+28>>2]+1}if(!h){break e}f=i[e+28>>2]+i[e+24>>2]|0;j=i[e+16>>2];d=i[e+12>>2];m=j-d|0;if((f|0)==((m?o(m>>2,341)+ -1|0:0)|0)){Nb(e+8|0);j=i[e+16>>2];f=i[e+24>>2]+i[e+28>>2]|0;d=i[e+12>>2]}if((d|0)==(j|0)){d=0}else{k=d;d=(f>>>0)/341|0;d=i[k+(d<<2)>>2]+o(f-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=g;i[d>>2]=h;i[e+28>>2]=i[e+28>>2]+1;break e}if(!h){break e}k=0;while(1){if(d){u=i[j>>2];z=i[q>>2];m=i[a+92>>2];A=i[a+104>>2];d=0;while(1){p=A+(d<<2)|0;i[m+(i[p>>2]<<2)>>2]=0;g=i[p>>2]<<2;f=i[a>>2]-i[g+z>>2]|0;l:{if(!f){break l}g=g+m|0;s=i[a+48>>2];t=32-s|0;if((f|0)<=(t|0)){n=i[a+44>>2];if((n|0)==i[a+36>>2]){i[g>>2]=0;break l}i[g>>2]=i[n>>2]<>>32-f;f=f+i[a+48>>2]|0;i[a+48>>2]=f;if((f|0)!=32){break l}i[a+48>>2]=0;i[a+44>>2]=n+4;break l}n=i[a+44>>2];v=n+4|0;if((v|0)==i[a+36>>2]){i[g>>2]=0;break l}B=i[n>>2];i[a+44>>2]=v;t=f-t|0;i[a+48>>2]=t;i[g>>2]=i[n+4>>2]>>>32-t|B<>>32-f}f=i[p>>2]<<2;g=f+m|0;i[g>>2]=i[g>>2]|i[f+u>>2];d=d+1|0;if(d>>>0>2]){continue}break}}Ml(c,w);i[a+8>>2]=i[a+8>>2]+1;k=k+1|0;if((k|0)==(h|0)){break e}d=i[a+12>>2];continue}}d=i[e+28>>2];if(d){continue}break}}b=i[e+24>>2];c=(b>>>0)/341|0;a=i[e+12>>2];g=i[e+16>>2];m:{if((a|0)==(g|0)){break m}j=(c<<2)+a|0;f=i[j>>2];d=f+o(b-o(c,341)|0,12)|0;b=b+i[e+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break m}while(1){d=d+12|0;if((d-f|0)==4092){f=i[j+4>>2];j=j+4|0;d=f}if((b|0)!=(d|0)){continue}break}}i[e+28>>2]=0;d=g-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[e+12>>2]+4|0;i[e+12>>2]=a;g=i[e+16>>2];d=g-a>>2;if(d>>>0>2){continue}break}}f=170;n:{switch(d+ -1|0){case 1:f=341;case 0:i[e+24>>2]=f;break;default:break n}}o:{if((a|0)==(g|0)){break o}while(1){nn(i[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=i[e+16>>2];b=i[e+12>>2];if((a|0)==(b|0)){break o}i[e+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[e+8>>2];if(a){nn(a)}J=e+32|0;return}Sm();x()}Sm();x()}function Il(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;e=J-32|0;J=e;d=i[a+12>>2];i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}f=d<<2;g=Dm(f);i[e+8>>2]=g;k=g+f|0;i[e+16>>2]=k;qn(g,0,f);i[e+12>>2]=k}f=i[a+116>>2];h=i[f>>2];if(h){i[f+4>>2]=h;nn(h);i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;k=i[e+12>>2];g=i[e+8>>2];d=i[a+12>>2]}i[f+4>>2]=k;i[f>>2]=g;i[f+8>>2]=i[e+16>>2];g=0;i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;j=Dm(d);i[e+8>>2]=j;g=d+j|0;i[e+16>>2]=g;qn(j,0,d);i[e+12>>2]=g}d=i[a+128>>2];f=i[d>>2];if(f){i[d+4>>2]=f;nn(f);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;j=i[e+8>>2];g=i[e+12>>2]}i[d+4>>2]=g;i[d>>2]=j;i[d+8>>2]=i[e+16>>2];f=e+24|0;i[f>>2]=0;i[f+4>>2]=0;h=e+16|0;i[h>>2]=0;i[h+4>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;Nb(e+8|0);g=i[h>>2];h=i[e+12>>2];d=0;c:{if((g|0)==(h|0)){break c}d=i[f>>2]+i[e+28>>2]|0;f=(d>>>0)/341|0;d=i[h+(f<<2)>>2]+o(d-o(f,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;f=i[e+28>>2];d=f+1|0;i[e+28>>2]=d;d:{if(d>>>0>>0){break d}v=a+92|0;w=a+16|0;while(1){j=i[e+12>>2];g=d+ -1|0;d=g+i[e+24>>2]|0;f=(d>>>0)/341|0;f=i[j+(f<<2)>>2]+o(d-o(f,341)|0,12)|0;p=i[f+8>>2];h=i[f+4>>2];f=i[f>>2];i[e+28>>2]=g;g=i[e+16>>2];j=g-j|0;if((j?o(j>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[g+ -4>>2]);i[e+16>>2]=i[e+16>>2]+ -4}if(f>>>0>b>>>0){break d}d=i[a+12>>2];j=(h|0)==(d+ -1|0)?0:h+1|0;if(j>>>0>=d>>>0){break d}d=i[a+116>>2];g=o(p,12);k=d+g|0;e:{n=j<<2;s=g+i[a+128>>2]|0;h=i[a>>2]-i[n+i[s>>2]>>2]|0;if(!h){d=0;if(!f){break e}while(1){Ml(c,k);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((f|0)!=(d|0)){continue}break}break e}f:{g:{h:{i:{if(f>>>0<=2){h=i[a+104>>2];i[h>>2]=j;g=1;d=i[a+12>>2];if(d>>>0>1){break i}break f}if(l[a+8>>2]>l[a+4>>2]){break d}m=d;d=g+12|0;ua(m+d|0,i[k>>2],i[k+4>>2]);d=n+i[d+i[a+116>>2]>>2]|0;i[d>>2]=i[d>>2]+(1<>2]=0;De(w,r(f)^31,e+4|0);q=p+1|0;d=(f>>>1|0)-i[e+4>>2]|0;f=f-d|0;j:{if((f|0)==(d|0)){f=d;break j}h=i[a+84>>2];if((h|0)==i[a+76>>2]){break h}k=i[h>>2];m=i[a+88>>2];s=m+1|0;i[a+88>>2]=s;k=k&-2147483648>>>m;k:{if((s|0)==32){i[a+88>>2]=0;i[a+84>>2]=h+4;if(k){break k}break h}if(!k){break h}}}h=f;f=d;break g}while(1){j=(d+ -1|0)==(j|0)?0:j+1|0;i[h+(g<<2)>>2]=j;g=g+1|0;d=i[a+12>>2];if(g>>>0>>0){continue}break}break f}h=d}d=i[a+128>>2];g=d+g|0;k=i[g>>2];n=k+n|0;i[n>>2]=i[n>>2]+1;ua(d+o(q,12)|0,k,i[g+4>>2]);if(f){g=i[e+28>>2]+i[e+24>>2]|0;k=i[e+16>>2];d=i[e+12>>2];n=k-d|0;if((g|0)==((n?o(n>>2,341)+ -1|0:0)|0)){Nb(e+8|0);g=i[e+24>>2]+i[e+28>>2]|0;k=i[e+16>>2];d=i[e+12>>2]}if((d|0)==(k|0)){d=0}else{m=d;d=(g>>>0)/341|0;d=i[m+(d<<2)>>2]+o(g-o(d,341)|0,12)|0}i[d+8>>2]=p;i[d+4>>2]=j;i[d>>2]=f;i[e+28>>2]=i[e+28>>2]+1}if(!h){break e}g=i[e+28>>2]+i[e+24>>2]|0;k=i[e+16>>2];d=i[e+12>>2];f=k-d|0;if((g|0)==((f?o(f>>2,341)+ -1|0:0)|0)){Nb(e+8|0);g=i[e+24>>2]+i[e+28>>2]|0;k=i[e+16>>2];d=i[e+12>>2]}f=0;l:{if((d|0)==(k|0)){break l}f=d;d=(g>>>0)/341|0;f=i[f+(d<<2)>>2]+o(g-o(d,341)|0,12)|0}i[f+8>>2]=q;i[f+4>>2]=j;i[f>>2]=h;i[e+28>>2]=i[e+28>>2]+1;break e}if(!f){break e}p=0;while(1){if(d){y=i[k>>2];z=i[s>>2];j=i[a+92>>2];A=i[a+104>>2];d=0;while(1){n=A+(d<<2)|0;i[j+(i[n>>2]<<2)>>2]=0;g=i[n>>2]<<2;h=i[a>>2]-i[g+z>>2]|0;m:{if(!h){break m}g=g+j|0;q=i[a+48>>2];t=32-q|0;if((h|0)<=(t|0)){m=i[a+44>>2];if((m|0)==i[a+36>>2]){i[g>>2]=0;break m}i[g>>2]=i[m>>2]<>>32-h;h=h+i[a+48>>2]|0;i[a+48>>2]=h;if((h|0)!=32){break m}i[a+48>>2]=0;i[a+44>>2]=m+4;break m}m=i[a+44>>2];u=m+4|0;if((u|0)==i[a+36>>2]){i[g>>2]=0;break m}B=i[m>>2];i[a+44>>2]=u;t=h-t|0;i[a+48>>2]=t;i[g>>2]=i[m+4>>2]>>>32-t|B<>>32-h}h=i[n>>2]<<2;g=h+j|0;i[g>>2]=i[g>>2]|i[h+y>>2];d=d+1|0;if(d>>>0>2]){continue}break}}Ml(c,v);i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((p|0)==(f|0)){break e}d=i[a+12>>2];continue}}d=i[e+28>>2];if(d){continue}break}}b=i[e+24>>2];c=(b>>>0)/341|0;a=i[e+12>>2];j=i[e+16>>2];n:{if((a|0)==(j|0)){break n}k=(c<<2)+a|0;g=i[k>>2];d=g+o(b-o(c,341)|0,12)|0;b=b+i[e+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break n}while(1){d=d+12|0;if((d-g|0)==4092){g=i[k+4>>2];k=k+4|0;d=g}if((b|0)!=(d|0)){continue}break}}i[e+28>>2]=0;d=j-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[e+12>>2]+4|0;i[e+12>>2]=a;j=i[e+16>>2];d=j-a>>2;if(d>>>0>2){continue}break}}g=170;o:{switch(d+ -1|0){case 1:g=341;case 0:i[e+24>>2]=g;break;default:break o}}p:{if((a|0)==(j|0)){break p}while(1){nn(i[a>>2]);a=a+4|0;if((j|0)!=(a|0)){continue}break}a=i[e+16>>2];b=i[e+12>>2];if((a|0)==(b|0)){break p}i[e+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[e+8>>2];if(a){nn(a)}J=e+32|0;return}Sm();x()}Sm();x()}function ni(a,b,c,d){var e=0,f=0,h=0,o=0,q=p(0),r=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:e:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break e}h=i[a>>2];e=i[h+4>>2];h=i[h>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=h+b|0;if(e>>>0<=b>>>0){break b}while(1){h=0;e=g[b|0];if((e|0)<0){break c}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break e}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break c}if((e|0)>=(c|0)){return 1}break a;case 1:h=1;f:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break f}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break f}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 2:h=1;g:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break g}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break g}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 3:h=1;h:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break h}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break h}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 4:h=1;i:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break i}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break i}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 5:h=1;j:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break j}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break j}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 6:h=1;k:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break k}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];if(!e&o>>>0>255|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break k}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 7:h=1;l:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break l}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];if(!e&o>>>0>255|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break l}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 8:h=1;m:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break m}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;q=m[b>>2];n:{if(q=p(0)){e=~~q>>>0;break n}e=0}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break m}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 9:h=1;o:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break o}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;r=n[b>>3];p:{if(r<4294967296&r>=0){e=~~r>>>0;break p}e=0}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break o}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}h=1;q:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break q}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break q}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}qn(d+e|0,0,c-e|0)}return h}return 0}qn(d+e|0,0,c-e|0);return 1}function gd(a,b,c,d){var e=0,f=0,l=0,o=0,r=p(0),t=0,w=0,x=0;a:{b:{if(!d){break b}c:{switch(i[a+28>>2]+ -1|0){case 0:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=g[b|0];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 1:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=j[b|0];i[e+4>>2]=0;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 2:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=h[b>>1];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 3:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=k[b>>1];i[e+4>>2]=0;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 4:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=i[b>>2];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 5:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=i[b>>2];i[e+4>>2]=0;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 6:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}l=i[b+4>>2];e=(f<<3)+d|0;i[e>>2]=i[b>>2];i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 7:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=i[b+4>>2];l=e;w=i[b>>2];if((e|0)<0?1:(e|0)<=0?w>>>0<0:0){return}e=(f<<3)+d|0;i[e>>2]=w;i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 8:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;w=i[e+4>>2];f=0;while(1){if(w>>>0<=b>>>0){return}e=(f<<3)+d|0;o=e;r=m[b>>2];d:{if(p(q(r))=p(1)?r>p(0)?~~p(s(p(u(p(r*p(2.3283064365386963e-10)))),p(4294967296)))>>>0:~~p(v(p(p(r-p(~~r>>>0>>>0))*p(2.3283064365386963e-10))))>>>0:0;x=~~r>>>0;break d}l=-2147483648;x=0}i[o>>2]=x;i[e+4>>2]=l;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 9:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;w=i[e+4>>2];f=0;while(1){if(w>>>0<=b>>>0){return}e=(f<<3)+d|0;o=e;t=n[b>>3];e:{if(q(t)<0x8000000000000000){l=q(t)>=1?t>0?~~s(u(t*2.3283064365386963e-10),4294967295)>>>0:~~v((t- +(~~t>>>0>>>0))*2.3283064365386963e-10)>>>0:0;x=~~t>>>0;break e}l=-2147483648;x=0}i[o>>2]=x;i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 10:break c;default:break b}}e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=j[b|0];i[e+4>>2]=0;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}qn((e<<3)+d|0,0,c-e<<3)}return}qn((e<<3)+d|0,0,c-e<<3)}function Zf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;e=J-48|0;J=e;f=i[i[a+4>>2]+44>>2];c=i[a+8>>2];g=i[c>>2];c=i[c+4>>2];i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;d=(c-g>>2>>>0)/3|0;c=i[f+96>>2];g=(i[f+100>>2]-c|0)/12|0;a:{if(d>>>0>g>>>0){bg(f+96|0,d-g|0,e+32|0);break a}if(d>>>0>=g>>>0){break a}i[f+100>>2]=c+o(d,12)}b:{if(i[a+216>>2]==i[a+220>>2]){l=i[a+4>>2];k=i[l+44>>2];h=i[k+100>>2];if((h|0)!=i[k+96>>2]){j=e+40|0;c=0;while(1){g=-1;p=0;d=-1;c:{d:{e:{f=o(c,3);if((f|0)==-1){break e}n=-1;d=i[i[i[a+8>>2]>>2]+(f<<2)>>2];p=f+1|0;if((p|0)!=-1){break e}f=0;break d}n=i[i[i[a+8>>2]>>2]+(p<<2)>>2];f=f+2|0;if((f|0)==-1){break c}}g=i[i[i[a+8>>2]>>2]+(f<<2)>>2]}f=c+1|0;p=i[k+96>>2];m=(h-p|0)/12|0;if(m>>>0<=c>>>0){i[j>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;h=k+96|0;bg(h,f-m|0,e+32|0);l=i[a+4>>2];p=i[h>>2]}c=p+o(c,12)|0;i[c+8>>2]=g;i[c+4>>2]=n;i[c>>2]=d;c=f;k=i[l+44>>2];h=i[k+100>>2];if(c>>>0<(h-i[k+96>>2]|0)/12>>>0){continue}break}}i[i[l+4>>2]+80>>2]=b;c=1;break b}i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;l=i[a+8>>2];c=i[l>>2];b=i[l+4>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;f:{g:{h:{i:{j:{k:{l:{g=b-c|0;if(g){b=g>>2;if(b>>>0>=1073741824){break l}c=Dm(g);i[e>>2]=c;b=c+(b<<2)|0;i[e+8>>2]=b;qn(c,0,g);i[e+4>>2]=b}c=i[l+24>>2];if((i[l+28>>2]-c|0)<1){break g}while(1){g=i[(q<<2)+c>>2];m:{if((g|0)==-1){break m}n:{if(i[i[a+120>>2]+(q>>>3&536870908)>>2]>>>q&1){break n}b=i[a+220>>2];n=i[a+216>>2];if((b|0)==(n|0)){break n}m=(b-n|0)/144|0;j=((g>>>0)%3|0?-1:2)+g|0;p=0;while(1){d=g<<2;f=n+o(p,144)|0;b=i[d+i[i[f+68>>2]>>2]>>2];o:{if(!(i[i[f+16>>2]+(b>>>3&536870908)>>2]>>>b&1)){break o}b=g;k=b;c=-1;p:{if((j|0)==-1){break p}h=i[i[l+12>>2]+(j<<2)>>2];c=-1;if((h|0)==-1){break p}c=h+ -1|0;if((h>>>0)%3|0){break p}c=h+2|0}if((k|0)==(c|0)){break o}h=i[f+32>>2];f=i[h+d>>2];while(1){d=0;if((c|0)==-1){break f}if((f|0)!=i[h+(c<<2)>>2]){g=c;break n}k=b;c=((c>>>0)%3|0?-1:2)+c|0;d=-1;q:{if((c|0)==-1){break q}c=i[i[l+12>>2]+(c<<2)>>2];d=-1;if((c|0)==-1){break q}d=c+ -1|0;if((c>>>0)%3|0){break q}d=c+2|0}c=d;if((k|0)!=(c|0)){continue}break}}p=p+1|0;if(p>>>0>>0){continue}break}}b=i[e+20>>2];j=i[e+16>>2];m=b-j|0;h=m>>2;i[i[e>>2]+(g<<2)>>2]=h;c=i[e+24>>2];r:{if(b>>>0>>0){i[b>>2]=g;i[e+20>>2]=b+4;break r}f=h+1|0;if(f>>>0>=1073741824){break k}d=c-j|0;c=d>>1;d=d>>2>>>0<536870911?c>>>0>>0?f:c:1073741823;b=0;s:{if(!d){break s}if(d>>>0>=1073741824){break j}b=Dm(d<<2)}c=b+(h<<2)|0;i[c>>2]=g;d=b+(d<<2)|0;c=c+4|0;if((m|0)>=1){pn(b,j,m)}i[e+24>>2]=d;i[e+20>>2]=c;i[e+16>>2]=b;if(!j){break r}nn(j);l=i[a+8>>2]}if((g|0)==-1){break m}b=((g>>>0)%3|0?-1:2)+g|0;if((b|0)==-1){break m}b=i[i[l+12>>2]+(b<<2)>>2];if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}d=g;if((c|0)==(d|0)){break m}while(1){b=c;t:{u:{c=i[a+220>>2];j=i[a+216>>2];if((c|0)==(j|0)){break u}m=(c-j|0)/144|0;c=0;while(1){h=i[(j+o(c,144)|0)+32>>2];f=b<<2;if(i[h+f>>2]==i[h+(d<<2)>>2]){c=c+1|0;if(c>>>0>>0){continue}break u}break}c=i[e+20>>2];n=i[e+16>>2];j=c-n|0;m=j>>2;i[f+i[e>>2]>>2]=m;d=i[e+24>>2];if(c>>>0>>0){i[c>>2]=b;i[e+20>>2]=c+4;break t}h=m+1|0;if(h>>>0>=1073741824){break i}f=d-n|0;d=f>>1;f=f>>2>>>0<536870911?d>>>0>>0?h:d:1073741823;c=0;v:{if(!f){break v}if(f>>>0>=1073741824){break h}c=Dm(f<<2)}d=c+(m<<2)|0;i[d>>2]=b;f=c+(f<<2)|0;d=d+4|0;if((j|0)>=1){pn(c,n,j)}i[e+24>>2]=f;i[e+20>>2]=d;i[e+16>>2]=c;if(!n){break t}nn(n);l=i[a+8>>2];break t}c=i[e>>2];i[c+(b<<2)>>2]=i[c+(d<<2)>>2]}if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}c=i[i[l+12>>2]+(c<<2)>>2];if((c|0)==-1){break m}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}d=b;if((c|0)!=(g|0)){continue}break}}q=q+1|0;c=i[l+24>>2];if((q|0)>2]-c>>2){continue}break}break g}Sm();x()}Sm();x()}Ba(12220);x()}Sm();x()}Ba(12220);x()}q=i[a+4>>2];k=i[q+44>>2];d=i[k+100>>2];if((d|0)!=i[k+96>>2]){n=e+40|0;c=0;while(1){g=c+1|0;j=o(c,12);b=j+i[e>>2]|0;m=i[b+8>>2];h=i[b+4>>2];f=i[b>>2];b=i[k+96>>2];d=(d-b|0)/12|0;if(d>>>0<=c>>>0){i[n>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;b=k+96|0;bg(b,g-d|0,e+32|0);q=i[a+4>>2];b=i[b>>2]}b=b+j|0;i[b+8>>2]=m;i[b+4>>2]=h;i[b>>2]=f;c=g;k=i[q+44>>2];d=i[k+100>>2];if(c>>>0<(d-i[k+96>>2]|0)/12>>>0){continue}break}}i[i[q+4>>2]+80>>2]=i[e+20>>2]-i[e+16>>2]>>2;d=1}c=d;a=i[e>>2];if(a){i[e+4>>2]=a;nn(a)}a=i[e+16>>2];if(!a){break b}i[e+20>>2]=a;nn(a)}J=e+48|0;return c}function $g(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=J-32|0;J=e;g=i[a+32>>2];c=k[a+36>>1];a:{b:{if((c<<24|c<<8&16711680)>>>16>>>0<=513){b=i[g+12>>2];f=b;c=i[g+20>>2];d=c;h=i[g+16>>2];n=h+4|0;if(n>>>0<4){c=c+1|0}m=i[g+8>>2];q=n;n=c;if((b|0)<(c|0)?1:(b|0)<=(c|0)?m>>>0>>0:0){break a}t=i[g>>2];c=t+h|0;r=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[g+16>>2]=q;i[g+20>>2]=n;c=f;b=d;f=h+8|0;if(f>>>0<8){b=b+1|0}d=f;f=b;if((c|0)<(b|0)?1:(c|0)<=(b|0)?m>>>0>>0:0){break a}c=q+t|0;t=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[e+24>>2]=t;i[g+16>>2]=d;i[g+20>>2]=f;break b}if(!ah(1,e+28|0,g)){break a}if(!ah(1,e+24|0,i[a+32>>2])){break a}r=i[e+28>>2];t=i[e+24>>2]}if(r>>>0>1431655765){break a}f=i[a+32>>2];c=f;h=i[c+8>>2];b=h;g=i[c+16>>2];n=b-g|0;d=i[c+12>>2];m=b>>>0>>0;b=i[c+20>>2];q=Hn(n,d-(m+b|0)|0,3,0);n=L;if((d|0)<(b|0)?1:(d|0)<=(b|0)?h>>>0<=g>>>0:0){break a}c=r;d=Gn(c,0,3,0);h=L;if(!h&d>>>0>>0|h>>>0<0|(!n&q>>>0>>0|n>>>0<0)){break a}n=j[g+i[f>>2]|0];c=b;h=g+1|0;if(h>>>0<1){c=c+1|0}d=f;i[d+16>>2]=h;i[d+20>>2]=c;c:{if(!n){if(!bh(a,r)){break a}break c}d:{if(t>>>0<=255){if(!r){break c}q=0;p=e+16|0;i[p>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;o=i[f+8>>2];d=i[f+12>>2];b=d;if((b|0)<(c|0)?1:(b|0)<=(c|0)?o>>>0<=h>>>0:0){break d}while(1){g=i[f>>2];s=j[g+h|0];b=c;m=h+1|0;if(m>>>0<1){b=b+1|0}n=f;i[f+16>>2]=m;i[f+20>>2]=b;i[e+8>>2]=s;if((d|0)<(b|0)?1:(d|0)<=(b|0)?o>>>0<=m>>>0:0){break d}s=j[g+m|0];b=c;m=h+2|0;if(m>>>0<2){b=b+1|0}i[f+16>>2]=m;i[n+20>>2]=b;i[e+12>>2]=s;if((d|0)<(b|0)?1:(d|0)<=(b|0)?o>>>0<=m>>>0:0){break d}b=j[g+m|0];d=h+3|0;if(d>>>0<3){c=c+1|0}i[f+16>>2]=d;i[f+20>>2]=c;i[e+16>>2]=b;ch(i[a+44>>2]+96|0,e+8|0);q=q+1|0;if((q|0)==(r|0)){break c}f=i[a+32>>2];b=f;h=i[b+16>>2];c=i[b+20>>2];i[p>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;o=i[b+8>>2];d=i[b+12>>2];b=d;if((b|0)>(c|0)?1:(b|0)>=(c|0)?o>>>0>h>>>0:0){continue}break}break d}if(t>>>0<=65535){if(!r){break c}q=0;u=e+16|0;i[u>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;n=i[f+12>>2];p=n;d=g+3|0;if(d>>>0<3){b=b+1|0}m=i[f+8>>2];o=d;d=b;if((p|0)<(b|0)?1:(p|0)<=(b|0)?m>>>0>>0:0){break d}while(1){p=i[f>>2];b=p+h|0;b=j[b|0]|j[b+1|0]<<8;i[f+16>>2]=o;i[f+20>>2]=d;i[e+8>>2]=b;d=n;b=c;g=h+4|0;if(g>>>0<4){b=b+1|0}s=g;g=b;if((d|0)<(b|0)?1:(d|0)<=(b|0)?m>>>0>>0:0){break d}b=o+p|0;b=j[b|0]|j[b+1|0]<<8;i[f+16>>2]=s;i[f+20>>2]=g;i[e+12>>2]=b;b=c;c=h+6|0;if(c>>>0<6){b=b+1|0}d=c;c=b;if((n|0)<(b|0)?1:(n|0)<=(b|0)?m>>>0>>0:0){break d}b=p+s|0;b=j[b|0]|j[b+1|0]<<8;i[f+16>>2]=d;i[f+20>>2]=c;i[e+16>>2]=b;ch(i[a+44>>2]+96|0,e+8|0);q=q+1|0;if((q|0)==(r|0)){break c}f=i[a+32>>2];b=f;h=i[b+16>>2];c=i[b+20>>2];i[u>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;g=i[b+12>>2];n=g;m=i[b+8>>2];p=m;b=c;d=h+2|0;if(d>>>0<2){b=b+1|0}o=d;d=b;if((g|0)>(b|0)?1:(g|0)>=(b|0)?p>>>0>=o>>>0:0){continue}break}break d}e:{if(l[i[a+44>>2]+80>>2]>2097151){break e}d=k[a+36>>1];if((d<<24|d<<8&16711680)>>>16>>>0<514){break e}if(!r){break c}c=e+16|0;i[c>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;if(!ah(1,e+4|0,f)){break d}while(1){i[e+8>>2]=i[e+4>>2];if(!ah(1,e+4|0,i[a+32>>2])){break d}i[e+12>>2]=i[e+4>>2];if(!ah(1,e+4|0,i[a+32>>2])){break d}i[e+16>>2]=i[e+4>>2];ch(i[a+44>>2]+96|0,e+8|0);o=o+1|0;if((r|0)==(o|0)){break c}b=i[a+32>>2];i[c>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;if(ah(1,e+4|0,b)){continue}break}break d}if(!r){break c}q=0;u=e+16|0;i[u>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;n=i[f+12>>2];p=n;d=g+5|0;if(d>>>0<5){b=b+1|0}m=i[f+8>>2];o=d;d=b;if((p|0)<(b|0)?1:(p|0)<=(b|0)?m>>>0>>0:0){break d}while(1){p=i[f>>2];b=p+h|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[f+16>>2]=o;i[f+20>>2]=d;i[e+8>>2]=b;d=n;b=c;g=h+8|0;if(g>>>0<8){b=b+1|0}s=g;g=b;if((d|0)<(b|0)?1:(d|0)<=(b|0)?m>>>0>>0:0){break d}b=o+p|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[f+16>>2]=s;i[f+20>>2]=g;i[e+12>>2]=b;b=h+12|0;if(b>>>0<12){c=c+1|0}d=b;b=c;if((n|0)<(b|0)?1:(n|0)<=(b|0)?m>>>0>>0:0){break d}c=p+s|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[f+16>>2]=d;i[f+20>>2]=b;i[e+16>>2]=c;ch(i[a+44>>2]+96|0,e+8|0);q=q+1|0;if((q|0)==(r|0)){break c}f=i[a+32>>2];b=f;h=i[b+16>>2];c=i[b+20>>2];i[u>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;g=i[b+12>>2];n=g;m=i[b+8>>2];p=m;b=c;d=h+4|0;if(d>>>0<4){b=b+1|0}o=d;d=b;if((g|0)>(b|0)?1:(g|0)>=(b|0)?p>>>0>=o>>>0:0){continue}break}}o=0;break a}i[i[a+4>>2]+80>>2]=t;o=1}J=e+32|0;return o|0}function $c(a,b,c,d){var e=0,f=0,o=p(0),q=0,r=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(g[b|0]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(127)}b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(j[b|0]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(255)}b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(h[b>>1]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(32767)}b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(k[b>>1]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(65535)}b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(i[b>>2]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(4.656612873077393e-10)}b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(l[b>>2]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(2.3283064365386963e-10)}b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(+l[b>>2]+ +i[b+4>>2]*4294967296);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(1.0842021724855044e-19)}b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(+l[b>>2]+ +l[b+4>>2]*4294967296);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(5.421010862427522e-20)}b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}m[(f<<2)+d>>2]=m[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}m[(f<<2)+d>>2]=n[b>>3];b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){q=i[a>>2];e=i[q>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;while(1){if(l[q+4>>2]<=b>>>0){break b}m[(f<<2)+d>>2]=j[b|0]?p(1):p(0);b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<2)+d|0,0,c-e<<2)}return r}return 0}qn((e<<2)+d|0,0,c-e<<2);return 1}function qi(a,b,c,d){var e=0,f=0,l=0,o=0,r=0,s=0,t=p(0),u=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;l=i[e+4>>2];while(1){if(l>>>0<=b>>>0){break b}o=0;e=h[b>>1];if((e|0)<0){break c}h[(f<<1)+d>>1]=e;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}o=1;if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e+32768>>>0>65535){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e>>>0>32767){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];r=i[b>>2];s=r+32768|0;if(s>>>0<32768){e=e+1|0}if(!e&s>>>0>65535|e>>>0>0){break b}h[(f<<1)+d>>1]=r;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];r=i[b>>2];if(!e&r>>>0>32767|e>>>0>0){break b}h[(f<<1)+d>>1]=r;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}r=(f<<1)+d|0;t=m[b>>2];e:{if(p(q(t))>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}r=(f<<1)+d|0;u=n[b>>3];f:{if(q(u)<2147483648){e=~~u;break f}e=-2147483648}h[r>>1]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<1)+d|0,0,c-e<<1)}return o}return 0}qn((e<<1)+d|0,0,c-e<<1);return 1}function si(a,b,c,d){var e=0,f=0,l=0,o=0,q=0,r=p(0),s=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;l=i[e+4>>2];while(1){if(l>>>0<=b>>>0){break b}o=0;e=g[b|0];if((e|0)<0){break c}h[(f<<1)+d>>1]=e&255;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}o=1;if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;l=i[e+4>>2];while(1){if(l>>>0<=b>>>0){break b}o=0;e=h[b>>1];if((e|0)<0){break c}h[(f<<1)+d>>1]=e;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}o=1;if((e|0)>=(c|0)){break c}break a;case 3:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e>>>0>65535){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e>>>0>65535){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];q=i[b>>2];if(!e&q>>>0>65535|e>>>0>0){break b}h[(f<<1)+d>>1]=q;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];q=i[b>>2];if(!e&q>>>0>65535|e>>>0>0){break b}h[(f<<1)+d>>1]=q;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}q=(f<<1)+d|0;r=m[b>>2];e:{if(r=p(0)){e=~~r>>>0;break e}e=0}h[q>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}q=(f<<1)+d|0;s=n[b>>3];f:{if(s<4294967296&s>=0){e=~~s>>>0;break f}e=0}h[q>>1]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<1)+d|0,0,c-e<<1)}return o}return 0}qn((e<<1)+d|0,0,c-e<<1);return 1}function ui(a,b,c,d){var e=0,f=0,l=0,o=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=h[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=g[a+24|0];if(((o|0)>(c|0)?c:o)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;e=i[e+4>>2];while(1){if(e>>>0<=b>>>0){break b}o=0;r=i[b>>2];if((r|0)<0){break c}i[(f<<2)+d>>2]=r;b=b+4|0;f=f+1|0;o=g[a+24|0];if((f|0)<((o|0)>(c|0)?c:o)<<24>>24){continue}break}}if((o|0)>=(c|0)){return 1}qn((o<<2)+d|0,0,c-o<<2);return 1;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=i[b+4>>2];l=i[b>>2];if(l+ -2147483648>>>0<2147483648){e=e+1|0}if(e>>>0>0){break b}i[(f<<2)+d>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=i[b+4>>2];l=i[b>>2];if(!e&l>>>0>2147483647|e>>>0>0){break b}i[(f<<2)+d>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=(f<<2)+d|0;s=m[b>>2];e:{if(p(q(s))>2]=l;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=(f<<2)+d|0;t=n[b>>3];f:{if(q(t)<2147483648){l=~~t;break f}l=-2147483648}i[e>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<2)+d|0,0,c-e<<2)}return o}return 0}qn((e<<2)+d|0,0,c-e<<2);return 1}function fd(a,b,c,d){var e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;f=J-80|0;J=f;h=-1;e=-1;a:{if((b|0)==-1){break a}e=b+1|0;h=(e>>>0)%3|0?e:b+ -2|0;e=b+ -1|0;if((b>>>0)%3|0){break a}e=b+2|0}l=i[a+36>>2];b=i[l>>2];b:{c:{d:{e:{f:{l=i[l+4>>2]-b>>2;m=h<<2;h=i[i[a+32>>2]+28>>2];k=i[m+h>>2];if(l>>>0<=k>>>0){break f}e=i[h+(e<<2)>>2];if(l>>>0<=e>>>0){break f}g:{h:{u=i[b+(k<<2)>>2];w=(u|0)>=(d|0);if(w){break h}h=i[b+(e<<2)>>2];if((h|0)>=(d|0)){break h}b=h<<3;B=i[(b|4)+c>>2];e=u<<3;y=i[(e|4)+c>>2];C=i[b+c>>2];z=i[c+e>>2];if(!((C|0)!=(z|0)|(y|0)!=(B|0))){i[a+8>>2]=z;i[a+12>>2]=y;break g}b=i[i[a+4>>2]+(d<<2)>>2];i[f+72>>2]=0;i[f+76>>2]=0;e=f- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+56|0);b=i[i[a+4>>2]+(u<<2)>>2];i[f+48>>2]=0;i[f+52>>2]=0;i[f+40>>2]=0;i[f+44>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+32|0);b=i[i[a+4>>2]+(h<<2)>>2];i[f+24>>2]=0;i[f+28>>2]=0;i[f+16>>2]=0;i[f+20>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+8|0);A=i[f+44>>2];e=i[f+16>>2];b=i[f+40>>2];q=i[f+20>>2]-(A+(e>>>0>>0)|0)|0;h=e-b|0;e=Gn(h,q,h,q);p=L;m=e;E=i[f+36>>2];e=i[f+8>>2];r=i[f+32>>2];l=r;s=i[f+12>>2]-(E+(e>>>0>>0)|0)|0;l=e-l|0;o=Gn(l,s,l,s);k=m+o|0;e=L+p|0;e=k>>>0>>0?e+1|0:e;F=k;n=i[f+52>>2];k=i[f+24>>2];m=i[f+48>>2];o=m;p=i[f+28>>2]-(n+(k>>>0>>0)|0)|0;k=k-o|0;v=Gn(k,p,k,p);o=F+v|0;e=L+e|0;t=o;o=o>>>0>>0?e+1|0:e;if(!(t|o)){break h}c=i[f+64>>2];u=c-b|0;G=i[f+68>>2]-((c>>>0>>0)+A|0)|0;b=Gn(u,G,h,q);c=L;e=b;b=i[f+56>>2];w=b-r|0;H=i[f+60>>2]-((b>>>0>>0)+E|0)|0;d=Gn(w,H,l,s);b=e+d|0;e=L+c|0;e=b>>>0>>0?e+1|0:e;d=b;b=i[f+72>>2];A=b-m|0;I=i[f+76>>2]-((b>>>0>>0)+n|0)|0;c=Gn(A,I,k,p);b=d+c|0;e=L+e|0;D=b;F=b;r=b>>>0>>0?e+1|0:e;K=r;e=p;b=e>>31;c=e>>31;e=b+e|0;m=c+k|0;if(m>>>0>>0){e=e+1|0}c=c^m;b=b^e;M=b;m=c;E=b;d=q;b=d>>31;d=d>>31;n=b;b=q+b|0;e=d;v=e+h|0;if(v>>>0>>0){b=b+1|0}d=d^v;b=b^n;N=b;v=b;e=s;b=e>>31;e=e>>31;P=m;Q=d;n=b+s|0;m=e+l|0;if(m>>>0>>0){n=n+1|0}e=e^m;d=e>>>0>>0;b=b^n;d=(b|0)<(N|0)?1:(b|0)<=(N|0)?d:0;e=d?Q:e;c=e>>>0>>0;b=d?v:b;c=(b|0)<(M|0)?1:(b|0)<=(M|0)?c:0;c=F>>>0>In(-1,2147483647,c?P:e,c?E:b)>>>0;b=L;if((K|0)>(b|0)?1:(K|0)>=(b|0)?c:0){break b}d=1;b=0;c=Hn(Gn(h,q,D,r),L,t,o);e=G-(L+(u>>>0>>0)|0)|0;c=u-c|0;c=Gn(c,e,c,e);h=L;m=c;c=Hn(Gn(l,s,D,r),L,t,o);e=H-(L+(w>>>0>>0)|0)|0;c=w-c|0;e=Gn(c,e,c,e);c=m+e|0;n=L+h|0;n=c>>>0>>0?n+1|0:n;l=c;c=Hn(Gn(D,r,k,p),L,t,o);e=I-(L+(A>>>0>>0)|0)|0;c=A-c|0;h=Gn(c,e,c,e);c=l+h|0;e=L+n|0;h=Gn(c,c>>>0>>0?e+1|0:e,t,o);c=L;l=c;if(!c&h>>>0<=1|c>>>0<0){break e}k=h;c=l;while(1){e=b<<1|d>>>31;d=d<<1;b=e;q=!c&k>>>0>7|c>>>0>0;k=(c&3)<<30|k>>>2;c=c>>>2|0;if(q){continue}break}break d}e=a;if(w){if((d|0)<=0){i[a+8>>2]=0;i[a+12>>2]=0;break g}b=(d<<1)+ -2|0}else{b=u<<1}b=(b<<2)+c|0;i[e+8>>2]=i[b>>2];i[a+12>>2]=i[b+4>>2]}O=1;break b}Tm();x()}b=l;d=h;if(d-1|0){break c}}while(1){c=In(h,l,d,b)+d|0;e=b+L|0;e=c>>>0>>0?e+1|0:e;d=(e&1)<<31|c>>>1;b=e>>>1|0;c=Gn(d,b,d,b);e=L;if((l|0)==(e|0)&c>>>0>h>>>0|e>>>0>l>>>0){continue}break}}l=i[a+20>>2];if(l){k=l+ -1|0;q=i[i[a+16>>2]+(k>>>3&536870908)>>2];i[a+20>>2]=k;c=B;e=y;s=c-e|0;p=e>>31;y=(c>>31)-(p+(c>>>0>>0)|0)|0;c=Gn(D,r,s,y);h=L;e=Gn(e,p,t,o);c=e+c|0;n=L+h|0;n=c>>>0>>0?n+1|0:n;m=c;c=C;h=z;e=h;p=c-e|0;B=e>>31;z=(c>>31)-(B+(c>>>0>>0)|0)|0;c=Gn(d,b,p,z);e=c;c=q>>>k&1;C=c?0-e|0:e;k=m+C|0;m=L;e=(c?0-(m+(0>>0)|0)|0:m)+n|0;R=a,S=Hn(k,k>>>0>>0?e+1|0:e,t,o),i[R+12>>2]=S;e=Gn(D,r,p,z);k=L;m=a;a=e;e=Gn(h,B,t,o);a=a+e|0;n=L+k|0;n=a>>>0>>0?n+1|0:n;e=a;a=Gn(d,b,s,y);d=c?a:0-a|0;b=e+d|0;e=L;a=(c?e:0-((0>>0)+e|0)|0)+n|0;R=m,S=Hn(b,b>>>0>>0?a+1|0:a,t,o),i[R+8>>2]=S}O=(l|0)!=0}J=f+80|0;return O}function Ed(a,b,c,d){var e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;f=J-80|0;J=f;e=-1;h=-1;a:{if((b|0)==-1){break a}k=((b>>>0)%3|0?-1:2)+b|0;l=i[a+32>>2];p=b+1|0;b=(p>>>0)%3|0?p:b+ -2|0;if((b|0)!=-1){e=i[i[l>>2]+(b<<2)>>2]}if((k|0)==-1){break a}h=i[i[l>>2]+(k<<2)>>2]}k=i[a+36>>2];b=i[k>>2];b:{c:{d:{e:{k=i[k+4>>2]-b>>2;if(!(k>>>0<=e>>>0|k>>>0<=h>>>0)){f:{g:{u=i[b+(e<<2)>>2];w=(u|0)>=(d|0);if(w){break g}h=i[b+(h<<2)>>2];if((h|0)>=(d|0)){break g}b=h<<3;B=i[(b|4)+c>>2];e=u<<3;y=i[(e|4)+c>>2];C=i[b+c>>2];z=i[c+e>>2];if(!((C|0)!=(z|0)|(y|0)!=(B|0))){i[a+8>>2]=z;i[a+12>>2]=y;break f}b=i[i[a+4>>2]+(d<<2)>>2];i[f+72>>2]=0;i[f+76>>2]=0;e=f- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+56|0);b=i[i[a+4>>2]+(u<<2)>>2];i[f+48>>2]=0;i[f+52>>2]=0;i[f+40>>2]=0;i[f+44>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+32|0);b=i[i[a+4>>2]+(h<<2)>>2];i[f+24>>2]=0;i[f+28>>2]=0;i[f+16>>2]=0;i[f+20>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+8|0);A=i[f+44>>2];e=i[f+16>>2];b=i[f+40>>2];p=i[f+20>>2]-(A+(e>>>0>>0)|0)|0;h=e-b|0;e=Gn(h,p,h,p);q=L;n=e;E=i[f+36>>2];e=i[f+8>>2];r=i[f+32>>2];k=r;s=i[f+12>>2]-(E+(e>>>0>>0)|0)|0;k=e-k|0;o=Gn(k,s,k,s);l=n+o|0;e=L+q|0;e=l>>>0>>0?e+1|0:e;F=l;m=i[f+52>>2];l=i[f+24>>2];n=i[f+48>>2];o=n;q=i[f+28>>2]-(m+(l>>>0>>0)|0)|0;l=l-o|0;v=Gn(l,q,l,q);o=F+v|0;e=L+e|0;t=o;o=o>>>0>>0?e+1|0:e;if(!(t|o)){break g}c=i[f+64>>2];u=c-b|0;G=i[f+68>>2]-((c>>>0>>0)+A|0)|0;b=Gn(u,G,h,p);c=L;e=b;b=i[f+56>>2];w=b-r|0;H=i[f+60>>2]-((b>>>0>>0)+E|0)|0;d=Gn(w,H,k,s);b=e+d|0;e=L+c|0;e=b>>>0>>0?e+1|0:e;d=b;b=i[f+72>>2];A=b-n|0;I=i[f+76>>2]-((b>>>0>>0)+m|0)|0;c=Gn(A,I,l,q);b=d+c|0;e=L+e|0;D=b;F=b;r=b>>>0>>0?e+1|0:e;K=r;e=q;b=e>>31;c=e>>31;e=b+e|0;n=c+l|0;if(n>>>0>>0){e=e+1|0}c=c^n;b=b^e;M=b;n=c;E=b;d=p;b=d>>31;d=d>>31;m=b;b=p+b|0;e=d;v=e+h|0;if(v>>>0>>0){b=b+1|0}d=d^v;b=b^m;N=b;v=b;e=s;b=e>>31;e=e>>31;P=n;Q=d;m=b+s|0;n=e+k|0;if(n>>>0>>0){m=m+1|0}e=e^n;d=e>>>0>>0;b=b^m;d=(b|0)<(N|0)?1:(b|0)<=(N|0)?d:0;e=d?Q:e;c=e>>>0>>0;b=d?v:b;c=(b|0)<(M|0)?1:(b|0)<=(M|0)?c:0;c=F>>>0>In(-1,2147483647,c?P:e,c?E:b)>>>0;b=L;if((K|0)>(b|0)?1:(K|0)>=(b|0)?c:0){break b}d=1;b=0;c=Hn(Gn(h,p,D,r),L,t,o);e=G-(L+(u>>>0>>0)|0)|0;c=u-c|0;c=Gn(c,e,c,e);h=L;n=c;c=Hn(Gn(k,s,D,r),L,t,o);e=H-(L+(w>>>0>>0)|0)|0;c=w-c|0;e=Gn(c,e,c,e);c=n+e|0;m=L+h|0;m=c>>>0>>0?m+1|0:m;k=c;c=Hn(Gn(D,r,l,q),L,t,o);e=I-(L+(A>>>0>>0)|0)|0;c=A-c|0;h=Gn(c,e,c,e);c=k+h|0;e=L+m|0;h=Gn(c,c>>>0>>0?e+1|0:e,t,o);c=L;k=c;if(!c&h>>>0<=1|c>>>0<0){break e}l=h;c=k;while(1){e=b<<1|d>>>31;d=d<<1;b=e;p=!c&l>>>0>7|c>>>0>0;l=(c&3)<<30|l>>>2;c=c>>>2|0;if(p){continue}break}break d}e=a;if(w){if((d|0)<=0){i[a+8>>2]=0;i[a+12>>2]=0;break f}b=(d<<1)+ -2|0}else{b=u<<1}b=(b<<2)+c|0;i[e+8>>2]=i[b>>2];i[a+12>>2]=i[b+4>>2]}O=1;break b}Tm();x()}b=k;d=h;if(d-1|0){break c}}while(1){c=In(h,k,d,b)+d|0;e=b+L|0;e=c>>>0>>0?e+1|0:e;d=(e&1)<<31|c>>>1;b=e>>>1|0;c=Gn(d,b,d,b);e=L;if((k|0)==(e|0)&c>>>0>h>>>0|e>>>0>k>>>0){continue}break}}k=i[a+20>>2];if(k){l=k+ -1|0;p=i[i[a+16>>2]+(l>>>3&536870908)>>2];i[a+20>>2]=l;c=B;e=y;s=c-e|0;q=e>>31;y=(c>>31)-(q+(c>>>0>>0)|0)|0;c=Gn(D,r,s,y);h=L;e=Gn(e,q,t,o);c=e+c|0;m=L+h|0;m=c>>>0>>0?m+1|0:m;n=c;c=C;h=z;e=h;q=c-e|0;B=e>>31;z=(c>>31)-(B+(c>>>0>>0)|0)|0;c=Gn(d,b,q,z);e=c;c=p>>>l&1;C=c?0-e|0:e;l=n+C|0;n=L;e=(c?0-(n+(0>>0)|0)|0:n)+m|0;R=a,S=Hn(l,l>>>0>>0?e+1|0:e,t,o),i[R+12>>2]=S;e=Gn(D,r,q,z);l=L;n=a;a=e;e=Gn(h,B,t,o);a=a+e|0;m=L+l|0;m=a>>>0>>0?m+1|0:m;e=a;a=Gn(d,b,s,y);d=c?a:0-a|0;b=e+d|0;e=L;a=(c?e:0-((0>>0)+e|0)|0)+m|0;R=n,S=Hn(b,b>>>0>>0?a+1|0:a,t,o),i[R+8>>2]=S}O=(k|0)!=0}J=f+80|0;return O}function wi(a,b,c,d){var e=0,f=0,o=0,q=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=h[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}e=i[b>>2];if(l[b+4>>2]>0){break b}i[(f<<2)+d>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}e=i[b>>2];if(l[b+4>>2]>0){break b}i[(f<<2)+d>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}r=(f<<2)+d|0;s=m[b>>2];e:{if(s=p(0)){e=~~s>>>0;break e}e=0}i[r>>2]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}r=(f<<2)+d|0;t=n[b>>3];f:{if(t<4294967296&t>=0){e=~~t>>>0;break f}e=0}i[r>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<2)+d|0,0,c-e<<2)}return q}return 0}qn((e<<2)+d|0,0,c-e<<2);return 1}function kg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,p=0,q=0;n=J-16|0;J=n;a:{b:{c=i[a+144>>2];c=k[(M[i[i[c>>2]+32>>2]](c)|0)+36>>1];if((c<<24|c<<8&16711680)>>>16>>>0<=513){c=i[a+4>>2];i[a+40>>2]=i[a>>2];i[a+44>>2]=c;e=a+32|0;c=e;d=i[c+4>>2];i[a+72>>2]=i[c>>2];i[a+76>>2]=d;d=i[a+28>>2];c=a- -64|0;i[c>>2]=i[a+24>>2];i[c+4>>2]=d;c=i[a+20>>2];i[a+56>>2]=i[a+16>>2];i[a+60>>2]=c;c=i[a+12>>2];i[a+48>>2]=i[a+8>>2];i[a+52>>2]=c;c=a+40|0;if(!Ch(c,1,n+8|0)){break b}d=i[c+4>>2];i[a>>2]=i[c>>2];i[a+4>>2]=d;d=i[c+36>>2];i[e>>2]=i[c+32>>2];i[e+4>>2]=d;e=i[c+28>>2];i[a+24>>2]=i[c+24>>2];i[a+28>>2]=e;d=i[c+20>>2];g=d;e=i[c+16>>2];i[a+16>>2]=e;i[a+20>>2]=d;d=i[c+12>>2];f=d;c=i[c+8>>2];i[a+8>>2]=c;i[a+12>>2]=d;d=e;h=c-d|0;m=i[n+12>>2];c=f-((c>>>0>>0)+g|0)|0;d=i[n+8>>2];if((m|0)==(c|0)&d>>>0>h>>>0|m>>>0>c>>>0){break b}c=g+m|0;e=d+e|0;if(e>>>0>>0){c=c+1|0}i[a+16>>2]=e;i[a+20>>2]=c}c:{if(k[a+38>>1]<=513){c=i[a+4>>2];i[a+96>>2]=i[a>>2];i[a+100>>2]=c;e=a+32|0;c=e;d=i[c+4>>2];i[a+128>>2]=i[c>>2];i[a+132>>2]=d;d=a+24|0;c=d;f=i[c+4>>2];i[a+120>>2]=i[c>>2];i[a+124>>2]=f;f=a+16|0;c=f;g=i[c+4>>2];i[a+112>>2]=i[c>>2];i[a+116>>2]=g;g=a+8|0;c=g;h=i[c+4>>2];i[a+104>>2]=i[c>>2];i[a+108>>2]=h;c=a+96|0;if(!Ch(c,1,n+8|0)){break b}h=i[c+4>>2];i[a>>2]=i[c>>2];i[a+4>>2]=h;h=i[c+36>>2];i[e>>2]=i[c+32>>2];i[e+4>>2]=h;e=i[c+28>>2];i[d>>2]=i[c+24>>2];i[d+4>>2]=e;d=i[c+20>>2];h=d;e=i[c+16>>2];i[f>>2]=e;i[f+4>>2]=d;d=i[c+12>>2];f=d;c=i[c+8>>2];i[g>>2]=c;i[g+4>>2]=d;d=e;g=c-d|0;m=i[n+12>>2];d=f-((c>>>0>>0)+h|0)|0;c=i[n+8>>2];if((m|0)==(d|0)&c>>>0>g>>>0|m>>>0>d>>>0){break b}f=h+m|0;e=c+e|0;if(e>>>0>>0){f=f+1|0}i[a+16>>2]=e;i[a+20>>2]=f;break c}f=0;if(!Ae(a+80|0,a)){break a}}f=0;if(!_f(a)){break a}c=i[a+4>>2];i[b>>2]=i[a>>2];i[b+4>>2]=c;c=i[a+36>>2];i[b+32>>2]=i[a+32>>2];i[b+36>>2]=c;c=i[a+28>>2];i[b+24>>2]=i[a+24>>2];i[b+28>>2]=c;c=i[a+20>>2];i[b+16>>2]=i[a+16>>2];i[b+20>>2]=c;c=i[a+12>>2];i[b+8>>2]=i[a+8>>2];i[b+12>>2]=c;c=i[a+144>>2];c=k[(M[i[i[c>>2]+32>>2]](c)|0)+36>>1];d:{if((c<<24|c<<8&16711680)>>>16>>>0<=513){c=i[a+144>>2];e:{if(j[(M[i[i[c>>2]+32>>2]](c)|0)+36|0]<=1){d=i[b+12>>2];c=i[b+20>>2];g=i[b+16>>2];e=g+4|0;if(e>>>0<4){c=c+1|0}h=e;e=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=g+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=e;break e}if(!Pf(1,n+8|0,b)){break a}c=i[n+8>>2]}d=c;c=i[a+152>>2];if(d>>>0>=c>>>0){break a}g=i[b+16>>2];d=i[b+12>>2];e=i[b+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[b+8>>2]<=g>>>0:0){break a}h=j[g+i[b>>2]|0];g=g+1|0;if(g>>>0<1){e=e+1|0}d=b;i[d+16>>2]=g;i[d+20>>2]=e;if(h){break a}i[a+176>>2]=2;i[a+180>>2]=7;break d}i[a+176>>2]=2;i[a+180>>2]=7;c=i[a+152>>2]}if((c|0)<0){break a}i[n+8>>2]=0;f=2;g=i[a+156>>2];d=i[a+160>>2]-g>>2;f:{if(c>>>0>d>>>0){Ta(a+156|0,c-d|0,n+8|0);f=i[a+176>>2];e=i[a+180>>2];break f}e=7;if(c>>>0>=d>>>0){break f}i[a+160>>2]=g+(c<<2)}g=a+184|0;e=(e-f|0)+1|0;c=i[a+188>>2];f=i[a+184>>2];d=(c-f|0)/12|0;g:{if(e>>>0>d>>>0){mg(g,e-d|0);e=i[a+188>>2];break g}if(e>>>0>=d>>>0){e=c;break g}e=f+o(e,12)|0;if((e|0)!=(c|0)){while(1){d=c+ -12|0;f=i[d>>2];if(f){i[c+ -8>>2]=f;nn(f)}c=d;if((e|0)!=(c|0)){continue}break}}i[a+188>>2]=e}h=a+196|0;f=i[a+184>>2];c=(e-f|0)/12|0;m=i[a+196>>2];d=i[a+200>>2]-m>>2;h:{if(c>>>0>d>>>0){Ra(h,c-d|0);f=i[a+184>>2];e=i[a+188>>2];break h}if(c>>>0>=d>>>0){break h}i[a+200>>2]=m+(c<<2)}if((e|0)==(f|0)){f=1;break a}c=0;while(1){if(!Pf(1,n+8|0,b)){break b}d=i[n+8>>2];e=i[a+148>>2];if(d>>>0>(i[e+4>>2]-i[e>>2]>>2>>>0)/3>>>0){break b}if(d){e=i[g>>2];q=o(c,12);f=e+q|0;m=i[f>>2];p=i[f+4>>2]-m>>2;i:{if(d>>>0>p>>>0){ye(f,d-p|0);e=i[g>>2];break i}if(d>>>0>=p>>>0){break i}i[f+4>>2]=(d<<2)+m}Qe(d,1,b,i[e+q>>2]);i[i[h>>2]+(c<<2)>>2]=d}f=1;c=c+1|0;if(c>>>0<(i[a+188>>2]-i[a+184>>2]|0)/12>>>0){continue}break}break a}f=0}J=n+16|0;return f}function Gg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;a:{b:{c:{d:{e:{f:{g:{if(i[a+92>>2]==i[a+88>>2]){break g}d=i[a+52>>2];h:{if((d|0)!=i[a+56>>2]){i[d>>2]=b;i[a+52>>2]=d+4;break h}h=i[a+48>>2];g=d-h|0;f=g>>2;c=f+1|0;if(c>>>0>=1073741824){break a}e=g>>1;c=f>>>0<536870911?e>>>0>>0?c:e:1073741823;d=0;i:{if(!c){break i}if(c>>>0>=1073741824){break b}d=Dm(c<<2)}e=d+(f<<2)|0;i[e>>2]=b;c=d+(c<<2)|0;e=e+4|0;if((g|0)>=1){pn(d,h,g)}i[a+56>>2]=c;i[a+52>>2]=e;i[a+48>>2]=d;if(!h){break h}nn(h)}i[a+84>>2]=0;e=-1;d=-1;j:{if((b|0)==-1){break j}f=i[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)!=-1){e=i[i[f>>2]+(c<<2)>>2]}c=((b>>>0)%3|0?-1:2)+b|0;if((c|0)==-1){break j}d=i[i[f>>2]+(c<<2)>>2]}c=i[a+36>>2];h=c+(e>>>3&536870908)|0;g=i[h>>2];f=1<>2]=f|g;f=a+8|0;if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0}else{c=-1}Hg(f,e,c);c=i[a+36>>2]}f=(d>>>3&536870908)+c|0;c=i[f>>2];e=1<>2]=c|e;c=a+8|0;e=-1;k:{if((b|0)==-1){break k}e=b+ -1|0;if((b>>>0)%3|0){break k}e=b+2|0}Hg(c,d,e)}e=-1;e=(b|0)!=-1?i[i[i[a+4>>2]>>2]+(b<<2)>>2]:e;f=i[a+36>>2]+(e>>>3&536870908)|0;c=i[f>>2];d=1<>2]=c|d;Hg(a+8|0,e,b)}c=i[a+84>>2];if((c|0)>2){break g}q=a+8|0;while(1){b=o(c,12)+a|0;e=b+52|0;d=i[e>>2];if((d|0)==i[b+48>>2]){c=c+1|0;if((c|0)!=3){continue}break g}d=d+ -4|0;b=i[d>>2];i[e>>2]=d;i[a+84>>2]=c;if((b|0)==-1){break g}e=i[a+24>>2];d=(b>>>0)/3|0;l:{if(i[e+(d>>>3&268435452)>>2]>>>d&1){break l}m:{while(1){g=(b>>>0)/3|0;d=(g>>>3&268435452)+e|0;i[d>>2]=i[d>>2]|1<>2]>>2]+(b<<2)>>2]:e;f=i[a+36>>2]+(e>>>3&536870908)|0;c=i[f>>2];d=1<>2]=c|d;Hg(q,e,b)}if((b|0)==-1){break m}h=i[a+4>>2];d=-1;e=-1;c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)!=-1){e=i[i[h+12>>2]+(c<<2)>>2]}b=(b-o(g,3)|0?-1:2)+b|0;if((b|0)!=-1){d=i[i[h+12>>2]+(b<<2)>>2]}g=(d|0)==-1;f=(d>>>0)/3|0;c=(e>>>0)/3|0;n:{o:{p:{q:{b=(e|0)==-1;if(!b){b=b?-1:c;b=i[i[a+24>>2]+(b>>>3&536870908)>>2]&1<>2]+(b>>>3&536870908)>>2]>>>b&1){break r}b=0;c=i[i[h>>2]+(d<<2)>>2];if(!(i[i[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){b=i[a+88>>2]+(c<<2)|0;c=i[b>>2];i[b>>2]=c+1;b=(c|0)<1?2:1}if(!(!p|(b|0)>i[a+84>>2])){b=d;e=i[a+24>>2];continue}c=o(b,12)+a|0;k=c+52|0;f=i[k>>2];m=c+56|0;s:{if((f|0)!=i[m>>2]){i[f>>2]=d;i[k>>2]=f+4;break s}h=c+48|0;n=i[h>>2];j=f-n|0;l=j>>2;g=l+1|0;if(g>>>0>=1073741824){break f}f=j>>1;f=l>>>0<536870911?f>>>0>>0?g:f:1073741823;c=0;t:{if(!f){break t}if(f>>>0>=1073741824){break e}c=Dm(f<<2)}g=c+(l<<2)|0;i[g>>2]=d;f=c+(f<<2)|0;d=g+4|0;if((j|0)>=1){pn(c,n,j)}i[h>>2]=c;i[k>>2]=d;i[m>>2]=f;if(!n){break s}nn(n)}if(i[a+84>>2]<=(b|0)){break r}i[a+84>>2]=b}if(p){break m}b=-1;if((e|0)==-1){break n}}b=i[i[i[a+4>>2]>>2]+(e<<2)>>2]}d=0;if(!(i[i[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=i[a+88>>2]+(b<<2)|0;d=i[b>>2];i[b>>2]=d+1;d=(d|0)<1?2:1}if((d|0)<=i[a+84>>2]){b=e;e=i[a+24>>2];continue}break}b=o(d,12)+a|0;l=b+52|0;c=i[l>>2];h=b+56|0;u:{if((c|0)!=i[h>>2]){i[c>>2]=e;i[l>>2]=c+4;break u}g=b+48|0;j=i[g>>2];k=c-j|0;m=k>>2;f=m+1|0;if(f>>>0>=1073741824){break d}c=k>>1;c=m>>>0<536870911?c>>>0>>0?f:c:1073741823;b=0;v:{if(!c){break v}if(c>>>0>=1073741824){break c}b=Dm(c<<2)}f=b+(m<<2)|0;i[f>>2]=e;c=b+(c<<2)|0;e=f+4|0;if((k|0)>=1){pn(b,j,k)}i[g>>2]=b;i[l>>2]=e;i[h>>2]=c;if(!j){break u}nn(j)}c=i[a+84>>2];if((c|0)<=(d|0)){break l}i[a+84>>2]=d;c=d;break l}c=i[a+84>>2]}if((c|0)<3){continue}break}}return 1}Sm();x()}Ba(12220);x()}Sm();x()}Ba(12220);x()}Ba(12220);x()}Sm();x()} - - - -function Gf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=J-80|0;J=h;a:{b:{t=i[a+4>>2];c=i[t+32>>2];u=i[c+8>>2];m=i[c+16>>2];r=i[c+12>>2];e=r;f=i[c+20>>2];c:{if((e|0)<(f|0)?1:(e|0)<=(f|0)?u>>>0<=m>>>0:0){break c}v=i[c>>2];n=j[v+m|0];e=f;p=m+1|0;if(p>>>0<1){e=e+1|0}l=c;i[c+16>>2]=p;i[c+20>>2]=e;if((r|0)<(e|0)?1:(r|0)<=(e|0)?u>>>0<=p>>>0:0){break c}p=j[p+v|0];e=f;s=m+2|0;if(s>>>0<2){e=e+1|0}i[c+16>>2]=s;i[l+20>>2]=e;l=n<<24>>24;d:{if((l|0)>=0){q=i[a+216>>2];if((i[a+220>>2]-q|0)/144>>>0<=n>>>0){break c}q=q+o(n,144)|0;if(i[q>>2]<=-1){break d}break c}if(i[a+212>>2]>-1){break c}q=a+212|0}i[q>>2]=b;e:{f:{q=k[t+36>>1];g:{if((q<<24|q<<8&16711680)>>>16>>>0>=258){if((r|0)<(e|0)?1:(r|0)<=(e|0)?u>>>0<=s>>>0:0){break c}e=j[s+v|0];m=m+3|0;if(m>>>0<3){f=f+1|0}i[c+16>>2]=m;i[c+20>>2]=f;if(e>>>0>1){break c}if(!p){break g}if((e|0)==1){break c}break f}if(p){break f}e=0}if((l|0)<=-1){c=a+184|0}else{c=i[a+216>>2]+o(n,144)|0;g[c+100|0]=0;c=c+104|0}h:{i:{switch(e|0){case 0:Hf(h+16|0,a,c);break h;case 1:break i;default:break c}}If(h+16|0,a,c)}c=i[h+16>>2];if(!c){break c}break e}if((l|0)<0){break c}e=i[t+44>>2];f=i[a+216>>2];c=Dm(80);i[c+12>>2]=0;i[c+16>>2]=0;i[c>>2]=13076;i[c+4>>2]=0;i[c+76>>2]=0;i[c+68>>2]=e;i[c+64>>2]=0;i[c+56>>2]=0;i[c+60>>2]=0;i[c+8>>2]=11956;l=c+20|0;d=l;i[d>>2]=0;i[d+4>>2]=0;r=c+28|0;d=r;i[d>>2]=0;i[d+4>>2]=0;i[c+36>>2]=0;i[c+40>>2]=0;m=c+44|0;d=m;i[d>>2]=0;i[d+4>>2]=0;i[c+52>>2]=0;d=f+o(n,144)|0;n=d+104|0;i[c+72>>2]=n;t=h+52|0;f=t;i[f>>2]=0;i[f+4>>2]=0;u=h+44|0;f=u;i[f>>2]=0;i[f+4>>2]=0;v=h+36|0;f=v;i[f>>2]=0;i[f+4>>2]=0;f=h+28|0;i[f>>2]=0;i[f+4>>2]=0;i[h+68>>2]=0;i[h+72>>2]=0;i[h+60>>2]=0;i[h+64>>2]=0;i[h+20>>2]=0;i[h+24>>2]=0;i[h+16>>2]=11956;p=d+4|0;i[h+20>>2]=p;d=i[d+68>>2];s=i[d>>2];d=i[d+4>>2];g[h+79|0]=0;Jf(h+40|0,(d-s>>2>>>0)/3|0,h+79|0);d=i[h+20>>2];s=i[d+56>>2];d=i[d+52>>2];g[h+79|0]=0;Jf(t,s-d>>2,h+79|0);i[v>>2]=c;i[h+32>>2]=e;i[f>>2]=n;i[h+24>>2]=p;i[r>>2]=c;e=i[f+4>>2];i[l>>2]=i[f>>2];i[l+4>>2]=e;f=i[h+24>>2];i[c+12>>2]=i[h+20>>2];i[c+16>>2]=f;f=c;d=i[u>>2];if(d){e=c+32|0;j:{if(d>>>0<=i[c+40>>2]<<5>>>0){l=d+ -1>>>5|0;d=i[e>>2];break j}e=i[e>>2];if(e){nn(e);i[c+40>>2]=0;i[c+32>>2]=0;i[c+36>>2]=0;d=i[h+44>>2]}if((d|0)<=-1){break b}l=d+ -1>>>5|0;e=l+1|0;d=Dm(e<<2);i[c+40>>2]=e;i[c+36>>2]=0;i[c+32>>2]=d}rn(d,i[h+40>>2],(l<<2)+4|0);d=i[h+44>>2]}else{d=0}i[f+36>>2]=d;f=c;d=i[h+56>>2];if(d){k:{if(d>>>0<=i[c+52>>2]<<5>>>0){e=d+ -1>>>5|0;d=i[m>>2];break k}e=i[m>>2];if(e){nn(e);i[c+52>>2]=0;i[c+44>>2]=0;i[c+48>>2]=0;d=i[h+56>>2]}if((d|0)<=-1){break a}e=d+ -1>>>5|0;l=e+1|0;d=Dm(l<<2);i[c+52>>2]=l;i[c+48>>2]=0;i[c+44>>2]=d}rn(d,i[h+52>>2],(e<<2)+4|0);d=i[h+56>>2]}else{d=0}i[f+48>>2]=d;Ma(c+56|0,i[h+64>>2],i[h+68>>2]);i[h+16>>2]=11956;f=i[h+64>>2];if(f){i[h+68>>2]=f;nn(f)}i[h+16>>2]=12208;f=i[h+52>>2];if(f){nn(f)}f=i[h+40>>2];if(!f){break e}nn(f)}f=Dm(64);i[h+8>>2]=c;$b(f,h+8|0);c=i[h+8>>2];i[h+8>>2]=0;if(c){M[i[i[c>>2]+4>>2]](c)}if((b|0)>=0){a=i[a+4>>2];d=a+8|0;c=i[a+12>>2];n=i[a+8>>2];e=c-n>>2;l:{if((e|0)>(b|0)){break l}l=b+1|0;if(e>>>0<=b>>>0){Kf(d,l-e|0);break l}if(l>>>0>=e>>>0){break l}l=n+(l<<2)|0;if((l|0)!=(c|0)){while(1){c=c+ -4|0;e=i[c>>2];i[c>>2]=0;if(e){M[i[i[e>>2]+4>>2]](e)}if((c|0)!=(l|0)){continue}break}}i[a+12>>2]=l}b=i[d>>2]+(b<<2)|0;a=i[b>>2];i[b>>2]=f;d=1;if(!a){break c}M[i[i[a>>2]+4>>2]](a);break c}M[i[i[f>>2]+4>>2]](f);d=0}J=h+80|0;return d|0}Sm();x()}Sm();x()}function Ic(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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}g=0;d=(e&1073741823)!=(e|0)?-1:e<<2;n=qn(Dm(d),0,d);s=qn(Dm(d),0,d);h=i[a+8>>2];b:{if((h|0)<1){break b}while(1){d=g<<2;f=i[d+n>>2];h=i[a+16>>2];c:{if((f|0)>(h|0)){k=i[a+32>>2];i[d+k>>2]=h;break c}k=i[a+32>>2];d=d+k|0;h=i[a+12>>2];if((f|0)<(h|0)){i[d>>2]=h;break c}i[d>>2]=f}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}if((h|0)<1){break b}d=0;while(1){g=d<<2;f=g+c|0;g=i[b+g>>2]+i[g+k>>2]|0;i[f>>2]=g;d:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break d}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;h=i[a+8>>2];if((d|0)<(h|0)){continue}break}}d=i[a+56>>2];f=i[d+4>>2];t=i[d>>2];d=f-t|0;if((d|0)>=5){p=i[a+48>>2];f=t-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;v=d>>>0>2?d:2;w=d>>>0>1?d:1;y=e<<2;z=i[a+52>>2];m=1;while(1){e:{f:{g:{if((m|0)!=(w|0)){f=i[(m<<2)+t>>2];u=(e|0)<1;if(!u){qn(n,0,y)}if((f|0)==-1){f=o(e,m);break f}A=i[p>>2];k=0;d=f;while(1){h:{if(i[A+(d>>>3&536870908)>>2]>>>d&1){break h}g=i[i[i[p+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break h}l=i[z>>2];j=i[p+28>>2];r=i[l+(i[j+(g<<2)>>2]<<2)>>2];if((r|0)>=(m|0)){break h}q=g+1|0;q=i[l+(i[j+(((q>>>0)%3|0?q:g+ -2|0)<<2)>>2]<<2)>>2];if((q|0)>=(m|0)){break h}g=i[l+(i[j+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(m|0)){break h}i:{if(u){break i}j=o(e,g);l=o(e,q);r=o(e,r);g=0;while(1){i[s+(g<<2)>>2]=(i[(g+j<<2)+c>>2]+i[(g+l<<2)+c>>2]|0)-i[(g+r<<2)+c>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}g=0;if((e|0)<=0){break i}while(1){j=g<<2;l=j+n|0;i[l>>2]=i[l>>2]+i[j+s>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}}k=k+1|0}g=-1;d=((d>>>0)%3|0?-1:2)+d|0;j:{if((d|0)==-1|i[i[p>>2]+(d>>>3&536870908)>>2]>>>d&1){break j}d=i[i[i[p+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break j}if((d>>>0)%3|0){g=d+ -1|0;break j}g=d+2|0}d=(f|0)==(g|0)?-1:g;if((d|0)!=-1){continue}break}f=o(e,m);if(!k){break f}g=0;if((e|0)<=0){break g}while(1){d=(g<<2)+n|0;i[d>>2]=i[d>>2]/(k|0);g=g+1|0;if((g|0)!=(e|0)){continue}break}break g}Tm();x()}if((h|0)<1){break e}g=0;while(1){d=g<<2;h=i[d+n>>2];j=i[a+16>>2];k:{if((h|0)>(j|0)){k=i[a+32>>2];i[d+k>>2]=j;break k}k=i[a+32>>2];d=d+k|0;j=i[a+12>>2];if((h|0)<(j|0)){i[d>>2]=j;break k}i[d>>2]=h}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}f=f<<2;j=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[f>>2]=g;l:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break l}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;h=i[a+8>>2];if((d|0)<(h|0)){continue}break}break e}if((h|0)<1){break e}j=(o(m+ -1|0,e)<<2)+c|0;g=0;while(1){d=g<<2;h=i[d+j>>2];l=i[a+16>>2];m:{if((h|0)>(l|0)){k=i[a+32>>2];i[d+k>>2]=l;break m}k=i[a+32>>2];d=d+k|0;l=i[a+12>>2];if((h|0)<(l|0)){i[d>>2]=l;break m}i[d>>2]=h}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}f=f<<2;j=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[f>>2]=g;n:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break n}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;h=i[a+8>>2];if((d|0)<(h|0)){continue}break}}m=m+1|0;if((v|0)!=(m|0)){continue}break}}nn(s);nn(n);return 1}function yc(a,b,c,d,e,f){var g=0,h=0,j=0,k=0,l=0;a:{b:{c:{d:{e:{f:{g:{switch(b+ -1|0){case 0:b=Dm(60);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break f}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=4748;break a;case 1:b=Dm(60);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break e}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=5172;break a;case 3:b=Dm(112);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break d}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=5396;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=0;i[b+92>>2]=0;i[b+96>>2]=0;i[b+100>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;break a;case 2:b=Dm(92);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];g=i[d+12>>2];h=i[d+16>>2];j=i[d+20>>2];k=i[d>>2];l=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=h;i[b+28>>2]=j;i[b+16>>2]=c;i[b+20>>2]=g;i[b+8>>2]=k;i[b+12>>2]=l;h=i[d+24>>2];g=i[d+28>>2]-h|0;if(g){d=g>>2;if(d>>>0>=1073741824){break c}c=Dm(g);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((g|0)>=1){c=pn(c,h,g)+g|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=5632;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=f;break a;case 4:b=Dm(104);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break b}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=e+8|0;d=i[c>>2];f=i[c+4>>2];i[b+84>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=5848;i[b+52>>2]=d;i[b+56>>2]=f;d=i[e+4>>2];i[b+88>>2]=i[e>>2];i[b+92>>2]=d;d=i[c+4>>2];i[b+96>>2]=i[c>>2];i[b+100>>2]=d;break a;case 5:b=Dm(128);rd(b,c,d,e);break a;default:break g}}i[a>>2]=0;return}Sm();x()}Sm();x()}Sm();x()}Sm();x()}Sm();x()}i[a>>2]=b}function xc(a,b,c,d,e,f){var g=0,h=0,j=0,k=0,l=0;a:{b:{c:{d:{e:{f:{g:{switch(b+ -1|0){case 0:b=Dm(60);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break f}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=2380;break a;case 1:b=Dm(60);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break e}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=3144;break a;case 3:b=Dm(112);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break d}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=3380;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=0;i[b+92>>2]=0;i[b+96>>2]=0;i[b+100>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;break a;case 2:b=Dm(92);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];g=i[d+12>>2];h=i[d+16>>2];j=i[d+20>>2];k=i[d>>2];l=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=h;i[b+28>>2]=j;i[b+16>>2]=c;i[b+20>>2]=g;i[b+8>>2]=k;i[b+12>>2]=l;h=i[d+24>>2];g=i[d+28>>2]-h|0;if(g){d=g>>2;if(d>>>0>=1073741824){break c}c=Dm(g);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((g|0)>=1){c=pn(c,h,g)+g|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=3628;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=f;break a;case 4:b=Dm(104);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break b}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=e+8|0;d=i[c>>2];f=i[c+4>>2];i[b+84>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=3856;i[b+52>>2]=d;i[b+56>>2]=f;d=i[e+4>>2];i[b+88>>2]=i[e>>2];i[b+92>>2]=d;d=i[c+4>>2];i[b+96>>2]=i[c>>2];i[b+100>>2]=d;break a;case 5:b=Dm(128);zc(b,c,d,e);break a;default:break g}}i[a>>2]=0;return}Sm();x()}Sm();x()}Sm();x()}Sm();x()}Sm();x()}i[a>>2]=b}function Id(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;f=J-96|0;J=f;e=i[a+16>>2];g[f+92|0]=1;i[f+88>>2]=b;i[f+84>>2]=b;i[f+80>>2]=e;d=-1;d=(b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:d;h=i[a+20>>2];e=i[h>>2];a:{b:{if(i[h+4>>2]-e>>2>>>0>d>>>0){e=i[i[a+8>>2]+(i[e+(d<<2)>>2]<<2)>>2];d=i[a+4>>2];if(!j[d+84|0]){e=i[i[d+68>>2]+(e<<2)>>2]}i[f+72>>2]=0;i[f+76>>2]=0;h=f- -64|0;i[h>>2]=0;i[h+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;gd(d,e,g[d+24|0],f+56|0);if((b|0)!=-1){d=b+1|0;h=(d>>>0)%3|0?d:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;n=f+48|0;o=f+40|0;while(1){e=h;d=m;c:{if(!i[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b+ -2|0;d=b+ -1|0;if((b>>>0)%3|0){break c}d=b+2|0}b=-1;b=(e|0)!=-1?i[i[i[a+16>>2]>>2]+(e<<2)>>2]:b;k=i[a+20>>2];e=i[k>>2];if(i[k+4>>2]-e>>2>>>0<=b>>>0){break b}e=i[i[a+8>>2]+(i[e+(b<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}i[n>>2]=0;i[n+4>>2]=0;i[o>>2]=0;i[o+4>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;gd(b,e,g[b+24|0],f+32|0);b=-1;b=(d|0)!=-1?i[i[i[a+16>>2]>>2]+(d<<2)>>2]:b;e=i[a+20>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0<=b>>>0){break a}d=i[i[a+8>>2]+(i[d+(b<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;k=f+16|0;i[k>>2]=0;i[k+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;gd(b,d,g[b+24|0],f+8|0);d=i[f+8>>2];b=i[f+56>>2];s=d-b|0;y=i[f+60>>2];t=i[f+12>>2]-(y+(d>>>0>>0)|0)|0;z=i[f+40>>2];d=i[f+64>>2];D=z-d|0;A=i[f+68>>2];z=i[f+44>>2]-(A+(z>>>0>>0)|0)|0;B=Gn(s,t,D,z);C=l-B|0;u=u-(L+(l>>>0>>0)|0)|0;l=i[k>>2];B=l-d|0;k=i[k+4>>2]-((l>>>0>>0)+A|0)|0;l=i[f+32>>2];A=l-b|0;y=i[f+36>>2]-((l>>>0>>0)+y|0)|0;d=Gn(B,k,A,y);l=d+C|0;b=L+u|0;b=l>>>0>>0?b+1|0:b;u=b;E=p;w=s;F=t;b=i[f+48>>2];p=i[f+72>>2];d=p;t=b-d|0;s=i[f+76>>2];C=i[f+52>>2]-(s+(b>>>0>>0)|0)|0;w=Gn(w,F,t,C);d=E+w|0;b=L+q|0;b=d>>>0>>0?b+1|0:b;q=i[e>>2];w=q-p|0;e=i[e+4>>2]-((q>>>0

>>0)+s|0)|0;q=Gn(w,e,A,y);p=d-q|0;q=b-(L+(d>>>0>>0)|0)|0;b=Gn(B,k,t,C);d=r-b|0;b=v-(L+(r>>>0>>0)|0)|0;v=Gn(w,e,D,z);r=v+d|0;b=L+b|0;b=r>>>0>>0?b+1|0:b;v=b;Jd(f+80|0);b=i[f+88>>2];if((b|0)!=-1){continue}break}}d=v;b=d>>31;d=d>>31;h=b;b=v+b|0;m=d+r|0;if(m>>>0>>0){b=b+1|0}o=d^m;n=b^h;t=-1;e=2147483647;d=q;b=d>>31;d=d>>31;m=b;b=q+b|0;k=d+p|0;if(k>>>0>>0){b=b+1|0}d=d^k;b=b^m;h=b;m=d^-1;b=b^2147483647;d:{if(!i[a+28>>2]){if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break d}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}d=b;h=a;b=u;e=b>>31;o=b>>31;b=o+b|0;k=e+l|0;if(k>>>0>>0){b=b+1|0}e=e^k;m=b^o;n=e+h|0;b=n;h=m^2147483647;a=(h|0)==(d|0)&a>>>0>(e^-1)>>>0|d>>>0>h>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;l=Hn(l,u,a,b);p=Hn(p,q,a,b);r=Hn(r,v,a,b);break d}e:{if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break e}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}m=b;n=a;d=b;h=u;b=h>>31;h=h>>31;k=b;b=u+b|0;s=h+l|0;if(s>>>0>>0){b=b+1|0}h=h^s;b=b^k;o=b;b=b^2147483647;if((b|0)==(d|0)&n>>>0>(h^-1)>>>0|d>>>0>b>>>0){break e}b=m+o|0;d=a+h|0;if(d>>>0>>0){b=b+1|0}t=d;e=b;if(!b&d>>>0<536870913|b>>>0<0){break d}}a=(e&536870911)<<3|t>>>29;b=e>>>29|0;l=Hn(l,u,a,b);p=Hn(p,q,a,b);r=Hn(r,v,a,b)}i[c+8>>2]=l;i[c+4>>2]=p;i[c>>2]=r;J=f+96|0;return}Tm();x()}Tm();x()}Tm();x()}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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}g=0;d=(e&1073741823)!=(e|0)?-1:e<<2;q=qn(Dm(d),0,d);s=qn(Dm(d),0,d);h=i[a+8>>2];b:{if((h|0)<1){break b}while(1){d=g<<2;f=i[d+q>>2];h=i[a+16>>2];c:{if((f|0)>(h|0)){j=i[a+32>>2];i[d+j>>2]=h;break c}j=i[a+32>>2];d=d+j|0;h=i[a+12>>2];if((f|0)<(h|0)){i[d>>2]=h;break c}i[d>>2]=f}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}if((h|0)<1){break b}f=0;while(1){g=f<<2;d=g+c|0;g=i[b+g>>2]+i[g+j>>2]|0;i[d>>2]=g;d:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break d}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;h=i[a+8>>2];if((f|0)<(h|0)){continue}break}}d=i[a+56>>2];f=i[d+4>>2];t=i[d>>2];d=f-t|0;if((d|0)>=5){u=i[a+48>>2];f=t-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;y=d>>>0>2?d:2;z=d>>>0>1?d:1;A=e<<2;B=i[a+52>>2];m=1;while(1){e:{f:{g:{if((m|0)!=(z|0)){f=i[(m<<2)+t>>2];v=(e|0)<1;if(!v){qn(q,0,A)}if((f|0)==-1){d=o(e,m);break f}l=i[u+12>>2];k=0;d=f;while(1){g=i[l+(d<<2)>>2];h:{if((g|0)==-1){break h}j=-1;r=i[B>>2];n=i[u>>2];w=i[r+(i[n+(g<<2)>>2]<<2)>>2];p=g+1|0;p=(p>>>0)%3|0?p:g+ -2|0;if((p|0)!=-1){p=i[n+(p<<2)>>2]}else{p=-1}g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){j=i[n+(g<<2)>>2]}if((w|0)>=(m|0)){break h}g=i[(p<<2)+r>>2];if((g|0)>=(m|0)){break h}j=i[r+(j<<2)>>2];if((j|0)>=(m|0)){break h}i:{if(v){break i}j=o(e,j);n=o(e,g);r=o(e,w);g=0;while(1){i[s+(g<<2)>>2]=(i[(g+j<<2)+c>>2]+i[(g+n<<2)+c>>2]|0)-i[(g+r<<2)+c>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}g=0;if((e|0)<=0){break i}while(1){j=g<<2;n=j+q|0;i[n>>2]=i[n>>2]+i[j+s>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}}k=k+1|0}d=((d>>>0)%3|0?-1:2)+d|0;g=-1;j:{if((d|0)==-1){break j}d=i[l+(d<<2)>>2];g=-1;if((d|0)==-1){break j}g=d+ -1|0;if((d>>>0)%3|0){break j}g=d+2|0}d=(f|0)==(g|0)?-1:g;if((d|0)!=-1){continue}break}d=o(e,m);if(!k){break f}g=0;if((e|0)<=0){break g}while(1){f=(g<<2)+q|0;i[f>>2]=i[f>>2]/(k|0);g=g+1|0;if((g|0)!=(e|0)){continue}break}break g}Tm();x()}if((h|0)<1){break e}g=0;while(1){f=g<<2;h=i[f+q>>2];k=i[a+16>>2];k:{if((h|0)>(k|0)){j=i[a+32>>2];i[f+j>>2]=k;break k}j=i[a+32>>2];f=f+j|0;k=i[a+12>>2];if((h|0)<(k|0)){i[f>>2]=k;break k}i[f>>2]=h}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}f=0;if((h|0)<1){break e}d=d<<2;k=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+k|0;g=i[g+l>>2]+i[g+j>>2]|0;i[d>>2]=g;l:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break l}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;h=i[a+8>>2];if((f|0)<(h|0)){continue}break}break e}if((h|0)<1){break e}k=(o(m+ -1|0,e)<<2)+c|0;g=0;while(1){f=g<<2;h=i[f+k>>2];l=i[a+16>>2];m:{if((h|0)>(l|0)){j=i[a+32>>2];i[f+j>>2]=l;break m}j=i[a+32>>2];f=f+j|0;l=i[a+12>>2];if((h|0)<(l|0)){i[f>>2]=l;break m}i[f>>2]=h}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}f=0;if((h|0)<1){break e}d=d<<2;k=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+k|0;g=i[g+l>>2]+i[g+j>>2]|0;i[d>>2]=g;n:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break n}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;h=i[a+8>>2];if((f|0)<(h|0)){continue}break}}m=m+1|0;if((y|0)!=(m|0)){continue}break}}nn(s);nn(q);return 1}function od(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;f=J-96|0;J=f;d=i[a+16>>2];g[f+92|0]=1;i[f+88>>2]=b;i[f+84>>2]=b;i[f+80>>2]=d;h=i[a+20>>2];e=i[h>>2];a:{b:{d=i[i[d+28>>2]+(b<<2)>>2];if(i[h+4>>2]-e>>2>>>0>d>>>0){d=i[i[a+8>>2]+(i[e+(d<<2)>>2]<<2)>>2];e=i[a+4>>2];if(!j[e+84|0]){d=i[i[e+68>>2]+(d<<2)>>2]}i[f+72>>2]=0;i[f+76>>2]=0;h=f- -64|0;i[h>>2]=0;i[h+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;gd(e,d,g[e+24|0],f+56|0);if((b|0)!=-1){d=b+1|0;h=(d>>>0)%3|0?d:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;n=f+48|0;o=f+40|0;while(1){e=h;d=m;c:{if(!i[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b+ -2|0;d=b+ -1|0;if((b>>>0)%3|0){break c}d=b+2|0}k=i[a+20>>2];b=i[k>>2];e=i[i[i[a+16>>2]+28>>2]+(e<<2)>>2];if(i[k+4>>2]-b>>2>>>0<=e>>>0){break b}e=i[i[a+8>>2]+(i[b+(e<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}i[n>>2]=0;i[n+4>>2]=0;i[o>>2]=0;i[o+4>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;gd(b,e,g[b+24|0],f+32|0);e=i[a+20>>2];b=i[e>>2];d=i[i[i[a+16>>2]+28>>2]+(d<<2)>>2];if(i[e+4>>2]-b>>2>>>0<=d>>>0){break a}e=i[i[a+8>>2]+(i[b+(d<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}k=f+24|0;d=k;i[d>>2]=0;i[d+4>>2]=0;r=f+16|0;d=r;i[d>>2]=0;i[d+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;gd(b,e,g[b+24|0],f+8|0);d=i[f+8>>2];b=i[f+56>>2];t=d-b|0;y=i[f+60>>2];e=i[f+12>>2]-(y+(d>>>0>>0)|0)|0;z=i[f+40>>2];d=i[f+64>>2];D=z-d|0;A=i[f+68>>2];z=i[f+44>>2]-(A+(z>>>0>>0)|0)|0;B=Gn(t,e,D,z);C=l-B|0;u=u-(L+(l>>>0>>0)|0)|0;l=i[r>>2];B=l-d|0;r=i[r+4>>2]-((l>>>0>>0)+A|0)|0;l=i[f+32>>2];A=l-b|0;y=i[f+36>>2]-((l>>>0>>0)+y|0)|0;d=Gn(B,r,A,y);l=d+C|0;b=L+u|0;b=l>>>0>>0?b+1|0:b;u=b;E=p;w=t;F=e;b=i[f+48>>2];p=i[f+72>>2];d=p;e=b-d|0;t=i[f+76>>2];C=i[f+52>>2]-(t+(b>>>0>>0)|0)|0;w=Gn(w,F,e,C);d=E+w|0;b=L+q|0;b=d>>>0>>0?b+1|0:b;q=i[k>>2];w=q-p|0;k=i[k+4>>2]-((q>>>0

>>0)+t|0)|0;q=Gn(w,k,A,y);p=d-q|0;q=b-(L+(d>>>0>>0)|0)|0;b=Gn(B,r,e,C);d=s-b|0;b=v-(L+(s>>>0>>0)|0)|0;v=Gn(w,k,D,z);s=v+d|0;b=L+b|0;b=s>>>0>>0?b+1|0:b;v=b;qd(f+80|0);b=i[f+88>>2];if((b|0)!=-1){continue}break}}d=v;b=d>>31;d=d>>31;h=b;b=v+b|0;m=d+s|0;if(m>>>0>>0){b=b+1|0}o=d^m;n=b^h;r=-1;e=2147483647;d=q;b=d>>31;d=d>>31;m=b;b=q+b|0;k=d+p|0;if(k>>>0>>0){b=b+1|0}d=d^k;b=b^m;h=b;m=d^-1;b=b^2147483647;d:{if(!i[a+28>>2]){if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break d}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}d=b;h=a;b=u;e=b>>31;o=b>>31;b=o+b|0;k=e+l|0;if(k>>>0>>0){b=b+1|0}e=e^k;m=b^o;n=e+h|0;b=n;h=m^2147483647;a=(h|0)==(d|0)&a>>>0>(e^-1)>>>0|d>>>0>h>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;l=Hn(l,u,a,b);p=Hn(p,q,a,b);s=Hn(s,v,a,b);break d}e:{if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break e}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}m=b;n=a;d=b;h=u;b=h>>31;h=h>>31;k=b;b=u+b|0;t=h+l|0;if(t>>>0>>0){b=b+1|0}h=h^t;b=b^k;o=b;b=b^2147483647;if((b|0)==(d|0)&n>>>0>(h^-1)>>>0|d>>>0>b>>>0){break e}b=m+o|0;d=a+h|0;if(d>>>0>>0){b=b+1|0}r=d;e=b;if(!b&d>>>0<536870913|b>>>0<0){break d}}a=(e&536870911)<<3|r>>>29;b=e>>>29|0;l=Hn(l,u,a,b);p=Hn(p,q,a,b);s=Hn(s,v,a,b)}i[c+8>>2]=l;i[c+4>>2]=p;i[c>>2]=s;J=f+96|0;return}Tm();x()}Tm();x()}Tm();x()}function nn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;a:{if(!a){break a}d=a+ -8|0;b=i[a+ -4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=i[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=i[d+8>>2];b=b>>>3|0;c=i[d+12>>2];if((c|0)==(e|0)){j=17328,k=i[4332]&Kn(b),i[j>>2]=k;break b}i[e+12>>2]=c;i[c+8>>2]=e;break b}h=i[d+24>>2];b=i[d+12>>2];c:{if((b|0)!=(d|0)){c=i[d+8>>2];i[c+12>>2]=b;i[b+8>>2]=c;break c}d:{e=d+20|0;c=i[e>>2];if(c){break d}e=d+16|0;c=i[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=i[e>>2];if(c){continue}e=b+16|0;c=i[b+16>>2];if(c){continue}break}i[g>>2]=0}if(!h){break b}e=i[d+28>>2];c=(e<<2)+17632|0;e:{if(i[c>>2]==(d|0)){i[c>>2]=b;if(b){break e}j=17332,k=i[4333]&Kn(e),i[j>>2]=k;break b}i[h+(i[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}i[b+24>>2]=h;c=i[d+16>>2];if(c){i[b+16>>2]=c;i[c+24>>2]=b}c=i[d+20>>2];if(!c){break b}i[b+20>>2]=c;i[c+24>>2]=b;break b}b=i[f+4>>2];if((b&3)!=3){break b}i[4334]=a;i[f+4>>2]=b&-2;i[d+4>>2]=a|1;i[a+d>>2]=a;return}if(f>>>0<=d>>>0){break a}b=i[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if((f|0)==i[4338]){i[4338]=d;a=i[4335]+a|0;i[4335]=a;i[d+4>>2]=a|1;if(i[4337]!=(d|0)){break a}i[4334]=0;i[4337]=0;return}if((f|0)==i[4337]){i[4337]=d;a=i[4334]+a|0;i[4334]=a;i[d+4>>2]=a|1;i[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){c=i[f+8>>2];b=b>>>3|0;e=i[f+12>>2];if((c|0)==(e|0)){j=17328,k=i[4332]&Kn(b),i[j>>2]=k;break g}i[c+12>>2]=e;i[e+8>>2]=c;break g}h=i[f+24>>2];b=i[f+12>>2];h:{if((f|0)!=(b|0)){c=i[f+8>>2];i[c+12>>2]=b;i[b+8>>2]=c;break h}i:{e=f+20|0;c=i[e>>2];if(c){break i}e=f+16|0;c=i[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=i[e>>2];if(c){continue}e=b+16|0;c=i[b+16>>2];if(c){continue}break}i[g>>2]=0}if(!h){break g}e=i[f+28>>2];c=(e<<2)+17632|0;j:{if((f|0)==i[c>>2]){i[c>>2]=b;if(b){break j}j=17332,k=i[4333]&Kn(e),i[j>>2]=k;break g}i[h+((f|0)==i[h+16>>2]?16:20)>>2]=b;if(!b){break g}}i[b+24>>2]=h;c=i[f+16>>2];if(c){i[b+16>>2]=c;i[c+24>>2]=b}c=i[f+20>>2];if(!c){break g}i[b+20>>2]=c;i[c+24>>2]=b}i[d+4>>2]=a|1;i[a+d>>2]=a;if(i[4337]!=(d|0)){break f}i[4334]=a;return}i[f+4>>2]=b&-2;i[d+4>>2]=a|1;i[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+17368|0;c=i[4332];a=1<>2]}i[b+8>>2]=d;i[a+12>>2]=d;i[d+12>>2]=b;i[d+8>>2]=a;return}e=31;i[d+16>>2]=0;i[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}i[d+28>>2]=e;g=(e<<2)+17632|0;l:{m:{c=i[4333];b=1<>2]=d;i[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=i[g>>2];while(1){c=b;if((i[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=(c+(b&4)|0)+16|0;b=i[g>>2];if(b){continue}break}i[g>>2]=d;i[d+24>>2]=c}i[d+12>>2]=d;i[d+8>>2]=d;break l}a=i[c+8>>2];i[a+12>>2]=d;i[c+8>>2]=d;i[d+24>>2]=0;i[d+12>>2]=c;i[d+8>>2]=a}a=i[4340]+ -1|0;i[4340]=a;if(a){break a}d=17784;while(1){a=i[d>>2];d=a+8|0;if(a){continue}break}i[4340]=-1}}function Rk(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;i[a+56>>2]=i[a+52>>2];i[a+44>>2]=i[a+40>>2];a:{b:{c:{e=i[a+64>>2];d=i[e+24>>2];if((d|0)!=i[e+28>>2]){n=a+40|0;o=a+52|0;while(1){e=c;j=i[(l<<2)+d>>2];d:{if((j|0)==-1){break d}c=i[a+56>>2];e:{if((c|0)!=i[a+60>>2]){i[c>>2]=e;i[a+56>>2]=c+4;break e}h=i[o>>2];g=c-h|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break c}b=g>>1;d=f>>>0<536870911?b>>>0>>0?d:b:1073741823;c=0;f:{if(!d){break f}if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=c+(f<<2)|0;i[b>>2]=e;d=c+(d<<2)|0;b=b+4|0;if((g|0)>=1){pn(c,h,g)}i[a+60>>2]=d;i[a+56>>2]=b;i[a+52>>2]=c;if(!h){break e}nn(h)}g:{if(!(i[i[a+12>>2]+(l>>>3&536870908)>>2]>>>l&1)){break g}c=j+1|0;c=(c>>>0)%3|0?c:j+ -2|0;if((c|0)==-1|i[i[a>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[a+64>>2]+12>>2]+(c<<2)>>2];if((b|0)==-1){break g}c=b+1|0;d=(c>>>0)%3|0?c:b+ -2|0;if((d|0)==-1){break g}while(1){c=d+1|0;j=d;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1|i[i[a>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[a+64>>2]+12>>2]+(c<<2)>>2];if((b|0)==-1){break g}c=b+1|0;d=(c>>>0)%3|0?c:b+ -2|0;if((d|0)!=-1){continue}break}}i[i[a+28>>2]+(j<<2)>>2]=e;c=i[a+44>>2];h:{if((c|0)!=i[a+48>>2]){i[c>>2]=j;i[a+44>>2]=c+4;break h}h=i[n>>2];g=c-h|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break b}b=g>>1;d=f>>>0<536870911?b>>>0>>0?d:b:1073741823;c=0;i:{if(!d){break i}if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=c+(f<<2)|0;i[b>>2]=j;d=c+(d<<2)|0;b=b+4|0;if((g|0)>=1){pn(c,h,g)}i[a+48>>2]=d;i[a+44>>2]=b;i[a+40>>2]=c;if(!h){break h}nn(h)}c=e+1|0;b=((j>>>0)%3|0?-1:2)+j|0;if((b|0)==-1){break d}b=i[i[i[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break d}d=b+((b>>>0)%3|0?-1:2)|0;if((d|0)==-1|(d|0)==(j|0)){break d}while(1){b=d+1|0;b=(b>>>0)%3|0?b:d+ -2|0;if(i[i[a>>2]+(b>>>3&536870908)>>2]>>>b&1){e=i[a+56>>2];j:{if((e|0)!=i[a+60>>2]){i[e>>2]=c;i[a+56>>2]=e+4;break j}k=i[o>>2];h=e-k|0;g=h>>2;f=g+1|0;if(f>>>0>=1073741824){break c}b=h>>1;f=g>>>0<536870911?b>>>0>>0?f:b:1073741823;e=0;k:{if(!f){break k}if(f>>>0>=1073741824){break a}e=Dm(f<<2)}b=e+(g<<2)|0;i[b>>2]=c;f=e+(f<<2)|0;b=b+4|0;if((h|0)>=1){pn(e,k,h)}i[a+60>>2]=f;i[a+56>>2]=b;i[a+52>>2]=e;if(!k){break j}nn(k)}b=c+1|0;e=i[a+44>>2];l:{if((e|0)!=i[a+48>>2]){i[e>>2]=d;i[a+44>>2]=e+4;break l}m=i[n>>2];k=e-m|0;h=k>>2;g=h+1|0;if(g>>>0>=1073741824){break b}f=k>>1;g=h>>>0<536870911?f>>>0>>0?g:f:1073741823;e=0;m:{if(!g){break m}if(g>>>0>=1073741824){break a}e=Dm(g<<2)}f=e+(h<<2)|0;i[f>>2]=d;g=e+(g<<2)|0;f=f+4|0;if((k|0)>=1){pn(e,m,k)}i[a+48>>2]=g;i[a+44>>2]=f;i[a+40>>2]=e;if(!m){break l}nn(m)}e=c;c=b}i[i[a+28>>2]+(d<<2)>>2]=e;b=((d>>>0)%3|0?-1:2)+d|0;if((b|0)==-1){break d}b=i[i[i[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break d}d=b+((b>>>0)%3|0?-1:2)|0;if((d|0)==-1){break d}if((d|0)!=(j|0)){continue}break}}e=i[a+64>>2];d=i[e+24>>2];l=l+1|0;if(l>>>0>2]-d>>2>>>0){continue}break}}return}Sm();x()}Sm();x()}Ba(14480);x()}function Xg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(i[i[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=i[a+48>>2];i[a+52>>2]=c;a:{if((c|0)!=i[a+56>>2]){i[c>>2]=b;i[a+52>>2]=c+4;break a}f=Dm(4);i[f>>2]=b;e=f+4|0;i[a+56>>2]=e;i[a+52>>2]=e;i[a+48>>2]=f;if(!c){break a}nn(c)}e=i[i[a+4>>2]+28>>2];c=b+1|0;f=(c>>>0)%3|0?c:b+ -2|0;c=i[e+(f<<2)>>2];if((c|0)==-1){return 0}h=(b-o(d,3)|0?-1:2)+b|0;d=i[e+(h<<2)>>2];if((d|0)==-1){return 0}b=i[a+36>>2];e=b+(c>>>3&536870908)|0;g=i[e>>2];j=1<>2]=g|j;Hg(a+8|0,c,f);b=i[a+36>>2]}b=(d>>>3&536870908)+b|0;c=i[b>>2];f=1<>2]=c|f;Hg(a+8|0,d,h)}c=i[a+52>>2];if((c|0)==i[a+48>>2]){return 1}l=a+48|0;m=a+8|0;while(1){c=c+ -4|0;b=i[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}f=i[a+24>>2]+(d>>>3&268435452)|0;e=i[f>>2];d=1<>2]=d|e;f=i[a+4>>2];c=i[i[f+28>>2]+(b<<2)>>2];if((c|0)==-1){return 0}while(1){d=b;d:{b=i[a+36>>2]+(c>>>3&536870908)|0;e=i[b>>2];h=1<>2]+(c<<2)>>2];if((g|0)!=-1){f:{j=g+1|0;g=(j>>>0)%3|0?j:g+ -2|0;if((g|0)==-1|i[i[f>>2]+(g>>>3&536870908)>>2]>>>g&1){break f}f=i[i[i[f+64>>2]+12>>2]+(g<<2)>>2];if((f|0)==-1){break f}i[b>>2]=e|h;Hg(m,c,d);b=f+1|0;if((((b>>>0)%3|0?b:f+ -2|0)|0)==-1){break e}b=-1;f=i[a+4>>2];g:{if((d|0)==-1){break g}c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1|i[i[f>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[f+64>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];j=c>>>5|0;e=i[d+(j<<2)>>2];break d}}i[b>>2]=e|h;Hg(m,c,d)}h:{i:{if((d|0)==-1){break i}f=i[a+4>>2];b=-1;e=d+1|0;e=(e>>>0)%3|0?e:d+ -2|0;c=-1;j:{if((e|0)==-1){break j}c=-1;if(i[i[f>>2]+(e>>>3&536870908)>>2]>>>e&1){break j}c=i[i[i[f+64>>2]+12>>2]+(e<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if(!((d|0)==-1|i[i[f>>2]+(d>>>3&536870908)>>2]>>>d&1)){b=i[i[i[f+64>>2]+12>>2]+(d<<2)>>2]}k=(b|0)==-1;h=k?-1:(b>>>0)/3|0;e=(c>>>0)/3|0;g=(c|0)==-1;if(!g){d=i[a+24>>2];g=g?-1:e;j=g>>>5|0;e=i[d+(j<<2)>>2];g=1<>2];j=h>>>5|0;e=i[d+(j<<2)>>2];if(!(g&e)){break d}}c=i[a+52>>2]+ -4|0;i[a+52>>2]=c;break b}if(k){b=c;break d}if(i[(h>>>3&536870908)+d>>2]>>>h&1){b=c;break d}d=i[a+52>>2];i[d+ -4>>2]=b;if((d|0)!=i[a+56>>2]){i[d>>2]=c;c=d+4|0;break c}k:{b=d;d=i[l>>2];f=b-d|0;h=f>>2;e=h+1|0;if(e>>>0<1073741824){g=f>>1;e=h>>>0<536870911?g>>>0>>0?e:g:1073741823;b=0;l:{if(!e){break l}if(e>>>0>=1073741824){break k}b=Dm(e<<2)}h=b+(h<<2)|0;i[h>>2]=c;e=b+(e<<2)|0;c=h+4|0;if((f|0)>=1){pn(b,d,f)}i[a+56>>2]=e;i[a+52>>2]=c;i[a+48>>2]=b;if(!d){break b}nn(d);c=i[a+52>>2];break b}Sm();x()}Ba(12220);x()}i[(j<<2)+d>>2]=e|g;c=i[i[f+28>>2]+(b<<2)>>2];if((c|0)!=-1){continue}break}return 0}i[a+52>>2]=c}if(i[l>>2]!=(c|0)){continue}break}}return 1}function Gb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,k=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=p(0);e=J-32|0;J=e;a:{b:{c:{if(!(i[a+60>>2]!=i[a- -64>>2]|i[a+48>>2]!=i[a+52>>2])){b=1;break c}b=1;if((M[i[i[a>>2]+24>>2]](a)|0)<1){break c}d:{while(1){e:{b=M[i[i[a>>2]+20>>2]](a,u)|0;f:{g:{h:{f=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(b<<2)>>2];switch(i[f+28>>2]+ -1|0){case 0:case 2:case 4:break h;case 8:break g;default:break f}}b=g[f+24|0];c=0;i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;if(b){if((b|0)<=-1){break b}b=b<<2;d=Dm(b);i[e+16>>2]=d;c=b+d|0;i[e+24>>2]=c;qn(d,0,b);i[e+20>>2]=c;c=j[f+24|0]}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(c&255){b=c<<24>>24;if((b|0)<=-1){break a}b=b<<2;d=Dm(b);i[e>>2]=d;c=b+d|0;i[e+8>>2]=c;qn(d,0,b);i[e+4>>2]=c}i:{j:{k:{switch(i[f+28>>2]+ -1|0){case 4:b=0;if(Hb(a,f,t)){break j}break i;case 2:b=0;if(Ib(a,f,t)){break j}break i;case 0:break k;default:break j}}b=0;if(!Jb(a,f,t)){break i}}t=g[f+24|0]+t|0;b=1}d=i[e>>2];if(d){i[e+4>>2]=d;nn(d)}d=i[e+16>>2];if(d){i[e+20>>2]=d;nn(d)}if(b){break f}break d}r=i[i[a+60>>2]+(h<<2)>>2];s=i[a+36>>2];k=i[(M[i[i[a>>2]+28>>2]](a)|0)+40>>2];n=i[f+56>>2];b=Dm(32);i[e+16>>2]=b;i[e+20>>2]=24;i[e+24>>2]=-2147483616;g[b+24|0]=0;d=j[1702]|j[1703]<<8|(j[1704]<<16|j[1705]<<24);c=j[1698]|j[1699]<<8|(j[1700]<<16|j[1701]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[1694]|j[1695]<<8|(j[1696]<<16|j[1697]<<24);c=j[1690]|j[1691]<<8|(j[1692]<<16|j[1693]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[1686]|j[1687]<<8|(j[1688]<<16|j[1689]<<24);c=j[1682]|j[1683]<<8|(j[1684]<<16|j[1685]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;l:{m:{d=k+16|0;c=d;b=i[d>>2];if(!b){break m}while(1){q=i[b+16>>2]<(n|0);c=q?c:b;b=i[(q<<2)+b>>2];if(b){continue}break}if((c|0)==(d|0)|(n|0)>2]){break m}b=c+20|0;if(!Kb(b,e+16|0)){break m}b=Jh(b,e+16|0);break l}b=Jh(k,e+16|0)}if(g[e+27|0]<=-1){nn(i[e+16>>2])}d=h+1|0;n:{if(b){La(f,r);break n}b=s+o(h,24)|0;c=i[b+4>>2];h=g[f+24|0];s=h<<2;k=Dm((h|0)!=(h&1073741823)?-1:s);if(!Mh(Kh(e+16|0),m[b+20>>2],-1<>2]){w=i[i[r>>2]>>2]+i[r+48>>2]|0;y=b+8|0;q=0;n=0;c=0;while(1){if((h|0)>=1){z=i[y>>2];b=0;A=m[e+16>>2];while(1){v=b<<2;m[v+k>>2]=p(A*p(i[w+(c<<2)>>2]))+m[z+v>>2];c=c+1|0;b=b+1|0;if((h|0)!=(b|0)){continue}break}}pn(i[i[f+64>>2]>>2]+n|0,k,s);n=n+s|0;q=q+1|0;if(q>>>0>2]){continue}break}}nn(k)}h=d}b=1;u=u+1|0;if((u|0)<(M[i[i[a>>2]+24>>2]](a)|0)){continue}break c}break}nn(k)}b=0}J=e+32|0;return b|0}Sm();x()}Sm();x()}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;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}s=i[a+52>>2];r=i[a+48>>2];d=0;f=(e&1073741823)!=(e|0)?-1:e<<2;p=qn(Dm(f),0,f);f=i[a+8>>2];b:{if((f|0)<1){break b}while(1){f=d<<2;g=i[f+p>>2];k=i[a+16>>2];c:{if((g|0)>(k|0)){h=i[a+32>>2];i[f+h>>2]=k;break c}h=i[a+32>>2];f=f+h|0;k=i[a+12>>2];if((g|0)<(k|0)){i[f>>2]=k;break c}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}if((f|0)<1){break b}g=0;while(1){f=g<<2;d=f+c|0;f=i[b+f>>2]+i[f+h>>2]|0;i[d>>2]=f;d:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break d}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}d=i[a+56>>2];g=i[d+4>>2];q=i[d>>2];d=g-q|0;if((d|0)>=5){g=q-g|0;d=((g|0)>(d|0)?g:d)>>>2|0;t=d>>>0>2?d:2;u=d>>>0>1?d:1;k=1;while(1){e:{f:{if((k|0)!=(u|0)){n=o(e,k);d=i[(k<<2)+q>>2];if((d|0)==-1){break f}d=i[i[r+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}g=-1;j=i[s>>2];h=i[r>>2];l=i[j+(i[h+(d<<2)>>2]<<2)>>2];m=d+1|0;m=(m>>>0)%3|0?m:d+ -2|0;if((m|0)!=-1){m=i[h+(m<<2)>>2]}else{m=-1}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)!=-1){g=i[h+(d<<2)>>2]}if((l|0)>=(k|0)){break f}d=i[(m<<2)+j>>2];if((d|0)>=(k|0)){break f}g=i[j+(g<<2)>>2];if((g|0)>=(k|0)){break f}if((e|0)>=1){g=o(e,g);h=o(d,e);j=o(e,l);d=0;while(1){i[(d<<2)+p>>2]=(i[(d+g<<2)+c>>2]+i[(d+h<<2)+c>>2]|0)-i[(d+j<<2)+c>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}if((f|0)<1){break e}d=0;while(1){f=d<<2;g=i[f+p>>2];j=i[a+16>>2];g:{if((g|0)>(j|0)){h=i[a+32>>2];i[f+h>>2]=j;break g}h=i[a+32>>2];f=f+h|0;j=i[a+12>>2];if((g|0)<(j|0)){i[f>>2]=j;break g}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=n<<2;n=d+c|0;j=b+d|0;while(1){f=g<<2;d=f+n|0;f=i[f+j>>2]+i[f+h>>2]|0;i[d>>2]=f;h:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break h}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}break e}Tm();x()}if((f|0)<1){break e}j=(o(k+ -1|0,e)<<2)+c|0;d=0;while(1){f=d<<2;g=i[f+j>>2];l=i[a+16>>2];i:{if((g|0)>(l|0)){h=i[a+32>>2];i[f+h>>2]=l;break i}h=i[a+32>>2];f=f+h|0;l=i[a+12>>2];if((g|0)<(l|0)){i[f>>2]=l;break i}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=n<<2;n=d+c|0;j=b+d|0;while(1){f=g<<2;d=f+n|0;f=i[f+j>>2]+i[f+h>>2]|0;i[d>>2]=f;j:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break j}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}k=k+1|0;if((t|0)!=(k|0)){continue}break}}nn(p);return 1}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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}r=i[a+52>>2];p=i[a+48>>2];d=0;f=(e&1073741823)!=(e|0)?-1:e<<2;n=qn(Dm(f),0,f);f=i[a+8>>2];b:{if((f|0)<1){break b}while(1){f=d<<2;g=i[f+n>>2];j=i[a+16>>2];c:{if((g|0)>(j|0)){h=i[a+32>>2];i[f+h>>2]=j;break c}h=i[a+32>>2];f=f+h|0;j=i[a+12>>2];if((g|0)<(j|0)){i[f>>2]=j;break c}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}if((f|0)<1){break b}g=0;while(1){f=g<<2;d=f+c|0;f=i[b+f>>2]+i[f+h>>2]|0;i[d>>2]=f;d:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break d}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}d=i[a+56>>2];g=i[d+4>>2];q=i[d>>2];d=g-q|0;if((d|0)>=5){g=q-g|0;d=((g|0)>(d|0)?g:d)>>>2|0;s=d>>>0>2?d:2;t=d>>>0>1?d:1;j=1;while(1){e:{f:{if((j|0)!=(t|0)){m=o(e,j);d=i[(j<<2)+q>>2];if((d|0)==-1|i[i[p>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}d=i[i[i[p+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}h=i[r>>2];g=i[p+28>>2];k=i[h+(i[g+(d<<2)>>2]<<2)>>2];if((k|0)>=(j|0)){break f}l=d+1|0;l=i[h+(i[g+(((l>>>0)%3|0?l:d+ -2|0)<<2)>>2]<<2)>>2];if((l|0)>=(j|0)){break f}d=i[h+(i[g+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(j|0)){break f}if((e|0)>=1){g=o(d,e);h=o(e,l);k=o(e,k);d=0;while(1){i[(d<<2)+n>>2]=(i[(d+g<<2)+c>>2]+i[(d+h<<2)+c>>2]|0)-i[(d+k<<2)+c>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}if((f|0)<1){break e}d=0;while(1){f=d<<2;g=i[f+n>>2];k=i[a+16>>2];g:{if((g|0)>(k|0)){h=i[a+32>>2];i[f+h>>2]=k;break g}h=i[a+32>>2];f=f+h|0;k=i[a+12>>2];if((g|0)<(k|0)){i[f>>2]=k;break g}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=m<<2;m=d+c|0;k=b+d|0;while(1){f=g<<2;d=f+m|0;f=i[f+k>>2]+i[f+h>>2]|0;i[d>>2]=f;h:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break h}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}break e}Tm();x()}if((f|0)<1){break e}k=(o(j+ -1|0,e)<<2)+c|0;d=0;while(1){f=d<<2;g=i[f+k>>2];l=i[a+16>>2];i:{if((g|0)>(l|0)){h=i[a+32>>2];i[f+h>>2]=l;break i}h=i[a+32>>2];f=f+h|0;l=i[a+12>>2];if((g|0)<(l|0)){i[f>>2]=l;break i}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=m<<2;m=d+c|0;k=b+d|0;while(1){f=g<<2;d=f+m|0;f=i[f+k>>2]+i[f+h>>2]|0;i[d>>2]=f;j:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break j}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}j=j+1|0;if((s|0)!=(j|0)){continue}break}}nn(n);return 1}function bb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;d=J-704|0;J=d;r=1;a:{b:{c:{d:{if(k[b+38>>1]<515){break d}r=0;f=i[b+16>>2];e=i[b+12>>2];c=i[b+20>>2];if((e|0)<(c|0)?1:(e|0)<=(c|0)?l[b+8>>2]<=f>>>0:0){break d}u=j[f+i[b>>2]|0];f=f+1|0;if(f>>>0<1){c=c+1|0}i[b+16>>2]=f;i[b+20>>2]=c;t=i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+80>>2];c=M[i[i[a>>2]+24>>2]](a)|0;i[d+696>>2]=0;i[d+688>>2]=0;i[d+692>>2]=0;if(c){if(c>>>0>=214748365){break c}c=o(c,20);e=Dm(c);i[d+688>>2]=e;f=c+e|0;i[d+696>>2]=f;qn(e,0,c-((c+ -20>>>0)%20|0)|0);i[d+692>>2]=f}e:{if((M[i[i[a>>2]+24>>2]](a)|0)>=1){v=a+48|0;w=a+60|0;while(1){c=M[i[i[a>>2]+20>>2]](a,q)|0;e=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];Ka(e,t);g[e+84|0]=1;i[e+72>>2]=i[e+68>>2];c=i[e+28>>2];if(c>>>0>9){break e}f:{g:{h:{f=1<>2];e=c;c=o(Fh(6),c);Fa(f,h,e,6,0,c,c>>31);c=Dm(96);e=Ja(c,f);i[d+656>>2]=c;g[c+84|0]=1;i[c+72>>2]=i[c+68>>2];Ka(e,t);c=i[a+64>>2];if(c>>>0>=l[a+68>>2]){break h}e=i[d+656>>2];i[d+656>>2]=0;i[c>>2]=e;c=c+4|0;i[a+64>>2]=c;break g}p=0;if(g[e+24|0]<1){break f}while(1){c=i[a+52>>2];m=i[a+56>>2];i:{if(c>>>0>>0){i[c>>2]=0;i[a+52>>2]=c+4;break i}f=i[v>>2];s=c-f|0;c=s>>2;h=c+1|0;if(h>>>0>=1073741824){break b}y=c<<2;m=m-f|0;c=m>>1;h=m>>2>>>0<536870911?c>>>0>>0?h:c:1073741823;c=0;j:{if(!h){break j}if(h>>>0>=1073741824){break a}c=Dm(h<<2)}m=y+c|0;i[m>>2]=0;h=c+(h<<2)|0;m=m+4|0;if((s|0)>=1){pn(c,f,s)}i[a+56>>2]=h;i[a+52>>2]=m;i[a+48>>2]=c;if(!f){break i}nn(f)}p=p+1|0;if((p|0)>2]}e=i[c+ -4>>2];c=i[d+656>>2];i[d+656>>2]=0;if(!c){break f}Sa(c)}h=i[e+28>>2];f=Fh(h);c=i[d+688>>2]+o(q,20)|0;p=g[e+24|0];i[c+16>>2]=p;i[c+12>>2]=(f|0)>0?f:0;i[c+8>>2]=h;i[c+4>>2]=n;i[c>>2]=e;n=n+p|0;q=q+1|0;if((q|0)<(M[i[i[a>>2]+24>>2]](a)|0)){continue}break}}a=db(d+656|0,d+688|0);k:{l:{m:{switch(u|0){case 0:c=gb(d,n);b=eb(c,b,a);fb(c);if(b){break l}break k;case 1:c=gb(d,n);b=hb(c,b,a);fb(c);if(b){break l}break k;case 2:c=kb(d,n);b=ib(c,b,a);jb(c);if(b){break l}break k;case 3:c=kb(d,n);b=lb(c,b,a);jb(c);if(b){break l}break k;case 4:c=ob(d,n);b=mb(c,b,a);nb(c);if(b){break l}break k;case 5:c=ob(d,n);b=pb(c,b,a);nb(c);if(b){break l}break k;case 6:break m;default:break k}}c=ob(d,n);b=qb(c,b,a);nb(c);if(!b){break k}}r=1}b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a>>2];if(!b){break e}i[a+4>>2]=b;nn(b)}a=i[d+688>>2];if(!a){break d}i[d+692>>2]=a;nn(a)}J=d+704|0;return r|0}Sm();x()}Sm();x()}Ba(1756);x()}function Ak(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0;e=J-48|0;J=e;a:{if(!b){break a}w=a+12|0;g=i[a+4>>2];m=i[a>>2];f=g-m|0;k=f>>2;d=i[a+12>>2];c=i[a+16>>2]-d>>2;b:{if(k>>>0>c>>>0){Dk(w,k-c|0);g=i[a+4>>2];m=i[a>>2];f=g-m|0;k=f>>2;break b}if(k>>>0>=c>>>0){break b}i[a+16>>2]=d+(k<<2)}i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;c:{if(!f){break c}if(k>>>0<1073741824){l=Dm(f);i[e+36>>2]=l;i[e+32>>2]=l;i[e+40>>2]=(k<<2)+l;d=l;f=0;while(1){c=i[(f<<2)+m>>2];j=d-l>>2;d:{if(c>>>0>>0){break d}i[e+16>>2]=0;d=c+1|0;if(d>>>0>j>>>0){Ta(e+32|0,d-j|0,e+16|0);m=i[a>>2];g=i[a+4>>2];l=i[e+32>>2];break d}if(d>>>0>=j>>>0){break d}i[e+36>>2]=(d<<2)+l}d=(c<<2)+l|0;i[d>>2]=i[d>>2]+1;f=f+1|0;h=g-m|0;k=h>>2;if(f>>>0>=k>>>0){break c}d=i[e+36>>2];continue}}Ba(14288);x()}i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;e:{f:{if(h){if(k>>>0>=536870912){break f}n=Dm(h<<1);i[e+16>>2]=n;c=k<<3;d=c+n|0;i[e+24>>2]=d;qn(n,255,c);i[e+20>>2]=d}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;c=i[e+36>>2];g=c-l|0;u=g>>2;g:{if(g){if(u>>>0>=1073741824){break g}p=Dm(g);i[e>>2]=p;d=(u<<2)+p|0;i[e+8>>2]=d;f=0;j=qn(p,0,g);i[e+4>>2]=d;d=l-c|0;c=((d|0)>(g|0)?d:g)>>>2|0;d=(g|0)>-1?g:-1;d=o(c,(d|0)<1?d:1);c=d>>>0>1?d:1;h=0;while(1){d=h<<2;i[d+j>>2]=f;f=i[d+l>>2]+f|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}if(!k){break e}while(1){y=q<<2;g=i[y+m>>2];r=-1;d=q+1|0;c=(d>>>0)%3|0?d:q+ -2|0;if((c|0)!=-1){r=i[(c<<2)+m>>2]}s=-1;f=(q>>>0)%3|0;c=(f?-1:2)+q|0;if((c|0)!=-1){s=i[(c<<2)+m>>2]}h:{if(!(((g|0)!=(s|0)?!((r|0)==(s|0)|(g|0)==(r|0)):0)|f)){i[a+40>>2]=i[a+40>>2]+1;d=q+3|0;break h}c=s<<2;v=i[c+l>>2];i:{j:{if((v|0)<1){break j}f=i[c+p>>2];h=0;while(1){j=(f<<3)+n|0;c=i[j>>2];if((c|0)==-1){break j}k:{if((c|0)!=(r|0)){break k}t=i[j+4>>2];if((t|0)!=-1){c=i[(t<<2)+m>>2]}else{c=-1}if((c|0)==(g|0)){break k}while(1){l:{c=f;h=h+1|0;if((h|0)>=(v|0)){break l}z=(c<<3)+n|0;f=c+1|0;g=(f<<3)+n|0;j=i[g>>2];i[z>>2]=j;i[z+4>>2]=i[g+4>>2];if((j|0)!=-1){continue}}break}i[(c<<3)+n>>2]=-1;if((t|0)==-1){break j}c=i[w>>2];i[c+y>>2]=t;i[c+(t<<2)>>2]=q;break i}f=f+1|0;h=h+1|0;if((v|0)!=(h|0)){continue}break}}f=r<<2;c=i[f+l>>2];if((c|0)<1){break i}f=i[f+p>>2];h=0;while(1){j=(f<<3)+n|0;if(i[j>>2]==-1){i[j>>2]=s;i[j+4>>2]=q;break i}f=f+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}}q=d;if(d>>>0>>0){continue}break}break e}Sm();x()}Sm();x()}i[b>>2]=u;if(p){i[e+4>>2]=p;nn(p)}a=i[e+16>>2];if(a){i[e+20>>2]=a;nn(a)}a=i[e+32>>2];if(!a){break a}i[e+36>>2]=a;nn(a)}J=e+48|0;return(b|0)!=0}function Rg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(i[i[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=i[a+48>>2];i[a+52>>2]=c;a:{if((c|0)!=i[a+56>>2]){i[c>>2]=b;i[a+52>>2]=c+4;break a}e=Dm(4);i[e>>2]=b;f=e+4|0;i[a+56>>2]=f;i[a+52>>2]=f;i[a+48>>2]=e;if(!c){break a}nn(c)}e=i[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b+ -2|0;if((f|0)!=-1){c=i[i[e>>2]+(f<<2)>>2]}h=(b-o(d,3)|0?-1:2)+b|0;if((h|0)==-1){return 0}if((c|0)==-1){return 0}d=i[i[e>>2]+(h<<2)>>2];if((d|0)==-1){return 0}b=i[a+36>>2];e=b+(c>>>3&536870908)|0;g=i[e>>2];j=1<>2]=g|j;Hg(a+8|0,c,f);b=i[a+36>>2]}b=(d>>>3&536870908)+b|0;c=i[b>>2];e=1<>2]=c|e;Hg(a+8|0,d,h)}d=i[a+52>>2];if((d|0)==i[a+48>>2]){return 1}k=a+48|0;l=a+8|0;while(1){d=d+ -4|0;b=i[d>>2];c=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=i[a+24>>2]+(c>>>3&268435452)|0;f=i[e>>2];c=1<>2]=c|f;while(1){h=i[a+4>>2];c=i[i[h>>2]+(b<<2)>>2];if((c|0)==-1){return 0}d:{d=i[a+36>>2]+(c>>>3&536870908)|0;e=i[d>>2];f=1<>2]+(c<<2)>>2];if((g|0)!=-1){j=g+1|0;g=(j>>>0)%3|0?j:g+ -2|0;if((g|0)!=-1){h=i[i[h+12>>2]+(g<<2)>>2];if((h|0)!=-1){i[d>>2]=e|f;Hg(l,c,b);c=h+1|0;if((((c>>>0)%3|0?c:h+ -2|0)|0)==-1){break e}d=b+ -2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=i[i[i[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];j=c>>>5|0;f=i[e+(j<<2)>>2];break d}}}i[d>>2]=e|f;Hg(l,c,b)}d=-1;e=i[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b+ -2|0;if((f|0)!=-1){c=i[i[e+12>>2]+(f<<2)>>2]}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)!=-1){d=i[i[e+12>>2]+(b<<2)>>2]}b=(d|0)==-1;h=b?-1:(d>>>0)/3|0;f=(c>>>0)/3|0;f:{g=(c|0)==-1;if(!g){e=i[a+24>>2];g=g?-1:f;j=g>>>5|0;f=i[e+(j<<2)>>2];g=1<>2];j=h>>>5|0;f=i[e+(j<<2)>>2];if(!(g&f)){break d}}d=i[a+52>>2]+ -4|0;i[a+52>>2]=d;break b}if(b){b=c;break d}if(i[(h>>>3&536870908)+e>>2]>>>h&1){b=c;break d}b=i[a+52>>2];i[b+ -4>>2]=d;if((b|0)!=i[a+56>>2]){i[b>>2]=c;d=b+4|0;break c}g:{e=i[k>>2];f=b-e|0;h=f>>2;d=h+1|0;if(d>>>0<1073741824){g=f>>1;d=h>>>0<536870911?g>>>0>>0?d:g:1073741823;b=0;h:{if(!d){break h}if(d>>>0>=1073741824){break g}b=Dm(d<<2)}h=b+(h<<2)|0;i[h>>2]=c;c=b+(d<<2)|0;d=h+4|0;if((f|0)>=1){pn(b,e,f)}i[a+56>>2]=c;i[a+52>>2]=d;i[a+48>>2]=b;if(!e){break b}nn(e);d=i[a+52>>2];break b}Sm();x()}Ba(12220);x()}i[(j<<2)+e>>2]=f|g;if((b|0)!=-1){continue}break}return 0}i[a+52>>2]=d}if(i[k>>2]!=(d|0)){continue}break}}return 1}function _c(a,b,c,d){var e=0,f=0,h=p(0),k=0,l=p(0),n=p(0),r=0,s=p(0),t=p(0),v=p(0),y=p(0),z=p(0),A=0,B=0,C=p(0),D=p(0),E=p(0),F=p(0),G=p(0),H=p(0),I=p(0),K=p(0),L=0;e=J-48|0;J=e;r=-1;f=-1;a:{if((b|0)==-1){break a}f=b+1|0;r=(f>>>0)%3|0?f:b+ -2|0;f=b+ -1|0;if((b>>>0)%3|0){break a}f=b+2|0}k=i[a+52>>2];b=i[k>>2];b:{k=i[k+4>>2]-b>>2;A=i[i[a+48>>2]+28>>2];r=i[A+(r<<2)>>2];if(k>>>0<=r>>>0){break b}L=k;k=i[(f<<2)+A>>2];if(L>>>0<=k>>>0){break b}c:{d:{f=i[b+(r<<2)>>2];A=(f|0)>=(d|0);if(A){break d}r=i[b+(k<<2)>>2];if((r|0)>=(d|0)){break d}b=i[a+72>>2];k=(o(b,r)<<2)+c|0;l=p(i[k+4>>2]);b=(o(b,f)<<2)+c|0;z=p(i[b+4>>2]);C=p(i[k>>2]);F=p(i[b>>2]);if(!(C!=F|l!=z)){a=i[a+68>>2];b=a;if(p(q(l))>2]=c;if(p(q(C))>2]=~~C;break c}i[a>>2]=-2147483648;break c}d=i[i[a+64>>2]+(d<<2)>>2];i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}$c(b,d,g[b+24|0],e+32|0);d=i[i[a+64>>2]+(f<<2)>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}$c(b,d,g[b+24|0],e+16|0);c=i[i[a+64>>2]+(r<<2)>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){c=i[i[b+68>>2]+(c<<2)>>2]}$c(b,c,g[b+24|0],e);D=m[e+40>>2];E=m[e+36>>2];s=m[e+32>>2];H=m[e+16>>2];n=p(m[e>>2]-H);I=m[e+20>>2];t=p(m[e+4>>2]-I);K=m[e+24>>2];v=p(m[e+8>>2]-K);G=p(p(p(p(n*n)+p(0))+p(t*t))+p(v*v));e:{if(!(G>p(0))){y=p(0);if(i[a+88>>2]>257){break e}}s=p(s-H);E=p(E-I);D=p(D-K);h=p(p(p(p(p(n*s)+p(0))+p(t*E))+p(v*D))/G);v=p(D-p(v*h));t=p(E-p(t*h));n=p(s-p(n*h));y=p(w(p(p(p(v*v)+p(p(t*t)+p(p(n*n)+p(0))))/G)))}s=y;c=a+80|0;b=i[c>>2]+ -1|0;d=i[i[a+76>>2]+(b>>>3&536870908)>>2];i[c>>2]=b;n=p(l-z);y=p(p(n*h)+z);z=p(C-F);l=p(z*s);b=d>>>b&1;l=p(y+(b?l:p(-l)));y=p(p(z*h)+F);h=p(n*s);h=p(y+(b?p(-h):h));f:{if(h!=h){b=i[a+68>>2];i[b>>2]=-2147483648;break f}b=i[a+68>>2];a=b;B=u(+h+.5);g:{if(q(B)<2147483648){c=~~B;break g}c=-2147483648}i[a>>2]=c}B=u(+l+.5);h:{if(q(B)<2147483648){a=~~B;break h}a=-2147483648}i[b+4>>2]=l!=l?-2147483648:a;break c}i:{if(!A){b=i[a+72>>2];d=o(f,b);break i}if((d|0)<=0){if(i[a+72>>2]<1){break c}c=i[a+68>>2];b=0;while(1){i[c+(b<<2)>>2]=0;b=b+1|0;if((b|0)>2]){continue}break}break c}b=i[a+72>>2];d=o(b,d+ -1|0)}if((b|0)<1){break c}f=i[a+68>>2];b=0;while(1){i[f+(b<<2)>>2]=i[(b+d<<2)+c>>2];b=b+1|0;if((b|0)>2]){continue}break}}J=e+48|0;return}Tm();x()}function Ad(a,b,c,d){var e=0,f=0,h=0,k=p(0),l=p(0),n=0,r=p(0),s=p(0),t=p(0),v=p(0),y=p(0),z=p(0),A=0,B=0,C=p(0),D=p(0),E=p(0),F=p(0),G=p(0),H=0,I=p(0),K=p(0),L=p(0);e=J-48|0;J=e;f=-1;n=-1;a:{if((b|0)==-1){break a}h=((b>>>0)%3|0?-1:2)+b|0;A=i[a+48>>2];H=b+1|0;b=(H>>>0)%3|0?H:b+ -2|0;if((b|0)!=-1){f=i[i[A>>2]+(b<<2)>>2]}if((h|0)==-1){break a}n=i[i[A>>2]+(h<<2)>>2]}h=i[a+52>>2];b=i[h>>2];h=i[h+4>>2]-b>>2;if(!(h>>>0<=f>>>0|h>>>0<=n>>>0)){b:{c:{f=i[b+(f<<2)>>2];A=(f|0)>=(d|0);if(A){break c}h=i[b+(n<<2)>>2];if((h|0)>=(d|0)){break c}b=i[a+72>>2];n=(o(b,h)<<2)+c|0;l=p(i[n+4>>2]);b=(o(b,f)<<2)+c|0;z=p(i[b+4>>2]);C=p(i[n>>2]);F=p(i[b>>2]);if(!(C!=F|l!=z)){a=i[a+68>>2];b=a;if(p(q(l))>2]=c;if(p(q(C))>2]=~~C;break b}i[a>>2]=-2147483648;break b}n=i[i[a+64>>2]+(d<<2)>>2];i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){n=i[i[b+68>>2]+(n<<2)>>2]}$c(b,n,g[b+24|0],e+32|0);f=i[i[a+64>>2]+(f<<2)>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){f=i[i[b+68>>2]+(f<<2)>>2]}$c(b,f,g[b+24|0],e+16|0);c=i[i[a+64>>2]+(h<<2)>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){c=i[i[b+68>>2]+(c<<2)>>2]}$c(b,c,g[b+24|0],e);D=m[e+40>>2];E=m[e+36>>2];s=m[e+32>>2];I=m[e+16>>2];r=p(m[e>>2]-I);K=m[e+20>>2];t=p(m[e+4>>2]-K);L=m[e+24>>2];v=p(m[e+8>>2]-L);G=p(p(p(p(r*r)+p(0))+p(t*t))+p(v*v));d:{if(!(G>p(0))){y=p(0);if(i[a+88>>2]>257){break d}}s=p(s-I);E=p(E-K);D=p(D-L);k=p(p(p(p(p(r*s)+p(0))+p(t*E))+p(v*D))/G);v=p(D-p(v*k));t=p(E-p(t*k));r=p(s-p(r*k));y=p(w(p(p(p(v*v)+p(p(t*t)+p(p(r*r)+p(0))))/G)))}s=y;c=a+80|0;b=i[c>>2]+ -1|0;d=i[i[a+76>>2]+(b>>>3&536870908)>>2];i[c>>2]=b;r=p(l-z);y=p(p(r*k)+z);z=p(C-F);l=p(z*s);b=d>>>b&1;l=p(y+(b?l:p(-l)));y=p(p(z*k)+F);k=p(r*s);k=p(y+(b?p(-k):k));e:{if(k!=k){b=i[a+68>>2];i[b>>2]=-2147483648;break e}b=i[a+68>>2];a=b;B=u(+k+.5);f:{if(q(B)<2147483648){c=~~B;break f}c=-2147483648}i[a>>2]=c}B=u(+l+.5);g:{if(q(B)<2147483648){a=~~B;break g}a=-2147483648}i[b+4>>2]=l!=l?-2147483648:a;break b}h:{if(!A){b=i[a+72>>2];d=o(f,b);break h}if((d|0)<=0){if(i[a+72>>2]<1){break b}c=i[a+68>>2];b=0;while(1){i[c+(b<<2)>>2]=0;b=b+1|0;if((b|0)>2]){continue}break}break b}b=i[a+72>>2];d=o(b,d+ -1|0)}if((b|0)<1){break b}f=i[a+68>>2];b=0;while(1){i[f+(b<<2)>>2]=i[(b+d<<2)+c>>2];b=b+1|0;if((b|0)>2]){continue}break}}J=e+48|0;return}Tm();x()}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=J-32|0;J=h;i[a+68>>2]=f;e=i[a+56>>2];f=i[e>>2];j=i[e+4>>2];i[h+24>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;g=j-f|0;if((g|0)>=1){a:{d=i[e>>2];b:{if((d|0)==i[e+4>>2]){e=i[h+8>>2];break b}n=a+60|0;e=f-j|0;e=((e|0)>(g|0)?e:g)>>>2|0;o=e>>>0>1?e:1;p=a+112|0;while(1){od(n,i[(m<<2)+d>>2],h+16|0);e=i[h+20>>2];j=e>>31;f=i[h+16>>2];g=f>>31;l=i[h+24>>2];k=l>>31;d=0;k=k^k+l;j=k+((j^e+j)+(g^f+g)|0)|0;if(j>>>0>>0){d=1}g=j;c:{if(!(d|g)){i[h+16>>2]=i[a+108>>2];break c}j=i[a+108>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,g,d);i[h+20>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,g,d);i[h+16>>2]=d;if((l|0)>=0){i[h+24>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break c}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[h+24>>2]=f+(d+e^d)}d=Ce(p);f=i[h+16>>2];if(d){i[h+24>>2]=0-i[h+24>>2];i[h+20>>2]=0-i[h+20>>2];f=0-f|0;i[h+16>>2]=f}e=i[h+20>>2];d:{if((f|0)>=0){d=i[a+108>>2];f=d+i[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=i[h+24>>2];d=f>>31;d=d^d+f;break e}f=i[h+24>>2];d=i[a+100>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break d}f=i[a+100>>2]+((e|0)<0?e:0-e|0)|0}f:{if(!(d|f)){f=i[a+100>>2];e=f;break f}j=i[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(j|0)){e=f;break f}e=0;if(f|j){break i}f=0;break f}if(!((d|0)!=(j|0)|f)){f=d;e=f;break f}if((d|0)!=(j|0)){break g}g=i[a+108>>2];break h}g=i[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(j){break g}}j=d;if((g|0)<=(f|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(j|0)){break j}e=i[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=i[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}i[h+12>>2]=f;k:{if(i[a+8>>2]<1){break k}f=0;d=e;while(1){g=i[a+16>>2];l:{if((d|0)>(g|0)){j=i[a+32>>2];i[j+(f<<2)>>2]=g;break l}j=i[a+32>>2];g=j+(f<<2)|0;l=i[a+12>>2];if((d|0)<(l|0)){i[g>>2]=l;break l}i[g>>2]=d}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){d=i[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=m<<3;l=f+c|0;k=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+k>>2]+i[g+j>>2]|0;i[f>>2]=g;m:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break m}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}m=m+1|0;if((o|0)==(m|0)){break a}f=i[a+56>>2];d=i[f>>2];if(i[f+4>>2]-d>>2>>>0>m>>>0){continue}break}}i[h+8>>2]=e;Tm();x()}i[h+8>>2]=e}J=h+32|0;return 1}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=J-32|0;J=h;i[a+68>>2]=f;e=i[a+56>>2];f=i[e>>2];j=i[e+4>>2];i[h+24>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;g=j-f|0;if((g|0)>=1){a:{d=i[e>>2];b:{if((d|0)==i[e+4>>2]){e=i[h+8>>2];break b}n=a+60|0;e=f-j|0;e=((e|0)>(g|0)?e:g)>>>2|0;o=e>>>0>1?e:1;p=a+112|0;while(1){Id(n,i[(m<<2)+d>>2],h+16|0);e=i[h+20>>2];j=e>>31;f=i[h+16>>2];g=f>>31;l=i[h+24>>2];k=l>>31;d=0;k=k^k+l;j=k+((j^e+j)+(g^f+g)|0)|0;if(j>>>0>>0){d=1}g=j;c:{if(!(d|g)){i[h+16>>2]=i[a+108>>2];break c}j=i[a+108>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,g,d);i[h+20>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,g,d);i[h+16>>2]=d;if((l|0)>=0){i[h+24>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break c}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[h+24>>2]=f+(d+e^d)}d=Ce(p);f=i[h+16>>2];if(d){i[h+24>>2]=0-i[h+24>>2];i[h+20>>2]=0-i[h+20>>2];f=0-f|0;i[h+16>>2]=f}e=i[h+20>>2];d:{if((f|0)>=0){d=i[a+108>>2];f=d+i[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=i[h+24>>2];d=f>>31;d=d^d+f;break e}f=i[h+24>>2];d=i[a+100>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break d}f=i[a+100>>2]+((e|0)<0?e:0-e|0)|0}f:{if(!(d|f)){f=i[a+100>>2];e=f;break f}j=i[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(j|0)){e=f;break f}e=0;if(f|j){break i}f=0;break f}if(!((d|0)!=(j|0)|f)){f=d;e=f;break f}if((d|0)!=(j|0)){break g}g=i[a+108>>2];break h}g=i[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(j){break g}}j=d;if((g|0)<=(f|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(j|0)){break j}e=i[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=i[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}i[h+12>>2]=f;k:{if(i[a+8>>2]<1){break k}f=0;d=e;while(1){g=i[a+16>>2];l:{if((d|0)>(g|0)){j=i[a+32>>2];i[j+(f<<2)>>2]=g;break l}j=i[a+32>>2];g=j+(f<<2)|0;l=i[a+12>>2];if((d|0)<(l|0)){i[g>>2]=l;break l}i[g>>2]=d}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){d=i[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=m<<3;l=f+c|0;k=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+k>>2]+i[g+j>>2]|0;i[f>>2]=g;m:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break m}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}m=m+1|0;if((o|0)==(m|0)){break a}f=i[a+56>>2];d=i[f>>2];if(i[f+4>>2]-d>>2>>>0>m>>>0){continue}break}}i[h+8>>2]=e;Tm();x()}i[h+8>>2]=e}J=h+32|0;return 1}function sc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,j=0,k=0,l=0,m=0;a:{b:{c:{d:{e:{f:{g:{h:{d=i[a+8>>2];switch(i[d+28>>2]+ -1|0){case 0:break c;case 3:break d;case 2:break e;case 5:break f;case 4:break g;case 1:break h;default:break a}}f=g[d+24|0];j=Dm((f|0)>-1?f:-1);c=i[a+16>>2];d=0;i:{if(!i[c+80>>2]){break i}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((f|0)>0){while(1){g[c+j|0]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,f);l=f+l|0;e=e+1|0;if((e|0)!=(b|0)){continue}break}break b}e=g[d+24|0];m=e<<2;j=Dm((e|0)!=(e&1073741823)?-1:m);c=i[a+16>>2];d=0;j:{if(!i[c+80>>2]){break j}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((e|0)>0){while(1){i[(c<<2)+j>>2]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}e=g[d+24|0];m=e<<2;j=Dm((e|0)!=(e&1073741823)?-1:m);c=i[a+16>>2];d=0;k:{if(!i[c+80>>2]){break k}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((e|0)>0){while(1){i[(c<<2)+j>>2]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}e=g[d+24|0];d=e+e|0;j=Dm(d>>>0>>0?-1:d);c=i[a+16>>2];d=0;l:{if(!i[c+80>>2]){break l}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}m=e<<1;while(1){c=0;if((e|0)>0){while(1){h[(c<<1)+j>>1]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}e=g[d+24|0];d=e+e|0;j=Dm(d>>>0>>0?-1:d);c=i[a+16>>2];d=0;m:{if(!i[c+80>>2]){break m}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}m=e<<1;while(1){c=0;if((e|0)>0){while(1){h[(c<<1)+j>>1]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}f=g[d+24|0];j=Dm((f|0)>-1?f:-1);c=i[a+16>>2];d=0;n:{if(!i[c+80>>2]){break n}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((f|0)>0){while(1){g[c+j|0]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,f);l=f+l|0;e=e+1|0;if((e|0)!=(b|0)){continue}break}}nn(j);j=1}return j|0}function jl(a,b){var c=0,d=0,e=0,f=0,h=0,k=0;a:{b:{d=b;h=i[b>>2];if(h){c=i[b+4>>2];if(!c){break b}while(1){d=c;c=i[c>>2];if(c){continue}break}}h=i[d+4>>2];if(h){break b}h=0;e=1;break a}i[h+8>>2]=i[d+8>>2];e=0}f=i[d+8>>2];c=i[f>>2];c:{if((d|0)==(c|0)){i[f>>2]=h;if((a|0)==(d|0)){c=0;a=h;break c}c=i[f+4>>2];break c}i[f+4>>2]=h}d:{e:{f:{k=!j[d+12|0];if((b|0)!=(d|0)){f=i[b+8>>2];i[d+8>>2]=f;i[f+((i[i[b+8>>2]>>2]!=(b|0))<<2)>>2]=d;f=i[b>>2];i[d>>2]=f;i[f+8>>2]=d;f=i[b+4>>2];i[d+4>>2]=f;if(f){i[f+8>>2]=d}g[d+12|0]=j[b+12|0];a=(a|0)==(b|0)?d:a}if(!(k|!a)){if(e){while(1){b=j[c+12|0];g:{e=i[c+8>>2];if(i[e>>2]!=(c|0)){if(!b){g[c+12|0]=1;g[e+12|0]=0;d=i[e+4>>2];b=i[d>>2];i[e+4>>2]=b;if(b){i[b+8>>2]=e}i[d+8>>2]=i[e+8>>2];b=i[e+8>>2];i[(((e|0)!=i[b>>2])<<2)+b>>2]=d;i[d>>2]=e;i[e+8>>2]=d;b=i[c>>2];a=(b|0)==(a|0)?c:a;c=i[b+4>>2]}d=i[c>>2];if(!(j[d+12|0]?0:d)){b=i[c+4>>2];if(j[b+12|0]?0:b){break f}g[c+12|0]=0;c=i[c+8>>2];h:{if((c|0)==(a|0)){c=a;break h}if(j[c+12|0]){break g}}g[c+12|0]=1;return}b=i[c+4>>2];if(b){break f}break e}i:{if(b){b=c;break i}g[c+12|0]=1;g[e+12|0]=0;b=i[c+4>>2];i[e>>2]=b;if(b){i[b+8>>2]=e}i[c+8>>2]=i[e+8>>2];d=i[e+8>>2];j:{if((e|0)==i[d>>2]){i[d>>2]=c;b=i[e>>2];break j}i[d+4>>2]=c}i[c+4>>2]=e;i[e+8>>2]=c;a=(a|0)==(e|0)?c:a}d=i[b>>2];k:{if(!(!d|j[d+12|0])){c=b;break k}c=i[b+4>>2];if(!(j[c+12|0]?0:c)){g[b+12|0]=0;c=i[b+8>>2];if(j[c+12|0]?(c|0)!=(a|0):0){break g}g[c+12|0]=1;return}if(d){if(!j[d+12|0]){c=b;break k}c=i[b+4>>2]}g[c+12|0]=1;g[b+12|0]=0;a=i[c>>2];i[b+4>>2]=a;if(a){i[a+8>>2]=b}i[c+8>>2]=i[b+8>>2];a=i[b+8>>2];i[((i[a>>2]!=(b|0))<<2)+a>>2]=c;i[c>>2]=b;i[b+8>>2]=c;d=b}a=c;c=i[c+8>>2];g[a+12|0]=j[c+12|0];g[c+12|0]=1;g[d+12|0]=1;b=i[c>>2];a=i[b+4>>2];i[c>>2]=a;if(a){i[a+8>>2]=c}i[b+8>>2]=i[c+8>>2];a=i[c+8>>2];i[(((c|0)!=i[a>>2])<<2)+a>>2]=b;i[b+4>>2]=c;i[c+8>>2]=b;return}b=i[c+8>>2];c=i[((i[b>>2]==(c|0))<<2)+b>>2];continue}}g[h+12|0]=1}return}if(j[b+12|0]){break e}d=c;break d}g[d+12|0]=1;g[c+12|0]=0;a=i[d+4>>2];i[c>>2]=a;if(a){i[a+8>>2]=c}i[d+8>>2]=i[c+8>>2];a=i[c+8>>2];i[((i[a>>2]!=(c|0))<<2)+a>>2]=d;i[d+4>>2]=c;i[c+8>>2]=d;b=c}c=i[d+8>>2];g[d+12|0]=j[c+12|0];g[c+12|0]=1;g[b+12|0]=1;b=i[c+4>>2];a=i[b>>2];i[c+4>>2]=a;if(a){i[a+8>>2]=c}i[b+8>>2]=i[c+8>>2];a=i[c+8>>2];i[(((c|0)!=i[a>>2])<<2)+a>>2]=b;i[b>>2]=c;i[c+8>>2]=b}function Ck(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=J-48|0;J=k;i[a+36>>2]=b;p=a+24|0;d=i[a+24>>2];c=i[a+28>>2]-d>>2;a:{if(c>>>0>>0){Dk(p,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+28>>2]=d+(b<<2)}g[k+16|0]=0;l=Ek(k+32|0,b,k+16|0);c=i[a>>2];d=i[a+4>>2];g[k+8|0]=0;q=Ek(k+16|0,d-c>>2,k+8|0);b:{h=i[a+4>>2];c=i[a>>2];if(h-c>>2>>>0<3){break b}t=a+48|0;while(1){m=o(r,3);e=i[(m<<2)+c>>2];d=m+1|0;c:{d:{if((d|0)==-1){j=0;f=-1;break d}f=i[(d<<2)+c>>2];j=m+2|0;d=-1;if((j|0)==-1){break c}}d=i[(j<<2)+c>>2]}e:{if(!((d|0)==(f|0)|(e|0)==(f|0)|(d|0)==(e|0))){j=i[q>>2];n=0;while(1){d=m+n|0;f:{if(i[(d>>>3&536870908)+j>>2]>>>d&1){break f}h=i[i[a>>2]+(d<<2)>>2];i[k+8>>2]=h;c=1<>2];f=h>>>5|0;j=i[e+(f<<2)>>2];s=c&j;if(s){$f(p,14284);Fk(t,k+8|0);c=i[l+4>>2];f=i[l+8>>2];if((c|0)==f<<5){if((c+1|0)<=-1){break e}e=l;if(c>>>0<=1073741822){h=c+32&-32;c=f<<6;c=c>>>0>>0?h:c}else{c=2147483647}Qc(e,c);c=i[l+4>>2]}i[l+4>>2]=c+1;e=i[l>>2];f=e+(c>>>3&536870908)|0;h=i[f>>2];u=f,v=Kn(c)&h,i[u>>2]=v;i[k+8>>2]=b;c=1<>>5|0;j=i[(f<<2)+e>>2];b=b+1|0}i[(f<<2)+e>>2]=c|j;j=i[q>>2];c=d;g:{while(1){if((c|0)==-1){break g}e=(c>>>3&536870908)+j|0;i[e>>2]=i[e>>2]|1<>2];i[i[p>>2]+(e<<2)>>2]=c;if(s){i[i[a>>2]+(c<<2)>>2]=e}h=d;f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;e=-1;h:{if((c|0)==-1){break h}f=i[i[a+12>>2]+(c<<2)>>2];e=-1;if((f|0)==-1){break h}c=f+1|0;e=(c>>>0)%3|0?c:f+ -2|0}c=e;if((h|0)!=(c|0)){continue}break}if((d|0)!=-1){break f}}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1){break f}d=i[i[a+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}c=d+((d>>>0)%3|0?-1:2)|0;if((c|0)==-1){break f}while(1){d=(c>>>3&536870908)+j|0;i[d>>2]=i[d>>2]|1<>2]+(c<<2)>>2]=i[k+8>>2]}d=((c>>>0)%3|0?-1:2)+c|0;if((d|0)==-1){break f}d=i[i[a+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}c=d+((d>>>0)%3|0?-1:2)|0;if((c|0)!=-1){continue}break}}n=n+1|0;if((n|0)!=3){continue}break}c=i[a>>2];h=i[a+4>>2]}r=r+1|0;if(r>>>0<(h-c>>2>>>0)/3>>>0){continue}break b}break}Sm();x()}j=0;i[a+44>>2]=0;b=i[l>>2];c=i[l+4>>2];d=c>>>5|0;f=c&31;if(d|f){h=(d<<2)+b|0;c=0;e=b;while(1){if(!(i[e>>2]>>>c&1)){j=j+1|0;i[a+44>>2]=j}d=(c|0)==31;c=d?0:c+1|0;e=d?e+4|0:e;if((h|0)!=(e|0)|(c|0)!=(f|0)){continue}break}}a=i[q>>2];if(a){nn(a);b=i[l>>2]}if(b){nn(b)}J=k+48|0}function Pa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=J-96|0;J=g;a:{b:{if(j[i[a+28>>2]+36|0]<=1){f=i[b+12>>2];c=i[b+20>>2];h=i[b+16>>2];d=h+4|0;if(d>>>0<4){c=c+1|0}e=d;d=c;if((f|0)<(c|0)?1:(f|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=h+i[b>>2]|0;h=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=e;i[b+20>>2]=d;break b}if(!Qa(1,g+92|0,b)){break a}h=i[g+92>>2]}if(!h){break a}d=i[b+8>>2];c=i[b+16>>2];c=Gn(d-c|0,i[b+12>>2]-(i[b+20>>2]+(d>>>0>>0)|0)|0,5,0)>>>0>>0;d=L;if((d|0)<0?1:(d|0)<=0?c:0){break a}c=i[a+4>>2];d=i[a+8>>2]-c>>2;c:{if(h>>>0>d>>>0){Ra(a+4|0,h-d|0);break c}if(h>>>0>=d>>>0){break c}i[a+8>>2]=c+(h<<2)}y=h>>>0>1?h:1;u=a+16|0;v=i[a+32>>2];w=1;while(1){d:{q=i[b+8>>2];m=i[b+16>>2];e=i[b+12>>2];c=e;d=i[b+20>>2];if((c|0)<(d|0)?1:(c|0)<=(d|0)?q>>>0<=m>>>0:0){break d}s=i[b>>2];x=j[s+m|0];c=d;n=m+1|0;if(n>>>0<1){c=c+1|0}f=b;i[b+16>>2]=n;i[b+20>>2]=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?q>>>0<=n>>>0:0){break d}n=j[n+s|0];c=d;p=m+2|0;if(p>>>0<2){c=c+1|0}i[b+16>>2]=p;i[f+20>>2]=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?q>>>0<=p>>>0:0){break d}p=j[p+s|0];c=d;t=m+3|0;if(t>>>0<3){c=c+1|0}i[b+16>>2]=t;i[f+20>>2]=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?q>>>0<=t>>>0:0){break d}e=j[t+s|0];c=d;d=m+4|0;if(d>>>0<4){c=c+1|0}i[b+16>>2]=d;i[f+20>>2]=c;if(!p|(x>>>0>4|(n+ -1&255)>>>0>10)){break d}m=Ea(g+24|0);d=o(Fh(n),p);Fa(m,x,p<<24>>24,n,(e|0)!=0,d,d>>31);d=k[i[a+28>>2]+36>>1];e:{if((d<<24|d<<8&16711680)>>>16>>>0<=258){f=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+2|0;if(d>>>0<2){c=c+1|0}q=d;d=c;if((f|0)<(c|0)?1:(f|0)<=(c|0)?l[b+8>>2]>>0:0){break d}c=e+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8;i[b+16>>2]=q;i[b+20>>2]=d;i[g+20>>2]=c;break e}if(!Qa(1,g+20|0,b)){break d}c=i[g+20>>2]}i[g+84>>2]=c;d=Dm(96);Ja(d,m);i[g+16>>2]=d;d=pl(v,g+16|0);f=i[g+16>>2];i[g+16>>2]=0;if(f){Sa(f)}e=d<<2;i[i[e+i[v+8>>2]>>2]+60>>2]=c;i[i[a+4>>2]+(r<<2)>>2]=d;c=i[a+16>>2];f=i[a+20>>2]-c>>2;f:{if((d|0)<(f|0)){break f}i[g+12>>2]=-1;d=d+1|0;if(d>>>0>f>>>0){Ta(u,d-f|0,g+12|0);c=i[u>>2];break f}if(d>>>0>=f>>>0){break f}i[a+20>>2]=(d<<2)+c}i[c+e>>2]=r;r=r+1|0;w=r>>>0>>0;if((r|0)!=(y|0)){continue}}break}r=w^1}J=g+96|0;return r&1}function xl(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0;h=J-672|0;J=h;g=i[b+12>>2];a:{e=i[b+20>>2];f=i[b+16>>2];d=f+4|0;if(d>>>0<4){e=e+1|0}b:{if((g|0)<(e|0)?1:(g|0)<=(e|0)?l[b+8>>2]>>0:0){break b}d=f+i[b>>2]|0;k=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=k;d=i[b+20>>2];g=d;n=i[b+16>>2];e=n+4|0;if(e>>>0<4){d=d+1|0}i[b+16>>2]=e;i[b+20>>2]=d;if(k>>>0>31){break b}f=i[b+12>>2];d=n+8|0;if(d>>>0<8){g=g+1|0}if((f|0)<(g|0)?1:(f|0)<=(g|0)?l[b+8>>2]>>0:0){break b}d=e+i[b>>2]|0;i[a+4>>2]=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);d=i[b+20>>2];g=d;n=i[b+16>>2];e=n+4|0;if(e>>>0<4){d=d+1|0}i[b+16>>2]=e;i[b+20>>2]=d;k=i[b+12>>2];d=g;f=n+8|0;if(f>>>0<8){d=d+1|0}if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]>>0:0){break b}d=e+i[b>>2]|0;k=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+12>>2]=k;g=i[b+20>>2];f=g;d=b;p=d;n=i[d+16>>2];e=n+4|0;if(e>>>0<4){g=g+1|0}i[p+16>>2]=e;i[d+20>>2]=g;d=i[a+20>>2];if((d|0)!=(k|0)?d:0){break b}g=i[b+12>>2];d=f;f=n+8|0;if(f>>>0<8){d=d+1|0}if((g|0)<(d|0)?1:(g|0)<=(d|0)?l[b+8>>2]>>0:0){break b}d=e+i[b>>2]|0;g=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+16>>2]=g;d=b;p=d;e=i[d+20>>2];f=i[d+16>>2]+4|0;if(f>>>0<4){e=e+1|0}i[p+16>>2]=f;i[d+20>>2]=e;if(g>>>0>=7){i[h>>2]=g;wn(14876,h);break b}i[h+664>>2]=c;c:{if(!k){break c}e=i[c>>2];d:{if((i[c+8>>2]-e|0)/12>>>0>=k>>>0){break d}if(k>>>0>=357913942){break a}m=i[c+4>>2];d=o(k,12);f=Dm(d);g=d+f|0;d=f+o((m-e|0)/12|0,12)|0;f=d;if((e|0)!=(m|0)){f=d;while(1){f=f+ -12|0;m=m+ -12|0;i[f>>2]=i[m>>2];i[f+4>>2]=i[m+4>>2];i[f+8>>2]=i[m+8>>2];if((e|0)!=(m|0)){continue}break}}i[c+8>>2]=g;i[c+4>>2]=d;i[c>>2]=f;if(!e){break d}nn(e)}m=0;e:{switch(i[a+16>>2]){case 0:d=gb(h+8|0,3);yl(d,b,h+664|0);fb(d);break c;case 1:d=gb(h+8|0,3);zl(d,b,h+664|0);fb(d);break c;case 2:d=kb(h+8|0,3);Al(d,b,h+664|0);jb(d);break c;case 3:d=kb(h+8|0,3);Bl(d,b,h+664|0);jb(d);break c;case 4:d=ob(h+8|0,3);Cl(d,b,h+664|0);nb(d);break c;case 5:d=ob(h+8|0,3);Dl(d,b,h+664|0);nb(d);break c;case 6:break e;default:break b}}d=ob(h+8|0,3);El(d,b,h+664|0);nb(d)}m=i[a+12>>2]==((i[c+4>>2]-i[c>>2]|0)/12|0)}J=h+672|0;return m}Ba(14937);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,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=J-48|0;J=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){Id(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,h,d);i[g+12>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=Ce(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];h=i[h>>2];i[g+36>>2]=f;i[g+32>>2]=e;i[g+24>>2]=h;i[g+28>>2]=j;ge(g+40|0,o,g+32|0,g+24|0);d=c+d|0;i[d>>2]=i[g+40>>2];i[d+4>>2]=i[g+44>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Tm();x()}J=g+48|0;return 1}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;var g=0,h=0,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=J-48|0;J=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){od(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,h,d);i[g+12>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=Ce(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];h=i[h>>2];i[g+36>>2]=f;i[g+32>>2]=e;i[g+24>>2]=h;i[g+28>>2]=j;ge(g+40|0,o,g+32|0,g+24|0);d=c+d|0;i[d>>2]=i[g+40>>2];i[d+4>>2]=i[g+44>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Tm();x()}J=g+48|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,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=J-48|0;J=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){Id(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,h,d);i[g+12>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=Ce(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];i[g+40>>2]=i[h>>2];i[g+44>>2]=j;i[g+28>>2]=f;i[g+24>>2]=e;Yd(g+32|0,o,g+24|0,g+40|0);d=c+d|0;i[d>>2]=i[g+32>>2];i[d+4>>2]=i[g+36>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Tm();x()}J=g+48|0;return 1}function Xd(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,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=J-48|0;J=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){od(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,h,d);i[g+12>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=Ce(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];i[g+40>>2]=i[h>>2];i[g+44>>2]=j;i[g+28>>2]=f;i[g+24>>2]=e;Yd(g+32|0,o,g+24|0,g+40|0);d=c+d|0;i[d>>2]=i[g+32>>2];i[d+4>>2]=i[g+36>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Tm();x()}J=g+48|0;return 1}function Wk(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0;d=J-48|0;J=d;c=Dm(8);i[c+4>>2]=b;i[c>>2]=0;b=c+8|0;i[d+40>>2]=b;i[d+36>>2]=b;i[d+32>>2]=c;a:{b:{c:{d:{while(1){b=b+ -8|0;m=i[b+4>>2];q=i[b>>2];i[d+36>>2]=b;if(q){i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;n=1;b=i[a>>2];h=i[b+16>>2];f=i[b+12>>2];c=i[b+20>>2];e:{if((f|0)<(c|0)?1:(f|0)<=(c|0)?l[b+8>>2]<=h>>>0:0){break e}e=j[h+i[b>>2]|0];f=h+1|0;if(f>>>0<1){c=c+1|0}i[b+16>>2]=f;i[b+20>>2]=c;Lm(d+16|0,e);if(e){f=i[a>>2];p=Pm(d+16|0);k=i[f+12>>2];h=i[f+20>>2];o=i[f+16>>2];b=e;c=o+b|0;if(c>>>0>>0){h=h+1|0}if((k|0)<(h|0)?1:(k|0)<=(h|0)?l[f+8>>2]>>0:0){break e}pn(p,o+i[f>>2]|0,e);c=f;f=c;h=i[c+20>>2];e=b+i[c+16>>2]|0;if(e>>>0>>0){h=h+1|0}i[f+16>>2]=e;i[c+20>>2]=h}m=Dm(24);b=m;i[b+4>>2]=0;i[b+8>>2]=0;i[b+16>>2]=0;i[b+20>>2]=0;i[b>>2]=b+4;i[b+12>>2]=b+16;i[d+8>>2]=b;b=il(q,d+16|0,d+8|0);c=i[d+8>>2];i[d+8>>2]=0;if(c){qh(c+12|0,i[c+16>>2]);rh(c,i[c+4>>2]);nn(c)}n=b^1}if(g[d+27|0]<=-1){nn(i[d+16>>2])}if(n){break b}}if(!m){break b}i[d+16>>2]=0;if(!Xk(1,d+16|0,i[a>>2])){break b}b=0;c=i[d+16>>2];if(c){while(1){if(!Yk(a,m)){break b}b=b+1|0;if((c|0)!=(b|0)){continue}break}}i[d+4>>2]=0;if(!Xk(1,d+4|0,i[a>>2])){break b}e=i[a>>2];c=i[e+8>>2];b=i[e+16>>2];p=i[d+4>>2];f=c-b>>>0

>>0;b=i[e+12>>2]-(i[e+20>>2]+(c>>>0>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?f:0){break b}if(p){n=0;while(1){b=i[d+36>>2];c=i[d+40>>2];f:{if(b>>>0>>0){i[b+4>>2]=0;i[b>>2]=m;i[d+36>>2]=b+8;break f}k=i[d+32>>2];o=b-k|0;b=o>>3;h=b+1|0;if(h>>>0>=536870912){break d}f=b<<3;e=c-k|0;c=e>>2;e=e>>3>>>0<268435455?c>>>0>>0?h:c:536870911;b=0;g:{if(!e){break g}if(e>>>0>=536870912){break c}b=Dm(e<<3)}c=f+b|0;i[c+4>>2]=0;i[c>>2]=m;e=b+(e<<3)|0;c=c+8|0;if((o|0)>=1){pn(b,k,o)}i[d+40>>2]=e;i[d+36>>2]=c;i[d+32>>2]=b;if(!k){break f}nn(k)}n=n+1|0;if((p|0)!=(n|0)){continue}break}}b=i[d+36>>2];c=i[d+32>>2];if((b|0)!=(c|0)){continue}break}a=1;break a}Sm();x()}Ba(14616);x()}c=i[d+32>>2];a=0}if(c){i[d+36>>2]=c;nn(c)}J=d+48|0;return a}function of(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=1048575){ye(m,1048576-d|0);break h}if((c|0)==4194304){break h}i[a+20>>2]=b+4194304}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=1048576){b=0;while(1){k:{if(e>>>0>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>1048576){break k}continue}}break}b=b>>>0>>0}a=(d|0)==1048576}return a&(b^1)}return r}function kf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=262143){ye(m,262144-d|0);break h}if((c|0)==1048576){break h}i[a+20>>2]=b- -1048576}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=262144){b=0;while(1){k:{if(e>>>0>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>262144){break k}continue}}break}b=b>>>0>>0}a=(d|0)==262144}return a&(b^1)}return r}function mf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=524287){ye(m,524288-d|0);break h}if((c|0)==2097152){break h}i[a+20>>2]=b+2097152}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=524288){b=0;while(1){k:{if(e>>>0>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>524288){break k}continue}}break}b=b>>>0>>0}a=(d|0)==524288}return a&(b^1)}return r}function hf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=65535){ye(m,65536-d|0);break h}if((c|0)==262144){break h}i[a+20>>2]=b+262144}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=65536){b=0;while(1){k:{if(e>>>0>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>65536){break k}continue}}break}b=b>>>0>>0}a=(d|0)==65536}return a&(b^1)}return r}function ff(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=32767){ye(m,32768-d|0);break h}if((c|0)==131072){break h}i[a+20>>2]=b+131072}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=32768){b=0;while(1){k:{if(e>>>0>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>32768){break k}continue}}break}b=b>>>0>>0}a=(d|0)==32768}return a&(b^1)}return r}function df(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=8191){ye(m,8192-d|0);break h}if((c|0)==32768){break h}i[a+20>>2]=b+32768}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=8192){b=0;while(1){k:{if(e>>>0>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>8192){break k}continue}}break}b=b>>>0>>0}a=(d|0)==8192}return a&(b^1)}return r}function Te(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=4095){ye(m,4096-d|0);break h}if((c|0)==16384){break h}i[a+20>>2]=b+16384}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=4096){b=0;while(1){k:{if(e>>>0>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>4096){break k}continue}}break}b=b>>>0>>0}a=(d|0)==4096}return a&(b^1)}return r}function Uf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;j=J-16|0;J=j;c=i[a+4>>2];i[a+40>>2]=i[a>>2];i[a+44>>2]=c;e=a+32|0;c=e;d=i[c+4>>2];i[a+72>>2]=i[c>>2];i[a+76>>2]=d;d=a+24|0;g=i[d+4>>2];c=a- -64|0;i[c>>2]=i[d>>2];i[c+4>>2]=g;f=a+16|0;c=f;g=i[c+4>>2];i[a+56>>2]=i[c>>2];i[a+60>>2]=g;g=a+8|0;c=g;h=i[c+4>>2];i[a+48>>2]=i[c>>2];i[a+52>>2]=h;a:{b:{c=a+40|0;if(Ch(c,1,j+8|0)){h=i[c+4>>2];i[a>>2]=i[c>>2];i[a+4>>2]=h;h=i[c+36>>2];i[e>>2]=i[c+32>>2];i[e+4>>2]=h;e=i[c+28>>2];i[d>>2]=i[c+24>>2];i[d+4>>2]=e;d=i[c+20>>2];h=d;e=i[c+16>>2];i[f>>2]=e;i[f+4>>2]=d;d=i[c+12>>2];f=d;c=i[c+8>>2];i[g>>2]=c;i[g+4>>2]=d;d=e;g=c-d|0;l=i[j+12>>2];d=f-((c>>>0>>0)+h|0)|0;c=i[j+8>>2];if((l|0)==(d|0)&c>>>0<=g>>>0|l>>>0>>0){break b}}c=0;break a}f=h+l|0;e=c+e|0;if(e>>>0>>0){f=f+1|0}i[a+16>>2]=e;i[a+20>>2]=f;c:{if(k[a+38>>1]<=513){c=i[a+4>>2];i[a+96>>2]=i[a>>2];i[a+100>>2]=c;e=a+32|0;c=e;d=i[c+4>>2];i[a+128>>2]=i[c>>2];i[a+132>>2]=d;d=a+24|0;c=d;f=i[c+4>>2];i[a+120>>2]=i[c>>2];i[a+124>>2]=f;f=a+16|0;c=f;g=i[c+4>>2];i[a+112>>2]=i[c>>2];i[a+116>>2]=g;g=a+8|0;c=g;h=i[c+4>>2];i[a+104>>2]=i[c>>2];i[a+108>>2]=h;d:{c=a+96|0;if(Ch(c,1,j+8|0)){h=i[c+4>>2];i[a>>2]=i[c>>2];i[a+4>>2]=h;h=i[c+36>>2];i[e>>2]=i[c+32>>2];i[e+4>>2]=h;e=i[c+28>>2];i[d>>2]=i[c+24>>2];i[d+4>>2]=e;d=i[c+20>>2];h=d;e=i[c+16>>2];i[f>>2]=e;i[f+4>>2]=d;d=i[c+12>>2];f=d;c=i[c+8>>2];i[g>>2]=c;i[g+4>>2]=d;d=e;g=c-d|0;l=i[j+12>>2];d=f-((c>>>0>>0)+h|0)|0;c=i[j+8>>2];if((l|0)==(d|0)&c>>>0<=g>>>0|l>>>0>>0){break d}}c=0;break a}f=h+l|0;e=c+e|0;if(e>>>0>>0){f=f+1|0}i[a+16>>2]=e;i[a+20>>2]=f;break c}c=0;if(!Ae(a+80|0,a)){break a}}c=0;if(!_f(a)){break a}c=i[a+4>>2];i[b>>2]=i[a>>2];i[b+4>>2]=c;c=i[a+36>>2];i[b+32>>2]=i[a+32>>2];i[b+36>>2]=c;c=i[a+28>>2];i[b+24>>2]=i[a+24>>2];i[b+28>>2]=c;c=i[a+20>>2];i[b+16>>2]=i[a+16>>2];i[b+20>>2]=c;c=i[a+12>>2];i[b+8>>2]=i[a+8>>2];i[b+12>>2]=c;c=1}J=j+16|0;return c}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,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;a:{s=M[i[i[a>>2]+44>>2]](a)|0;if((s|0)<1){break a}h=i[b+4>>2]-i[b>>2]>>2;rc(a,h,s);d=i[a+16>>2];if(!i[d+80>>2]){break a}f=i[i[d>>2]>>2];if(!f){break a}m=i[c+8>>2];k=i[c+16>>2];g=i[c+12>>2];n=g;e=i[c+20>>2];if((n|0)<(e|0)?1:(n|0)<=(e|0)?m>>>0<=k>>>0:0){break a}n=o(h,s);q=f+i[d+48>>2]|0;r=i[c>>2];t=j[r+k|0];h=c;d=e;f=k+1|0;if(f>>>0<1){d=d+1|0}p=f;f=d;i[h+16>>2]=p;i[h+20>>2]=d;b:{c:{d:{if(t){if(Qe(n,s,c,q)){break d}break a}if((g|0)<(f|0)?1:(g|0)<=(f|0)?m>>>0<=p>>>0:0){break a}h=j[p+r|0];d=e;e=k+2|0;if(e>>>0<2){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;d=Fh(5);e=i[i[a+16>>2]+64>>2];e=i[e+4>>2]-i[e>>2]|0;e:{if((d|0)==(h|0)){h=n<<2;if(e>>>0>>0){break a}f=i[c+12>>2];d=i[c+20>>2];k=i[c+16>>2];e=h;g=k+e|0;if(g>>>0>>0){d=d+1|0}if((f|0)>(d|0)?1:(f|0)>=(d|0)?l[c+8>>2]>=g>>>0:0){break e}break a}if(e>>>0>>0){break a}k=i[c+12>>2];d=i[c+20>>2];m=i[c+8>>2];f=m;p=i[c+16>>2];g=p;e=h;r=f-g>>>0>>0;f=k-(d+(f>>>0>>0)|0)|0;g=L;if((f|0)<(g|0)?1:(f|0)<=(g|0)?r:0){break a}f=1;if(!n){break c}g=0;f=m;m=e+p|0;if(m>>>0>>0){d=d+1|0}if((k|0)<(d|0)?1:(k|0)<=(d|0)?f>>>0>>0:0){break b}m=0;while(1){pn(q+(m<<2)|0,p+i[c>>2]|0,h);d=i[c+20>>2];p=e+i[c+16>>2]|0;if(p>>>0>>0){d=d+1|0}i[c+16>>2]=p;i[c+20>>2]=d;m=m+1|0;if((n|0)==(m|0)){break d}k=i[c+12>>2];r=e+p|0;if(r>>>0>>0){d=d+1|0}if((k|0)>(d|0)?1:(k|0)>=(d|0)?l[c+8>>2]>=r>>>0:0){continue}break}break b}pn(q,k+i[c>>2]|0,h);d=i[c+20>>2];f=e+i[c+16>>2]|0;if(f>>>0>>0){d=d+1|0}i[c+16>>2]=f;i[c+20>>2]=d}f=1;if(!n){break c}e=i[a+20>>2];if(e){f=0;if(M[i[i[e>>2]+32>>2]](e)|0){break c}}vh(q,n,q);f=0}e=i[a+20>>2];f:{if(!e){break f}if(!(M[i[i[e>>2]+40>>2]](e,c)|0)){break a}if(f){break f}g=0;a=i[a+20>>2];if(!(M[i[i[a>>2]+44>>2]](a,q,q,n,s,i[b>>2])|0)){break b}}g=1}return g|0}return 0}function Bk(a){var b=0,c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=J-32|0;J=e;b=i[a>>2];d=i[a+4>>2];g[e|0]=0;o=Ek(e+16|0,d-b>>2,e);i[e+8>>2]=0;i[e>>2]=0;k=i[a>>2];b=i[a+4>>2];a:{b:{while(1){c:{p=0;l=0;if((b|0)==(k|0)){break c}while(1){c=i[o>>2];d:{if(i[c+(l>>>3&536870908)>>2]>>>l&1){break d}d=i[e>>2];i[e+4>>2]=d;b=l;while(1){e:{f=b+1|0;q=b;b=(f>>>0)%3|0?f:b+ -2|0;if((b|0)==-1){break e}b=i[i[a+12>>2]+(b<<2)>>2];if((b|0)==-1){break e}f=b+1|0;b=(f>>>0)%3|0?f:b+ -2|0;if((l|0)==(b|0)|(b|0)==-1){break e}if(!(i[(b>>>3&536870908)+c>>2]>>>b&1)){continue}}break}f=d;b=q;while(1){j=(b>>>3&536870908)+c|0;i[j>>2]=i[j>>2]|1<>>0)%3|0?j:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;if((d|0)!=(f|0)){n=i[(j<<2)+k>>2];b=f;while(1){f:{if((n|0)!=i[b>>2]){break f}c=-1;h=i[b+4>>2];c=(m|0)!=-1?i[i[a+12>>2]+(m<<2)>>2]:c;if((h|0)==(c|0)){break f}d=-1;d=(h|0)!=-1?i[i[a+12>>2]+(h<<2)>>2]:d;if((c|0)!=-1){i[i[a+12>>2]+(c<<2)>>2]=-1}b=i[a+12>>2];if((d|0)!=-1){i[b+(d<<2)>>2]=-1}i[b+(m<<2)>>2]=-1;i[b+(h<<2)>>2]=-1;p=1;break d}b=b+8|0;if((d|0)!=(b|0)){continue}break}}n=m<<2;k=i[n+k>>2];g:{if(i[e+8>>2]!=(d|0)){b=d;i[b>>2]=k;i[b+4>>2]=j;i[e+4>>2]=b+8;break g}d=d-f|0;h=d>>3;c=h+1|0;if(c>>>0>=536870912){break b}b=d>>2;c=h>>>0<268435455?b>>>0>>0?c:b:536870911;b=0;h:{if(!c){break h}if(c>>>0>=536870912){break a}b=Dm(c<<3)}h=b+(h<<3)|0;i[h>>2]=k;i[h+4>>2]=j;j=b+(c<<3)|0;c=h+8|0;if((d|0)>=1){pn(b,f,d)}i[e+8>>2]=j;i[e+4>>2]=c;i[e>>2]=b;if(!f){break g}nn(f)}i:{if((m|0)==-1){break i}b=i[n+i[a+12>>2]>>2];if((b|0)==-1){break i}b=b+((b>>>0)%3|0?-1:2)|0;if((q|0)==(b|0)|(b|0)==-1){break i}k=i[a>>2];c=i[o>>2];d=i[e+4>>2];f=i[e>>2];continue}break}k=i[a>>2]}l=l+1|0;b=i[a+4>>2];if(l>>>0>2>>>0){continue}break}if(p){continue}}break}a=i[e>>2];if(a){i[e+4>>2]=a;nn(a)}a=i[o>>2];if(a){nn(a)}J=e+32|0;return}Sm();x()}Ba(14288);x()}function Hf(a,b,c){var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=J+ -64|0;J=e;h=i[i[b+4>>2]+44>>2];d=Dm(80);i[d+12>>2]=0;i[d+16>>2]=0;i[d>>2]=12784;i[d+4>>2]=0;i[d+76>>2]=0;i[d+72>>2]=c;i[d+68>>2]=h;i[d+64>>2]=0;i[d+56>>2]=0;i[d+60>>2]=0;i[d+8>>2]=12948;k=d+20|0;f=k;i[f>>2]=0;i[f+4>>2]=0;n=d+28|0;f=n;i[f>>2]=0;i[f+4>>2]=0;i[d+36>>2]=0;i[d+40>>2]=0;l=d+44|0;f=l;i[f>>2]=0;i[f+4>>2]=0;i[d+52>>2]=0;b=i[b+8>>2];o=e+36|0;f=o;i[f>>2]=0;i[f+4>>2]=0;p=e+28|0;f=p;i[f>>2]=0;i[f+4>>2]=0;q=e+20|0;f=q;i[f>>2]=0;i[f+4>>2]=0;f=e+12|0;i[f>>2]=0;i[f+4>>2]=0;i[e+52>>2]=0;i[e+56>>2]=0;i[e+44>>2]=0;i[e+48>>2]=0;i[e+4>>2]=0;i[e+8>>2]=0;i[e>>2]=12948;i[e+4>>2]=b;j=i[b>>2];m=i[b+4>>2];g[e+63|0]=0;Jf(e+24|0,(m-j>>2>>>0)/3|0,e+63|0);j=i[e+4>>2];m=i[j+28>>2];j=i[j+24>>2];g[e+63|0]=0;Jf(o,m-j>>2,e+63|0);i[q>>2]=d;i[e+16>>2]=h;i[f>>2]=c;i[e+8>>2]=b;i[n>>2]=d;b=i[f+4>>2];i[k>>2]=i[f>>2];i[k+4>>2]=b;b=i[e+8>>2];i[d+12>>2]=i[e+4>>2];i[d+16>>2]=b;a:{b:{c=d;b=i[p>>2];if(b){f=d+32|0;c:{if(b>>>0<=i[d+40>>2]<<5>>>0){h=b+ -1>>>5|0;b=i[f>>2];break c}f=i[f>>2];if(f){nn(f);i[d+40>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;b=i[e+28>>2]}if((b|0)<=-1){break b}h=b+ -1>>>5|0;f=h+1|0;b=Dm(f<<2);i[d+40>>2]=f;i[d+36>>2]=0;i[d+32>>2]=b}rn(b,i[e+24>>2],(h<<2)+4|0);b=i[e+28>>2]}else{b=0}i[c+36>>2]=b;f=d;b=i[e+40>>2];if(b){d:{if(b>>>0<=i[d+52>>2]<<5>>>0){c=b+ -1>>>5|0;b=i[l>>2];break d}c=i[l>>2];if(c){nn(c);i[d+52>>2]=0;i[d+44>>2]=0;i[d+48>>2]=0;b=i[e+40>>2]}if((b|0)<=-1){break a}c=b+ -1>>>5|0;h=c+1|0;b=Dm(h<<2);i[d+52>>2]=h;i[d+48>>2]=0;i[d+44>>2]=b}rn(b,i[e+36>>2],(c<<2)+4|0);b=i[e+40>>2]}else{b=0}i[f+48>>2]=b;Ma(d+56|0,i[e+48>>2],i[e+52>>2]);i[a>>2]=d;i[e>>2]=12948;a=i[e+48>>2];if(a){i[e+52>>2]=a;nn(a)}i[e>>2]=12764;a=i[e+36>>2];if(a){nn(a)}a=i[e+24>>2];if(a){nn(a)}J=e- -64|0;return}Sm();x()}Sm();x()}function Uk(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;e=o(b,12)+a|0;n=e+12|0;p=e+8|0;i[n>>2]=i[p>>2];l=(c|0)==-1?-1:(c>>>0)/3|0;r=e+16|0;s=1;e=c;a:{b:{c:{while(1){d:{q=h;if(h){if((e|0)==-1){break d}if((Vk(a,((e>>>0)%3|0?-1:2)+e|0)|0)==-1){break a}c=e+1|0;c=(c>>>0)%3|0?c:e+ -2|0;if((c|0)==-1){break a}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;if((c|0)==-1){break a}c=i[i[i[a+4>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break a}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;if((c|0)==-1){break a}l=(c>>>0)/3|0}j=1<>2]+(l>>>3&536870908)|0;k=i[g>>2];e:{if(j&k){break e}f=0;while(1){i[g>>2]=k|j;d=i[n>>2];f:{if((d|0)!=i[r>>2]){i[d>>2]=l;i[n>>2]=d+4;break f}k=i[p>>2];j=d-k|0;m=j>>2;g=m+1|0;if(g>>>0>=1073741824){break c}d=j>>1;g=m>>>0<536870911?d>>>0>>0?g:d:1073741823;d=0;g:{if(!g){break g}if(g>>>0>=1073741824){break b}d=Dm(g<<2)}m=d+(m<<2)|0;i[m>>2]=l;g=d+(g<<2)|0;m=m+4|0;if((j|0)>=1){pn(d,k,j)}i[p>>2]=d;i[n>>2]=m;i[r>>2]=g;if(!k){break f}nn(k)}d=f+1|0;h:{if(!f){break h}if(d&1){if((c|0)==-1){c=-1;break h}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;break h}e=q?c:e;if((c|0)==-1){c=-1;break h}if((c>>>0)%3|0){c=c+ -1|0;break h}c=c+2|0}c=Vk(a,c);if((c|0)!=-1){f=d;l=(c>>>0)/3|0;g=i[a+56>>2]+(l>>>3&268435452)|0;k=i[g>>2];j=1<>2]+ -4|0;f=i[h>>2];d=i[a+56>>2]+(f>>>3&536870908)|0;q=i[d>>2];t=d,u=Kn(f)&q,i[t>>2]=u;i[n>>2]=h}h=1;f=s;s=0;if(f){continue}break a}break}e=-1;Vk(a,-1);break a}Sm();x()}Ba(14548);x()}i[((b<<2)+a|0)+44>>2]=e;e=i[n>>2];b=i[p>>2];if((e|0)!=(b|0)){c=e-b|0;h=(c|0)>-1?c:-1;e=b-e|0;c=o((h|0)<1?h:1,((e|0)>(c|0)?e:c)>>>2|0);e=c>>>0>1?c:1;a=i[a+56>>2];c=0;while(1){h=i[b+(c<<2)>>2];f=a+(h>>>3&536870908)|0;d=i[f>>2];t=f,u=Kn(h)&d,i[t>>2]=u;c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function Yg(a,b){var c=0,d=0,e=0;i[a>>2]=i[b>>2];i[a+4>>2]=i[b+4>>2];i[a+8>>2]=i[b+8>>2];c=b+12|0;i[a+12>>2]=i[c>>2];i[c>>2]=0;i[b+4>>2]=0;i[b+8>>2]=0;c=b+16|0;i[a+16>>2]=i[c>>2];i[a+20>>2]=i[b+20>>2];d=b+24|0;i[a+24>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=j[b+28|0];e=a+40|0;i[e>>2]=0;c=a+32|0;i[c>>2]=0;i[c+4>>2]=0;g[a+28|0]=d;d=c;c=b+32|0;i[d>>2]=i[c>>2];i[a+36>>2]=i[b+36>>2];d=b+40|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a+52|0;i[d>>2]=0;c=a+44|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+44|0;i[e>>2]=i[c>>2];i[a+48>>2]=i[b+48>>2];e=d;d=b+52|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a- -64|0;i[d>>2]=0;c=a+56|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+56|0;i[e>>2]=i[c>>2];i[a+60>>2]=i[b+60>>2];e=d;d=b- -64|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;i[a+68>>2]=i[b+68>>2];d=i[b+72>>2];e=a+84|0;i[e>>2]=0;c=a+76|0;i[c>>2]=0;i[c+4>>2]=0;i[a+72>>2]=d;d=c;c=b+76|0;i[d>>2]=i[c>>2];i[a+80>>2]=i[b+80>>2];d=b+84|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a+96|0;i[d>>2]=0;c=a+88|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+88|0;i[e>>2]=i[c>>2];i[a+92>>2]=i[b+92>>2];e=d;d=b+96|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;c=j[b+100|0];d=a+112|0;i[d>>2]=0;i[a+104>>2]=0;i[a+108>>2]=0;g[a+100|0]=c;i[a+104>>2]=i[b+104>>2];i[a+108>>2]=i[b+108>>2];c=b+112|0;i[d>>2]=i[c>>2];i[c>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;d=a+124|0;i[d>>2]=0;c=a+116|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+116|0;i[e>>2]=i[c>>2];i[a+120>>2]=i[b+120>>2];e=d;d=b+124|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;c=i[b+128>>2];d=a+140|0;i[d>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+128>>2]=c;i[a+132>>2]=i[b+132>>2];i[a+136>>2]=i[b+136>>2];c=b+140|0;i[d>>2]=i[c>>2];i[c>>2]=0;i[b+132>>2]=0;i[b+136>>2]=0;return a}function Xf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;h=J-16|0;J=h;i[h>>2]=b;g=-1;a:{if((b|0)==-1){i[h+4>>2]=-1;break a}c=b+1|0;i[h+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}i[h+8>>2]=g;q=(b|0)==-1?-1:(b>>>0)/3|0;b:{c:{d:{e:{while(1){f:{g:{if((b|0)!=-1){c=i[i[i[a+8>>2]+12>>2]+(b<<2)>>2];if((c|0)!=-1){break g}}g=0;c=i[a+216>>2];if((c|0)==i[a+220>>2]){break f}while(1){f=o(g,144)+c|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];h:{if(c>>>0>>0){i[c>>2]=b;i[j>>2]=c+4;break h}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break e}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;i:{if(!e){break i}if(e>>>0>=1073741824){break d}c=Dm(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){pn(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break h}nn(f)}g=g+1|0;c=i[a+216>>2];if(g>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0>>0){break f}g=0;if(i[a+220>>2]==i[a+216>>2]){break f}while(1){j:{if(!Ce(i[a+368>>2]+(g<<4)|0)){break j}f=i[a+216>>2]+o(g,144)|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];if(c>>>0>>0){i[c>>2]=b;i[j>>2]=c+4;break j}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break c}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;k:{if(!e){break k}if(e>>>0>=1073741824){break b}c=Dm(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){pn(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break j}nn(f)}g=g+1|0;if(g>>>0<(i[a+220>>2]-i[a+216>>2]|0)/144>>>0){continue}break}}p=p+1|0;if((p|0)!=3){b=i[(p<<2)+h>>2];continue}break}J=h+16|0;return 1}Sm();x()}Ba(12220);x()}Sm();x()}Ba(12220);x()}function He(a,b,c,d){var e=0,f=0,h=0;e=J-80|0;J=e;f=i[c+36>>2];i[e+72>>2]=i[c+32>>2];i[e+76>>2]=f;h=i[c+28>>2];f=e- -64|0;i[f>>2]=i[c+24>>2];i[f+4>>2]=h;f=i[c+20>>2];i[e+56>>2]=i[c+16>>2];i[e+60>>2]=f;f=i[c+12>>2];i[e+48>>2]=i[c+8>>2];i[e+52>>2]=f;f=i[c+4>>2];i[e+40>>2]=i[c>>2];i[e+44>>2]=f;jh(a,e+40|0,e+24|0);a:{if(i[a>>2]){break a}h=a+4|0;if(g[a+15|0]<=-1){nn(i[h>>2])}if(j[e+31|0]){b=Dm(32);i[e>>2]=b;i[e+4>>2]=27;i[e+8>>2]=-2147483616;g[b+27|0]=0;c=j[11135]|j[11136]<<8|(j[11137]<<16|j[11138]<<24);g[b+23|0]=c;g[b+24|0]=c>>>8;g[b+25|0]=c>>>16;g[b+26|0]=c>>>24;c=j[11132]|j[11133]<<8|(j[11134]<<16|j[11135]<<24);d=j[11128]|j[11129]<<8|(j[11130]<<16|j[11131]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[11124]|j[11125]<<8|(j[11126]<<16|j[11127]<<24);d=j[11120]|j[11121]<<8|(j[11122]<<16|j[11123]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11116]|j[11117]<<8|(j[11118]<<16|j[11119]<<24);d=j[11112]|j[11113]<<8|(j[11114]<<16|j[11115]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;Gm(h,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}Ee(e,g[e+32|0]);f=i[e>>2];b:{if(f){i[a>>2]=f;Gm(h,e|4);break b}f=i[e+16>>2];i[e+16>>2]=0;mh(a,f,b,c,d);if(!i[a>>2]){if(g[h+11|0]<=-1){nn(i[h>>2])}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}if(!f){break b}M[i[i[f>>2]+4>>2]](f)}a=i[e+16>>2];i[e+16>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}if(g[e+15|0]>-1){break a}nn(i[e+4>>2])}J=e+80|0}function Wf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;h=J-16|0;J=h;i[h>>2]=b;g=-1;a:{if((b|0)==-1){i[h+4>>2]=-1;break a}c=b+1|0;i[h+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}i[h+8>>2]=g;b:{c:{while(1){d:{if(!((b|0)==-1|i[i[i[a+8>>2]+12>>2]+(b<<2)>>2]==-1)){g=0;if(i[a+220>>2]==i[a+216>>2]){break d}e:{while(1){f:{g:{if(!Ce(i[a+368>>2]+(g<<4)|0)){break g}f=i[a+216>>2]+o(g,144)|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];if(c>>>0>>0){i[c>>2]=b;i[j>>2]=c+4;break g}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break f}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;h:{if(!e){break h}if(e>>>0>=1073741824){break e}c=Dm(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){pn(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break g}nn(f)}g=g+1|0;if(g>>>0<(i[a+220>>2]-i[a+216>>2]|0)/144>>>0){continue}break d}break}Sm();x()}Ba(12220);x()}g=0;c=i[a+216>>2];if((c|0)==i[a+220>>2]){break d}while(1){f=o(g,144)+c|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];i:{if(c>>>0>>0){i[c>>2]=b;i[j>>2]=c+4;break i}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break c}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;j:{if(!e){break j}if(e>>>0>=1073741824){break b}c=Dm(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){pn(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break i}nn(f)}g=g+1|0;c=i[a+216>>2];if(g>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}p=p+1|0;if((p|0)!=3){b=i[(p<<2)+h>>2];continue}break}J=h+16|0;return 1}Sm();x()}Ba(12220);x()}function ge(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=c;k=i[b+16>>2];g=i[f+4>>2]-k|0;e=i[f>>2]-k|0;i[f>>2]=e;i[f+4>>2]=g;f=g>>31;h=f+g^f;f=e>>31;m=i[b+16>>2];l=(h+(f+e^f)|0)<=(m|0);a:{if(l){f=g;break a}b:{c:{if((e|0)>=0){j=1;h=1;if((g|0)>-1){break b}f=1;j=-1;h=-1;if((e|0)>=1){break c}break b}f=-1;j=-1;h=-1;if((g|0)<1){break b}}j=(g|0)<1?-1:1;h=f}f=e<<1;e=o(h,m);f=f-e|0;h=(o(h,j)|0)>-1;j=o(j,m);f=((h?0-f|0:f)+j|0)/2|0;i[c+4>>2]=f;g=(g<<1)-j|0;e=(e+(h?0-g|0:g)|0)/2|0;i[c>>2]=e}d:{e:{f:{g:{h:{if(!e){if(f){break h}j=1;f=0;g=0;h=0;break d}j=1;g=(e|0)<0&(f|0)<1;i:{if((e|0)>=1){h=(f|0)>-1?2:1;if(!g){break i}g=e;break d}h=(f|0)>0?3:0;if(!g){break i}g=e;break d}j=h+ -1|0;h=0;g=e;j:{switch(j|0){case 1:break j;case 0:break f;case 2:break g;default:break e}}f=0-f|0;g=0-e|0;h=2;break e}if((f|0)<1){break f}}g=0-f|0;h=3;f=e;break e}h=1;g=f;f=0-e|0}e=c;i[e>>2]=g;i[e+4>>2]=f;j=0}c=i[d+4>>2]+f|0;f=i[b+16>>2];e=i[d>>2]+g|0;k:{if((f|0)<(e|0)){e=e-i[b+4>>2]|0;break k}if((e|0)>=(0-f|0)){break k}e=i[b+4>>2]+e|0}l:{if((f|0)<(c|0)){c=c-i[b+4>>2]|0;break l}if((c|0)>=(0-f|0)){break l}c=i[b+4>>2]+c|0}m:{if(j){b=c;break m}b=c;n:{switch((4-h&3)+ -1|0){case 0:b=0-e|0;e=c;break m;case 1:b=0-c|0;e=0-e|0;break m;case 2:break n;default:break m}}b=e;e=0-c|0}o:{if(l){c=b;break o}p:{q:{if((e|0)>=0){c=1;g=1;if((b|0)>-1){break p}d=1;c=-1;g=-1;if((e|0)>=1){break q}break p}d=-1;c=-1;g=-1;if((b|0)<1){break p}}c=(b|0)<1?-1:1;g=d}d=e<<1;e=o(f,g);d=d-e|0;i[a>>2]=d;l=0-d|0;h=d;d=(o(c,g)|0)>-1;g=o(c,f);c=((d?l:h)+g|0)/2|0;b=(b<<1)-g|0;e=(e+(d?0-b|0:b)|0)/2|0}i[a>>2]=e+k;i[a+4>>2]=c+k}function Ee(a,b){var c=0,d=0,e=0;e=J-32|0;J=e;a:{b:{switch(b|0){case 0:c=Dm(44);b=c;i[b>>2]=0;i[b+4>>2]=0;i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=0;i[b+28>>2]=0;i[b+16>>2]=0;i[b+20>>2]=0;i[b+8>>2]=0;i[b+12>>2]=0;ih(b);i[b>>2]=13952;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;case 1:c=Dm(44);b=c;i[b>>2]=0;i[b+4>>2]=0;i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=0;i[b+28>>2]=0;i[b+16>>2]=0;i[b+20>>2]=0;i[b+8>>2]=0;i[b+12>>2]=0;ih(b);i[b>>2]=13860;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;default:break b}}b=Dm(32);i[e>>2]=b;i[e+4>>2]=28;i[e+8>>2]=-2147483616;g[b+28|0]=0;c=j[11080]|j[11081]<<8|(j[11082]<<16|j[11083]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;c=j[11076]|j[11077]<<8|(j[11078]<<16|j[11079]<<24);d=j[11072]|j[11073]<<8|(j[11074]<<16|j[11075]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[11068]|j[11069]<<8|(j[11070]<<16|j[11071]<<24);d=j[11064]|j[11065]<<8|(j[11066]<<16|j[11067]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11060]|j[11061]<<8|(j[11062]<<16|j[11063]<<24);d=j[11056]|j[11057]<<8|(j[11058]<<16|j[11059]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[e+16>>2]=-1;b=Gm(e+16|4,e);i[a>>2]=i[e+16>>2];Gm(a+4|0,b);i[a+16>>2]=0;if(g[b+11|0]<=-1){nn(i[b>>2])}if(g[e+11|0]>-1){break a}nn(i[e>>2])}J=e+32|0}function fc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=J-16|0;J=e;h=M[i[i[a>>2]+24>>2]](a)|0;a:{if((h|0)<1){break a}q=a+48|0;k=1;while(1){b:{c:{if(!i[(M[i[i[a>>2]+28>>2]](a)|0)+40>>2]){break c}l=f<<2;b=i[l+i[a+36>>2]>>2];c=i[b+8>>2];m=Vb(b);if(!m){break c}n=i[(M[i[i[a>>2]+28>>2]](a)|0)+40>>2];o=i[c+56>>2];b=Dm(32);i[e>>2]=b;i[e+4>>2]=24;i[e+8>>2]=-2147483616;g[b+24|0]=0;c=j[2120]|j[2121]<<8|(j[2122]<<16|j[2123]<<24);d=j[2116]|j[2117]<<8|(j[2118]<<16|j[2119]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[2112]|j[2113]<<8|(j[2114]<<16|j[2115]<<24);d=j[2108]|j[2109]<<8|(j[2110]<<16|j[2111]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[2104]|j[2105]<<8|(j[2106]<<16|j[2107]<<24);d=j[2100]|j[2101]<<8|(j[2102]<<16|j[2103]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;d:{e:{d=n+16|0;b=d;c=i[b>>2];if(!c){break e}while(1){p=i[c+16>>2]<(o|0);b=p?b:c;c=i[(p<<2)+c>>2];if(c){continue}break}if((b|0)==(d|0)|(o|0)>2]){break e}b=b+20|0;if(!Kb(b,e)){break e}b=Jh(b,e);break d}b=Jh(n,e)}if(g[e+11|0]<=-1){nn(i[e>>2])}if(!b){break c}La(i[i[i[a+36>>2]+l>>2]+8>>2],m);break b}b=i[i[a+36>>2]+(f<<2)>>2];if(!(M[i[i[b>>2]+24>>2]](b,q)|0)){break a}}f=f+1|0;k=(f|0)<(h|0);if((f|0)!=(h|0)){continue}break}}J=e+16|0;return(k^-1)&1}function Oe(a,b,c,d,e){var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;a:{b:{c:{d:{e:{n=a+4|0;f:{if((n|0)==(b|0)){break f}f=j[b+27|0];h=f<<24>>24<0;k=j[e+11|0];p=k<<24>>24;g=(p|0)<0;f=h?i[b+20>>2]:f;k=g?i[e+4>>2]:k;l=f>>>0>>0;m=l?f:k;if(m){g=g?i[e>>2]:e;o=b+16|0;h=h?i[o>>2]:o;o=Nl(g,h,m);if(!o){if(k>>>0>>0){break f}break e}if((o|0)>-1){break e}break f}if(k>>>0>=f>>>0){break d}}h=i[b>>2];d=b;g:{h:{if(i[a>>2]==(b|0)){break h}i:{if(h){f=h;while(1){d=f;f=i[f+4>>2];if(f){continue}break}break i}d=b+8|0;if(i[i[b+8>>2]>>2]==(b|0)){while(1){f=i[d>>2];d=f+8|0;if((f|0)==i[i[f+8>>2]>>2]){continue}break}}d=i[d>>2]}g=j[e+11|0];f=g<<24>>24<0;l=j[d+27|0];k=l<<24>>24<0;j:{g=f?i[e+4>>2]:g;l=k?i[d+20>>2]:l;m=g>>>0>>0?g:l;if(m){n=d+16|0;f=Nl(k?i[n>>2]:n,f?i[e>>2]:e,m);if(f){break j}}if(l>>>0>>0){break h}break g}if((f|0)>-1){break g}}if(!h){i[c>>2]=b;return b}i[c>>2]=d;return d+4|0}return Pe(a,c,e)}f=Nl(h,g,m);if(f){break c}}if(l){break b}break a}if((f|0)>-1){break a}}h=i[b+4>>2];k:{if(h){f=h;while(1){d=f;f=i[f>>2];if(f){continue}break}break k}d=i[b+8>>2];if(i[d>>2]==(b|0)){break k}f=b+8|0;while(1){g=i[f>>2];f=g+8|0;d=i[g+8>>2];if((g|0)!=i[d>>2]){continue}break}}l:{m:{if((d|0)==(n|0)){break m}g=j[d+27|0];f=g<<24>>24<0;n:{g=f?i[d+20>>2]:g;l=g>>>0>>0?g:k;if(l){m=d+16|0;f=Nl((p|0)<0?i[e>>2]:e,f?i[m>>2]:m,l);if(f){break n}}if(k>>>0>>0){break m}break l}if((f|0)>-1){break l}}if(!h){i[c>>2]=b;return b+4|0}i[c>>2]=d;return d}return Pe(a,c,e)}i[c>>2]=b;i[d>>2]=b;return d}function Ge(a,b){var c=0,d=0,e=0;c=J-96|0;J=c;d=i[b+36>>2];i[c+88>>2]=i[b+32>>2];i[c+92>>2]=d;d=i[b+28>>2];i[c+80>>2]=i[b+24>>2];i[c+84>>2]=d;d=i[b+20>>2];i[c+72>>2]=i[b+16>>2];i[c+76>>2]=d;e=i[b+12>>2];d=c- -64|0;i[d>>2]=i[b+8>>2];i[d+4>>2]=e;d=i[b+4>>2];i[c+56>>2]=i[b>>2];i[c+60>>2]=d;jh(c+24|0,c+56|0,c+40|0);b=i[c+24>>2];a:{if(b){i[a>>2]=b;Gm(a+4|0,c+24|4);if(g[c+39|0]>-1){break a}nn(i[c+28>>2]);break a}if(g[c+39|0]<=-1){nn(i[c+28>>2])}b=j[c+47|0];if(b>>>0>=2){b=Dm(32);i[c+8>>2]=b;i[c+12>>2]=26;i[c+16>>2]=-2147483616;g[b+26|0]=0;d=j[11109]|j[11110]<<8;g[b+24|0]=d;g[b+25|0]=d>>>8;d=j[11105]|j[11106]<<8|(j[11107]<<16|j[11108]<<24);e=j[11101]|j[11102]<<8|(j[11103]<<16|j[11104]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11097]|j[11098]<<8|(j[11099]<<16|j[11100]<<24);e=j[11093]|j[11094]<<8|(j[11095]<<16|j[11096]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11089]|j[11090]<<8|(j[11091]<<16|j[11092]<<24);e=j[11085]|j[11086]<<8|(j[11087]<<16|j[11088]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[c+24>>2]=-1;b=Gm(c+24|4,c+8|0);i[a>>2]=i[c+24>>2];Gm(a+4|0,b);if(g[b+11|0]<=-1){nn(i[b>>2])}if(g[c+19|0]>-1){break a}nn(i[c+8>>2]);break a}i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;i[a+8>>2]=0;i[a+12>>2]=0}J=c+96|0}function Ie(a,b,c,d){var e=0,f=0,h=0;e=J-80|0;J=e;f=i[c+36>>2];i[e+72>>2]=i[c+32>>2];i[e+76>>2]=f;h=i[c+28>>2];f=e- -64|0;i[f>>2]=i[c+24>>2];i[f+4>>2]=h;f=i[c+20>>2];i[e+56>>2]=i[c+16>>2];i[e+60>>2]=f;f=i[c+12>>2];i[e+48>>2]=i[c+8>>2];i[e+52>>2]=f;f=i[c+4>>2];i[e+40>>2]=i[c>>2];i[e+44>>2]=f;jh(a,e+40|0,e+24|0);a:{if(i[a>>2]){break a}f=a+4|0;if(g[a+15|0]<=-1){nn(i[f>>2])}if(j[e+31|0]!=1){b=Dm(32);i[e>>2]=b;i[e+4>>2]=20;i[e+8>>2]=-2147483616;g[b+20|0]=0;c=j[11156]|j[11157]<<8|(j[11158]<<16|j[11159]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;c=j[11152]|j[11153]<<8|(j[11154]<<16|j[11155]<<24);d=j[11148]|j[11149]<<8|(j[11150]<<16|j[11151]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11144]|j[11145]<<8|(j[11146]<<16|j[11147]<<24);d=j[11140]|j[11141]<<8|(j[11142]<<16|j[11143]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;Gm(f,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}Fe(e,j[e+32|0]);h=i[e>>2];b:{if(h){i[a>>2]=h;Gm(f,e|4);break b}h=i[e+16>>2];i[e+16>>2]=0;i[h+44>>2]=d;mh(a,h,b,c,d);if(!i[a>>2]){if(g[f+11|0]<=-1){nn(i[f>>2])}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}if(!h){break b}M[i[i[h>>2]+4>>2]](h)}a=i[e+16>>2];i[e+16>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}if(g[e+15|0]>-1){break a}nn(i[e+4>>2])}J=e+80|0}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i[a+8>>2]=e;h=a+32|0;g=i[h>>2];f=i[a+36>>2]-g>>2;a:{if(f>>>0>>0){Ra(h,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}h=0;f=(e&1073741823)!=(e|0)?-1:e<<2;n=qn(Dm(f),0,f);g=i[a+8>>2];b:{if((g|0)<1){break b}while(1){f=h<<2;g=i[f+n>>2];j=i[a+16>>2];c:{if((g|0)>(j|0)){k=i[a+32>>2];i[f+k>>2]=j;break c}k=i[a+32>>2];f=f+k|0;j=i[a+12>>2];if((g|0)<(j|0)){i[f>>2]=j;break c}i[f>>2]=g}h=h+1|0;g=i[a+8>>2];if((h|0)<(g|0)){continue}break}if((g|0)<1){break b}j=0;while(1){h=j<<2;f=h+c|0;h=i[b+h>>2]+i[h+k>>2]|0;i[f>>2]=h;d:{if((h|0)>i[a+16>>2]){h=h-i[a+20>>2]|0}else{if((h|0)>=i[a+12>>2]){break d}h=h+i[a+20>>2]|0}i[f>>2]=h}j=j+1|0;g=i[a+8>>2];if((j|0)<(g|0)){continue}break}}if((e|0)<(d|0)){p=0-e<<2;f=e;while(1){e:{if((g|0)<1){break e}m=f<<2;o=m+c|0;q=o+p|0;h=0;while(1){g=h<<2;j=i[g+q>>2];l=i[a+16>>2];f:{if((j|0)>(l|0)){k=i[a+32>>2];i[g+k>>2]=l;break f}k=i[a+32>>2];g=g+k|0;l=i[a+12>>2];if((j|0)<(l|0)){i[g>>2]=l;break f}i[g>>2]=j}h=h+1|0;g=i[a+8>>2];if((h|0)<(g|0)){continue}break}j=0;if((g|0)<1){break e}m=b+m|0;while(1){g=j<<2;h=g+o|0;g=i[g+m>>2]+i[g+k>>2]|0;i[h>>2]=g;g:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break g}g=g+i[a+20>>2]|0}i[h>>2]=g}j=j+1|0;g=i[a+8>>2];if((j|0)<(g|0)){continue}break}}f=e+f|0;if((f|0)<(d|0)){continue}break}}nn(n);return 1}function hg(a,b){var c=0,d=0,e=0,f=0,g=0;c=-1;f=-1;a:{if((b|0)==-1){break a}e=b+1|0;c=(e>>>0)%3|0?e:b+ -2|0;f=b+ -1|0;if((b>>>0)%3|0){break a}f=b+2|0}b:{c:{d:{e:{f:{g:{d=i[a+184>>2];switch(d|0){case 7:break d;case 3:break e;case 5:break f;case 0:case 1:break g;default:break b}}g=i[a+148>>2];e=-1;d=1;c=((c|0)!=-1?i[i[g>>2]+(c<<2)>>2]:e)<<2;e=i[a+156>>2];c=c+e|0;i[c>>2]=i[c>>2]+1;c=(((f|0)!=-1?i[i[g>>2]+(f<<2)>>2]:-1)<<2)+e|0;break c}g=i[a+148>>2];e=i[a+156>>2];d=e+(((b|0)!=-1?i[i[g>>2]+(b<<2)>>2]:-1)<<2)|0;i[d>>2]=i[d>>2]+1;d=(((c|0)!=-1?i[i[g>>2]+(c<<2)>>2]:-1)<<2)+e|0;i[d>>2]=i[d>>2]+1;c=-1;d=2;c=e+(((f|0)!=-1?i[i[g>>2]+(f<<2)>>2]:c)<<2)|0;break c}g=i[a+148>>2];e=i[a+156>>2];d=e+(((b|0)!=-1?i[i[g>>2]+(b<<2)>>2]:-1)<<2)|0;i[d>>2]=i[d>>2]+1;d=(((c|0)!=-1?i[i[g>>2]+(c<<2)>>2]:-1)<<2)+e|0;i[d>>2]=i[d>>2]+2;d=1;c=(((f|0)!=-1?i[i[g>>2]+(f<<2)>>2]:-1)<<2)+e|0;break c}g=i[a+148>>2];e=i[a+156>>2];d=e+(((b|0)!=-1?i[i[g>>2]+(b<<2)>>2]:-1)<<2)|0;i[d>>2]=i[d>>2]+2;d=(((c|0)!=-1?i[i[g>>2]+(c<<2)>>2]:-1)<<2)+e|0;i[d>>2]=i[d>>2]+2;c=-1;d=2;c=e+(((f|0)!=-1?i[i[g>>2]+(f<<2)>>2]:c)<<2)|0}i[c>>2]=i[c>>2]+d;d=i[a+184>>2]}h:{switch(d|0){case 0:case 5:f=i[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=i[i[i[a+148>>2]>>2]+(b<<2)>>2]}if(i[f+(c<<2)>>2]<=5){i[a+188>>2]=5;return}i[a+188>>2]=0;return;default:break h}}i[a+188>>2]=-1}function If(a,b,c){var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;d=J-112|0;J=d;m=i[i[b+4>>2]+44>>2];h=Dm(120);e=h;i[e+12>>2]=0;i[e+16>>2]=0;i[e>>2]=12316;i[e+4>>2]=0;i[e+8>>2]=12528;i[e+116>>2]=0;i[e+112>>2]=c;i[e+108>>2]=m;i[e+104>>2]=0;i[e+96>>2]=0;i[e+100>>2]=0;i[e+20>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+56>>2]=0;i[e+60>>2]=0;e=e- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[h+72>>2]=0;i[h+76>>2]=0;i[h+80>>2]=0;i[h+84>>2]=0;i[h+88>>2]=0;b=i[b+8>>2];i[d+52>>2]=0;e=d+44|0;i[e>>2]=0;i[e+4>>2]=0;i[d+36>>2]=0;i[d+40>>2]=0;n=d+28|0;k=n;i[k>>2]=0;i[k+4>>2]=0;k=d+20|0;f=k;i[f>>2]=0;i[f+4>>2]=0;f=d- -64|0;i[f>>2]=0;i[f+4>>2]=0;i[d+72>>2]=0;i[d+76>>2]=0;f=d+80|0;i[f>>2]=0;i[f+4>>2]=0;i[d+88>>2]=0;i[d+104>>2]=0;i[d+12>>2]=0;i[d+16>>2]=0;i[d+56>>2]=0;i[d+60>>2]=0;i[d+8>>2]=12528;i[d+96>>2]=0;i[d+100>>2]=0;i[d+12>>2]=b;j=i[b>>2];l=i[b+4>>2];g[d+111|0]=0;Jf(d+32|0,(l-j>>2>>>0)/3|0,d+111|0);j=i[d+12>>2];l=i[j+28>>2];j=i[j+24>>2];g[d+111|0]=0;Jf(e,l-j>>2,d+111|0);i[n>>2]=h;i[d+24>>2]=m;i[k>>2]=c;i[d+16>>2]=b;Lf(h,d+8|0);i[a>>2]=h;i[d+8>>2]=12528;a=i[d+96>>2];if(a){i[d+100>>2]=a;nn(a)}a=i[f>>2];if(a){i[d+84>>2]=a;nn(a)}a=i[d+68>>2];if(a){i[d+72>>2]=a;nn(a)}a=i[d+56>>2];if(a){i[d+60>>2]=a;nn(a)}i[d+8>>2]=12764;a=i[d+44>>2];if(a){nn(a)}a=i[d+32>>2];if(a){nn(a)}J=d+112|0}function Yc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0;n=J-32|0;J=n;i[n+28>>2]=0;a:{b:{if(k[b+38>>1]<=513){g=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+4|0;if(d>>>0<4){c=c+1|0}f=d;d=c;if((g|0)<(c|0)?1:(g|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=e+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=d;break b}if(!Nc(1,n+28|0,b)){break a}c=i[n+28>>2]}if(!c){break a}f=a+76|0;Oc(f,c);o=ze(n+8|0);c:{if(!Ae(o,b)){break c}g=1;while(1){e=1<>2]+(m>>>3&536870908)|0;g=g^h;h=i[d>>2]|e;d:{if(!(g&1)){break d}h=i[d>>2]&(e^-1)}e=h;g=g^1;i[d>>2]=e;m=m+1|0;if((c|0)!=(m|0)){continue}break}m=0;d=i[b+12>>2];g=d;c=i[b+20>>2];e=c;o=i[b+16>>2];f=o+4|0;if(f>>>0<4){c=c+1|0}p=i[b+8>>2];h=f;f=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?p>>>0>>0:0){break c}q=i[b>>2];c=q+o|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=f;c=e;e=o+8|0;if(e>>>0<8){c=c+1|0}f=e;e=c;if((g|0)<(c|0)?1:(g|0)<=(c|0)?p>>>0>>0:0){break c}c=h+q|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=e;if((d|0)>(c|0)){break c}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break c}m=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break c}i[a+24>>2]=c+ -1}}J=n+32|0;return m|0}function Sf(a,b){var c=0,d=0,e=0,f=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if((e-c|0)/144>>>0>=b>>>0){d=a;if(b){a=o(b,144)+c|0;while(1){i[c>>2]=-1;Pk(c+4|0);i[c+104>>2]=0;i[c+108>>2]=0;g[c+100|0]=1;i[c+112>>2]=0;i[c+116>>2]=0;i[c+120>>2]=0;i[c+124>>2]=0;i[c+128>>2]=0;i[c+132>>2]=0;i[c+136>>2]=0;i[c+140>>2]=0;c=c+144|0;if((a|0)!=(c|0)){continue}break}c=a}i[d+4>>2]=c;return}a:{b:{c:{f=i[a>>2];c=(c-f|0)/144|0;d=c+b|0;if(d>>>0<29826162){h=o(c,144);e=(e-f|0)/144|0;f=e<<1;f=e>>>0<14913080?f>>>0>>0?d:f:29826161;c=0;d:{if(!f){break d}if(f>>>0>=29826162){break c}c=Dm(o(f,144))}e=c;d=c+h|0;h=d+o(b,144)|0;c=d;while(1){i[c>>2]=-1;Pk(c+4|0);i[c+104>>2]=0;i[c+108>>2]=0;g[c+100|0]=1;i[c+112>>2]=0;i[c+116>>2]=0;i[c+120>>2]=0;i[c+124>>2]=0;i[c+128>>2]=0;i[c+132>>2]=0;i[c+136>>2]=0;i[c+140>>2]=0;c=c+144|0;if((h|0)!=(c|0)){continue}break}e=o(f,144)+e|0;b=i[a>>2];c=i[a+4>>2];if((b|0)==(c|0)){break b}while(1){c=c+ -144|0;d=Yg(d+ -144|0,c);if((b|0)!=(c|0)){continue}break}i[a+8>>2]=e;c=i[a+4>>2];i[a+4>>2]=h;b=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=i[c+ -12>>2];if(a){i[c+ -8>>2]=a;nn(a)}a=i[c+ -28>>2];if(a){i[c+ -24>>2]=a;nn(a)}a=c+ -144|0;d=i[c+ -40>>2];if(d){i[c+ -36>>2]=d;nn(d)}Rf(c+ -140|0);c=a;if((c|0)!=(b|0)){continue}break}break a}Sm();x()}Ba(12220);x()}i[a+8>>2]=e;i[a+4>>2]=h;i[a>>2]=d}if(b){nn(b)}}function Mc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,p=0,q=0,r=0;n=J-32|0;J=n;a:{if(k[b+38>>1]<=513){e=i[b+16>>2];d=i[b+12>>2];c=i[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<=e>>>0:0){break a}f=j[e+i[b>>2]|0];e=e+1|0;if(e>>>0<1){c=c+1|0}i[b+16>>2]=e;i[b+20>>2]=c;if(f){break a}}b:{while(1){if(!Nc(1,n+28|0,b)){break b}c=i[n+28>>2];if(c){f=(o(g,12)+a|0)+60|0;Oc(f,c);m=ze(n+8|0);if(!Ae(m,b)){break b}h=0;while(1){d=1<>2]+(h>>>3&536870908)|0;q=e;if(p){d=i[e>>2]|d}else{d=i[e>>2]&(d^-1)}i[q>>2]=d;h=h+1|0;if((c|0)!=(h|0)){continue}break}}g=g+1|0;if((g|0)!=4){continue}break}h=0;d=i[b+12>>2];e=d;c=i[b+20>>2];g=c;m=i[b+16>>2];f=m+4|0;if(f>>>0<4){c=c+1|0}q=i[b+8>>2];p=f;f=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?q>>>0

>>0:0){break a}r=i[b>>2];c=r+m|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=p;i[b+20>>2]=f;c=g;g=m+8|0;if(g>>>0<8){c=c+1|0}f=g;g=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?q>>>0>>0:0){break a}c=p+r|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=g;if((d|0)>(c|0)){break a}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break a}h=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break a}i[a+24>>2]=c+ -1;break a}h=0}J=n+32|0;return h|0}function Fe(a,b){var c=0,d=0,e=0;e=J-32|0;J=e;a:{b:{switch(b|0){case 0:b=Dm(48);qf(b);i[b>>2]=13256;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;case 1:b=Dm(52);qf(b);i[b+48>>2]=0;i[b>>2]=11360;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;default:break b}}b=Dm(32);i[e>>2]=b;i[e+4>>2]=28;i[e+8>>2]=-2147483616;g[b+28|0]=0;c=j[11080]|j[11081]<<8|(j[11082]<<16|j[11083]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;c=j[11076]|j[11077]<<8|(j[11078]<<16|j[11079]<<24);d=j[11072]|j[11073]<<8|(j[11074]<<16|j[11075]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[11068]|j[11069]<<8|(j[11070]<<16|j[11071]<<24);d=j[11064]|j[11065]<<8|(j[11066]<<16|j[11067]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11060]|j[11061]<<8|(j[11062]<<16|j[11063]<<24);d=j[11056]|j[11057]<<8|(j[11058]<<16|j[11059]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[e+16>>2]=-1;b=Gm(e+16|4,e);i[a>>2]=i[e+16>>2];Gm(a+4|0,b);i[a+16>>2]=0;if(g[b+11|0]<=-1){nn(i[b>>2])}if(g[e+11|0]>-1){break a}nn(i[e>>2])}J=e+32|0}function dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0;m=J-16|0;J=m;e=i[b+12>>2];c=i[b+20>>2];f=i[b+16>>2];d=f+4|0;if(d>>>0<4){c=c+1|0}g=d;d=c;a:{if((e|0)<(c|0)?1:(e|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=f+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=g;i[b+20>>2]=d;if((c|0)<0){break a}Oc(a+76|0,c);g=ze(m);b:{if(!Ae(g,b)){break b}if((c|0)>=1){e=1;while(1){f=1<>2]+(k>>>3&536870908)|0;e=e^h;h=i[d>>2]|f;c:{if(!(e&1)){break c}h=i[d>>2]&(f^-1)}f=h;e=e^1;i[d>>2]=f;k=k+1|0;if((c|0)!=(k|0)){continue}break}}d=i[b+12>>2];k=d;c=i[b+20>>2];e=c;g=i[b+16>>2];f=g+4|0;if(f>>>0<4){c=c+1|0}n=i[b+8>>2];h=f;f=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?n>>>0>>0:0){break b}o=i[b>>2];c=o+g|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=f;c=e;e=g+8|0;if(e>>>0<8){c=c+1|0}f=e;e=c;if((k|0)<(c|0)?1:(k|0)<=(c|0)?n>>>0>>0:0){break b}c=h+o|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=e;if((d|0)>(c|0)){break b}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break b}p=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break b}i[a+24>>2]=c+ -1}}J=m+16|0;return p|0}function og(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(i[a+168>>2]){case 0:case 1:c=i[a+148>>2];e=1;b=i[a+156>>2];g=b+(((f|0)!=-1?i[i[c>>2]+(f<<2)>>2]:-1)<<2)|0;i[g>>2]=i[g>>2]+1;b=(((d|0)!=-1?i[i[c>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 5:e=i[a+148>>2];c=-1;c=((b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:c)<<2;b=i[a+156>>2];c=c+b|0;i[c>>2]=i[c>>2]+1;c=(((f|0)!=-1?i[i[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;i[c>>2]=i[c>>2]+1;c=-1;c=(d|0)!=-1?i[i[e>>2]+(d<<2)>>2]:c;e=2;b=b+(c<<2)|0;break c;case 3:e=i[a+148>>2];c=-1;c=((b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:c)<<2;b=i[a+156>>2];c=c+b|0;i[c>>2]=i[c>>2]+1;c=(((f|0)!=-1?i[i[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;i[c>>2]=i[c>>2]+2;b=(((d|0)!=-1?i[i[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;e=1;break c;case 7:break d;default:break b}}e=i[a+148>>2];c=-1;c=((b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:c)<<2;b=i[a+156>>2];c=c+b|0;i[c>>2]=i[c>>2]+2;c=(((f|0)!=-1?i[i[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;i[c>>2]=i[c>>2]+2;c=-1;c=(d|0)!=-1?i[i[e>>2]+(d<<2)>>2]:c;e=2;b=b+(c<<2)|0}i[b>>2]=i[b>>2]+e}c=-1;c=(f|0)!=-1?i[i[i[a+148>>2]>>2]+(f<<2)>>2]:c;f=i[a+176>>2];b=f;d=a;c=i[i[a+156>>2]+(c<<2)>>2];if((c|0)>=(b|0)){a=i[a+180>>2];b=(c|0)>(a|0)?a:c}i[d+172>>2]=b-f}function fi(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=J-16|0;J=e;i[a+68>>2]=i[a+68>>2]+1;d=o(b,12)+a|0;f=i[d+12>>2];h=i[d+8>>2];d=f-h|0;if((d|0)>=1){f=h-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;k=d>>>0>1?d:1;d=i[((b<<2)+a|0)+44>>2];h=0;while(1){b=d;f=(b>>>0)/3|0;g=(b|0)==-1;d=g?-1:f;j=i[a+56>>2]+(d>>>3&536870908)|0;i[j>>2]=i[j>>2]|1<>2]=i[a+72>>2]+1;a:{b:{if(!h){i[e+12>>2]=(b|0)<0?-1:i[(i[i[a>>2]+96>>2]+o(f,12)|0)+((b>>>0)%3<<2)>>2];i[e+8>>2]=c;ei(e+8|0,e+12|0);c:{if(!g){d=-1;f=e;g=b+1|0;g=(g>>>0)%3|0?g:b+ -2|0;if((g|0)>=0){j=(g>>>0)/3|0;j=i[(i[i[a>>2]+96>>2]+o(j,12)|0)+(g-o(j,3)<<2)>>2]}else{j=-1}i[f+12>>2]=j;i[e+8>>2]=c;ei(e+8|0,e+12|0);f=((b>>>0)%3|0?-1:2)+b|0;if((f|0)<0){break c}d=(f>>>0)/3|0;d=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(f-o(d,3)<<2)>>2];break c}d=-1;i[e+12>>2]=-1;i[e+8>>2]=c;ei(e+8|0,e+12|0)}i[a+76>>2]=d;i[e+12>>2]=d;i[e+8>>2]=c;ei(e+8|0,e+12|0);break b}g=(b|0)<0?-1:i[(i[i[a>>2]+96>>2]+o(f,12)|0)+((b>>>0)%3<<2)>>2];i[a+76>>2]=g;i[e+12>>2]=g;i[e+8>>2]=c;ei(e+8|0,e+12|0);if(h&1){d=-1;if((b|0)==-1){break a}if(b-o(f,3)|0){b=b+ -1|0;break b}b=b+2|0;break b}d=-1;if((b|0)==-1){break a}d=b+1|0;b=(d>>>0)%3|0?d:b+ -2|0}d=-1;if((b|0)==-1){break a}d=i[i[i[a+4>>2]+12>>2]+(b<<2)>>2]}h=h+1|0;if((k|0)!=(h|0)){continue}break}}J=e+16|0}function Ke(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=J-32|0;J=e;f=a+16|0;d=i[f>>2];a:{b:{if(!d){break b}h=i[b>>2];c=f;while(1){g=i[d+16>>2]<(h|0);c=g?c:d;d=i[(g<<2)+d>>2];if(d){continue}break}if((c|0)==(f|0)){break b}if((h|0)>=i[c+16>>2]){break a}}k=Gh(e+16|0);b=i[b>>2];j=e+8|0;i[j>>2]=0;i[j+4>>2]=0;i[e>>2]=b;i[e+4>>2]=j;c=i[k>>2];h=k+4|0;if((c|0)!=(h|0)){g=e|4;while(1){b=c;d=c+16|0;Le(g,j,d,d);d=i[c+4>>2];c:{if(!d){c=i[b+8>>2];if((b|0)==i[c>>2]){break c}d=b+8|0;while(1){b=i[d>>2];d=b+8|0;c=i[b+8>>2];if((b|0)!=i[c>>2]){continue}break}break c}while(1){c=d;d=i[c>>2];if(d){continue}break}}if((c|0)!=(h|0)){continue}break}}d=i[f>>2];d:{if(d){f=a+16|0;g=i[e>>2];while(1){b=i[d+16>>2];e:{if((g|0)<(b|0)){c=i[d>>2];if(c){break e}f=d;break d}if((b|0)>=(g|0)){break d}f=d+4|0;c=i[d+4>>2];if(!c){break d}d=f}f=d;d=c;continue}}d=f}c=i[f>>2];if(!c){c=Dm(32);i[c+16>>2]=i[e>>2];i[c+20>>2]=i[e+4>>2];g=i[e+8>>2];i[c+24>>2]=g;b=i[e+12>>2];i[c+28>>2]=b;h=c+24|0;f:{if(!b){i[c+20>>2]=h;break f}i[g+8>>2]=h;i[e+8>>2]=0;i[e+12>>2]=0;i[e+4>>2]=j}i[c+8>>2]=d;i[c>>2]=0;i[c+4>>2]=0;i[f>>2]=c;d=i[i[a+12>>2]>>2];b=c;g:{if(!d){break g}i[a+12>>2]=d;b=i[f>>2]}Me(i[a+16>>2],b);a=a+20|0;i[a>>2]=i[a>>2]+1}Ne(e|4,i[e+8>>2]);Ne(k,i[k+4>>2])}J=e+32|0;return c+20|0}function kh(a,b){var c=0,d=0,e=0;e=J-32|0;J=e;c=Dm(36);i[c+4>>2]=0;i[c+8>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;i[c+32>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;i[c>>2]=c+4;i[c+12>>2]=c+16;i[e+24>>2]=c;d=e+16|0;i[d>>2]=0;a:{if(!Zk(d,i[b+32>>2],c)){b=Dm(32);i[e>>2]=b;i[e+4>>2]=26;i[e+8>>2]=-2147483616;g[b+26|0]=0;c=j[13614]|j[13615]<<8;g[b+24|0]=c;g[b+25|0]=c>>>8;c=j[13610]|j[13611]<<8|(j[13612]<<16|j[13613]<<24);d=j[13606]|j[13607]<<8|(j[13608]<<16|j[13609]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[13602]|j[13603]<<8|(j[13604]<<16|j[13605]<<24);d=j[13598]|j[13599]<<8|(j[13600]<<16|j[13601]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[13594]|j[13595]<<8|(j[13596]<<16|j[13597]<<24);d=j[13590]|j[13591]<<8|(j[13592]<<16|j[13593]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}b=i[b+4>>2];i[e+24>>2]=0;d=i[b+4>>2];i[b+4>>2]=c;if(d){lh(d)}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}a=i[e+24>>2];i[e+24>>2]=0;if(a){lh(a)}J=e+32|0}function Re(a,b,c,d){var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=J+ -64|0;J=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(!Te(e+8|0,c)){break a}if(!Ue(e+8|0,c)){break a}b:{if(!a){Ch(c,0,0);break b}if(!i[e+20>>2]){break a}Ch(c,0,0);h=i[e+56>>2];s=i[e+36>>2];t=i[e+48>>2];u=i[e+24>>2];while(1){c:{if(h>>>0>16383){break c}f=i[e+52>>2];while(1){if((f|0)<1){break c}f=f+ -1|0;i[e+52>>2]=f;h=j[f+t|0]|h<<8;i[e+56>>2]=h;if(h>>>0<16384){continue}break}}g=h&4095;q=i[(g<<2)+u>>2];k=(q<<3)+s|0;h=(o(i[k>>2],h>>>12|0)+g|0)-i[k+4>>2]|0;i[e+56>>2]=h;if((b|0)>=1){if(!j[c+36|0]){g=0;break a}k=b+l|0;while(1){d:{if((q|0)<1){n=0;break d}g=i[c+32>>2];v=i[c+28>>2];w=i[c+24>>2];f=0;n=0;while(1){m=(g>>>3|0)+w|0;e:{if(m>>>0>=v>>>0){p=0;break e}p=j[m|0];m=g+1|0;i[c+32>>2]=m;p=p>>>(g&7)&1;g=m}n=p<>2]=n;l=l+1|0;if((k|0)!=(l|0)){continue}break}l=k}r=b+r|0;if(r>>>0>>0){continue}break}}Eh(c);g=1}a=i[e+36>>2];if(a){i[e+40>>2]=a;nn(a)}a=i[e+24>>2];if(a){i[e+28>>2]=a;nn(a)}a=i[e+8>>2];if(a){i[e+12>>2]=a;nn(a)}J=e- -64|0;return g}function lf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a- -1048576|0;i[b+48>>2]=a;o=a>>>0<268435456}J=l+16|0;return o}function pf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+4194304|0;i[b+48>>2]=a;o=a>>>0<1073741824}J=l+16|0;return o}function nf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+2097152|0;i[b+48>>2]=a;o=a>>>0<536870912}J=l+16|0;return o}function jf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+262144|0;i[b+48>>2]=a;o=a>>>0<67108864}J=l+16|0;return o}function gf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+131072|0;i[b+48>>2]=a;o=a>>>0<33554432}J=l+16|0;return o}function ef(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+32768|0;i[b+48>>2]=a;o=a>>>0<8388608}J=l+16|0;return o}function Ue(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+16384|0;i[b+48>>2]=a;o=a>>>0<4194304}J=l+16|0;return o}function Ae(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;p=J-16|0;J=p;e=i[b+16>>2];c=i[b+12>>2];d=i[b+20>>2];a:{if((c|0)<(d|0)?1:(c|0)<=(d|0)?l[b+8>>2]<=e>>>0:0){break a}g[a+12|0]=j[e+i[b>>2]|0];c=i[b+20>>2];e=c;h=i[b+16>>2];m=h+1|0;if(m>>>0<1){c=c+1|0}f=m;i[b+16>>2]=f;i[b+20>>2]=c;b:{if(k[b+38>>1]<=513){n=i[b+12>>2];o=n;d=e;c=h+5|0;if(c>>>0<5){d=d+1|0}m=i[b+8>>2];h=c;c=d;if((o|0)<(c|0)?1:(o|0)<=(c|0)?m>>>0>>0:0){break a}d=f+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=c;break b}if(!Be(1,p+12|0,b)){break a}h=i[b+16>>2];c=i[b+20>>2];m=i[b+8>>2];n=i[b+12>>2];f=i[p+12>>2]}d=f;e=n-(c+(m>>>0>>0)|0)|0;if(((e|0)<0?1:(e|0)<=0?m-h>>>0>>0:0)|(d|0)<1){break a}e=h+i[b>>2]|0;i[a>>2]=e;n=f+ -1|0;o=n+e|0;m=j[o|0]>>>6|0;if((m|0)==3){break a}q=a;c:{d:{switch(m-1|0){default:i[a+4>>2]=n;a=j[o|0]&63;break c;case 0:if((f|0)<2){break a}i[a+4>>2]=f+ -2;a=(f+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c;case 1:break d}}if((f|0)<3){break a}i[a+4>>2]=f+ -3;a=(f+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0]}a=a+4096|0;i[q+8>>2]=a;if(a>>>0>1048575){break a}a=d+h|0;if(a>>>0>>0){c=c+1|0}i[b+16>>2]=a;i[b+20>>2]=c;r=1}J=p+16|0;return r}function nh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0;a:{b=i[a+32>>2];e=i[b+16>>2];h=i[b+12>>2];d=i[b+20>>2];b:{if((h|0)<(d|0)?1:(h|0)<=(d|0)?l[b+8>>2]<=e>>>0:0){break b}g=j[e+i[b>>2]|0];k=e+1|0;if(k>>>0<1){d=d+1|0}i[b+16>>2]=k;i[b+20>>2]=d;c:{if(!g){break c}while(1){if(M[i[i[a>>2]+16>>2]](a,c)|0){c=c+1|0;if((g|0)!=(c|0)){continue}break c}break}return 0}c=i[a+8>>2];d=i[a+12>>2];if((c|0)!=(d|0)){while(1){b=i[c>>2];if(!(M[i[i[b>>2]+8>>2]](b,a,i[a+4>>2])|0)){break b}c=c+4|0;if((d|0)!=(c|0)){continue}break}}d:{if(!g){break d}c=0;while(1){b=i[i[a+8>>2]+(c<<2)>>2];if(!(M[i[i[b>>2]+12>>2]](b,i[a+32>>2])|0)){break a}c=c+1|0;if((g|0)!=(c|0)){continue}break}if(!g){break d}h=a+20|0;while(1){c=0;k=m<<2;b=i[k+i[a+8>>2]>>2];d=M[i[i[b>>2]+24>>2]](b)|0;if((d|0)>0){while(1){b=i[i[a+8>>2]+k>>2];b=M[i[i[b>>2]+20>>2]](b,c)|0;n=i[a+20>>2];e=i[a+24>>2]-n>>2;e:{if(b>>>0>>0){break e}f=b+1|0;if(f>>>0>e>>>0){Ra(h,f-e|0);n=i[h>>2];break e}if(f>>>0>=e>>>0){break e}i[a+24>>2]=(f<<2)+n}i[(b<<2)+n>>2]=m;c=c+1|0;if((d|0)!=(c|0)){continue}break}}m=m+1|0;if((m|0)!=(g|0)){continue}break}}f=0;if(!(M[i[i[a>>2]+28>>2]](a)|0)){break b}f=M[i[i[a>>2]+32>>2]](a)|0}return f|0}return 0}function Yk(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,o=0,p=0;d=J-32|0;J=d;i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;a:{e=i[a>>2];c=e;h=i[c+16>>2];k=l[c+8>>2]<=h>>>0;f=i[c+12>>2];c=i[c+20>>2];b:{if((f|0)<(c|0)?1:(f|0)<=(c|0)?k:0){break b}k=j[h+i[e>>2]|0];f=c;c=h+1|0;if(c>>>0<1){f=f+1|0}i[e+16>>2]=c;i[e+20>>2]=f;Lm(d+16|0,k);if(k){f=i[a>>2];n=Pm(d+16|0);m=i[f+12>>2];h=i[f+20>>2];p=i[f+16>>2];e=k;c=p+e|0;if(c>>>0>>0){h=h+1|0}if((m|0)<(h|0)?1:(m|0)<=(h|0)?l[f+8>>2]>>0:0){break b}pn(n,p+i[f>>2]|0,k);h=i[f+20>>2];k=e+i[f+16>>2]|0;if(k>>>0>>0){h=h+1|0}c=f;i[c+16>>2]=k;i[c+20>>2]=h}i[d+12>>2]=0;c=Xk(1,d+12|0,i[a>>2]);e=i[d+12>>2];if(!e|!c){break b}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;if((e|0)<=-1){break a}m=Dm(e);i[d>>2]=m;c=e+m|0;i[d+8>>2]=c;p=qn(m,0,e);i[d+4>>2]=c;c=i[a>>2];a=i[c+8>>2];o=i[c+12>>2];f=a;n=i[c+20>>2];h=i[c+16>>2];a=e;k=h+e|0;if(k>>>0>>0){n=n+1|0}o=(o|0)>(n|0)?1:(o|0)>=(n|0)?f>>>0>=k>>>0:0;if(o){pn(p,h+i[c>>2]|0,e);e=c;k=c;f=i[c+20>>2];c=a+i[c+16>>2]|0;if(c>>>0>>0){f=f+1|0}i[k+16>>2]=c;i[e+20>>2]=f;hl(b,d+16|0,d);m=i[d>>2];if(!m){break b}}i[d+4>>2]=m;nn(m)}if(g[d+27|0]<=-1){nn(i[d+16>>2])}J=d+32|0;return o}Sm();x()}function Fn(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;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{g=b;if(g){e=c;if(!e){break j}f=d;if(!f){break i}f=r(f)-r(g)|0;if(f>>>0<=31){break h}break b}if((d|0)==1&c>>>0>=0|d>>>0>1){break b}b=(a>>>0)/(c>>>0)|0;L=0;return b}e=d;if(!a){break g}if(!e){break f}if(e+ -1&e){break f}a=g>>>Ln(e)|0;L=0;return a}if(!(e+ -1&e)){break e}j=(r(e)+33|0)-r(g)|0;h=0-j|0;break c}j=f+1|0;h=63-f|0;break c}a=(g>>>0)/(e>>>0)|0;L=0;return a}f=r(e)-r(g)|0;if(f>>>0<31){break d}break b}if((e|0)==1){break a}c=a;a=Ln(e);d=a&31;if(32<=(a&63)>>>0){f=0;a=b>>>d|0}else{f=b>>>d|0;a=((1<>>d}L=f;return a}j=f+1|0;h=63-f|0}e=b;g=a;f=j&63;i=f&31;if(32<=(f&63)>>>0){f=0;l=e>>>i|0}else{f=e>>>i|0;l=((1<>>i}a=h&63;h=a&31;if(32<=(a&63)>>>0){e=g<>>32-h|b<>>31;f=e<<1|b>>>31;m=k;e=k;k=f;i=g-((h>>>0>>0)+e|0)|0;e=i>>31;i=i>>31;f=c&i;l=k-f|0;f=m-((d&e)+(k>>>0>>0)|0)|0;e=b<<1|a>>>31;a=n|a<<1;b=e|o;m=0;k=i&1;n=k;j=j+ -1|0;if(j){continue}break}}L=m|(b<<1|a>>>31);return k|a<<1}a=0;b=0}L=b;return a}function ag(a,b,c,d){var e=0,f=0,h=0,j=0,k=p(0),l=0,n=p(0),o=0,q=0;f=i[c>>2];o=a;a:{b:{e=i[b+4>>2];if(!e){break b}j=i[b>>2];l=Jn(e);h=f&e+ -1;c:{if(l>>>0<=1){break c}c=f;h=c;if(c>>>0>>0){break c}h=(f>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+j>>2];if(!c){break b}q=e+ -1|0;l=l>>>0>1;while(1){c=i[c>>2];if(!c){break b}j=i[c+4>>2];if((f|0)!=(j|0)){d:{if(!l){j=j&q;break d}if(j>>>0>>0){break d}j=(j>>>0)%(e>>>0)|0}if((j|0)!=(h|0)){break b}}if((f|0)!=i[c+8>>2]){continue}break}b=0;break a}c=Dm(16);d=i[i[d>>2]>>2];i[c+12>>2]=0;i[c+8>>2]=d;i[c+4>>2]=f;i[c>>2]=0;k=m[b+16>>2];n=p(i[b+12>>2]+1>>>0);e:{if(p(k*p(e>>>0))>>0<3|e<<1;d=b;k=p(v(p(n/k)));f:{if(k=p(0)){h=~~k>>>0;break f}h=0}Zg(d,e>>>0>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=f&e+ -1;break e}if(f>>>0>>0){h=f;break e}h=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(h<<2)|0;d=i[f>>2];g:{h:{if(!d){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[f>>2]=b+8;d=i[c>>2];if(!d){break g}d=i[d+4>>2];f=e+ -1|0;i:{if(!(f&e)){d=d&f;break i}if(d>>>0>>0){break i}d=(d>>>0)%(e>>>0)|0}d=i[b>>2]+(d<<2)|0;break h}i[c>>2]=i[d>>2]}i[d>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[o+4|0]=b;i[a>>2]=c}function Rd(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;k=i[i[i[b+4>>2]+8>>2]+(d<<2)>>2];a:{b:{if((M[i[i[b>>2]+8>>2]](b)|0)!=1|c+ -1>>>0>5){break b}h=M[i[i[b>>2]+36>>2]](b)|0;f=M[i[i[b>>2]+44>>2]](b,d)|0;if(!(f?h:0)){i[a>>2]=0;return}g=f+12|0;j=M[i[i[b>>2]+40>>2]](b,d)|0;d=i[b+44>>2];if(j){if((c|0)!=6){break b}b=Dm(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=j;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=j;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=8844;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=9408;break a}if((c|0)!=6){break b}b=Dm(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=h;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=h;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=9848;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=10268;break a}i[a>>2]=0;return}ze(b+96|0);i[a>>2]=b}function Qd(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;k=i[i[i[b+4>>2]+8>>2]+(d<<2)>>2];a:{b:{if((M[i[i[b>>2]+8>>2]](b)|0)!=1|c+ -1>>>0>5){break b}h=M[i[i[b>>2]+36>>2]](b)|0;f=M[i[i[b>>2]+44>>2]](b,d)|0;if(!(f?h:0)){i[a>>2]=0;return}g=f+12|0;j=M[i[i[b>>2]+40>>2]](b,d)|0;d=i[b+44>>2];if(j){if((c|0)!=6){break b}b=Dm(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=j;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=j;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=6960;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=7484;break a}if((c|0)!=6){break b}b=Dm(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=h;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=h;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=7896;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=8288;break a}i[a>>2]=0;return}ze(b+96|0);i[a>>2]=b}function rg(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11520;b=i[a+388>>2];if(b){i[a+392>>2]=b;nn(b)}b=a+368|0;d=i[b>>2];i[b>>2]=0;if(d){c=d+ -4|0;b=i[c>>2];if(b){b=d+(b<<4)|0;while(1){b=b+ -16|0;if((d|0)!=(b|0)){continue}break}}nn(c)}d=i[a+216>>2];if(d){b=i[a+220>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=i[b+ -12>>2];if(c){i[b+ -8>>2]=c;nn(c)}c=i[b+ -28>>2];if(c){i[b+ -24>>2]=c;nn(c)}c=b+ -144|0;e=i[b+ -40>>2];if(e){i[b+ -36>>2]=e;nn(e)}Rf(b+ -140|0);b=c;if((d|0)!=(b|0)){continue}break}c=i[a+216>>2]}i[a+220>>2]=d;nn(c)}b=i[a+196>>2];if(b){i[a+200>>2]=b;nn(b)}b=i[a+184>>2];if(b){i[a+188>>2]=b;nn(b)}b=i[a+172>>2];if(b){i[a+176>>2]=b;nn(b)}b=i[a+160>>2];if(b){i[a+164>>2]=b;nn(b)}b=i[a+144>>2];if(b){while(1){d=i[b>>2];nn(b);b=d;if(b){continue}break}}b=i[a+136>>2];i[a+136>>2]=0;if(b){nn(b)}b=i[a+120>>2];if(b){nn(b)}b=i[a+108>>2];if(b){nn(b)}b=i[a+96>>2];if(b){nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}b=i[a+36>>2];if(b){i[a+40>>2]=b;nn(b)}b=i[a+24>>2];if(b){i[a+28>>2]=b;nn(b)}b=i[a+12>>2];if(b){i[a+16>>2]=b;nn(b)}b=i[a+8>>2];i[a+8>>2]=0;if(b){Qf(a+8|0,b)}return a|0}function zd(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,j=0,k=0,l=0,m=0;i[a+64>>2]=f;i[a+72>>2]=e;f=Dm((e&1073741823)!=(e|0)?-1:e<<2);d=i[a+68>>2];i[a+68>>2]=f;if(d){nn(d)}i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}b:{f=i[a+56>>2];d=i[f+4>>2];f=i[f>>2];g=d-f|0;if((g|0)<1){break b}if((d|0)!=(f|0)){d=f-d|0;d=((d|0)>(g|0)?d:g)>>>2|0;m=d>>>0>1?d:1;while(1){Ad(a,i[(j<<2)+f>>2],c,j);c:{if(i[a+8>>2]<1){break c}l=i[a+68>>2];f=0;while(1){d=f<<2;g=i[d+l>>2];h=i[a+16>>2];d:{if((g|0)>(h|0)){k=i[a+32>>2];i[d+k>>2]=h;break d}k=i[a+32>>2];d=d+k|0;h=i[a+12>>2];if((g|0)<(h|0)){i[d>>2]=h;break d}i[d>>2]=g}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<1){break c}f=o(e,j)<<2;l=f+c|0;h=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+h>>2]+i[g+k>>2]|0;i[f>>2]=g;e:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break e}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}j=j+1|0;if((m|0)==(j|0)){break b}d=i[a+56>>2];f=i[d>>2];if(i[d+4>>2]-f>>2>>>0>j>>>0){continue}break}}Tm();x()}return 1}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,j=0,k=0,l=0,m=0;i[a+64>>2]=f;i[a+72>>2]=e;f=Dm((e&1073741823)!=(e|0)?-1:e<<2);d=i[a+68>>2];i[a+68>>2]=f;if(d){nn(d)}i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}b:{f=i[a+56>>2];d=i[f+4>>2];f=i[f>>2];g=d-f|0;if((g|0)<1){break b}if((d|0)!=(f|0)){d=f-d|0;d=((d|0)>(g|0)?d:g)>>>2|0;m=d>>>0>1?d:1;while(1){_c(a,i[(j<<2)+f>>2],c,j);c:{if(i[a+8>>2]<1){break c}l=i[a+68>>2];f=0;while(1){d=f<<2;g=i[d+l>>2];h=i[a+16>>2];d:{if((g|0)>(h|0)){k=i[a+32>>2];i[d+k>>2]=h;break d}k=i[a+32>>2];d=d+k|0;h=i[a+12>>2];if((g|0)<(h|0)){i[d>>2]=h;break d}i[d>>2]=g}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<1){break c}f=o(e,j)<<2;l=f+c|0;h=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+h>>2]+i[g+k>>2]|0;i[f>>2]=g;e:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break e}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}j=j+1|0;if((m|0)==(j|0)){break b}d=i[a+56>>2];f=i[d>>2];if(i[d+4>>2]-f>>2>>>0>j>>>0){continue}break}}Tm();x()}return 1}function Cb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,n=0,p=0;a:{b:{c:{d:{d=i[a+4>>2];j=i[a>>2];g=(d-j|0)/24|0;e=g+1|0;if(e>>>0<178956971){c=(i[a+8>>2]-j|0)/24|0;f=c<<1;h=c>>>0<89478485?f>>>0>>0?e:f:178956970;if(h){if(h>>>0>=178956971){break d}k=Dm(o(h,24))}c=o(g,24)+k|0;i[c>>2]=1140;e=i[b+4>>2];l=c+16|0;i[l>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+4>>2]=e;n=i[b+8>>2];f=i[b+12>>2]-n|0;if(f){p=f>>2;if(p>>>0>=1073741824){break c}g=c+12|0;e=Dm(f);i[g>>2]=e;i[c+8>>2]=e;i[l>>2]=e+(p<<2);if((f|0)>=1){e=pn(e,n,f)+f|0}i[g>>2]=e}e=o(h,24)+k|0;m[c+20>>2]=m[b+20>>2];g=c+24|0;if((d|0)==(j|0)){break b}while(1){c=c+ -24|0;i[c>>2]=1140;b=i[d+ -20>>2];f=c+16|0;i[f>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+4>>2]=b;b=d+ -16|0;i[c+8>>2]=i[b>>2];i[c+12>>2]=i[d+ -12>>2];h=f;f=d+ -8|0;i[h>>2]=i[f>>2];i[f>>2]=0;i[b>>2]=0;i[b+4>>2]=0;m[c+20>>2]=m[d+ -4>>2];d=d+ -24|0;if((j|0)!=(d|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=g;d=i[a>>2];i[a>>2]=c;if((b|0)==(d|0)){break a}while(1){b=b+ -24|0;M[i[i[b>>2]>>2]](b)|0;if((b|0)!=(d|0)){continue}break}break a}Sm();x()}Ba(1756);x()}Sm();x()}i[a+8>>2]=e;i[a+4>>2]=g;i[a>>2]=c}if(d){nn(d)}}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,j=0,k=0,l=0,m=0,n=0;if((e|0)==2){i[a+8>>2]=2;i[a- -64>>2]=f;d=a+32|0;e=i[d>>2];f=i[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){Ra(d,2-g|0);break a}if((f|0)==8){break a}i[a+36>>2]=e+8}b:{d=i[a+56>>2];f=i[d+4>>2];d=i[d>>2];e=f-d|0;if((e|0)<1){f=0;break b}if((d|0)!=(f|0)){k=a+60|0;l=e>>2;f=d-f|0;e=((f|0)>(e|0)?f:e)>>>2|0;m=e>>>0>1?e:1;f=1;while(1){if(!fd(k,i[(h<<2)+d>>2],c,h)){break b}c:{if(i[a+8>>2]<1){break c}d=0;while(1){e=d<<2;f=i[(e+a|0)+68>>2];j=i[a+16>>2];d:{if((f|0)>(j|0)){g=i[a+32>>2];i[e+g>>2]=j;break d}g=i[a+32>>2];e=e+g|0;j=i[a+12>>2];if((f|0)<(j|0)){i[e>>2]=j;break d}i[e>>2]=f}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<1){break c}d=h<<3;j=d+c|0;n=b+d|0;while(1){f=e<<2;d=f+j|0;f=i[f+n>>2]+i[f+g>>2]|0;i[d>>2]=f;e:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break e}f=f+i[a+20>>2]|0}i[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}h=h+1|0;f=(h|0)<(l|0);if((h|0)==(m|0)){break b}e=i[a+56>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>h>>>0){continue}break}}Tm();x()}a=f^1}else{a=0}return a&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,j=0,k=0,l=0,m=0,n=0;if((e|0)==2){i[a+8>>2]=2;i[a- -64>>2]=f;d=a+32|0;e=i[d>>2];f=i[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){Ra(d,2-g|0);break a}if((f|0)==8){break a}i[a+36>>2]=e+8}b:{d=i[a+56>>2];f=i[d+4>>2];d=i[d>>2];e=f-d|0;if((e|0)<1){f=0;break b}if((d|0)!=(f|0)){k=a+60|0;l=e>>2;f=d-f|0;e=((f|0)>(e|0)?f:e)>>>2|0;m=e>>>0>1?e:1;f=1;while(1){if(!Ed(k,i[(h<<2)+d>>2],c,h)){break b}c:{if(i[a+8>>2]<1){break c}d=0;while(1){e=d<<2;f=i[(e+a|0)+68>>2];j=i[a+16>>2];d:{if((f|0)>(j|0)){g=i[a+32>>2];i[e+g>>2]=j;break d}g=i[a+32>>2];e=e+g|0;j=i[a+12>>2];if((f|0)<(j|0)){i[e>>2]=j;break d}i[e>>2]=f}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<1){break c}d=h<<3;j=d+c|0;n=b+d|0;while(1){f=e<<2;d=f+j|0;f=i[f+n>>2]+i[f+g>>2]|0;i[d>>2]=f;e:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break e}f=f+i[a+20>>2]|0}i[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}h=h+1|0;f=(h|0)<(l|0);if((h|0)==(m|0)){break b}e=i[a+56>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>h>>>0){continue}break}}Tm();x()}a=f^1}else{a=0}return a&1}function pn(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){G(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if((c|0)<1){c=a;break b}if(!(a&3)){c=a;break b}c=a;while(1){g[c|0]=j[b|0];b=b+1|0;c=c+1|0;if(c>>>0>=e>>>0){break b}if(c&3){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+ -64|0;if(c>>>0>f>>>0){break c}while(1){i[c>>2]=i[b>>2];i[c+4>>2]=i[b+4>>2];i[c+8>>2]=i[b+8>>2];i[c+12>>2]=i[b+12>>2];i[c+16>>2]=i[b+16>>2];i[c+20>>2]=i[b+20>>2];i[c+24>>2]=i[b+24>>2];i[c+28>>2]=i[b+28>>2];i[c+32>>2]=i[b+32>>2];i[c+36>>2]=i[b+36>>2];i[c+40>>2]=i[b+40>>2];i[c+44>>2]=i[b+44>>2];i[c+48>>2]=i[b+48>>2];i[c+52>>2]=i[b+52>>2];i[c+56>>2]=i[b+56>>2];i[c+60>>2]=i[b+60>>2];b=b- -64|0;c=c- -64|0;if(c>>>0<=f>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){i[c>>2]=i[b>>2];b=b+4|0;c=c+4|0;if(c>>>0>>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){g[c|0]=j[b|0];g[c+1|0]=j[b+1|0];g[c+2|0]=j[b+2|0];g[c+3|0]=j[b+3|0];b=b+4|0;c=c+4|0;if(c>>>0<=d>>>0){continue}break}}if(c>>>0>>0){while(1){g[c|0]=j[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function ac(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;g=J-16|0;J=g;if(Pa(a,b)){m=a+36|0;h=M[i[i[a>>2]+24>>2]](a)|0;e=i[a+40>>2];d=i[a+36>>2];c=e-d>>2;a:{if(h>>>0>c>>>0){bc(m,h-c|0);break a}if(h>>>0>=c>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e+ -4|0;c=i[e>>2];i[e>>2]=0;if(c){M[i[i[c>>2]+4>>2]](c)}if((e|0)!=(d|0)){continue}break}}i[a+40>>2]=d}b:{if((h|0)<1){break b}n=1;f=i[b+16>>2];d=i[b+12>>2];c=i[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<=f>>>0:0){break b}e=0;while(1){k=j[f+i[b>>2]|0];f=f+1|0;if(f>>>0<1){c=c+1|0}d=b;i[d+16>>2]=f;i[d+20>>2]=c;M[i[i[a>>2]+48>>2]](g+8|0,a,k);c=i[a+36>>2];d=i[g+8>>2];i[g+8>>2]=0;f=e<<2;k=c+f|0;c=i[k>>2];i[k>>2]=d;if(c){M[i[i[c>>2]+4>>2]](c)}c=i[g+8>>2];i[g+8>>2]=0;if(c){M[i[i[c>>2]+4>>2]](c)}c=i[i[m>>2]+f>>2];if(!c){break b}if(!(p=c,q=M[i[i[a>>2]+28>>2]](a)|0,r=M[i[i[a>>2]+20>>2]](a,e)|0,o=i[i[c>>2]+8>>2],M[o](p|0,q|0,r|0)|0)){break b}e=e+1|0;n=(e|0)<(h|0);if((e|0)==(h|0)){break b}f=i[b+16>>2];d=i[b+12>>2];c=i[b+20>>2];if((d|0)>(c|0)?1:(d|0)>=(c|0)?l[b+8>>2]>f>>>0:0){continue}break}}e=n^1}J=g+16|0;return e&1}function pg(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11468;b=a+368|0;d=i[b>>2];i[b>>2]=0;if(d){c=d+ -4|0;b=i[c>>2];if(b){b=d+(b<<4)|0;while(1){b=b+ -16|0;if((d|0)!=(b|0)){continue}break}}nn(c)}d=i[a+216>>2];if(d){b=i[a+220>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=i[b+ -12>>2];if(c){i[b+ -8>>2]=c;nn(c)}c=i[b+ -28>>2];if(c){i[b+ -24>>2]=c;nn(c)}c=b+ -144|0;e=i[b+ -40>>2];if(e){i[b+ -36>>2]=e;nn(e)}Rf(b+ -140|0);b=c;if((d|0)!=(b|0)){continue}break}c=i[a+216>>2]}i[a+220>>2]=d;nn(c)}b=i[a+196>>2];if(b){i[a+200>>2]=b;nn(b)}b=i[a+184>>2];if(b){i[a+188>>2]=b;nn(b)}b=i[a+172>>2];if(b){i[a+176>>2]=b;nn(b)}b=i[a+160>>2];if(b){i[a+164>>2]=b;nn(b)}b=i[a+144>>2];if(b){while(1){d=i[b>>2];nn(b);b=d;if(b){continue}break}}b=i[a+136>>2];i[a+136>>2]=0;if(b){nn(b)}b=i[a+120>>2];if(b){nn(b)}b=i[a+108>>2];if(b){nn(b)}b=i[a+96>>2];if(b){nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}b=i[a+36>>2];if(b){i[a+40>>2]=b;nn(b)}b=i[a+24>>2];if(b){i[a+28>>2]=b;nn(b)}b=i[a+12>>2];if(b){i[a+16>>2]=b;nn(b)}b=i[a+8>>2];i[a+8>>2]=0;if(b){Qf(a+8|0,b)}return a|0}function ca(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,n=0,o=0;j=+m[b>>2];k=+m[b+4>>2];n=+m[b+8>>2];h=q(j)+q(k)+q(n);a:{if(h>1e-6^1){j=1;k=0;f=0;break a}h=1/h;k=h*k;j=h*j;f=h*n<0}h=k;g=i[a+16>>2];k=+(g|0);h=u(h*k+.5);b:{if(q(h)<2147483648){b=~~h;break b}b=-2147483648}l=(b|0)<0?b:0-b|0;j=u(j*k+.5);c:{if(q(j)<2147483648){e=~~j;break c}e=-2147483648}o=(e|0)<0;e=l+((o?e:0-e|0)+g|0)|0;l=(e|0)<0?0:e;f=f?0-l|0:l;b=b+(e>>31&((b|0)>0?e:0-e|0))|0;d:{if(!o){e=b+g|0;b=f+g|0;break d}e:{if((b|0)<=-1){e=f>>31;e=e+f^e;break e}e=i[a+8>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=b;b=b>>31;b=f+b^b;break d}b=i[a+8>>2]+((b|0)<0?b:0-b|0)|0}f:{if(!(b|e)){b=i[a+8>>2];a=b;break f}f=i[a+8>>2];g:{h:{i:{j:{if(!e){if((b|0)==(f|0)){a=b;break f}a=0;if(b|f){break j}b=0;break f}if((e|0)!=(f|0)|b){break i}b=e;a=b;break f}if((g|0)<(b|0)){b=(g<<1)-b|0;break f}if(f){break g}break h}if((e|0)!=(f|0)){break g}}f=e;if((g|0)<=(b|0)){break g}b=(g<<1)-b|0;a=e;break f}if(!((b|0)!=(f|0)|(g|0)<=(e|0))){a=(g<<1)-e|0;break f}if(b){a=e;break f}b=0;if((g|0)>=(e|0)){a=e;break f}a=(g<<1)-e|0}i[c>>2]=a;i[d>>2]=b}function Pd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=J-32|0;J=e;a:{b:{switch(d+ -2|0){case 0:d=i[b+4>>2];f=i[b+12>>2];i[e+24>>2]=-1;i[e+16>>2]=-1;i[e+20>>2]=1065353216;i[e+8>>2]=-1;i[e+12>>2]=-1;b=0;c:{if((c|0)==-2){break c}g=i[i[i[d+4>>2]+8>>2]+(f<<2)>>2];if((M[i[i[d>>2]+8>>2]](d)|0)==1){b=k[d+36>>1];Qd(e,d,c,f,e+8|0,(b<<24|b<<8&16711680)>>>16|0);b=i[e>>2];if(b){break c}i[e>>2]=0}b=Dm(28);i[b+4>>2]=g;c=i[e+12>>2];i[b+8>>2]=i[e+8>>2];i[b+12>>2]=c;c=i[e+20>>2];i[b+16>>2]=i[e+16>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+24>>2];i[b>>2]=8676}i[a>>2]=b;break a;case 1:d=i[b+4>>2];f=i[b+12>>2];i[e+24>>2]=-1;i[e+16>>2]=-1;i[e+20>>2]=1065353216;i[e+8>>2]=-1;i[e+12>>2]=-1;b=0;d:{if((c|0)==-2){break d}g=i[i[i[d+4>>2]+8>>2]+(f<<2)>>2];if((M[i[i[d>>2]+8>>2]](d)|0)==1){b=k[d+36>>1];Rd(e,d,c,f,e+8|0,(b<<24|b<<8&16711680)>>>16|0);b=i[e>>2];if(b){break d}i[e>>2]=0}b=Dm(28);i[b+4>>2]=g;c=i[e+12>>2];i[b+8>>2]=i[e+8>>2];i[b+12>>2]=c;c=i[e+20>>2];i[b+16>>2]=i[e+16>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+24>>2];i[b>>2]=10680}i[a>>2]=b;break a;default:break b}}i[a>>2]=0}J=e+32|0}function sl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{if((b|0)<0){break a}c=i[a+12>>2];d=i[a+8>>2];if(c-d>>2>>>0<=b>>>0){break a}d=d+(b<<2)|0;f=i[d>>2];h=i[f+60>>2];g=i[f+56>>2];e=d+4|0;b:{if((e|0)!=(c|0)){while(1){j=i[e>>2];i[e>>2]=0;i[d>>2]=j;if(f){Sa(f)}d=d+4|0;e=e+4|0;if((e|0)!=(c|0)){f=i[d>>2];continue}break}c=i[a+12>>2];if((d|0)==(c|0)){break b}}while(1){c=c+ -4|0;f=i[c>>2];i[c>>2]=0;if(f){Sa(f)}if((c|0)!=(d|0)){continue}break}}i[a+12>>2]=d;c=i[a+4>>2];if(c){tl(c,h)}c:{if((g|0)>4){break c}d:{d=o(g,12)+a|0;c=i[d+20>>2];f=d+24|0;d=i[f>>2];if((c|0)==(d|0)){break d}while(1){if(i[c>>2]==(b|0)){break d}c=c+4|0;if((d|0)!=(c|0)){continue}break}break c}if((c|0)==(d|0)){break c}e=c+4|0;d=d-e|0;if(d){rn(c,e,d)}i[f>>2]=c+d}d=0;while(1){c=o(d,12)+a|0;e=i[c+24>>2];f=i[c+20>>2];if((e|0)!=(f|0)){c=e-f|0;g=(c|0)>-1?c:-1;e=f-e|0;c=o((g|0)<1?g:1,((e|0)>(c|0)?e:c)>>>2|0);e=c>>>0>1?c:1;c=0;while(1){g=f+(c<<2)|0;h=i[g>>2];if((h|0)>(b|0)){i[g>>2]=h+ -1}c=c+1|0;if((e|0)!=(c|0)){continue}break}}d=d+1|0;if((d|0)!=5){continue}break}}}function Me(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);g[b+12|0]=c;a:{if(c){break a}while(1){d=i[b+8>>2];if(j[d+12|0]){break a}b:{c=i[d+8>>2];e=i[c>>2];if((e|0)==(d|0)){e=i[c+4>>2];if(!(!e|j[e+12|0])){break b}c:{if(i[d>>2]==(b|0)){b=d;break c}b=i[d+4>>2];e=i[b>>2];i[d+4>>2]=e;a=b;if(e){i[e+8>>2]=d;c=i[d+8>>2]}i[a+8>>2]=c;a=i[d+8>>2];i[(((d|0)!=i[a>>2])<<2)+a>>2]=b;i[b>>2]=d;i[d+8>>2]=b;c=i[b+8>>2]}g[b+12|0]=1;g[c+12|0]=0;a=i[c>>2];b=i[a+4>>2];i[c>>2]=b;if(b){i[b+8>>2]=c}i[a+8>>2]=i[c+8>>2];b=i[c+8>>2];i[((i[b>>2]!=(c|0))<<2)+b>>2]=a;i[a+4>>2]=c;i[c+8>>2]=a;return}if(!(j[e+12|0]|!e)){break b}d:{if(i[d>>2]!=(b|0)){b=d;break d}e=i[b+4>>2];i[d>>2]=e;a=b;if(e){i[e+8>>2]=d;c=i[d+8>>2]}i[a+8>>2]=c;a=i[d+8>>2];i[(((d|0)!=i[a>>2])<<2)+a>>2]=b;i[b+4>>2]=d;i[d+8>>2]=b;c=i[b+8>>2]}g[b+12|0]=1;g[c+12|0]=0;a=i[c+4>>2];b=i[a>>2];i[c+4>>2]=b;if(b){i[b+8>>2]=c}i[a+8>>2]=i[c+8>>2];b=i[c+8>>2];i[((i[b>>2]!=(c|0))<<2)+b>>2]=a;i[a>>2]=c;i[c+8>>2]=a;break a}b=e+12|0;g[d+12|0]=1;g[c+12|0]=(a|0)==(c|0);g[b|0]=1;b=c;if((a|0)!=(b|0)){continue}break}}}function Yd(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i[b+16>>2];h=i[c+4>>2]-l|0;e=i[c>>2]-l|0;i[c>>2]=e;i[c+4>>2]=h;f=h>>31;g=f+h^f;f=e>>31;g=g+(f+e^f)|0;f=i[b+16>>2];m=(g|0)<=(f|0);a:{if(m){g=h;break a}b:{c:{if((e|0)>=0){g=1;j=1;if((h|0)>-1){break b}k=1;g=-1;j=-1;if((e|0)>=1){break c}break b}k=-1;g=-1;j=-1;if((h|0)<1){break b}}g=(h|0)<1?-1:1;j=k}k=o(f,j);e=(e<<1)-k|0;j=(o(g,j)|0)>-1;f=o(f,g);g=((j?0-e|0:e)+f|0)/2|0;i[c+4>>2]=g;n=c;c=(h<<1)-f|0;e=(k+(j?0-c|0:c)|0)/2|0;i[n>>2]=e;f=i[b+16>>2]}c=i[d+4>>2]+g|0;e=i[d>>2]+e|0;d:{if((f|0)<(e|0)){e=e-i[b+4>>2]|0;break d}if((e|0)>=(0-f|0)){break d}e=i[b+4>>2]+e|0}e:{if((f|0)<(c|0)){c=c-i[b+4>>2]|0;break e}if((c|0)>=(0-f|0)){break e}c=i[b+4>>2]+c|0}f:{if(m){f=c;break f}g:{h:{if((e|0)>=0){b=1;g=1;if((c|0)>-1){break g}d=1;b=-1;g=-1;if((e|0)>=1){break h}break g}d=-1;b=-1;g=-1;if((c|0)<1){break g}}b=(c|0)<1?-1:1;g=d}h=o(f,g);d=(e<<1)-h|0;i[a>>2]=d;k=0-d|0;j=d;d=(o(b,g)|0)>-1;b=o(b,f);f=((d?k:j)+b|0)/2|0;b=(c<<1)-b|0;e=(h+(d?0-b|0:b)|0)/2|0}i[a>>2]=e+l;i[a+4>>2]=f+l}function Sc(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i[b+4>>2];f=i[b>>2];c=(i[c+4>>2]-g|0)+(i[c>>2]-f<<3)|0;a:{if((c|0)<=0){g=i[d+4>>2];break a}b:{if(!g){g=i[d+4>>2];break b}e=i[d+4>>2];j=32-e|0;l=32-g|0;h=(c|0)<(l|0)?c:l;k=j>>>0>>0?j:h;m=i[d>>2];f=i[f>>2]&(-1<>>l-h);i[m>>2]=i[m>>2]&(-1<>>j-k^-1)|(e>>>0>g>>>0?f<>>g-e|0);e=e+k|0;g=e&31;i[d+4>>2]=g;j=m+(e>>>3&536870908)|0;i[d>>2]=j;e=h-k|0;if((e|0)>=1){i[j>>2]=i[j>>2]&(-1>>>32-e^-1)|f>>>k+i[b+4>>2];i[d+4>>2]=e;g=e}c=c-h|0;f=i[b>>2]+4|0;i[b>>2]=f}k=-1<>2];f=i[f>>2];i[e>>2]=j&i[e>>2]|f<>2]=e+4;i[e+4>>2]=k&i[e+4>>2]|f>>>h;f=i[b>>2]+4|0;i[b>>2]=f;l=(c|0)>63;e=c+ -32|0;c=e;if(l){continue}break}}if((e|0)<1){break a}b=i[d>>2];c=(h|0)<(e|0)?h:e;j=i[b>>2]&(k&-1>>>h-c^-1);h=i[f>>2]&-1>>>32-e;i[b>>2]=j|h<>2]=g;f=b+(f>>>3&536870908)|0;i[d>>2]=f;b=e-c|0;if((b|0)<1){break a}i[f>>2]=i[f>>2]&(-1>>>32-b^-1)|h>>>c;i[d+4>>2]=b;g=b}b=i[d>>2];i[a+4>>2]=g;i[a>>2]=b}function vi(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;e=J-16|0;J=e;m=i[a+80>>2];k=g[b+24|0];f=o(m,k);a:{b:{c:{a=i[b+28>>2];if(!(!j[b+84|0]|((a|0)!=6?(a|0)!=5:0))){l=i[b+48>>2];k=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;a=0;b=f<<2;d:{if(!b){break d}a=b>>2;if(a>>>0>=1073741824){break c}d=Dm(b);h=d+(a<<2)|0;if((b|0)<1){a=d;break d}d=pn(d,k+l|0,b);a=d;d=b+a|0}b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}i[c+8>>2]=h;i[c+4>>2]=d;i[c>>2]=a;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(k){if((k|0)<=-1){break c}a=k<<2;h=Dm(a);i[e>>2]=h;d=a+h|0;i[e+8>>2]=d;qn(h,0,a);i[e+4>>2]=d}d=i[c>>2];a=i[c+4>>2]-d>>2;e:{if(f>>>0>a>>>0){ye(c,f-a|0);break e}if(f>>>0>=a>>>0){break e}i[c+4>>2]=d+(f<<2)}if(!m){break b}d=0;n=1;while(1){a=l;f=b;if(!j[b+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!wi(f,a,g[b+24|0],h)){break b}if((k|0)>=1){f=i[c>>2];a=0;while(1){i[f+(d<<2)>>2]=i[(a<<2)+h>>2];d=d+1|0;a=a+1|0;if((k|0)!=(a|0)){continue}break}}l=l+1|0;n=l>>>0>>0;if((l|0)!=(m|0)){continue}break}break b}Sm();x()}if(h){nn(h)}a=n^1}J=e+16|0;return a&1}function ti(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;e=J-16|0;J=e;m=i[a+80>>2];k=g[b+24|0];f=o(m,k);a:{b:{c:{a=i[b+28>>2];if(!(!j[b+84|0]|((a|0)!=6?(a|0)!=5:0))){l=i[b+48>>2];k=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;a=0;b=f<<2;d:{if(!b){break d}a=b>>2;if(a>>>0>=1073741824){break c}d=Dm(b);h=d+(a<<2)|0;if((b|0)<1){a=d;break d}d=pn(d,k+l|0,b);a=d;d=b+a|0}b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}i[c+8>>2]=h;i[c+4>>2]=d;i[c>>2]=a;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(k){if((k|0)<=-1){break c}a=k<<2;h=Dm(a);i[e>>2]=h;d=a+h|0;i[e+8>>2]=d;qn(h,0,a);i[e+4>>2]=d}d=i[c>>2];a=i[c+4>>2]-d>>2;e:{if(f>>>0>a>>>0){Ra(c,f-a|0);break e}if(f>>>0>=a>>>0){break e}i[c+4>>2]=d+(f<<2)}if(!m){break b}d=0;n=1;while(1){a=l;f=b;if(!j[b+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!ui(f,a,g[b+24|0],h)){break b}if((k|0)>=1){f=i[c>>2];a=0;while(1){i[f+(d<<2)>>2]=i[(a<<2)+h>>2];d=d+1|0;a=a+1|0;if((k|0)!=(a|0)){continue}break}}l=l+1|0;n=l>>>0>>0;if((l|0)!=(m|0)){continue}break}break b}Sm();x()}if(h){nn(h)}a=n^1}J=e+16|0;return a&1}function Nb(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=J-32|0;J=b;c=i[a+16>>2];a:{if(c>>>0>=341){i[a+16>>2]=c+ -341;c=i[a+4>>2];i[b+8>>2]=i[c>>2];i[a+4>>2]=c+4;Ob(a,b+8|0);break a}b:{c:{d:{e:{d=i[a+8>>2];e=d-i[a+4>>2]>>2;f=i[a+12>>2];c=f-i[a>>2]|0;if(e>>>0>2>>>0){if((d|0)==(f|0)){break e}g=b,h=Dm(4092),i[g+8>>2]=h;Ob(a,b+8|0);break a}i[b+24>>2]=a+12;c=c?c>>1:1;if(c>>>0>=1073741824){break d}d=c<<2;c=Dm(d);i[b+8>>2]=c;e=c+(e<<2)|0;i[b+16>>2]=e;i[b+20>>2]=c+d;i[b+12>>2]=e;g=b,h=Dm(4092),i[g+4>>2]=h;Ob(b+8|0,b+4|0);d=i[a+8>>2];if((d|0)==i[a+4>>2]){c=d;break b}while(1){d=d+ -4|0;Pb(b+8|0,d);if(i[a+4>>2]!=(d|0)){continue}break}break c}g=b,h=Dm(4092),i[g+8>>2]=h;Pb(a,b+8|0);c=i[a+4>>2];i[b+8>>2]=i[c>>2];i[a+4>>2]=c+4;Ob(a,b+8|0);break a}Ba(1756);x()}c=i[a+8>>2]}e=i[a>>2];i[a>>2]=i[b+8>>2];i[b+8>>2]=e;i[a+4>>2]=i[b+12>>2];i[b+12>>2]=d;i[a+8>>2]=i[b+16>>2];i[b+16>>2]=c;f=i[a+12>>2];i[a+12>>2]=i[b+20>>2];i[b+20>>2]=f;if((c|0)!=(d|0)){i[b+16>>2]=c+(((c-d|0)+ -4>>>2^-1)<<2)}if(!e){break a}nn(e)}J=b+32|0}function tg(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11568;ug(a+232|0);e=i[a+216>>2];if(e){c=e;b=i[a+220>>2];d=c;a:{if((c|0)==(b|0)){break a}while(1){c=i[b+ -12>>2];if(c){i[b+ -8>>2]=c;nn(c)}c=i[b+ -28>>2];if(c){i[b+ -24>>2]=c;nn(c)}c=b+ -144|0;d=i[b+ -40>>2];if(d){i[b+ -36>>2]=d;nn(d)}Rf(b+ -140|0);b=c;if((e|0)!=(b|0)){continue}break}d=i[a+216>>2]}c=d;i[a+220>>2]=e;nn(c)}b=i[a+196>>2];if(b){i[a+200>>2]=b;nn(b)}b=i[a+184>>2];if(b){i[a+188>>2]=b;nn(b)}b=i[a+172>>2];if(b){i[a+176>>2]=b;nn(b)}b=i[a+160>>2];if(b){i[a+164>>2]=b;nn(b)}b=i[a+144>>2];if(b){while(1){c=i[b>>2];nn(b);b=c;if(b){continue}break}}b=i[a+136>>2];i[a+136>>2]=0;if(b){nn(b)}b=i[a+120>>2];if(b){nn(b)}b=i[a+108>>2];if(b){nn(b)}b=i[a+96>>2];if(b){nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}b=i[a+36>>2];if(b){i[a+40>>2]=b;nn(b)}b=i[a+24>>2];if(b){i[a+28>>2]=b;nn(b)}b=i[a+12>>2];if(b){i[a+16>>2]=b;nn(b)}b=i[a+8>>2];i[a+8>>2]=0;if(b){Qf(a+8|0,b)}return a|0}function mi(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;f=J-16|0;J=f;l=i[a+80>>2];h=g[b+24|0];a=o(l,h);a:{e=i[b+28>>2];b:{if(!(!j[b+84|0]|((e|0)!=2?(e|0)!=1:0))){e=i[b+48>>2];k=i[i[b>>2]>>2];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;b=0;if(a){if((a|0)<=-1){break a}b=Dm(a);d=pn(b,e+k|0,a)+a|0}a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=d;i[c+4>>2]=d;i[c>>2]=b;a=1;break b}i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;if(h){if((h|0)<=-1){break a}d=Dm(h);i[f>>2]=d;e=d+h|0;i[f+8>>2]=e;qn(d,0,h);i[f+4>>2]=e}k=i[c>>2];e=i[c+4>>2]-k|0;c:{if(a>>>0>e>>>0){rb(c,a-e|0);break c}if(a>>>0>=e>>>0){break c}i[c+4>>2]=a+k}if(l){a=0;m=1;e=0;while(1){d=e;k=b;if(!j[b+84|0]){d=i[i[b+68>>2]+(e<<2)>>2]}n=d;d=i[f>>2];if(ni(k,n,g[b+24|0],d)){d:{if((h|0)<1){break d}g[i[c>>2]+a|0]=j[d|0];d=1;a=a+1|0;if((h|0)==1){break d}while(1){g[i[c>>2]+a|0]=j[i[f>>2]+d|0];a=a+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}e=e+1|0;m=e>>>0>>0;if((e|0)!=(l|0)){continue}}break}d=i[f>>2]}if(d){nn(d)}a=m^1}J=f+16|0;return a&1}Sm();x()}function ki(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;f=J-16|0;J=f;l=i[a+80>>2];h=g[b+24|0];a=o(l,h);a:{e=i[b+28>>2];b:{if(!(!j[b+84|0]|((e|0)!=2?(e|0)!=1:0))){e=i[b+48>>2];k=i[i[b>>2]>>2];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;b=0;if(a){if((a|0)<=-1){break a}b=Dm(a);d=pn(b,e+k|0,a)+a|0}a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=d;i[c+4>>2]=d;i[c>>2]=b;a=1;break b}i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;if(h){if((h|0)<=-1){break a}d=Dm(h);i[f>>2]=d;e=d+h|0;i[f+8>>2]=e;qn(d,0,h);i[f+4>>2]=e}k=i[c>>2];e=i[c+4>>2]-k|0;c:{if(a>>>0>e>>>0){rb(c,a-e|0);break c}if(a>>>0>=e>>>0){break c}i[c+4>>2]=a+k}if(l){a=0;m=1;e=0;while(1){d=e;k=b;if(!j[b+84|0]){d=i[i[b+68>>2]+(e<<2)>>2]}n=d;d=i[f>>2];if(li(k,n,g[b+24|0],d)){d:{if((h|0)<1){break d}g[i[c>>2]+a|0]=j[d|0];d=1;a=a+1|0;if((h|0)==1){break d}while(1){g[i[c>>2]+a|0]=j[i[f>>2]+d|0];a=a+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}e=e+1|0;m=e>>>0>>0;if((e|0)!=(l|0)){continue}}break}d=i[f>>2]}if(d){nn(d)}a=m^1}J=f+16|0;return a&1}Sm();x()}function md(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=i[b+12>>2];e=l;d=i[b+20>>2];f=d;a:{m=i[b+16>>2];c=m+4|0;if(c>>>0<4){d=d+1|0}n=i[b+8>>2];g=c;c=d;if((e|0)<(c|0)?1:(e|0)<=(c|0)?n>>>0>>0:0){break a}o=i[b>>2];d=o+m|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[b+16>>2]=g;i[b+20>>2]=c;c=l;d=f;h=m+8|0;if(h>>>0<8){d=d+1|0}if((c|0)<(d|0)?1:(c|0)<=(d|0)?n>>>0>>0:0){break a}c=g+o|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=d;if((e|0)>(c|0)){break a}i[a+16>>2]=c;i[a+12>>2]=e;g=e;e=(c>>31)-((e>>31)+(c>>>0>>0)|0)|0;c=c-g|0;if(!e&c>>>0>2147483646|e>>>0>0){break a}e=c+1|0;i[a+20>>2]=e;c=(e|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(!(e&1)){i[a+24>>2]=c+ -1}if(k[b+38>>1]<=513){if((l|0)<(d|0)?1:(l|0)<=(d|0)?n>>>0<=h>>>0:0){break a}c=j[h+o|0];d=f;f=m+9|0;if(f>>>0<9){d=d+1|0}e=b;i[e+16>>2]=f;i[e+20>>2]=d;d=0;b:{switch(c|0){case 1:d=1;break;case 0:break b;default:break a}}i[a+88>>2]=d}return Ae(a+112|0,b)|0}return 0}function ri(a,b,c){var d=0,e=0,f=0,l=0,m=0,n=0,p=0,q=0;e=J-16|0;J=e;p=i[a+80>>2];n=g[b+24|0];a=o(p,n);a:{b:{c:{d=i[b+28>>2];if(!(!j[b+84|0]|((d|0)!=4?(d|0)!=3:0))){l=i[b+48>>2];d=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=0;a=a<<1;if(a){if((a|0)<=-1){break c}b=Dm(a);l=pn(b,d+l|0,a);m=l+a|0;f=l+(a>>1<<1)|0}a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=f;i[c+4>>2]=m;i[c>>2]=b;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(n){if((n|0)<=-1){break c}d=n<<1;m=Dm(d);i[e>>2]=m;f=d+m|0;i[e+8>>2]=f;qn(m,0,d);i[e+4>>2]=f}f=i[c>>2];d=i[c+4>>2]-f>>1;d:{if(a>>>0>d>>>0){pi(c,a-d|0);break d}if(a>>>0>=d>>>0){break d}i[c+4>>2]=f+(a<<1)}if(!p){break b}f=0;q=1;while(1){a=l;d=b;if(!j[d+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!si(d,a,g[b+24|0],m)){break b}if((n|0)>=1){d=i[c>>2];a=0;while(1){h[d+(f<<1)>>1]=k[(a<<1)+m>>1];f=f+1|0;a=a+1|0;if((n|0)!=(a|0)){continue}break}}l=l+1|0;q=l>>>0

>>0;if((l|0)!=(p|0)){continue}break}break b}Sm();x()}if(m){nn(m)}a=q^1}J=e+16|0;return a&1}function oi(a,b,c){var d=0,e=0,f=0,l=0,m=0,n=0,p=0,q=0;e=J-16|0;J=e;p=i[a+80>>2];n=g[b+24|0];a=o(p,n);a:{b:{c:{d=i[b+28>>2];if(!(!j[b+84|0]|((d|0)!=4?(d|0)!=3:0))){l=i[b+48>>2];d=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=0;a=a<<1;if(a){if((a|0)<=-1){break c}b=Dm(a);l=pn(b,d+l|0,a);m=l+a|0;f=l+(a>>1<<1)|0}a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=f;i[c+4>>2]=m;i[c>>2]=b;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(n){if((n|0)<=-1){break c}d=n<<1;m=Dm(d);i[e>>2]=m;f=d+m|0;i[e+8>>2]=f;qn(m,0,d);i[e+4>>2]=f}f=i[c>>2];d=i[c+4>>2]-f>>1;d:{if(a>>>0>d>>>0){pi(c,a-d|0);break d}if(a>>>0>=d>>>0){break d}i[c+4>>2]=f+(a<<1)}if(!p){break b}f=0;q=1;while(1){a=l;d=b;if(!j[d+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!qi(d,a,g[b+24|0],m)){break b}if((n|0)>=1){d=i[c>>2];a=0;while(1){h[d+(f<<1)>>1]=k[(a<<1)+m>>1];f=f+1|0;a=a+1|0;if((n|0)!=(a|0)){continue}break}}l=l+1|0;q=l>>>0

>>0;if((l|0)!=(p|0)){continue}break}break b}Sm();x()}if(m){nn(m)}a=q^1}J=e+16|0;return a&1}function ba(a,b,c,d,e){var f=0,g=0,h=0,k=0,l=0,n=0,o=0,q=0;f=J-48|0;J=f;a=i[a+4>>2];a:{if(a+ -2>>>0>28){break a}l=i[i[e>>2]>>2]+i[e+48>>2]|0;i[f+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;i[f+24>>2]=a;i[f+32>>2]=(a|0)/2;m[f+28>>2]=p(2)/p(a|0);g=i[c>>2];if((g|0)!=i[c+4>>2]){a=0;e=0;while(1){d=i[(e<<2)+g>>2];g=f+36|0;n=i[i[b>>2]>>2];o=i[b+48>>2];h=i[b+44>>2];k=i[b+40>>2];q=k;if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}d=Gn(q,h,d,0)+o|0;pn(g,d+n|0,k);ca(f+16|0,f+36|0,f+12|0,f+8|0);d=a<<2;i[d+l>>2]=i[f+12>>2];i[(d|4)+l>>2]=i[f+8>>2];h=1;a=a+2|0;e=e+1|0;g=i[c>>2];if(e>>>0>2]-g>>2>>>0){continue}break}break a}if(!d){h=1;break a}e=0;a=0;while(1){c=a;g=f+36|0;n=i[i[b>>2]>>2];o=i[b+48>>2];h=i[b+44>>2];k=i[b+40>>2];q=k;if(!j[b+84|0]){c=i[i[b+68>>2]+(a<<2)>>2]}c=Gn(q,h,c,0)+o|0;pn(g,c+n|0,k);ca(f+16|0,f+36|0,f+12|0,f+8|0);c=e<<2;i[c+l>>2]=i[f+12>>2];i[(c|4)+l>>2]=i[f+8>>2];e=e+2|0;h=1;a=a+1|0;if((d|0)!=(a|0)){continue}break}}J=f+48|0;return h}function wa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,m=0,n=0;e=i[a+12>>2];d=i[a+8>>2];f=e-d>>2;b=g[b+24|0];a:{if(f>>>0>>0){na(a+8|0,b-f|0);d=i[a+8>>2];e=i[a+12>>2];break a}if(f>>>0<=b>>>0){break a}e=(b<<2)+d|0;i[a+12>>2]=e}b=0;h=i[c+12>>2];f=i[c+20>>2];k=i[c+16>>2];m=e-d|0;e=m;n=k+e|0;if(n>>>0>>0){f=f+1|0}b:{if((h|0)<(f|0)?1:(h|0)<=(f|0)?l[c+8>>2]>>0:0){break b}pn(d,k+i[c>>2]|0,m);d=i[c+20>>2];h=e+i[c+16>>2]|0;if(h>>>0>>0){d=d+1|0}e=h;i[c+16>>2]=e;i[c+20>>2]=d;f=i[c+12>>2];h=e+4|0;if(h>>>0<4){d=d+1|0}if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]>>0:0){break b}d=e+i[c>>2]|0;i[a+20>>2]=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);d=i[c+20>>2];e=d;k=i[c+16>>2];h=k+4|0;if(h>>>0<4){d=d+1|0}i[c+16>>2]=h;i[c+20>>2]=d;f=i[c+12>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=h>>>0:0){break b}f=j[h+i[c>>2]|0];d=e;e=k+5|0;if(e>>>0<5){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;if(f+ -1>>>0>29){break b}i[a+4>>2]=f;b=1}return b|0}function Qk(a,b){var c=0,d=0,e=0,f=0,h=0,j=0;j=J-16|0;J=j;a:{b:{if(b){i[a+88>>2]=0;i[a+92>>2]=0;c=a+84|0;d=i[c>>2];i[c>>2]=0;if(d){nn(d)}i[a+76>>2]=0;i[a+80>>2]=0;c=a+72|0;d=i[c>>2];i[c>>2]=0;if(d){nn(d)}d=i[b>>2];c=i[b+4>>2];g[j+15|0]=0;Jf(a,c-d>>2,j+15|0);c=b+28|0;d=i[c>>2];e=i[b+24>>2];g[j+14|0]=0;Jf(a+12|0,d-e>>2,j+14|0);Hk(a+28|0,i[b+4>>2]-i[b>>2]>>2,14476);d=i[a+52>>2];e=i[c>>2]-i[b+24>>2]|0;c=e>>2;c:{if(i[a+60>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break b}f=i[a+56>>2];h=c<<2;c=Dm(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[a+60>>2]=h;i[a+56>>2]=f;i[a+52>>2]=c;if(!d){break c}nn(d)}d=i[a+40>>2];e=i[b+28>>2]-i[b+24>>2]|0;c=e>>2;d:{if(i[a+48>>2]-d>>2>>>0>=c>>>0){break d}if(c>>>0>=1073741824){break a}f=i[a+44>>2];h=c<<2;c=Dm(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[a+48>>2]=h;i[a+44>>2]=f;i[a+40>>2]=c;if(!d){break d}nn(d)}g[a+24|0]=1;i[a+64>>2]=b}J=j+16|0;return}Ba(14480);x()}Ba(14480);x()}function Eg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i[a+12>>2];d=i[a+108>>2];e=i[d+80>>2];g[b+84|0]=0;f=i[b+68>>2];c=i[b+72>>2]-f>>2;a:{if(e>>>0>c>>>0){Wb(b+68|0,e-c|0,12516);d=i[a+108>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=f+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}p=d>>>0>1?d:1;d=0;b:{while(1){c:{if((d|0)==1431655765){break c}c=i[n>>2]+(o(d,3)<<2)|0;j=i[c>>2];if((j|0)==-1){break c}f=o(d,12)+m|0;h=i[f>>2];if(h>>>0>=e>>>0){break c}l=i[i[a+112>>2]+12>>2];k=i[l+(j<<2)>>2];if(k>>>0>=e>>>0){break c}j=i[b+68>>2];i[j+(h<<2)>>2]=k;h=i[c+4>>2];if((h|0)==-1){break c}k=i[f+4>>2];if(k>>>0>=e>>>0){break c}h=i[(h<<2)+l>>2];if(h>>>0>=e>>>0){break c}i[j+(k<<2)>>2]=h;c=i[c+8>>2];if((c|0)==-1){break c}f=i[f+8>>2];if(f>>>0>=e>>>0){break c}c=i[(c<<2)+l>>2];if(c>>>0>=e>>>0){break c}i[j+(f<<2)>>2]=c;c=1;d=d+1|0;if((p|0)!=(d|0)){continue}break b}break}c=0}return c|0}function Pg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i[a+12>>2];d=i[a+68>>2];e=i[d+80>>2];g[b+84|0]=0;f=i[b+68>>2];c=i[b+72>>2]-f>>2;a:{if(e>>>0>c>>>0){Wb(b+68|0,e-c|0,12516);d=i[a+68>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=f+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}p=d>>>0>1?d:1;d=0;b:{while(1){c:{if((d|0)==1431655765){break c}c=i[n>>2]+(o(d,3)<<2)|0;j=i[c>>2];if((j|0)==-1){break c}f=o(d,12)+m|0;h=i[f>>2];if(h>>>0>=e>>>0){break c}l=i[i[a+72>>2]+12>>2];k=i[l+(j<<2)>>2];if(k>>>0>=e>>>0){break c}j=i[b+68>>2];i[j+(h<<2)>>2]=k;h=i[c+4>>2];if((h|0)==-1){break c}k=i[f+4>>2];if(k>>>0>=e>>>0){break c}h=i[(h<<2)+l>>2];if(h>>>0>=e>>>0){break c}i[j+(k<<2)>>2]=h;c=i[c+8>>2];if((c|0)==-1){break c}f=i[f+8>>2];if(f>>>0>=e>>>0){break c}c=i[(c<<2)+l>>2];if(c>>>0>=e>>>0){break c}i[j+(f<<2)>>2]=c;c=1;d=d+1|0;if((p|0)!=(d|0)){continue}break b}break}c=0}return c|0}function Oc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=J-16|0;J=e;a:{c=i[a+4>>2];b:{if(c>>>0>>0){d=i[a+8>>2];f=d<<5;g=b-c|0;c:{if(!(f>>>0>>0|c>>>0>f-g>>>0)){i[a+4>>2]=b;d=c&31;b=i[a>>2]+(c>>>3&536870908)|0;break c}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if((b|0)<=-1){break a}c=e;if(f>>>0<=1073741822){f=b+31&-32;b=d<<6;b=b>>>0>>0?f:b}else{b=2147483647}Qc(c,b);d=i[a+4>>2];i[e+4>>2]=d+g;h=i[a>>2];b=i[e>>2];d:{if((d|0)<1){d=0;break d}c=d>>>5|0;f=c<<2;b=rn(b,h,f)+f|0;d=d-(c<<5)|0;e:{if((d|0)<1){d=0;break e}c=-1>>>32-d|0;i[b>>2]=i[b>>2]&(c^-1)|c&i[f+h>>2]}h=i[a>>2]}i[a>>2]=i[e>>2];i[e>>2]=h;c=i[a+4>>2];i[a+4>>2]=i[e+4>>2];i[e+4>>2]=c;c=i[a+8>>2];i[a+8>>2]=i[e+8>>2];i[e+8>>2]=c;if(!h){break c}nn(h)}if(!g){break b}if(d){c=32-d|0;a=c>>>0>g>>>0?g:c;i[b>>2]=i[b>>2]&(-1<>>c-a^-1);g=g-a|0;b=b+4|0}c=g>>>5<<2;a=qn(b,0,c);b=g&31;if(!b){break b}a=a+c|0;i[a>>2]=i[a>>2]&(-1>>>32-b^-1);break b}i[a+4>>2]=b}J=e+16|0;return}Sm();x()}function Fg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=J-16|0;J=g;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+28>>2]-i[c+24>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];h=c<<2;c=Dm(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[b+8>>2]=h;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}nn(d)}b=i[a+12>>2];d=i[b+28>>2];b=i[b+24>>2];i[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=i[c>>2];d=i[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){Ta(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}i[a+100>>2]=e+(b<<2)}e=a+8|0;b=i[a+116>>2];d:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){d=1;break d}b=0;while(1){d=Gg(e,i[(b<<2)+c>>2]);if(!d){break d}f=i[a+116>>2];c=i[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=i[a+12>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break d}b=0;while(1){d=Gg(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break d}if(d){continue}break}}J=g+16|0;return d|0}Ba(12220);x()}function Vg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;j=i[a+12>>2];d=i[a+68>>2];e=i[d+80>>2];g[b+84|0]=0;h=i[b+68>>2];c=i[b+72>>2]-h>>2;a:{if(e>>>0>c>>>0){Wb(b+68|0,e-c|0,12516);d=i[a+68>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=h+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}n=d>>>0>1?d:1;p=i[j+28>>2];d=0;b:{while(1){c:{c=(o(d,3)<<2)+p|0;h=i[c>>2];if((h|0)==-1){break c}j=o(d,12)+m|0;k=i[j>>2];if(k>>>0>=e>>>0){break c}f=h<<2;h=i[i[a+72>>2]+12>>2];f=i[f+h>>2];if(f>>>0>=e>>>0){break c}l=k<<2;k=i[b+68>>2];i[l+k>>2]=f;f=i[c+4>>2];if((f|0)==-1){break c}l=i[j+4>>2];if(l>>>0>=e>>>0){break c}f=i[h+(f<<2)>>2];if(f>>>0>=e>>>0){break c}i[k+(l<<2)>>2]=f;c=i[c+8>>2];if((c|0)==-1){break c}j=i[j+8>>2];if(j>>>0>=e>>>0){break c}c=i[h+(c<<2)>>2];if(c>>>0>=e>>>0){break c}i[k+(j<<2)>>2]=c;c=1;d=d+1|0;if((n|0)!=(d|0)){continue}break b}break}c=0}return c|0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=a+8|0;d=i[a+12>>2];h=i[a+8>>2];f=d-h>>2;a:{if((f|0)>(b|0)){break a}e=b+1|0;if(e>>>0>f>>>0){rl(j,e-f|0);break a}if(e>>>0>=f>>>0){break a}f=h+(e<<2)|0;if((f|0)!=(d|0)){while(1){d=d+ -4|0;e=i[d>>2];i[d>>2]=0;if(e){Sa(e)}if((d|0)!=(f|0)){continue}break}}i[a+12>>2]=f}b:{c:{d=i[i[c>>2]+56>>2];d:{if((d|0)>4){break d}d=o(d,12)+a|0;h=d+24|0;a=i[h>>2];k=d+28|0;if((a|0)!=i[k>>2]){i[a>>2]=b;i[h>>2]=a+4;break d}l=d+20|0;d=i[l>>2];f=a-d|0;g=f>>2;e=g+1|0;if(e>>>0>=1073741824){break c}a=f>>1;e=g>>>0<536870911?a>>>0>>0?e:a:1073741823;a=0;e:{if(!e){break e}if(e>>>0>=1073741824){break b}a=Dm(e<<2)}g=a+(g<<2)|0;i[g>>2]=b;e=a+(e<<2)|0;g=g+4|0;if((f|0)>=1){pn(a,d,f)}i[l>>2]=a;i[h>>2]=g;i[k>>2]=e;if(!d){break d}nn(d)}d=i[c>>2];i[d+60>>2]=b;a=i[j>>2];i[c>>2]=0;b=a+(b<<2)|0;a=i[b>>2];i[b>>2]=d;if(a){Sa(a)}return}Sm();x()}Ba(14808);x()}function mg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if((e-c|0)/12>>>0>=b>>>0){if(b){b=o(b,12);c=qn(c,0,b-((b+ -12>>>0)%12|0)|0)+b|0}i[a+4>>2]=c;return}a:{b:{c:{h=i[a>>2];f=(c-h|0)/12|0;d=f+b|0;if(d>>>0<357913942){f=o(f,12);e=(e-h|0)/12|0;g=e<<1;e=e>>>0<178956970?g>>>0>>0?d:g:357913941;if(e){if(e>>>0>=357913942){break c}j=Dm(o(e,12))}d=f+j|0;b=o(b,12);f=qn(d,0,b-((b+ -12>>>0)%12|0)|0);g=b+f|0;b=o(e,12)+j|0;if((c|0)==(h|0)){break b}while(1){d=d+ -12|0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;c=c+ -12|0;i[d>>2]=i[c>>2];i[d+4>>2]=i[c+4>>2];i[d+8>>2]=i[c+8>>2];i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;if((c|0)!=(h|0)){continue}break}i[a+8>>2]=b;b=i[a+4>>2];i[a+4>>2]=g;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=b+ -12|0;d=i[a>>2];if(d){i[b+ -8>>2]=d;nn(d)}b=a;if((b|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(12220);x()}i[a+8>>2]=b;i[a+4>>2]=g;i[a>>2]=f}if(c){nn(c)}}function da(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=p(0),f=p(0),h=p(0),k=p(0),l=p(0),m=0,n=p(0),o=p(0),r=p(0),s=p(0),u=0;a:{if(i[c+28>>2]!=9|j[c+24|0]!=3){break a}a=i[a+4>>2];if(a+ -2>>>0>28){break a}u=1;m=i[c+80>>2];if(!m){break a}n=p(p(2)/p((1<>2]>>2]+i[c+48>>2]|0;a=i[i[b>>2]>>2]+i[b+48>>2]|0;b=0;while(1){h=p(0);o=p(0);r=p(0);e=p(p(n*p(i[a>>2]))+p(-1));f=p(p(n*p(i[a+4>>2]))+p(-1));l=p(p(p(1)-p(q(e)))-p(q(f)));k=p(t(p(-l),p(0)));s=p(-k);f=p(f+(f>>8;g[c+10|0]=d>>>16;g[c+11|0]=d>>>24;d=(Nn(o),On(2));g[c+4|0]=d;g[c+5|0]=d>>>8;g[c+6|0]=d>>>16;g[c+7|0]=d>>>24;d=(Nn(h),On(2));g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((m|0)!=(b|0)){continue}break}}return u|0}function zc(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+4>>2]=b;i[a>>2]=3088;b=c;e=i[b+8>>2];f=i[b+12>>2];h=i[b+16>>2];j=i[b+20>>2];k=i[b>>2];l=i[b+4>>2];i[a+40>>2]=0;g=a+32|0;i[g>>2]=0;i[g+4>>2]=0;i[a+24>>2]=h;i[a+28>>2]=j;i[a+16>>2]=e;i[a+20>>2]=f;i[a+8>>2]=k;i[a+12>>2]=l;a:{b=i[b+28>>2]-i[b+24>>2]|0;if(b){e=b>>2;if(e>>>0>=1073741824){break a}b=Dm(b);i[a+32>>2]=b;i[a+36>>2]=b;i[a+40>>2]=b+(e<<2);e=a;f=i[c+24>>2];c=i[c+28>>2]-f|0;if((c|0)>=1){b=pn(b,f,c)+c|0}i[e+36>>2]=b}i[a>>2]=3032;b=i[d+4>>2];i[a+44>>2]=i[d>>2];i[a+48>>2]=b;b=d+8|0;e=i[b+4>>2];i[a+52>>2]=i[b>>2];i[a+56>>2]=e;c=a- -64|0;i[c>>2]=0;i[c+4>>2]=0;i[a+60>>2]=4720;i[a>>2]=4092;c=i[d+4>>2];i[a+72>>2]=i[d>>2];i[a+76>>2]=c;c=i[b+4>>2];i[a+80>>2]=i[b>>2];i[a+84>>2]=c;i[a+104>>2]=1065353216;i[a+108>>2]=-1;i[a+96>>2]=-1;i[a+100>>2]=-1;i[a+88>>2]=1;i[a+92>>2]=-1;i[a+60>>2]=4328;ze(a+112|0);return}Sm();x()}function rd(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+4>>2]=b;i[a>>2]=3088;b=c;e=i[b+8>>2];f=i[b+12>>2];h=i[b+16>>2];j=i[b+20>>2];k=i[b>>2];l=i[b+4>>2];i[a+40>>2]=0;g=a+32|0;i[g>>2]=0;i[g+4>>2]=0;i[a+24>>2]=h;i[a+28>>2]=j;i[a+16>>2]=e;i[a+20>>2]=f;i[a+8>>2]=k;i[a+12>>2]=l;a:{b=i[b+28>>2]-i[b+24>>2]|0;if(b){e=b>>2;if(e>>>0>=1073741824){break a}b=Dm(b);i[a+32>>2]=b;i[a+36>>2]=b;i[a+40>>2]=b+(e<<2);e=a;f=i[c+24>>2];c=i[c+28>>2]-f|0;if((c|0)>=1){b=pn(b,f,c)+c|0}i[e+36>>2]=b}i[a>>2]=5116;b=i[d+4>>2];i[a+44>>2]=i[d>>2];i[a+48>>2]=b;b=d+8|0;e=i[b+4>>2];i[a+52>>2]=i[b>>2];i[a+56>>2]=e;c=a- -64|0;i[c>>2]=0;i[c+4>>2]=0;i[a+60>>2]=6656;i[a>>2]=6072;c=i[d+4>>2];i[a+72>>2]=i[d>>2];i[a+76>>2]=c;c=i[b+4>>2];i[a+80>>2]=i[b>>2];i[a+84>>2]=c;i[a+104>>2]=1065353216;i[a+108>>2]=-1;i[a+96>>2]=-1;i[a+100>>2]=-1;i[a+88>>2]=1;i[a+92>>2]=-1;i[a+60>>2]=6292;ze(a+112|0);return}Sm();x()}function qd(a){var b=0,c=0,d=0;b=i[a+8>>2];d=i[a>>2];a:{if(j[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|i[i[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break e}b=i[i[i[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}i[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;i[a+8>>2]=b;if((b|0)!=-1){break b}}b=-1;c=i[a+4>>2];f:{if((c|0)==-1){break f}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|i[i[d>>2]+(c>>>3&536870908)>>2]>>>c&1){break f}d=i[i[i[d+64>>2]+12>>2]+(c<<2)>>2];if((d|0)==-1){break f}if((d>>>0)%3|0){b=d+ -1|0;break f}b=d+2|0}g[a+12|0]=0;i[a+8>>2]=b;return}if((b|0)!=i[a+4>>2]){break a}i[a+8>>2]=-1;return}c=-1;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)==-1|i[i[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=i[i[i[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break g}if((b>>>0)%3|0){c=b+ -1|0;break g}c=b+2|0}i[a+8>>2]=c}}function nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=J-16|0;J=f;m=i[c+8>>2];h=i[c+16>>2];l=i[c+12>>2];d=l;k=i[c+20>>2];e=k;a:{if((d|0)<(e|0)?1:(d|0)<=(e|0)?m>>>0<=h>>>0:0){break a}n=i[c>>2];o=g[n+h|0];d=k;e=h+1|0;if(e>>>0<1){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;b:{if((o|0)==-2){break b}if((l|0)<(d|0)?1:(l|0)<=(d|0)?m>>>0<=e>>>0:0){break a}e=g[e+n|0];h=h+2|0;if(h>>>0<2){k=k+1|0}d=c;i[d+16>>2]=h;i[d+20>>2]=k;if((e+1&255)>>>0>4){break a}M[i[i[a>>2]+40>>2]](f+8|0,a,o,e);k=i[f+8>>2];i[f+8>>2]=0;d=i[a+20>>2];i[a+20>>2]=k;if(!d){break b}M[i[i[d>>2]+4>>2]](d);d=i[f+8>>2];i[f+8>>2]=0;if(!d){break b}M[i[i[d>>2]+4>>2]](d)}d=i[a+20>>2];if(d){if(!(M[i[i[a>>2]+28>>2]](a,d)|0)){break a}}if(!(M[i[i[a>>2]+36>>2]](a,b,c)|0)){break a}c=i[a+4>>2];if(!(!c|j[c+36|0]>1)){if(!(M[i[i[a>>2]+48>>2]](a,i[b+4>>2]-i[b>>2]>>2)|0)){break a}}p=1}J=f+16|0;return p|0}function _g(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=Dm(b<<2);d=i[a>>2];i[a>>2]=c;if(d){nn(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=Jn(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}k=b+ -1|0;l=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!l){e=e&k;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){e=c;c=i[c>>2];if(i[d+8>>2]==i[c+8>>2]?c:0){continue}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){nn(b)}i[a+4>>2]=0}return}Ba(12220);x()}function qb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}return Ab(a,i[a+4>>2],c)}return k}function pb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}return zb(a,i[a+4>>2],c)}return k}function mb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}return xb(a,i[a+4>>2],c)}return k}function ig(a){i[a>>2]=11568;qn(a+4|0,0,80);i[a+96>>2]=0;i[a+100>>2]=0;i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+148>>2]=0;i[a+156>>2]=0;i[a+160>>2]=0;i[a+152>>2]=1065353216;i[a+164>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;i[a+196>>2]=0;i[a+200>>2]=0;i[a+204>>2]=0;i[a+208>>2]=0;i[a+212>>2]=-1;i[a+216>>2]=0;i[a+220>>2]=0;i[a+224>>2]=0;zh(a+232|0);zh(a+272|0);ze(a+312|0);zh(a+328|0);i[a+392>>2]=0;i[a+396>>2]=0;i[a+384>>2]=0;i[a+388>>2]=0;i[a+376>>2]=0;i[a+380>>2]=0;i[a+368>>2]=0;i[a+372>>2]=0;i[a+416>>2]=0;i[a+420>>2]=0;i[a+408>>2]=2;i[a+412>>2]=7;i[a+400>>2]=-1;i[a+404>>2]=-1;i[a+424>>2]=0;i[a+428>>2]=0;i[a+432>>2]=0;i[a+436>>2]=0}function ci(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=J-16|0;J=e;k=di(a,b);a:{if(!k){break a}d=i[b+100>>2];f=i[b+96>>2];if((d|0)==(f|0)){break a}while(1){if(!(i[i[a+56>>2]+(j>>>3&536870908)>>2]>>>j&1)){d=o(j,3);Uk(a,0,d);f=i[a+8>>2];h=i[a+12>>2];Uk(a,1,d+1|0);g=i[a+20>>2];l=i[a+24>>2];Uk(a,2,d+2|0);g=l-g>>2;f=h-f|0;h=f>>2;d=g>>>0>h>>>0;h=i[a+36>>2]-i[a+32>>2]>>2>>>0>(d?g:h)>>>0?2:d?1:f?0:-1;b:{if(i[a+68>>2]<1){break b}i[e+12>>2]=i[a+76>>2];i[e+8>>2]=c;ei(e+8|0,e+12|0);f=e;g=i[((h<<2)+a|0)+44>>2];d=-1;c:{if((g|0)<0){break c}d=(g>>>0)/3|0;d=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(g-o(d,3)<<2)>>2]}i[f+12>>2]=d;i[e+8>>2]=c;ei(e+8|0,e+12|0);f=i[a+72>>2]+2|0;i[a+72>>2]=f;if(!(f&1)){break b}i[e+12>>2]=d;i[e+8>>2]=c;ei(e+8|0,e+12|0);i[a+72>>2]=i[a+72>>2]+1}fi(a,h,c);f=i[b+96>>2];d=i[b+100>>2]}j=j+1|0;if(j>>>0<(d-f|0)/12>>>0){continue}break}}J=e+16|0;return k}function Wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,q=0;g=i[b+12>>2];c=g;d=i[b+20>>2];e=d;a:{h=i[b+16>>2];f=h+4|0;if(f>>>0<4){d=d+1|0}l=i[b+8>>2];if((c|0)<(d|0)?1:(c|0)<=(d|0)?l>>>0>>0:0){break a}n=i[b>>2];c=h+n|0;o=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=d;q=k[b+38>>1];if(q>>>0<=513){c=g;d=e;e=h+8|0;if(e>>>0<8){d=d+1|0}f=e;if((c|0)<(d|0)?1:(c|0)<=(d|0)?l>>>0>>0:0){break a}i[b+16>>2]=f;i[b+20>>2]=d}if(!(o&1)){break a}c=r(o)^31;if(c+ -1>>>0>28){break a}i[a+8>>2]=c+1;e=-2<>2]=c;i[a+12>>2]=e^-1;i[a+24>>2]=(c|0)/2;m[a+20>>2]=p(2)/p(c|0);if(q>>>0<=513){if((g|0)<(d|0)?1:(g|0)<=(d|0)?l>>>0<=f>>>0:0){break a}c=j[f+n|0];e=f+1|0;if(e>>>0<1){d=d+1|0}i[b+16>>2]=e;i[b+20>>2]=d;d=0;b:{switch(c|0){case 1:d=1;break;case 0:break b;default:break a}}i[a+72>>2]=d}return Ae(a+96|0,b)|0}return 0}function ra(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,n=0,r=0,s=0,t=0,v=0,w=0,x=p(0),y=0,z=0,A=p(0),B=0,C=0,D=0,E=0;r=J-16|0;J=r;e=i[a+4>>2];h=i[d+48>>2];l=i[i[d>>2]>>2];k=g[b+24|0];f=Kh(r+8|0);Lh(f,m[a+20>>2],-1<>2];e=i[c+4>>2];if((n|0)!=(e|0)){y=h+l|0;c=e-n|0;h=(c|0)>-1?c:-1;e=n-e|0;c=o((h|0)<1?h:1,((e|0)>(c|0)?e:c)>>>2|0);z=c>>>0>1?c:1;A=m[f>>2];B=i[b>>2];e=i[b+48>>2];C=i[b+68>>2];h=i[b+44>>2];l=i[b+40>>2];D=l;c=0;E=j[b+84|0];while(1){b=i[(s<<2)+n>>2];f=d;t=i[B>>2];v=l;w=h;if(!E){b=i[(b<<2)+C>>2]}b=Gn(v,w,b,0)+e|0;v=pn(f,b+t|0,D);if((k|0)>=1){w=i[a+8>>2];b=0;while(1){t=y+(c<<2)|0;f=b<<2;x=p(u(p(p(A*p(m[f+v>>2]-m[f+w>>2]))+p(.5))));a:{if(p(q(x))>2]=f;c=c+1|0;b=b+1|0;if((k|0)!=(b|0)){continue}break}}s=s+1|0;if((z|0)!=(s|0)){continue}break}}nn(d);J=r+16|0}function fa(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0;l=d-c|0;if((l|0)<1){return}a:{e=i[a+8>>2];m=i[a+4>>2];if((l|0)<=(e-m|0)){k=m-b|0;if((l|0)<=(k|0)){e=m;h=d;break a}e=m;h=c+k|0;if((h|0)!=(d|0)){f=h;while(1){g[e|0]=j[f|0];e=e+1|0;f=f+1|0;if((f|0)!=(d|0)){continue}break}}i[a+4>>2]=e;if((k|0)>=1){break a}return}h=i[a>>2];d=(m-h|0)+l|0;if((d|0)>-1){k=b-h|0;n=k;f=e-h|0;e=f<<1;e=f>>>0<1073741823?e>>>0>>0?d:e:2147483647;d=0;b:{if(!e){break b}d=Dm(e)}c=pn(n+d|0,c,l);if((k|0)>=1){pn(d,h,k)}e=d+e|0;c=c+l|0;f=m-b|0;if((f|0)>=1){c=pn(c,b,f)+f|0}i[a+8>>2]=e;i[a+4>>2]=c;i[a>>2]=d;if(h){nn(h)}return}Sm();x()}k=e-(b+l|0)|0;f=e;d=e-l|0;if(d>>>0>>0){while(1){g[f|0]=j[d|0];f=f+1|0;d=d+1|0;if(d>>>0>>0){continue}break}}i[a+4>>2]=f;if(k){rn(e-k|0,b,k)}if((c|0)==(h|0)){return}f=b;while(1){g[f|0]=j[c|0];f=f+1|0;c=c+1|0;if((h|0)!=(c|0)){continue}break}}function $e(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!of(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!pf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>4194303){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<4194304){continue}break}}e=b&1048575;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>20|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=pf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function _e(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!mf(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!nf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>2097151){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<2097152){continue}break}}e=b&524287;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>19|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=nf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function Ze(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!kf(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!lf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>1048575){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<1048576){continue}break}}e=b&262143;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>18|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=lf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function Je(a,b){var c=0,d=0,e=0;e=J-16|0;J=e;i[e+12>>2]=b;b=Dm(32);i[e>>2]=b;i[e+4>>2]=24;i[e+8>>2]=-2147483616;g[b+24|0]=0;c=j[11181]|j[11182]<<8|(j[11183]<<16|j[11184]<<24);d=j[11177]|j[11178]<<8|(j[11179]<<16|j[11180]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[11173]|j[11174]<<8|(j[11175]<<16|j[11176]<<24);d=j[11169]|j[11170]<<8|(j[11171]<<16|j[11172]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11165]|j[11166]<<8|(j[11167]<<16|j[11168]<<24);d=j[11161]|j[11162]<<8|(j[11163]<<16|j[11164]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;Hh(Ke(a,e+12|0),e);if(g[e+11|0]<=-1){nn(i[e>>2])}J=e+16|0}function ee(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,q=0;g=i[b+12>>2];h=g;c=i[b+20>>2];f=c;a:{l=i[b+16>>2];d=l+4|0;if(d>>>0<4){c=c+1|0}n=i[b+8>>2];e=d;d=c;if((h|0)<(c|0)?1:(h|0)<=(c|0)?n>>>0>>0:0){break a}h=i[b>>2];c=h+l|0;q=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=e;i[b+20>>2]=d;d=g;c=f;e=l+8|0;if(e>>>0<8){c=c+1|0}o=e;if((d|0)<(c|0)?1:(d|0)<=(c|0)?n>>>0>>0:0){break a}i[b+16>>2]=o;i[b+20>>2]=c;if(!(q&1)){break a}d=r(q)^31;if(d+ -1>>>0>28){break a}i[a+8>>2]=d+1;d=-2<>2]=e;i[a+12>>2]=d^-1;i[a+24>>2]=(e|0)/2;m[a+20>>2]=p(2)/p(e|0);if(k[b+38>>1]<=513){if((g|0)<(c|0)?1:(g|0)<=(c|0)?n>>>0<=o>>>0:0){break a}g=j[h+o|0];d=l+9|0;if(d>>>0<9){f=f+1|0}c=b;i[c+16>>2]=d;i[c+20>>2]=f;f=0;b:{switch(g|0){case 1:f=1;break;case 0:break b;default:break a}}i[a+72>>2]=f}return Ae(a+96|0,b)|0}return 0}function Ye(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!hf(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!jf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>262143){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<262144){continue}break}}e=b&65535;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>16|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=jf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function Xe(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!ff(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!gf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>131071){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<131072){continue}break}}e=b&32767;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>15|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=gf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function We(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!df(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!ef(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>32767){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<32768){continue}break}}e=b&8191;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>13|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=ef(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function Ve(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!Te(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!Ue(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>16383){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<16384){continue}break}}e=b&4095;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>12|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=Ue(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function La(a,b){var c=0,d=0,e=0,f=0,h=0;if(!i[a+64>>2]){e=Dm(32);c=wh(e);d=i[a+64>>2];i[a+64>>2]=e;e=a;if(d){c=i[d>>2];if(c){i[d+4>>2]=c;nn(c)}nn(d);c=i[a+64>>2]}Ha(e,c,0,0)}a:{b:{if(!Ga(a,b)){break b}g[a+84|0]=j[b+84|0];i[a+80>>2]=i[b+80>>2];if((a|0)!=(b|0)){Ma(a+68|0,i[b+68>>2],i[b+72>>2])}d=i[b+88>>2];if(d){b=Dm(40);c=i[d>>2];i[b+16>>2]=0;i[b+8>>2]=0;i[b+12>>2]=0;i[b>>2]=c;e=i[d+12>>2]-i[d+8>>2]|0;if(e){if((e|0)<=-1){break a}c=Dm(e);i[b+8>>2]=c;i[b+12>>2]=c;i[b+16>>2]=c+e;e=b;h=i[d+8>>2];f=i[d+12>>2]-h|0;if((f|0)>=1){c=pn(c,h,f)+f|0}i[e+12>>2]=c}c=i[d+36>>2];i[b+32>>2]=i[d+32>>2];i[b+36>>2]=c;c=i[d+28>>2];i[b+24>>2]=i[d+24>>2];i[b+28>>2]=c;c=i[a+88>>2];i[a+88>>2]=b;if(!c){break b}a=i[c+8>>2];if(a){i[c+12>>2]=a;nn(a)}nn(c);return}b=i[a+88>>2];i[a+88>>2]=0;if(!b){break b}a=i[b+8>>2];if(a){i[b+12>>2]=a;nn(a)}nn(b)}return}Sm();x()}function El(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}Ll(a,i[a+4>>2],c)}}function Dl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}Kl(a,i[a+4>>2],c)}}function Cl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}Jl(a,i[a+4>>2],c)}}function Sk(a,b){var c=0,d=0,e=0,f=0,h=0,j=0;e=i[a>>2];c=e+(b>>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>2];f=(b|0)==-1;c=-1;a:{if(f){break a}d=b+1|0;d=(d>>>0)%3|0?d:b+ -2|0;c=-1;if((d|0)==-1){break a}c=i[i[h>>2]+(d<<2)>>2]}d=i[a+12>>2];j=(c>>>3&536870908)+d|0;i[j>>2]=i[j>>2]|1<>>0)%3|0?-1:2)+b|0;if((f|0)!=-1){c=i[i[h>>2]+(f<<2)>>2]}f=d+(c>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<>2]+(b<<2)>>2];if((b|0)==-1){break b}g[a+24|0]=0;a=(b>>>3&536870908)+e|0;i[a>>2]=i[a>>2]|1<>>0)%3|0?e:b+ -2|0;if((e|0)!=-1){c=i[i[h>>2]+(e<<2)>>2]}e=d+(c>>>3&536870908)|0;i[e>>2]=i[e>>2]|1<>>0)%3|0?-1:2)|0;if((b|0)!=-1){a=i[i[h>>2]+(b<<2)>>2]}b=1<>>3&536870908)|0;c=i[a>>2];break c}a=d+536870908|0;b=i[d+536870908>>2];c=-2147483648}i[a>>2]=b|c}}function ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=J-16|0;J=c;i[a+12>>2]=b;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;yb(a+16|0);ze(a+528|0);ve(a+544|0);ve(a+564|0);ve(a+584|0);i[a+612>>2]=0;i[a+604>>2]=0;i[a+608>>2]=0;a:{if(b){if(b>>>0>=1073741824){break a}f=b<<2;d=Dm(f);i[a+604>>2]=d;e=d+f|0;i[a+612>>2]=e;qn(d,0,f);i[a+608>>2]=e}i[a+616>>2]=0;i[a+620>>2]=0;i[a+624>>2]=0;if(b){f=b<<2;d=Dm(f);i[a+616>>2]=d;e=d+f|0;i[a+624>>2]=e;qn(d,0,f);i[a+620>>2]=e}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;g=a+628|0;f=b<<5|1;if(b){d=b<<2;e=Dm(d);i[c>>2]=e;h=d+e|0;i[c+8>>2]=h;qn(e,0,d);i[c+4>>2]=h}tb(g,f,c);d=i[c>>2];if(d){i[c+4>>2]=d;nn(d)}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;e=a+640|0;if(b){b=b<<2;d=Dm(b);i[c>>2]=d;g=b+d|0;i[c+8>>2]=g;qn(d,0,b);i[c+4>>2]=g}tb(e,f,c);b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}J=c+16|0;return a}Sm();x()}function xi(a,b,c,d,e){var f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0;h=J-16|0;J=h;a:{b:{switch(c+ -1|0){case 0:f=yi(a,b,d,e);break a;case 2:f=zi(a,b,d,e);break a;case 4:f=Ai(a,b,d,e);break a;case 1:f=Bi(a,b,d,e);break a;case 3:f=Ci(a,b,d,e);break a;case 5:f=Di(a,b,d,e);break a;case 8:break b;default:break a}}l=g[b+24|0];m=l<<2;a=i[a+80>>2];if((o(m,a)|0)!=(d|0)){break a}c=i[b+28>>2];d=i[3527];i[h+8>>2]=i[3526];i[h+12>>2]=d;d=i[3525];i[h>>2]=i[3524];i[h+4>>2]=d;c:{if(!a){break c}d=0;p=(c|0)!=9;k=1;while(1){c=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!p){k=i[b+48>>2];q=i[i[b>>2]>>2];n=i[b+40>>2];c=Gn(n,i[b+44>>2],c,0)+k|0;pn(h,q+c|0,n);break d}if(!$c(b,c,g[b+24|0],h)){break c}}if((l|0)>=1){pn((d<<2)+e|0,h,m);d=d+l|0}f=f+1|0;k=f>>>0>>0;if((a|0)!=(f|0)){continue}break}}f=k^1}J=h+16|0;return f&1}function Db(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=J-32|0;J=d;i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;k=i[b+12>>2];f=k;h=i[b+20>>2];l=h;m=i[b+16>>2];e=m+4|0;if(e>>>0<4){h=h+1|0}o=i[b+8>>2];n=e;a:{if((f|0)<(h|0)?1:(f|0)<=(h|0)?o>>>0>>0:0){break a}f=i[b>>2];e=m+f|0;e=j[e|0]|j[e+1|0]<<8|(j[e+2|0]<<16|j[e+3|0]<<24);i[b+16>>2]=n;i[b+20>>2]=h;b:{c:{switch(e+ -2|0){case 1:if((k|0)<(h|0)?1:(k|0)<=(h|0)?o>>>0<=n>>>0:0){break a}f=g[f+n|0];e=m+5|0;if(e>>>0<5){l=l+1|0}i[b+16>>2]=e;i[b+20>>2]=l;i[a+8>>2]=f;if((f|0)==1){if(xl(a,b,d+16|0)){break b}break a}un(1824,23,i[3876]);break a;default:un(1848,24,i[3876]);break a;case 0:break c}}if(!xl(a,b,d+16|0)){break a}}i[d+8>>2]=i[d+16>>2];i[d>>2]=i[d+20>>2];Fb(d+8|0,d,a,c);p=1}a=i[d+16>>2];if(a){i[d+20>>2]=a;nn(a)}J=d+32|0;return p}function gb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=J-16|0;J=c;i[a+12>>2]=b;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;ve(a+16|0);ve(a+36|0);ve(a+56|0);ve(a+76|0);i[a+104>>2]=0;i[a+96>>2]=0;i[a+100>>2]=0;a:{if(b){if(b>>>0>=1073741824){break a}f=b<<2;d=Dm(f);i[a+96>>2]=d;e=d+f|0;i[a+104>>2]=e;qn(d,0,f);i[a+100>>2]=e}i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;if(b){f=b<<2;d=Dm(f);i[a+108>>2]=d;e=d+f|0;i[a+116>>2]=e;qn(d,0,f);i[a+112>>2]=e}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;g=a+120|0;f=b<<5|1;if(b){d=b<<2;e=Dm(d);i[c>>2]=e;h=d+e|0;i[c+8>>2]=h;qn(e,0,d);i[c+4>>2]=h}tb(g,f,c);d=i[c>>2];if(d){i[c+4>>2]=d;nn(d)}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;e=a+132|0;if(b){b=b<<2;d=Dm(b);i[c>>2]=d;g=b+d|0;i[c+8>>2]=g;qn(d,0,b);i[c+4>>2]=g}tb(e,f,c);b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}J=c+16|0;return a}Sm();x()}function kb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=J-16|0;J=c;i[a+12>>2]=b;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;ze(a+16|0);ve(a+32|0);ve(a+52|0);ve(a+72|0);i[a+100>>2]=0;i[a+92>>2]=0;i[a+96>>2]=0;a:{if(b){if(b>>>0>=1073741824){break a}f=b<<2;d=Dm(f);i[a+92>>2]=d;e=d+f|0;i[a+100>>2]=e;qn(d,0,f);i[a+96>>2]=e}i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;if(b){f=b<<2;d=Dm(f);i[a+104>>2]=d;e=d+f|0;i[a+112>>2]=e;qn(d,0,f);i[a+108>>2]=e}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;g=a+116|0;f=b<<5|1;if(b){d=b<<2;e=Dm(d);i[c>>2]=e;h=d+e|0;i[c+8>>2]=h;qn(e,0,d);i[c+4>>2]=h}tb(g,f,c);d=i[c>>2];if(d){i[c+4>>2]=d;nn(d)}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;e=a+128|0;if(b){b=b<<2;d=Dm(b);i[c>>2]=d;g=b+d|0;i[c+8>>2]=g;qn(d,0,b);i[c+4>>2]=g}tb(e,f,c);b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}J=c+16|0;return a}Sm();x()}function zi(a,b,c,d){var e=0,f=0,l=0,m=0,n=0,p=0,q=0,r=0;l=J-16|0;J=l;a:{p=i[a+80>>2];m=g[b+24|0];f=m<<1;e=0;b:{if((o(p,f)|0)!=(c|0)){break b}q=i[b+28>>2]!=3;if(!(q|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[l+8>>2]=0;i[l>>2]=0;i[l+4>>2]=0;a=0;if(m){if((m|0)<=-1){break a}a=Dm(f);i[l>>2]=a;c=(m<<1)+a|0;i[l+8>>2]=c;qn(a,0,f);i[l+4>>2]=c}c:{if(!p){break c}c=0;n=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!q){r=i[i[b>>2]>>2];n=i[b+40>>2];e=i[b+48>>2]+Gn(n,i[b+44>>2],e,0)|0;pn(a,r+e|0,n);break d}if(!qi(b,e,g[b+24|0],a)){break c}}e=0;if((m|0)>=1){while(1){h[(c<<1)+d>>1]=k[(e<<1)+a>>1];c=c+1|0;e=e+1|0;if((m|0)!=(e|0)){continue}break}}f=f+1|0;n=f>>>0

>>0;if((f|0)!=(p|0)){continue}break}}if(a){nn(a)}e=n^1}J=l+16|0;return e&1}Sm();x()}function Di(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;h=J-16|0;J=h;a:{m=i[a+80>>2];k=g[b+24|0];f=k<<2;e=0;b:{if((o(m,f)|0)!=(c|0)){break b}n=i[b+28>>2]!=6;if(!(n|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;a=0;if(k){if((k|0)<=-1){break a}a=Dm(f);i[h>>2]=a;c=(k<<2)+a|0;i[h+8>>2]=c;qn(a,0,f);i[h+4>>2]=c}c:{if(!m){break c}c=0;l=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!n){p=i[i[b>>2]>>2];l=i[b+40>>2];e=i[b+48>>2]+Gn(l,i[b+44>>2],e,0)|0;pn(a,p+e|0,l);break d}if(!wi(b,e,g[b+24|0],a)){break c}}e=0;if((k|0)>=1){while(1){i[(c<<2)+d>>2]=i[(e<<2)+a>>2];c=c+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}f=f+1|0;l=f>>>0>>0;if((f|0)!=(m|0)){continue}break}}if(a){nn(a)}e=l^1}J=h+16|0;return e&1}Sm();x()}function Ci(a,b,c,d){var e=0,f=0,l=0,m=0,n=0,p=0,q=0,r=0;l=J-16|0;J=l;a:{p=i[a+80>>2];m=g[b+24|0];f=m<<1;e=0;b:{if((o(p,f)|0)!=(c|0)){break b}q=i[b+28>>2]!=4;if(!(q|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[l+8>>2]=0;i[l>>2]=0;i[l+4>>2]=0;a=0;if(m){if((m|0)<=-1){break a}a=Dm(f);i[l>>2]=a;c=(m<<1)+a|0;i[l+8>>2]=c;qn(a,0,f);i[l+4>>2]=c}c:{if(!p){break c}c=0;n=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!q){r=i[i[b>>2]>>2];n=i[b+40>>2];e=i[b+48>>2]+Gn(n,i[b+44>>2],e,0)|0;pn(a,r+e|0,n);break d}if(!si(b,e,g[b+24|0],a)){break c}}e=0;if((m|0)>=1){while(1){h[(c<<1)+d>>1]=k[(e<<1)+a>>1];c=c+1|0;e=e+1|0;if((m|0)!=(e|0)){continue}break}}f=f+1|0;n=f>>>0

>>0;if((f|0)!=(p|0)){continue}break}}if(a){nn(a)}e=n^1}J=l+16|0;return e&1}Sm();x()}function Ai(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;h=J-16|0;J=h;a:{m=i[a+80>>2];k=g[b+24|0];f=k<<2;e=0;b:{if((o(m,f)|0)!=(c|0)){break b}n=i[b+28>>2]!=5;if(!(n|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;a=0;if(k){if((k|0)<=-1){break a}a=Dm(f);i[h>>2]=a;c=(k<<2)+a|0;i[h+8>>2]=c;qn(a,0,f);i[h+4>>2]=c}c:{if(!m){break c}c=0;l=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!n){p=i[i[b>>2]>>2];l=i[b+40>>2];e=i[b+48>>2]+Gn(l,i[b+44>>2],e,0)|0;pn(a,p+e|0,l);break d}if(!ui(b,e,g[b+24|0],a)){break c}}e=0;if((k|0)>=1){while(1){i[(c<<2)+d>>2]=i[(e<<2)+a>>2];c=c+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}f=f+1|0;l=f>>>0>>0;if((f|0)!=(m|0)){continue}break}}if(a){nn(a)}e=l^1}J=h+16|0;return e&1}Sm();x()}function lb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;if(!Ae(a+16|0,b)){break a}if(!xe(a+32|0,b)){break a}if(!xe(a+52|0,b)){break a}if(!xe(a+72|0,b)){break a}return wb(a,i[a+4>>2],c)}return k}function ib(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;if(!Ae(a+16|0,b)){break a}if(!xe(a+32|0,b)){break a}if(!xe(a+52|0,b)){break a}if(!xe(a+72|0,b)){break a}return vb(a,i[a+4>>2],c)}return k}function hb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;if(!xe(a+16|0,b)){break a}if(!xe(a+36|0,b)){break a}if(!xe(a+56|0,b)){break a}if(!xe(a+76|0,b)){break a}return ub(a,i[a+4>>2],c)}return k}function eb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;if(!xe(a+16|0,b)){break a}if(!xe(a+36|0,b)){break a}if(!xe(a+56|0,b)){break a}if(!xe(a+76|0,b)){break a}return sb(a,i[a+4>>2],c)}return k}function xe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;i[a+16>>2]=0;c=i[a>>2];i[a+4>>2]=c;i[a+12>>2]=c;h=i[b+12>>2];c=h;e=i[b+20>>2];d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}k=i[b+8>>2];g=f;f=e;a:{if((c|0)<(e|0)?1:(c|0)<=(e|0)?k>>>0>>0:0){break a}c=d+i[b>>2]|0;e=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=g;i[b+20>>2]=f;if(!e|e&3){break a}d=k;c=e;l=d-g>>>0>>0;d=h-(f+(d>>>0>>0)|0)|0;if((d|0)<0?1:(d|0)<=0?l:0){break a}d=e>>>2|0;if(d){ye(a,d);k=i[b+8>>2];h=i[b+12>>2];g=i[b+16>>2];f=i[b+20>>2]}d=c+g|0;if(d>>>0>>0){f=f+1|0}if((h|0)<(f|0)?1:(h|0)<=(f|0)?k>>>0>>0:0){break a}pn(i[a>>2],g+i[b>>2]|0,e);f=b;d=b;e=i[b+20>>2];b=c+i[b+16>>2]|0;if(b>>>0>>0){e=e+1|0}i[d+16>>2]=b;i[f+20>>2]=e;i[a+16>>2]=0;i[a+12>>2]=i[a>>2];m=1}return m}function dg(a){i[a>>2]=11520;qn(a+4|0,0,80);i[a+96>>2]=0;i[a+100>>2]=0;i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+148>>2]=0;i[a+156>>2]=0;i[a+160>>2]=0;i[a+152>>2]=1065353216;i[a+164>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;i[a+196>>2]=0;i[a+200>>2]=0;i[a+204>>2]=0;i[a+208>>2]=0;i[a+212>>2]=-1;i[a+216>>2]=0;i[a+220>>2]=0;i[a+224>>2]=0;zh(a+232|0);zh(a+272|0);ze(a+312|0);zh(a+328|0);i[a+392>>2]=0;i[a+396>>2]=0;i[a+384>>2]=0;i[a+388>>2]=0;i[a+376>>2]=0;i[a+380>>2]=0;i[a+368>>2]=0;i[a+372>>2]=0;ze(a+400|0);i[a+416>>2]=-1;i[a+420>>2]=-1}function Jd(a){var b=0,c=0,d=0;b=i[a+8>>2];d=i[a>>2];a:{if(j[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=i[i[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}i[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;i[a+8>>2]=b;if((b|0)!=-1){break b}}c=i[a+4>>2];b=-1;f:{if((c|0)==-1){break f}c=c+((c>>>0)%3|0?-1:2)|0;b=-1;if((c|0)==-1){break f}c=i[i[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}g[a+12|0]=0;i[a+8>>2]=b;return}if((b|0)!=i[a+4>>2]){break a}i[a+8>>2]=-1;return}c=-1;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;c=-1;if((b|0)==-1){break g}b=i[i[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break g}c=b+ -1|0;if((b>>>0)%3|0){break g}c=b+2|0}i[a+8>>2]=c}}function rn(a,b,c){var d=0;a:{if((a|0)==(b|0)){break a}if((b-a|0)-c>>>0<=0-(c<<1)>>>0){return pn(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}g[d|0]=j[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(a+c&3){while(1){if(!c){break a}c=c+ -1|0;d=c+a|0;g[d|0]=j[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c+ -4|0;i[c+a>>2]=i[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c+ -1|0;g[c+a|0]=j[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){i[d>>2]=i[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){g[d|0]=j[b|0];d=d+1|0;b=b+1|0;c=c+ -1|0;if(c){continue}break}}return a}function ng(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=i[a+172>>2];if((b|0)!=-1){c=i[a+196>>2]+(b<<2)|0;d=i[c>>2];b=d+ -1|0;i[c>>2]=b;if((d|0)<1){return 9}c=a;a=i[(i[i[i[a+184>>2]+o(i[a+172>>2],12)>>2]+(b<<2)>>2]<<2)+12288>>2];i[c+168>>2]=a;return a}b=7;c=i[a+144>>2];c=k[(M[i[i[c>>2]+32>>2]](c)|0)+36>>1];a:{if((c<<24|c<<8&16711680)>>>16>>>0>513){break a}if(!j[a+76|0]){i[a+168>>2]=1;return 1}b=0;f=i[a- -64>>2];d=i[a+72>>2];c=f+(d>>>3|0)|0;g=i[a+68>>2];if(c>>>0>=g>>>0){break a}e=j[c|0];c=d+1|0;i[a+72>>2]=c;if(!(e>>>(d&7)&1)){break a}e=c>>>3|0;b=f+e|0;b:{if(b>>>0>=g>>>0){b=c;c=0;break b}h=j[b|0];b=d+2|0;i[a+72>>2]=b;e=b>>>3|0;c=h>>>(c&7)&1}d=e+f|0;if(d>>>0>>0){d=j[d|0];i[a+72>>2]=b+1;b=d>>>(b&7)<<1&2}else{b=0}b=(c|b)<<1|1}i[a+168>>2]=b;return b}function zl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;if(!xe(a+16|0,b)){break a}if(!xe(a+36|0,b)){break a}if(!xe(a+56|0,b)){break a}if(!xe(a+76|0,b)){break a}Gl(a,i[a+4>>2],c)}}function yl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;if(!xe(a+16|0,b)){break a}if(!xe(a+36|0,b)){break a}if(!xe(a+56|0,b)){break a}if(!xe(a+76|0,b)){break a}Fl(a,i[a+4>>2],c)}}function Th(a,b){var c=0,d=0,e=0,f=0,h=0;a:{b:{c:{e=i[a>>2];h=(i[a+4>>2]-e|0)/12|0;c=h+1|0;if(c>>>0<357913942){e=(i[a+8>>2]-e|0)/12|0;f=e<<1;c=e>>>0<178956970?f>>>0>>0?c:f:357913941;d=0;d:{if(!c){break d}if(c>>>0>=357913942){break c}d=Dm(o(c,12))}e=d+o(c,12)|0;d=Gm(d+o(h,12)|0,b);h=d+12|0;b=i[a+4>>2];c=i[a>>2];if((b|0)==(c|0)){break b}while(1){b=b+ -12|0;f=i[b+4>>2];d=d+ -12|0;i[d>>2]=i[b>>2];i[d+4>>2]=f;f=b+8|0;i[d+8>>2]=i[f>>2];i[b>>2]=0;i[b+4>>2]=0;i[f>>2]=0;if((b|0)!=(c|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=h;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=b+ -12|0;if(g[b+ -1|0]<=-1){nn(i[a>>2])}b=a;if((a|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(14112);x()}i[a+8>>2]=e;i[a+4>>2]=h;i[a>>2]=d}if(c){nn(c)}}function Sh(a,b,c){var d=0,e=0,f=0,h=0,j=0;a:{if(i[a+12>>2]==(b|0)){break a}d=i[a>>2];e=i[a+4>>2];if((d|0)!=(e|0)){while(1){f=e+ -12|0;if(g[e+ -1|0]<=-1){nn(i[f>>2])}e=f;if((e|0)!=(d|0)){continue}break}}i[a+12>>2]=b;i[a+4>>2]=d;e=i[b>>2];f=b+4|0;if((e|0)==(f|0)){break a}while(1){b=e+16|0;b:{if(i[a+8>>2]!=(d|0)){h=a,j=Gm(d,b)+12|0,i[h+4>>2]=j;break b}Th(a,b)}d=i[e+4>>2];c:{if(!d){b=i[e+8>>2];if(i[b>>2]==(e|0)){break c}e=e+8|0;while(1){d=i[e>>2];e=d+8|0;b=i[d+8>>2];if((d|0)!=i[b>>2]){continue}break}break c}while(1){b=d;d=i[d>>2];if(d){continue}break}}if((b|0)==(f|0)){break a}d=i[a+4>>2];e=b;continue}}d=0;d:{if((c|0)<0){break d}b=i[a+4>>2];a=i[a>>2];if((b-a|0)/12>>>0<=c>>>0){break d}d=a+o(c,12)|0;if(g[d+11|0]>-1){break d}d=i[d>>2]}return d}function Bl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;if(!Ae(a+16|0,b)){break a}if(!xe(a+32|0,b)){break a}if(!xe(a+52|0,b)){break a}if(!xe(a+72|0,b)){break a}Il(a,i[a+4>>2],c)}}function Al(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;if(!Ae(a+16|0,b)){break a}if(!xe(a+32|0,b)){break a}if(!xe(a+52|0,b)){break a}if(!xe(a+72|0,b)){break a}Hl(a,i[a+4>>2],c)}}function _k(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=J-16|0;J=d;g=i[a+24>>2];n=i[a+28>>2];a:{if((g|0)!=(n|0)){p=d+8|0;while(1){i[p>>2]=0;i[d>>2]=0;i[d+4>>2]=0;e=gl(i[g>>2],b,d);a=j[d+11|0];l=a<<24>>24;m=3;b:{c:{d:{if(!e){break d}m=0;e=j[c+11|0];f=e<<24>>24;k=(l|0)<0?i[d+4>>2]:a;if((k|0)!=(((f|0)<0?i[c+4>>2]:e)|0)){break d}h=(f|0)<0?i[c>>2]:c;f=i[d>>2];e=(l|0)<0;e:{if(!e){if(!k){break e}e=d;if(j[h|0]!=(f&255)){break d}while(1){a=a+ -1|0;if(!a){break e}f=j[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==j[e|0]){continue}break}break d}if(!k){break e}if(Nl(e?f:d,h,k)){break c}}o=i[g>>2];m=1}if((l|0)>-1){break b}}nn(i[d>>2])}f:{switch(m|0){case 0:case 3:break f;default:break a}}g=g+4|0;if((n|0)!=(g|0)){continue}break}}o=0}J=d+16|0;return o}function yi(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;e=J-16|0;J=e;a:{m=i[a+80>>2];f=g[b+24|0];k=0;b:{if((o(m,f)|0)!=(c|0)){break b}k=i[b+28>>2]!=1;if(!(k|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);k=1;break b}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(f){if((f|0)<=-1){break a}h=Dm(f);i[e>>2]=h;a=f+h|0;i[e+8>>2]=a;qn(h,0,f);i[e+4>>2]=a}c:{if(!m){break c}c=0;l=1;while(1){a=n;a=j[b+84|0]?a:i[i[b+68>>2]+(a<<2)>>2];d:{if(!k){p=i[i[b>>2]>>2];l=i[b+40>>2];a=i[b+48>>2]+Gn(l,i[b+44>>2],a,0)|0;pn(h,p+a|0,l);break d}if(!li(b,a,g[b+24|0],h)){break c}}a=0;if((f|0)>=1){while(1){g[c+d|0]=j[a+h|0];c=c+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}n=n+1|0;l=n>>>0>>0;if((n|0)!=(m|0)){continue}break}}if(h){nn(h)}k=l^1}J=e+16|0;return k&1}Sm();x()}function Bi(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;e=J-16|0;J=e;a:{m=i[a+80>>2];f=g[b+24|0];k=0;b:{if((o(m,f)|0)!=(c|0)){break b}k=i[b+28>>2]!=2;if(!(k|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);k=1;break b}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(f){if((f|0)<=-1){break a}h=Dm(f);i[e>>2]=h;a=f+h|0;i[e+8>>2]=a;qn(h,0,f);i[e+4>>2]=a}c:{if(!m){break c}c=0;l=1;while(1){a=n;a=j[b+84|0]?a:i[i[b+68>>2]+(a<<2)>>2];d:{if(!k){p=i[i[b>>2]>>2];l=i[b+40>>2];a=i[b+48>>2]+Gn(l,i[b+44>>2],a,0)|0;pn(h,p+a|0,l);break d}if(!ni(b,a,g[b+24|0],h)){break c}}a=0;if((f|0)>=1){while(1){g[c+d|0]=j[a+h|0];c=c+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}n=n+1|0;l=n>>>0>>0;if((n|0)!=(m|0)){continue}break}}if(h){nn(h)}k=l^1}J=e+16|0;return k&1}Sm();x()}function Fc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;d=i[b+12>>2];k=d;c=i[b+20>>2];f=c;g=i[b+16>>2];e=g+4|0;if(e>>>0<4){c=c+1|0}l=i[b+8>>2];h=e;e=c;a:{if((d|0)<(c|0)?1:(d|0)<=(c|0)?l>>>0>>0:0){break a}m=i[b>>2];c=m+g|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=e;c=f;f=g+8|0;if(f>>>0<8){c=c+1|0}e=f;f=c;if((k|0)<(c|0)?1:(k|0)<=(c|0)?l>>>0>>0:0){break a}c=h+m|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=e;i[b+20>>2]=f;if((d|0)>(c|0)){break a}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break a}n=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break a}i[a+24>>2]=c+ -1}return n|0}function Kf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[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?h>>>0>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=Dm(e<<2)}d=(f<<2)+j|0;f=b<<2;b=qn(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(12220);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function bc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[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?h>>>0>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=Dm(e<<2)}d=(f<<2)+j|0;f=b<<2;b=qn(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(2188);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function bg(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i[a+8>>2];d=i[a+4>>2];if((e-d|0)/12>>>0>=b>>>0){f=a;if(b){a=o(b,12)+d|0;while(1){b=i[c+4>>2];i[d>>2]=i[c>>2];i[d+4>>2]=b;i[d+8>>2]=i[c+8>>2];d=d+12|0;if((a|0)!=(d|0)){continue}break}d=a}i[f+4>>2]=d;return}a:{g=i[a>>2];j=d-g|0;h=(j|0)/12|0;f=h+b|0;if(f>>>0<357913942){d=o(b,12);e=(e-g|0)/12|0;k=e<<1;e=e>>>0<178956970?k>>>0>>0?f:k:357913941;f=0;b:{if(!e){break b}if(e>>>0>=357913942){break a}f=Dm(o(e,12))}b=f+o(h,12)|0;h=d+b|0;d=b;while(1){k=i[c+4>>2];i[d>>2]=i[c>>2];i[d+4>>2]=k;i[d+8>>2]=i[c+8>>2];d=d+12|0;if((h|0)!=(d|0)){continue}break}c=f+o(e,12)|0;b=b+o((j|0)/-12|0,12)|0;if((j|0)>=1){pn(b,g,j)}i[a+8>>2]=c;i[a+4>>2]=h;i[a>>2]=b;if(g){nn(g)}return}Sm();x()}Ba(12220);x()}function qa(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,n=0,o=0,r=0,s=0,t=0,v=0,w=p(0),x=0,y=p(0),z=0,A=0,B=0,C=0,D=0;n=J-16|0;J=n;h=i[a+4>>2];o=i[d+48>>2];d=i[i[d>>2]>>2];f=g[b+24|0];k=Kh(n+8|0);Lh(k,m[a+20>>2],-1<>2];z=i[b>>2];o=i[b+48>>2];A=i[b+68>>2];k=i[b+44>>2];v=i[b+40>>2];B=v;d=0;C=j[b+84|0];D=(f|0)<1;while(1){b=l;e=h;r=i[z>>2];s=v;t=k;if(!C){b=i[(l<<2)+A>>2]}b=Gn(s,t,b,0)+o|0;s=pn(e,b+r|0,B);if(!D){t=i[a+8>>2];b=0;while(1){r=(d<<2)+x|0;e=b<<2;w=p(u(p(p(y*p(m[e+s>>2]-m[e+t>>2]))+p(.5))));a:{if(p(q(w))>2]=e;d=d+1|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}l=l+1|0;if((l|0)!=(c|0)){continue}break}}nn(h);J=n+16|0}function Yb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i[b>>2];h=i[b+4>>2];p=i[i[a+8>>2]+40>>2];j=p;q=Dm((j|0)>-1?j:-1);k=1;m=h-g|0;a:{if((m|0)<1){break a}b=0;n=i[c+12>>2];k=0;d=0+i[c+20>>2]|0;o=i[c+16>>2];e=p;f=o+e|0;if(f>>>0>>0){d=d+1|0}e=f;f=d;if((n|0)<(d|0)?1:(n|0)<=(d|0)?l[c+8>>2]>>0:0){break a}k=m>>2;d=g-h|0;d=((d|0)>(m|0)?d:m)>>>2|0;n=d>>>0>1?d:1;g=0;while(1){b:{d=pn(q,o+i[c>>2]|0,j);i[c+16>>2]=e;i[c+20>>2]=f;pn(i[i[i[a+8>>2]+64>>2]>>2]+b|0,d,j);g=g+1|0;if((n|0)==(g|0)){break b}b=b+j|0;h=i[c+12>>2];d=r+i[c+20>>2]|0;o=i[c+16>>2];f=p;e=o+f|0;if(e>>>0>>0){d=d+1|0}f=d;if((h|0)>(d|0)?1:(h|0)>=(d|0)?l[c+8>>2]>=e>>>0:0){continue}}break}k=(g|0)>=(k|0)}nn(q);return k|0}function Rc(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;e=J-32|0;J=e;h=i[c>>2];g=i[b>>2];j=i[c+4>>2];c=i[b+4>>2];b=(h-g<<3)+(j-c|0)|0;d=i[a+4>>2];f=b+d|0;i[a+4>>2]=f;a:{if(!(!d|(f+ -1^d+ -1)>>>0>31)){a=i[a>>2];break a}a=i[a>>2];if(f>>>0<=32){i[a>>2]=0;break a}i[(f+ -1>>>3&536870908)+a>>2]=0}a=(d>>>3&536870908)+a|0;d=d&31;b:{if((d|0)==(c|0)){if((b|0)<1){break b}if(c){f=32-c|0;d=(b|0)<(f|0)?b:f;f=-1<>>f-d;i[a>>2]=i[a>>2]&(f^-1)|f&i[g>>2];b=b-d|0;g=g+4|0;a=a+(c+d>>>3&536870908)|0}d=a;c=(b|0)/32|0;a=c<<2;d=rn(d,g,a);b=b-(c<<5)|0;if((b|0)<1){break b}c=a+d|0;b=-1>>>32-b|0;i[c>>2]=i[c>>2]&(b^-1)|b&i[a+g>>2];break b}i[e+28>>2]=c;i[e+24>>2]=g;i[e+20>>2]=j;i[e+16>>2]=h;i[e+12>>2]=d;i[e+8>>2]=a;Sc(e,e+24|0,e+16|0,e+8|0)}J=e+32|0}function qn(a,b,c){var d=0,e=0,f=0,h=0;a:{if(!c){break a}d=a+c|0;g[d+ -1|0]=b;g[a|0]=b;if(c>>>0<3){break a}g[d+ -2|0]=b;g[a+1|0]=b;g[d+ -3|0]=b;g[a+2|0]=b;if(c>>>0<7){break a}g[d+ -4|0]=b;g[a+3|0]=b;if(c>>>0<9){break a}d=0-a&3;e=d+a|0;b=o(b&255,16843009);i[e>>2]=b;c=c-d&-4;d=c+e|0;i[d+ -4>>2]=b;if(c>>>0<9){break a}i[e+8>>2]=b;i[e+4>>2]=b;i[d+ -8>>2]=b;i[d+ -12>>2]=b;if(c>>>0<25){break a}i[e+24>>2]=b;i[e+20>>2]=b;i[e+16>>2]=b;i[e+12>>2]=b;i[d+ -16>>2]=b;i[d+ -20>>2]=b;i[d+ -24>>2]=b;i[d+ -28>>2]=b;h=e&4|24;c=c-h|0;if(c>>>0<32){break a}d=b;f=b;b=e+h|0;while(1){i[b+24>>2]=f;i[b+28>>2]=d;i[b+16>>2]=f;i[b+20>>2]=d;i[b+8>>2]=f;i[b+12>>2]=d;i[b>>2]=f;i[b+4>>2]=d;b=b+32|0;c=c+ -32|0;if(c>>>0>31){continue}break}}return a}function rl(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[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?h>>>0>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=Dm(e<<2)}d=(f<<2)+j|0;f=b<<2;b=qn(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){Sa(a)}if((b|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(14808);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function cm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=J-32|0;J=d;e=i[a+28>>2];i[d+16>>2]=e;f=i[a+20>>2];i[d+28>>2]=c;i[d+24>>2]=b;b=f-e|0;i[d+20>>2]=b;e=b+c|0;k=2;b=d+16|0;a:{b:{c:{if(!em(D(i[a+60>>2],d+16|0,2,d+12|0)|0)){while(1){f=i[d+12>>2];if((f|0)==(e|0)){break c}if((f|0)<=-1){break b}g=i[b+4>>2];h=f>>>0>g>>>0;j=(h<<3)+b|0;g=f-(h?g:0)|0;i[j>>2]=g+i[j>>2];j=(h?12:4)+b|0;i[j>>2]=i[j>>2]-g;e=e-f|0;b=h?b+8|0:b;k=k-h|0;if(!em(D(i[a+60>>2],b|0,k|0,d+12|0)|0)){continue}break}}if((e|0)!=-1){break b}}b=i[a+44>>2];i[a+28>>2]=b;i[a+20>>2]=b;i[a+16>>2]=b+i[a+48>>2];a=c;break a}i[a+28>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a>>2]=i[a>>2]|32;a=0;if((k|0)==2){break a}a=c-i[b+4>>2]|0}J=d+32|0;return a|0}function Vk(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=i[i[i[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=i[(i[i[a>>2]+96>>2]+o(e,12)|0)+(c-o(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=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(c-o(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=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(b-o(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=i[i[a>>2]+96>>2];a=(b>>>0)/3|0;e=i[(c+o(a,12)|0)+(b-o(a,3)<<2)>>2]}c=(d|0)==(e|0)?f:-1}return c}function Wg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+56>>2]-i[c+52>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];g=c<<2;c=Dm(e);g=g+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[b+8>>2]=g;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}nn(d)}e=a+8|0;b=i[a+76>>2];c:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){return 1}b=0;while(1){d=Xg(e,i[(b<<2)+c>>2]);if(!d){break c}f=i[a+76>>2];c=i[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break c}d=1;a=i[i[a+12>>2]+64>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){d=Xg(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break c}if(d){continue}break}}return d|0}Ba(12220);x()}function al(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{e=i[a>>2];f=i[a+4>>2]-e>>2;c=f+1|0;if(c>>>0<1073741824){e=i[a+8>>2]-e|0;g=e>>1;c=e>>2>>>0<536870911?g>>>0>>0?c:g:1073741823;if(c){if(c>>>0>=1073741824){break c}d=Dm(c<<2)}e=i[b>>2];i[b>>2]=0;b=(f<<2)+d|0;i[b>>2]=e;e=(c<<2)+d|0;f=b+4|0;d=i[a+4>>2];c=i[a>>2];if((d|0)==(c|0)){break b}while(1){d=d+ -4|0;g=i[d>>2];i[d>>2]=0;b=b+ -4|0;i[b>>2]=g;if((d|0)!=(c|0)){continue}break}i[a+8>>2]=e;d=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=b;if((d|0)==(c|0)){break a}while(1){d=d+ -4|0;a=i[d>>2];i[d>>2]=0;if(a){qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}if((d|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(14684);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function Qg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+28>>2]-i[c+24>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];g=c<<2;c=Dm(e);g=g+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[b+8>>2]=g;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}nn(d)}e=a+8|0;b=i[a+76>>2];c:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){return 1}b=0;while(1){d=Rg(e,i[(b<<2)+c>>2]);if(!d){break c}f=i[a+76>>2];c=i[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break c}d=1;a=i[a+12>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){d=Rg(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break c}if(d){continue}break}}return d|0}Ba(12220);x()}function Xl(a,b,c){a:{if(b>>>0>20){break a}b:{switch(b+ -9|0){case 0:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=i[b>>2];return;case 1:b=i[c>>2];i[c>>2]=b+4;b=i[b>>2];i[a>>2]=b;i[a+4>>2]=b>>31;return;case 2:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=i[b>>2];i[a+4>>2]=0;return;case 3:b=i[c>>2]+7&-8;i[c>>2]=b+8;c=i[b+4>>2];i[a>>2]=i[b>>2];i[a+4>>2]=c;return;case 4:b=i[c>>2];i[c>>2]=b+4;b=h[b>>1];i[a>>2]=b;i[a+4>>2]=b>>31;return;case 5:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=k[b>>1];i[a+4>>2]=0;return;case 6:b=i[c>>2];i[c>>2]=b+4;b=g[b|0];i[a>>2]=b;i[a+4>>2]=b>>31;return;case 7:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=j[b|0];i[a+4>>2]=0;return;case 8:b=i[c>>2]+7&-8;i[c>>2]=b+8;n[a>>3]=n[b>>3];return;case 9:break b;default:break a}}M[0](a,c)}}function Ib(a,b,c){var d=0,e=0,f=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=J-16|0;J=f;d=g[b+24|0];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;a:{b:{if(d){if((d|0)<=-1){break b}e=d<<1;m=Dm(e);i[f>>2]=m;n=e+m|0;i[f+8>>2]=n;qn(m,0,e);i[f+4>>2]=n;p=Dm(e);qn(p,0,e)}if(!i[b+80>>2]){break a}while(1){v=i[b>>2];q=i[v>>2];t=i[b+48>>2];e=i[b+40>>2];n=Gn(e,i[b+44>>2],u,r);s=q;q=n+t|0;n=pn(m,s+q|0,e);if(d<<24>>24>=1){d=d&255;q=d>>>0>1?d:1;t=i[a+48>>2];d=0;while(1){s=d<<1;h[s+p>>1]=k[n+s>>1]+k[(c+d<<2)+t>>1];d=d+1|0;if((q|0)!=(d|0)){continue}break}}pn(i[v>>2]+o(e,u)|0,p,e);e=u+1|0;if(e>>>0<1){r=r+1|0}u=e;if(!r&e>>>0>=l[b+80>>2]|r>>>0>0){break a}d=j[b+24|0];continue}}Sm();x()}if(p){nn(p)}if(m){nn(m)}J=f+16|0;return 1}function Hb(a,b,c){var d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;f=J-16|0;J=f;d=g[b+24|0];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;a:{b:{if(d){if((d|0)<=-1){break b}e=d<<2;h=Dm(e);i[f>>2]=h;k=e+h|0;i[f+8>>2]=k;qn(h,0,e);i[f+4>>2]=k;m=Dm(e);qn(m,0,e)}if(!i[b+80>>2]){break a}while(1){t=i[b>>2];n=i[t>>2];r=i[b+48>>2];e=i[b+40>>2];k=Gn(e,i[b+44>>2],s,p);q=n;n=k+r|0;k=pn(h,q+n|0,e);if(d<<24>>24>=1){d=d&255;n=d>>>0>1?d:1;r=i[a+48>>2];d=0;while(1){q=d<<2;i[q+m>>2]=i[(c+d<<2)+r>>2]+i[k+q>>2];d=d+1|0;if((n|0)!=(d|0)){continue}break}}pn(i[t>>2]+o(e,s)|0,m,e);e=s+1|0;if(e>>>0<1){p=p+1|0}s=e;if(!p&e>>>0>=l[b+80>>2]|p>>>0>0){break a}d=j[b+24|0];continue}}Sm();x()}if(m){nn(m)}if(h){nn(h)}J=f+16|0;return 1}function Hk(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=i[a+8>>2];e=i[a>>2];if(d-e>>2>>>0>=b>>>0){f=i[a+4>>2];g=f-e>>2;h=g>>>0>>0?g:b;if(h){d=e;while(1){i[d>>2]=i[c>>2];d=d+4|0;h=h+ -1|0;if(h){continue}break}}if(g>>>0>>0){d=a;a=b-g|0;if(a){a=(a<<2)+f|0;while(1){i[f>>2]=i[c>>2];f=f+4|0;if((a|0)!=(f|0)){continue}break}}else{a=f}i[d+4>>2]=a;return}i[a+4>>2]=(b<<2)+e;return}if(e){i[a+4>>2]=e;nn(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(b>>>0>=1073741824){break a}e=d>>1;d=d>>2>>>0<536870911?e>>>0>>0?b:e:1073741823;if(d>>>0>=1073741824){break a}e=d<<2;d=Dm(e);i[a>>2]=d;i[a+8>>2]=d+e;b=(b<<2)+d|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}i[a+4>>2]=b;return}Sm();x()}function Ml(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i[b>>2];g=i[b+8>>2];h=i[b+4>>2];j=i[b>>2];e=i[a>>2];b=i[e+4>>2];c=i[e+8>>2];if(b>>>0>>0){i[b+8>>2]=g;i[b+4>>2]=h;i[b>>2]=j;i[e+4>>2]=b+12;return}a:{f=i[e>>2];d=(b-f|0)/12|0;a=d+1|0;if(a>>>0<357913942){k=o(d,12);c=(c-f|0)/12|0;d=c<<1;c=c>>>0<178956970?d>>>0>>0?a:d:357913941;d=0;b:{if(!c){break b}if(c>>>0>=357913942){break a}d=Dm(o(c,12))}a=k+d|0;i[a+8>>2]=g;i[a+4>>2]=h;i[a>>2]=j;d=d+o(c,12)|0;c=a+12|0;if((b|0)!=(f|0)){while(1){a=a+ -12|0;b=b+ -12|0;i[a>>2]=i[b>>2];i[a+4>>2]=i[b+4>>2];i[a+8>>2]=i[b+8>>2];if((b|0)!=(f|0)){continue}break}}i[e+8>>2]=d;i[e+4>>2]=c;i[e>>2]=a;if(f){nn(f)}return}Sm();x()}Ba(14937);x()}function uf(a){a=a|0;var b=0,c=0,d=0,e=0;b=i[a+32>>2];d=i[b+16>>2];e=i[b+12>>2];c=i[b+20>>2];if((e|0)>(c|0)?1:(e|0)>=(c|0)?l[b+8>>2]>d>>>0:0){e=j[d+i[b>>2]|0];d=d+1|0;if(d>>>0<1){c=c+1|0}i[b+16>>2]=d;i[b+20>>2]=c;b=i[a+48>>2];i[a+48>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}a:{b:{c:{switch(e|0){case 0:c=Dm(384);Cf(c);b=i[a+48>>2];i[a+48>>2]=c;if(!b){break a}M[i[i[b>>2]+4>>2]](b);break b;case 1:c=Dm(424);dg(c);b=i[a+48>>2];i[a+48>>2]=c;if(!b){break a}M[i[i[b>>2]+4>>2]](b);break b;case 2:break c;default:break b}}c=Dm(440);ig(c);b=i[a+48>>2];i[a+48>>2]=c;if(!b){break a}M[i[i[b>>2]+4>>2]](b)}c=i[a+48>>2];if(c){break a}return 0}a=M[i[i[c>>2]+8>>2]](c,a)|0}else{a=0}return a|0}function pc(a,b,c,d,e){var f=0,g=0,h=0,j=0;if((b|0)==-2){i[a>>2]=0;return}f=i[i[i[d+4>>2]+8>>2]+(c<<2)>>2];a:{b:{if((M[i[i[d>>2]+8>>2]](d)|0)==1){g=b;b=k[d+36>>1];wc(a,d,g,c,e,(b<<24|b<<8&16711680)>>>16|0);if(i[a>>2]){break b}i[a>>2]=0}b=Dm(44);i[b+4>>2]=f;i[b>>2]=3088;c=i[e+8>>2];d=i[e+12>>2];f=i[e+16>>2];g=i[e+20>>2];h=i[e>>2];j=i[e+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=f;i[b+28>>2]=g;i[b+16>>2]=c;i[b+20>>2]=d;i[b+8>>2]=h;i[b+12>>2]=j;f=i[e+24>>2];e=i[e+28>>2]-f|0;if(e){d=e>>2;if(d>>>0>=1073741824){break a}c=Dm(e);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((e|0)>=1){c=pn(c,f,e)+e|0}i[d+36>>2]=c}i[b>>2]=6684;i[a>>2]=b}return}Sm();x()}function Tk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=J-16|0;J=d;h=ml(b);a:{if(!h){i[a>>2]=0;break a}c=i[b+100>>2];k=i[b+96>>2];i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;c=c-k|0;e=(c|0)/12|0;b:{if(!c){break b}if(e>>>0<357913942){g=Dm(c);i[d>>2]=g;f=g+o(e,12)|0;i[d+8>>2]=f;b=0;m=qn(g,0,c-((c+ -12>>>0)%12|0)|0);i[d+4>>2]=f;n=e>>>0>1?e:1;p=j[h+84|0];while(1){l=o(b,12);c=l+k|0;e=i[c>>2];c:{if(p){g=c+8|0;c=c+4|0;break c}f=i[h+68>>2];g=f+(i[c+8>>2]<<2)|0;e=i[f+(e<<2)>>2];c=f+(i[c+4>>2]<<2)|0}f=i[c>>2];c=m+l|0;i[c+8>>2]=i[g>>2];i[c+4>>2]=f;i[c>>2]=e;b=b+1|0;if((n|0)!=(b|0)){continue}break}break b}Sm();x()}xk(a,d);a=i[d>>2];if(!a){break a}i[d+4>>2]=a;nn(a)}J=d+16|0}function cb(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{e=i[a>>2];f=i[a+4>>2]-e>>2;c=f+1|0;if(c>>>0<1073741824){e=i[a+8>>2]-e|0;g=e>>1;c=e>>2>>>0<536870911?g>>>0>>0?c:g:1073741823;if(c){if(c>>>0>=1073741824){break c}d=Dm(c<<2)}e=i[b>>2];i[b>>2]=0;b=(f<<2)+d|0;i[b>>2]=e;e=(c<<2)+d|0;f=b+4|0;d=i[a+4>>2];c=i[a>>2];if((d|0)==(c|0)){break b}while(1){d=d+ -4|0;g=i[d>>2];i[d>>2]=0;b=b+ -4|0;i[b>>2]=g;if((d|0)!=(c|0)){continue}break}i[a+8>>2]=e;d=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=b;if((d|0)==(c|0)){break a}while(1){d=d+ -4|0;a=i[d>>2];i[d>>2]=0;if(a){Sa(a)}if((d|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(1756);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function bh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=J-32|0;J=d;i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;a:{f=o(b,3);if(f){if(f>>>0>=1073741824){break a}g=o(b,12);e=Dm(g);i[d+16>>2]=e;c=(f<<2)+e|0;i[d+24>>2]=c;qn(e,0,g);i[d+20>>2]=c}k=Qe(f,1,i[a+32>>2],e);if(!(!k|!b)){g=0;f=0;c=0;while(1){l=d+8|0;i[l>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=c;e=(f<<2)+e|0;c=i[e>>2];j=c>>>1|0;c=h+(c&1?0-j|0:j)|0;i[d>>2]=c;h=c;c=i[e+4>>2];j=c>>>1|0;c=h+(c&1?0-j|0:j)|0;i[d+4>>2]=c;h=c;e=i[e+8>>2];c=e>>>1|0;c=h+(e&1?0-c|0:c)|0;i[l>>2]=c;ch(i[a+44>>2]+96|0,d);g=g+1|0;if((g|0)!=(b|0)){f=f+3|0;e=i[d+16>>2];continue}break}e=i[d+16>>2]}if(e){i[d+20>>2]=e;nn(e)}J=d+32|0;return k}Sm();x()}function dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;f=J-16|0;J=f;g=Dm(64);c=Dm(12);i[c+8>>2]=i[i[a+4>>2]+80>>2];i[c>>2]=13428;i[c+4>>2]=0;i[f+8>>2]=c;$b(g,f+8|0);a:{if((b|0)>=0){h=a+8|0;c=i[a+12>>2];j=i[a+8>>2];d=c-j>>2;b:{if((d|0)>(b|0)){break b}e=b+1|0;if(d>>>0<=b>>>0){Kf(h,e-d|0);break b}if(e>>>0>=d>>>0){break b}e=j+(e<<2)|0;if((e|0)!=(c|0)){while(1){c=c+ -4|0;d=i[c>>2];i[c>>2]=0;if(d){M[i[i[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}i[a+12>>2]=e}c=i[h>>2]+(b<<2)|0;a=i[c>>2];i[c>>2]=g;if(!a){break a}M[i[i[a>>2]+4>>2]](a);break a}M[i[i[g>>2]+4>>2]](g)}a=i[f+8>>2];i[f+8>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}J=f+16|0;return(b^-1)>>>31|0}function Jf(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=J-16|0;J=e;i[a+4>>2]=0;a:{b:{if(!b){break b}f=i[a+8>>2];d=f<<5;c:{if(d>>>0>=b>>>0){i[a+4>>2]=b;break c}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if((b|0)<=-1){break a}h=e;if(d>>>0<=1073741822){g=b+31&-32;d=f<<6;d=d>>>0>>0?g:d}else{d=2147483647}Qc(h,d);d=i[a>>2];i[a>>2]=i[e>>2];i[e>>2]=d;f=i[a+4>>2];i[a+4>>2]=b;i[e+4>>2]=f;f=i[a+8>>2];i[a+8>>2]=i[e+8>>2];i[e+8>>2]=f;if(!d){break c}nn(d)}d=b>>>5|0;f=d<<2;a=i[a>>2];if(j[c|0]){a=qn(a,255,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;i[a>>2]=i[a>>2]|-1>>>32-b;break b}a=qn(a,0,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;i[a>>2]=i[a>>2]&(-1>>>32-b^-1)}J=e+16|0;return}Sm();x()}function oa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0;i[b>>2]=1;f=b+8|0;c=i[b+8>>2];d=i[b+12>>2]-c|0;if(d>>>0<=4294967291){yh(f,d+4|0);c=i[f>>2]}c=c+d|0;d=i[a+4>>2];g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;c=i[a+8>>2];if((c|0)!=i[a+12>>2]){d=0;while(1){h=(d<<2)+c|0;c=i[b+8>>2];e=i[b+12>>2]-c|0;if(e>>>0<=4294967291){yh(f,e+4|0);c=i[f>>2]}c=c+e|0;e=i[h>>2];g[c|0]=e;g[c+1|0]=e>>>8;g[c+2|0]=e>>>16;g[c+3|0]=e>>>24;d=d+1|0;c=i[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=i[b+12>>2];b=i[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){yh(f,c+4|0);b=i[f>>2]}b=b+c|0;a=i[a+20>>2];g[b|0]=a;g[b+1|0]=a>>>8;g[b+2|0]=a>>>16;g[b+3|0]=a>>>24}function Cf(a){i[a>>2]=11468;qn(a+4|0,0,80);i[a+96>>2]=0;i[a+100>>2]=0;i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+148>>2]=0;i[a+156>>2]=0;i[a+160>>2]=0;i[a+152>>2]=1065353216;i[a+164>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;i[a+196>>2]=0;i[a+200>>2]=0;i[a+204>>2]=0;i[a+208>>2]=0;i[a+212>>2]=-1;i[a+216>>2]=0;i[a+220>>2]=0;i[a+224>>2]=0;zh(a+232|0);zh(a+272|0);ze(a+312|0);zh(a+328|0);i[a+376>>2]=0;i[a+368>>2]=0;i[a+372>>2]=0}function db(a,b){var c=0,d=0,e=0,f=0,g=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;c=i[b+4>>2]-i[b>>2]|0;d=(c|0)/20|0;a:{if(!c){i[a+28>>2]=0;break a}if(d>>>0<214748365){c=Dm(c);i[a+16>>2]=c;i[a+20>>2]=c;i[a+24>>2]=c+o(d,20);d=i[b>>2];b=i[b+4>>2]-d|0;if((b|0)<=0){i[a+28>>2]=0;i[a+20>>2]=c;break a}d=pn(c,d,b);c=0;i[a+28>>2]=0;b=o((b>>>0)/20|0,20);f=b+d|0;i[a+20>>2]=f;g=a;if(b){b=(f-d|0)/20|0;f=b>>>0>1?b:1;b=0;while(1){e=o(c,20)+d|0;e=o(i[e+16>>2],i[e+12>>2]);b=b>>>0>>0?e:b;c=c+1|0;if((f|0)!=(c|0)){continue}break}if(!b){break a}rb(a,b);b=i[a>>2]}else{b=0}i[g+12>>2]=b;return a}Sm();x()}i[a+12>>2]=0;return a}function yk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=J-16|0;J=f;i[a+80>>2]=0;i[a+84>>2]=0;c=a+76|0;d=i[c>>2];i[c>>2]=0;if(d){nn(d)}i[a+68>>2]=0;i[a+72>>2]=0;c=a- -64|0;d=i[c>>2];i[c>>2]=0;if(d){nn(d)}c=i[b+4>>2];d=i[b>>2];e=o((c-d|0)/12|0,3);h=i[a>>2];g=i[a+4>>2]-h>>2;a:{if(e>>>0>g>>>0){zk(a,e-g|0);d=i[b>>2];c=i[b+4>>2];break a}if(e>>>0>=g>>>0){break a}i[a+4>>2]=h+(e<<2)}if((c|0)!=(d|0)){b=(c-d|0)/12|0;g=b>>>0>1?b:1;h=i[a>>2];b=0;while(1){e=o(b,12);c=e+h|0;e=d+e|0;i[c>>2]=i[e>>2];i[c+4>>2]=i[e+4>>2];i[c+8>>2]=i[e+8>>2];b=b+1|0;if((g|0)!=(b|0)){continue}break}}i[f+12>>2]=-1;b=Ak(a,f+12|0);if(b){Bk(a);Ck(a,i[f+12>>2])}J=f+16|0;return b}function Jb(a,b,c){var d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0,q=0;e=J-16|0;J=e;d=g[b+24|0];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;a:{if(d){if((d|0)<=-1){break a}h=Dm(d);i[e>>2]=h;f=d+h|0;i[e+8>>2]=f;qn(h,0,d);i[e+4>>2]=f;f=Dm(d);qn(f,0,d)}if(i[b+80>>2]){while(1){n=i[i[b>>2]>>2];k=i[b+40>>2];d=i[b+48>>2]+Gn(k,i[b+44>>2],p,m)|0;q=pn(h,n+d|0,k);k=g[b+24|0];if((k|0)>=1){n=i[a+48>>2];d=0;while(1){g[d+f|0]=j[d+q|0]+j[(c+d<<2)+n|0];d=d+1|0;if((d|0)<(k|0)){continue}break}}d=i[b+40>>2];pn(i[i[b>>2]>>2]+o(d,p)|0,f,d);d=p+1|0;if(d>>>0<1){m=m+1|0}p=d;if(!m&d>>>0>2]|m>>>0<0){continue}break}}if(f){nn(f)}if(h){nn(h)}J=e+16|0;return 1}Sm();x()}function Zd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0;c=i[b+12>>2];h=c;e=c;c=i[b+20>>2];f=c;g=i[b+16>>2];d=g+4|0;if(d>>>0<4){c=c+1|0}l=i[b+8>>2];n=d;d=c;a:{if((e|0)<(c|0)?1:(e|0)<=(c|0)?l>>>0>>0:0){break a}c=g+i[b>>2]|0;e=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=n;i[b+20>>2]=d;if(k[b+38>>1]<=513){c=f;d=g+8|0;if(d>>>0<8){c=c+1|0}f=d;d=c;if((h|0)<(c|0)?1:(h|0)<=(c|0)?l>>>0>>0:0){break a}i[b+16>>2]=f;i[b+20>>2]=d}if(!(e&1)){break a}b=r(e)^31;c=b+ -1|0;if(c>>>0<=28){i[a+8>>2]=b+1;b=-2<>2]=d;i[a+12>>2]=b^-1;i[a+24>>2]=(d|0)/2;m[a+20>>2]=p(2)/p(d|0)}o=c>>>0<29}return o|0}function ma(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0;d=i[b+88>>2];if(!(!d|i[d>>2]!=1)){c=i[d+8>>2];i[a+4>>2]=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);f=a+8|0;h=i[a+8>>2];e=i[a+12>>2]-h>>2;c=g[b+24|0];a:{if(e>>>0>>0){na(f,c-e|0);c=j[b+24|0];break a}if(e>>>0<=c>>>0){break a}i[a+12>>2]=h+(c<<2)}h=1;e=i[d+8>>2];b:{if(c<<24>>24<1){b=4;break b}b=c&255;k=b>>>0>1?b:1;f=i[f>>2];c=0;b=4;while(1){d=b+e|0;m[f+(c<<2)>>2]=(Pn(2,j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24)),Qn());b=b+4|0;c=c+1|0;if((k|0)!=(c|0)){continue}break}}c=a;a=b+e|0;m[c+20>>2]=(Pn(2,j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24)),Qn())}return h|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=i[a+8>>2];e=i[a>>2];if(g>>>0<=d-e>>2>>>0){f=i[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){i[e>>2]=i[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)>=1){f=pn(f,d,b)+b|0}i[a+4>>2]=f;return}i[a+4>>2]=e;return}if(e){i[a+4>>2]=e;nn(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(g>>>0>=1073741824){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=Dm(e);i[a>>2]=c;i[a+4>>2]=c;i[a+8>>2]=c+e;if((f|0)>=1){c=pn(c,b,f)+f|0}i[a+4>>2]=c;return}Sm();x()}function $h(a,b,c){var d=0,e=0,f=0,h=0;d=J-32|0;J=d;a:{h=xn(b);if(h>>>0<4294967280){b:{c:{if(h>>>0>=11){e=h+16&-16;f=Dm(e);i[d+24>>2]=e|-2147483648;i[d+16>>2]=f;i[d+20>>2]=h;break c}g[d+27|0]=h;f=d+16|0;if(!h){break b}}pn(f,b,h)}g[f+h|0]=0;e=xn(c);if(e>>>0>=4294967280){break a}d:{e:{if(e>>>0>=11){b=e+16&-16;f=Dm(b);i[d+8>>2]=b|-2147483648;i[d>>2]=f;i[d+4>>2]=e;break e}g[d+11|0]=e;f=d;if(!e){break d}}pn(f,c,e)}g[e+f|0]=0;c=i[a+4>>2];b=-1;f:{if(!c){break f}c=_k(c,d+16|0,d);b=-1;if(!c){break f}b=ol(a,i[c+24>>2])}a=b;if(g[d+11|0]<=-1){nn(i[d>>2])}if(g[d+27|0]<=-1){nn(i[d+16>>2])}J=d+32|0;return a}Fm();x()}Fm();x()}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;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=J-32|0;J=f;g=(e&1073741823)!=(e|0)?-1:e<<2;m=qn(Dm(g),0,g);g=m;j=i[g>>2];g=i[g+4>>2];l=i[b+4>>2];i[f+24>>2]=i[b>>2];i[f+28>>2]=l;i[f+8>>2]=j;i[f+12>>2]=g;j=a+8|0;Yd(f+16|0,j,f+8|0,f+24|0);i[c>>2]=i[f+16>>2];i[c+4>>2]=i[f+20>>2];if((e|0)<(d|0)){l=0-e<<2;a=e;while(1){h=a<<2;g=h+c|0;k=g+l|0;n=i[k>>2];k=i[k+4>>2];h=b+h|0;o=i[h+4>>2];i[f+24>>2]=i[h>>2];i[f+28>>2]=o;i[f+8>>2]=n;i[f+12>>2]=k;Yd(f+16|0,j,f+8|0,f+24|0);i[g>>2]=i[f+16>>2];i[g+4>>2]=i[f+20>>2];a=a+e|0;if((a|0)<(d|0)){continue}break}}nn(m);J=f+32|0;return 1}function Hg(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;d=(c>>>0)/3|0;Ig(i[a+12>>2],i[(i[i[a+8>>2]+96>>2]+o(d,12)|0)+(c-o(d,3)<<2)>>2]);f=i[a+4>>2];d=i[f+4>>2];a:{b:{c:{if((d|0)!=i[f+8>>2]){i[d>>2]=c;i[f+4>>2]=d+4;break c}h=i[f>>2];j=d-h|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break b}d=j>>1;e=g>>>0<536870911?d>>>0>>0?e:d:1073741823;d=0;d:{if(!e){break d}if(e>>>0>=1073741824){break a}d=Dm(e<<2)}g=d+(g<<2)|0;i[g>>2]=c;c=d+(e<<2)|0;e=g+4|0;if((j|0)>=1){pn(d,h,j)}i[f+8>>2]=c;i[f+4>>2]=e;i[f>>2]=d;if(!h){break c}nn(h)}a=i[a+4>>2];i[i[a+12>>2]+(b<<2)>>2]=i[a+24>>2];i[a+24>>2]=i[a+24>>2]+1;return}Sm();x()}Ba(12220);x()}function le(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,j=0,k=0,l=0,m=0,n=0,o=0;f=J-32|0;J=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=qn(Dm(h),0,h);g=i[b>>2];j=i[b+4>>2];l=i[h+4>>2];i[f+16>>2]=i[h>>2];i[f+20>>2]=l;i[f+8>>2]=g;i[f+12>>2]=j;j=a+8|0;ge(f+24|0,j,f+16|0,f+8|0);i[c>>2]=i[f+24>>2];i[c+4>>2]=i[f+28>>2];if((e|0)<(d|0)){l=0-e<<2;a=e;while(1){g=a<<2;k=g+b|0;n=i[k>>2];k=i[k+4>>2];g=c+g|0;m=g+l|0;o=i[m+4>>2];i[f+16>>2]=i[m>>2];i[f+20>>2]=o;i[f+8>>2]=n;i[f+12>>2]=k;ge(f+24|0,j,f+16|0,f+8|0);i[g>>2]=i[f+24>>2];i[g+4>>2]=i[f+28>>2];a=a+e|0;if((a|0)<(d|0)){continue}break}}nn(h);J=f+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,k=0,l=0,n=0;c=i[b+12>>2];h=c;e=c;c=i[b+20>>2];f=c;g=i[b+16>>2];d=g+4|0;if(d>>>0<4){c=c+1|0}k=i[b+8>>2];l=d;d=c;a:{if((e|0)<(c|0)?1:(e|0)<=(c|0)?k>>>0>>0:0){break a}c=g+i[b>>2]|0;e=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=l;i[b+20>>2]=d;c=f;d=g+8|0;if(d>>>0<8){c=c+1|0}f=d;d=c;if((h|0)<(c|0)?1:(h|0)<=(c|0)?k>>>0>>0:0){break a}i[b+16>>2]=f;i[b+20>>2]=d;if(!(e&1)){break a}b=r(e)^31;if(b+ -1>>>0>28){break a}n=1;i[a+8>>2]=b+1;b=-2<>2]=c;i[a+12>>2]=b^-1;i[a+24>>2]=(c|0)/2;m[a+20>>2]=p(2)/p(c|0)}return n|0}function Wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=i[a+8>>2];d=i[a+4>>2];if(f-d>>2>>>0>=b>>>0){e=a;if(b){a=(b<<2)+d|0;while(1){i[d>>2]=i[c>>2];d=d+4|0;if((a|0)!=(d|0)){continue}break}}else{a=d}i[e+4>>2]=a;return}a:{g=i[a>>2];h=d-g|0;e=h>>2;d=e+b|0;if(d>>>0<1073741824){j=e<<2;f=f-g|0;e=f>>1;f=f>>2>>>0<536870911?e>>>0>>0?d:e:1073741823;e=0;b:{if(!f){break b}if(f>>>0>=1073741824){break a}e=Dm(f<<2)}d=j+e|0;b=d+(b<<2)|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}c=e+(f<<2)|0;if((h|0)>=1){pn(e,g,h)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=e;if(g){nn(g)}return}Sm();x()}Ba(1972);x()}function Ta(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=i[a+8>>2];d=i[a+4>>2];if(f-d>>2>>>0>=b>>>0){e=a;if(b){a=(b<<2)+d|0;while(1){i[d>>2]=i[c>>2];d=d+4|0;if((a|0)!=(d|0)){continue}break}}else{a=d}i[e+4>>2]=a;return}a:{g=i[a>>2];h=d-g|0;e=h>>2;d=e+b|0;if(d>>>0<1073741824){j=e<<2;f=f-g|0;e=f>>1;f=f>>2>>>0<536870911?e>>>0>>0?d:e:1073741823;e=0;b:{if(!f){break b}if(f>>>0>=1073741824){break a}e=Dm(f<<2)}d=j+e|0;b=d+(b<<2)|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}c=e+(f<<2)|0;if((h|0)>=1){pn(e,g,h)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=e;if(g){nn(g)}return}Sm();x()}Ba(1496);x()}function Dk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){d=a;if(b){a=(b<<2)+c|0;while(1){i[c>>2]=i[3571];c=c+4|0;if((a|0)!=(c|0)){continue}break}}else{a=c}i[d+4>>2]=a;return}a:{f=i[a>>2];g=c-f|0;d=g>>2;c=d+b|0;if(c>>>0<1073741824){h=d<<2;e=e-f|0;d=e>>1;e=e>>2>>>0<536870911?d>>>0>>0?c:d:1073741823;d=0;b:{if(!e){break b}if(e>>>0>=1073741824){break a}d=Dm(e<<2)}c=h+d|0;b=c+(b<<2)|0;h=i[3571];while(1){i[c>>2]=h;c=c+4|0;if((b|0)!=(c|0)){continue}break}c=d+(e<<2)|0;if((g|0)>=1){pn(d,f,g)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=d;if(f){nn(f)}return}Sm();x()}Ba(14288);x()}function ji(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,n=0;d=J-16|0;J=d;k=i[a+80>>2];l=g[b+24|0];a=i[3527];i[d+8>>2]=i[3526];i[d+12>>2]=a;a=i[3525];i[d>>2]=i[3524];i[d+4>>2]=a;a=o(k,l);f=i[c>>2];e=i[c+4>>2]-f>>2;a:{if(a>>>0>e>>>0){na(c,a-e|0);break a}if(a>>>0>=e>>>0){break a}i[c+4>>2]=f+(a<<2)}b:{if(!k){f=0;break b}f=1;while(1){a=h;e=b;if(!j[e+84|0]){a=i[i[b+68>>2]+(h<<2)>>2]}if(!$c(e,a,g[b+24|0],d)){break b}if((l|0)>=1){e=i[c>>2];a=0;while(1){m[e+(n<<2)>>2]=m[(a<<2)+d>>2];n=n+1|0;a=a+1|0;if((l|0)!=(a|0)){continue}break}}h=h+1|0;f=h>>>0>>0;if((k|0)!=(h|0)){continue}break}}J=d+16|0;return(f^-1)&1}function Pb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{f=i[a+4>>2];b:{if((f|0)!=i[a>>2]){c=f;break b}e=i[a+8>>2];c=i[a+12>>2];if(e>>>0>>0){d=((c-e>>2)+1|0)/2<<2;c=d+e|0;g=e-f|0;if(g){c=c-g|0;rn(c,f,g);e=i[a+8>>2]}i[a+4>>2]=c;i[a+8>>2]=e+d;break b}c=c-f|0;d=c?c>>1:1;if(d>>>0>=1073741824){break a}c=d<<2;h=Dm(c);g=h+c|0;c=(d+3&-4)+h|0;j=c;d=e-f|0;if(d){j=c+d|0;e=c;d=f;while(1){i[e>>2]=i[d>>2];d=d+4|0;e=e+4|0;if((j|0)!=(e|0)){continue}break}}i[a+12>>2]=g;i[a+8>>2]=j;i[a+4>>2]=c;i[a>>2]=h;if(!f){break b}nn(f);c=i[a+4>>2]}i[c+ -4>>2]=i[b>>2];i[a+4>>2]=i[a+4>>2]+ -4;return}Ba(1756);x()}function Nk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){d=a;if(b){a=(b<<2)+c|0;while(1){i[c>>2]=1;c=c+4|0;if((a|0)!=(c|0)){continue}break}}else{a=c}i[d+4>>2]=a;return}a:{f=i[a>>2];g=c-f|0;d=g>>2;c=d+b|0;if(c>>>0<1073741824){h=d<<2;e=e-f|0;d=e>>1;e=e>>2>>>0<536870911?d>>>0>>0?c:d:1073741823;d=0;b:{if(!e){break b}if(e>>>0>=1073741824){break a}d=Dm(e<<2)}c=h+d|0;b=c+(b<<2)|0;while(1){i[c>>2]=1;c=c+4|0;if((b|0)!=(c|0)){continue}break}c=d+(e<<2)|0;if((g|0)>=1){pn(d,f,g)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=d;if(f){nn(f)}return}Sm();x()}Ba(14408);x()}function sa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=p(0);f=J-16|0;J=f;if(i[c+28>>2]==9){d=i[a+4>>2];e=g[c+24|0];h=e<<2;j=Dm((e&1073741823)!=(e|0)?-1:h);k=Kh(f+8|0);l=Mh(k,m[a+20>>2],-1<>2];if(!n){break a}s=i[i[b>>2]>>2]+i[b+48>>2]|0;t=(e|0)<1;d=0;while(1){if(!t){u=i[a+8>>2];v=m[k>>2];b=0;while(1){o=b<<2;m[o+j>>2]=p(v*p(i[(d<<2)+s>>2]))+m[u+o>>2];d=d+1|0;b=b+1|0;if((e|0)!=(b|0)){continue}break}}pn(i[i[c+64>>2]>>2]+q|0,j,h);q=h+q|0;r=r+1|0;if((r|0)!=(n|0)){continue}break}}nn(j)}J=f+16|0;return l|0}function Pe(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0;f=a+4|0;a:{a=i[a+4>>2];if(a){e=j[c+11|0];d=e<<24>>24<0;k=d?i[c>>2]:c;e=d?i[c+4>>2]:e;while(1){c=j[a+27|0];d=c<<24>>24<0;c=d?i[a+20>>2]:c;l=c>>>0>>0;b:{c:{d:{e:{f:{h=l?c:e;g:{if(h){g=a+16|0;d=d?i[g>>2]:g;g=Nl(k,d,h);if(!g){if(e>>>0>>0){break g}break f}if((g|0)>-1){break f}break g}if(e>>>0>=c>>>0){break e}}c=i[a>>2];if(c){break b}i[b>>2]=a;return a}c=Nl(d,k,h);if(c){break d}}if(l){break c}break a}if((c|0)>-1){break a}}f=a+4|0;c=i[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}i[b>>2]=f;return f}i[b>>2]=a;return f}function Ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{e=i[a+8>>2];b:{if((e|0)!=i[a+12>>2]){break b}f=i[a+4>>2];g=i[a>>2];if(f>>>0>g>>>0){g=((f-g>>2)+1|0)/-2<<2;c=g+f|0;d=e-f|0;if(d){rn(c,f,d);f=i[a+4>>2]}e=c+d|0;i[a+8>>2]=e;i[a+4>>2]=f+g;break b}c=e-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}d=c<<2;h=Dm(d);j=h+d|0;d=e-f|0;c=(c&-4)+h|0;e=c;if(d){e=c+d|0;d=c;while(1){i[d>>2]=i[f>>2];f=f+4|0;d=d+4|0;if((d|0)!=(e|0)){continue}break}}i[a+12>>2]=j;i[a+8>>2]=e;i[a+4>>2]=c;i[a>>2]=h;if(!g){break b}nn(g);e=i[a+8>>2]}i[e>>2]=i[b>>2];i[a+8>>2]=i[a+8>>2]+4;return}Ba(1756);x()}function Ja(a,b){var c=0;c=i[b+4>>2];i[a>>2]=i[b>>2];i[a+4>>2]=c;c=i[b+60>>2];i[a+56>>2]=i[b+56>>2];i[a+60>>2]=c;c=i[b+52>>2];i[a+48>>2]=i[b+48>>2];i[a+52>>2]=c;c=i[b+44>>2];i[a+40>>2]=i[b+40>>2];i[a+44>>2]=c;c=i[b+36>>2];i[a+32>>2]=i[b+32>>2];i[a+36>>2]=c;c=i[b+28>>2];i[a+24>>2]=i[b+24>>2];i[a+28>>2]=c;c=i[b+20>>2];i[a+16>>2]=i[b+16>>2];i[a+20>>2]=c;c=i[b+12>>2];i[a+8>>2]=i[b+8>>2];i[a+12>>2]=c;i[a+88>>2]=0;i[a+64>>2]=0;i[a+68>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;g[a+77|0]=0;g[a+78|0]=0;g[a+79|0]=0;g[a+80|0]=0;g[a+81|0]=0;g[a+82|0]=0;g[a+83|0]=0;g[a+84|0]=0;return a}function Ih(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;g=a+4|0;a=i[a+4>>2];a:{b:{if(!a){break b}d=j[b+11|0];c=d<<24>>24<0;k=c?i[b>>2]:b;e=c?i[b+4>>2]:d;c=g;while(1){b=j[a+27|0];l=b<<24>>24<0;h=l?i[a+20>>2]:b;f=e>>>0>>0;d=f?e:h;c:{if(d){b=a+16|0;b=Nl(l?i[b>>2]:b,k,d);if(b){break c}}b=h>>>0>>0?-1:f}c=(b|0)<0?c:a;a=i[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=j[c+27|0];f=a<<24>>24<0;d:{d=f?i[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=Nl(k,f?i[a>>2]:a,b);if(a){break d}}if(e>>>0>>0){break b}break a}if((a|0)>-1){break a}}c=g}return c}function cl(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0;h=J-16|0;J=h;l=a;j=Pe(b,h+12|0,c);c=i[j>>2];if(c){b=0}else{c=Dm(40);e=d+8|0;i[c+24>>2]=i[e>>2];f=i[d+4>>2];i[c+16>>2]=i[d>>2];i[c+20>>2]=f;i[d>>2]=0;i[d+4>>2]=0;i[e>>2]=0;i[c+36>>2]=0;i[c+28>>2]=0;i[c+32>>2]=0;f=i[d+12>>2];k=i[d+16>>2]-f|0;e=0;a:{if(!k){break a}e=c+28|0;rb(e,k);f=i[d+12>>2];m=i[d+16>>2]-f|0;e=i[e>>2]}pn(e,f,m);i[c+8>>2]=i[h+12>>2];i[c>>2]=0;i[c+4>>2]=0;i[j>>2]=c;e=i[i[b>>2]>>2];d=c;b:{if(!e){break b}i[b>>2]=e;d=i[j>>2]}Me(i[b+4>>2],d);i[b+8>>2]=i[b+8>>2]+1;b=1}g[l+4|0]=b;i[a>>2]=c;J=h+16|0}function ua(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=i[a+8>>2];e=i[a>>2];if(g>>>0<=d-e>>2>>>0){d=i[a+4>>2]-e|0;f=d>>2;d=g>>>0>f>>>0?b+d|0:c;h=d-b|0;if(h){rn(e,b,h)}if(g>>>0>f>>>0){b=i[a+4>>2];c=c-d|0;if((c|0)>=1){b=pn(b,d,c)+c|0}i[a+4>>2]=b;return}i[a+4>>2]=e+h;return}if(e){i[a+4>>2]=e;nn(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(g>>>0>=1073741824){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=Dm(e);i[a>>2]=c;i[a+4>>2]=c;i[a+8>>2]=c+e;if((f|0)>=1){c=pn(c,b,f)+f|0}i[a+4>>2]=c;return}Sm();x()}function Se(a,b,c){var d=0,e=0,f=0,g=0;a:{b:{d=i[b+16>>2];f=i[b+12>>2];e=i[b+20>>2];c:{if((f|0)<(e|0)?1:(f|0)<=(e|0)?l[b+8>>2]<=d>>>0:0){break c}f=j[d+i[b>>2]|0];d=d+1|0;if(d>>>0<1){e=e+1|0}i[b+16>>2]=d;i[b+20>>2]=e;d:{e:{switch(f+ -1|0){case 8:return We(a,b,c);case 9:return Xe(a,b,c);case 10:return Ye(a,b,c);case 11:return Ze(a,b,c);case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:break b;case 13:case 14:case 15:case 16:break a;case 17:break d;case 12:break e;default:break c}}return _e(a,b,c)}g=$e(a,b,c)}return g}return Ve(a,b,c)}return $e(a,b,c)}function Ch(a,b,c){var d=0,e=0,f=0,h=0;a:{b:{if(!b){break b}if(k[a+38>>1]<=513){e=i[a+12>>2];b=i[a+20>>2];f=i[a+16>>2];h=f+8|0;if(h>>>0<8){b=b+1|0}if((e|0)<(b|0)?1:(e|0)<=(b|0)?l[a+8>>2]>>0:0){break a}b=f+i[a>>2]|0;d=j[b+4|0]|j[b+5|0]<<8|(j[b+6|0]<<16|j[b+7|0]<<24);i[c>>2]=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[c+4>>2]=d;c=i[a+20>>2];d=i[a+16>>2]+8|0;if(d>>>0<8){c=c+1|0}i[a+16>>2]=d;i[a+20>>2]=c;break b}if(!Dh(1,c,a)){break a}}g[a+36|0]=1;i[a+32>>2]=0;b=i[a+16>>2];c=b+i[a>>2]|0;i[a+24>>2]=c;d=a;a=i[a+8>>2];i[d+28>>2]=c+(a-b|0);d=1}return d}function ch(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){e=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=e;i[c+8>>2]=i[b+8>>2];i[a+4>>2]=c+12;return}a:{e=i[a>>2];g=c-e|0;c=(g|0)/12|0;d=c+1|0;if(d>>>0<357913942){h=c<<1;d=c>>>0<178956970?h>>>0>>0?d:h:357913941;f=0;b:{if(!d){break b}if(d>>>0>=357913942){break a}f=Dm(o(d,12))}c=f+o(c,12)|0;h=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=h;i[c+8>>2]=i[b+8>>2];b=c+o((g|0)/-12|0,12)|0;f=f+o(d,12)|0;c=c+12|0;if((g|0)>=1){pn(b,e,g)}i[a+8>>2]=f;i[a+4>>2]=c;i[a>>2]=b;if(e){nn(e)}return}Sm();x()}Ba(13352);x()}function tl(a,b){var c=0,d=0,e=0,f=0;a:{if((b|0)<0){break a}c=i[a+24>>2];d=i[a+28>>2];if((c|0)==(d|0)){break a}while(1){f=c+4|0;e=i[c>>2];if(i[e+24>>2]==(b|0)){b:{if((d|0)!=(f|0)){while(1){b=i[f>>2];i[f>>2]=0;i[c>>2]=b;if(e){qh(e+12|0,i[e+16>>2]);rh(e,i[e+4>>2]);nn(e)}c=c+4|0;f=f+4|0;if((d|0)!=(f|0)){e=i[c>>2];continue}break}d=i[a+28>>2];if((d|0)==(c|0)){break b}}while(1){d=d+ -4|0;b=i[d>>2];i[d>>2]=0;if(b){qh(b+12|0,i[b+16>>2]);rh(b,i[b+4>>2]);nn(b)}if((c|0)!=(d|0)){continue}break}}i[a+28>>2]=c;return}c=f;if((d|0)!=(c|0)){continue}break}}}function Tl(a,b,c){var d=0,e=0,f=0;d=J-208|0;J=d;i[d+204>>2]=c;c=0;qn(d+160|0,0,40);i[d+200>>2]=i[d+204>>2];a:{if((Ul(0,b,d+200|0,d+80|0,d+160|0)|0)<0){break a}c=i[a+76>>2]>=0?1:c;e=i[a>>2];if(g[a+74|0]<=0){i[a>>2]=e&-33}f=e&32;b:{if(i[a+48>>2]){Ul(a,b,d+200|0,d+80|0,d+160|0);break b}i[a+48>>2]=80;i[a+16>>2]=d+80;i[a+28>>2]=d;i[a+20>>2]=d;e=i[a+44>>2];i[a+44>>2]=d;Ul(a,b,d+200|0,d+80|0,d+160|0);if(!e){break b}M[i[a+36>>2]](a,0,0)|0;i[a+48>>2]=0;i[a+44>>2]=e;i[a+28>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0}i[a>>2]=f|i[a>>2];if(!c){break a}}J=d+208|0}function Gk(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=o(b,3);Hk(a,d,14280);Hk(a+12|0,d,14284);d=i[a+24>>2];c:{if(i[a+32>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break a}e=i[a+28>>2];f=c<<2;c=Dm(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>=1){pn(c,d,e)}i[a+32>>2]=f;i[a+28>>2]=g;i[a+24>>2]=c;if(!d){break c}nn(d)}i[a+80>>2]=0;i[a+84>>2]=0;d=a+76|0;c=i[d>>2];i[d>>2]=0;if(c){nn(c)}i[a+68>>2]=0;i[a+72>>2]=0;c=a- -64|0;a=i[c>>2];i[c>>2]=0;if(!a){break b}nn(a)}a=b>>>0<1431655766}else{a=0}return a}Ba(14288);x()}function fg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0;f=J-16|0;J=f;a:{if(!Uf(a,b)){break a}g=i[b+12>>2];c=i[b+20>>2];h=i[b+16>>2];e=h+4|0;if(e>>>0<4){c=c+1|0}d=e;e=c;if((g|0)<(c|0)?1:(g|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=h+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=d;i[b+20>>2]=e;if((c|0)<0){break a}d=i[a+152>>2];if((c|0)>=(d|0)){break a}i[f+12>>2]=0;e=i[a+156>>2];c=i[a+160>>2]-e>>2;b:{if(d>>>0>c>>>0){Ta(a+156|0,d-c|0,f+12|0);break b}if(d>>>0>=c>>>0){break b}i[a+160>>2]=e+(d<<2)}k=Ae(a+168|0,b)}J=f+16|0;return k}function fb(a){var b=0,c=0,d=0,e=0;d=i[a+132>>2];if(d){b=i[a+136>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+132>>2]}i[a+136>>2]=d;nn(c)}d=i[a+120>>2];if(d){b=i[a+124>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+120>>2]}i[a+124>>2]=d;nn(c)}b=i[a+108>>2];if(b){i[a+112>>2]=b;nn(b)}b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}we(a+76|0);we(a+56|0);we(a+36|0);we(a+16|0)}function bn(a){var b=0,c=0,d=0,e=0;b=J+ -64|0;J=b;d=i[a>>2];c=i[d+ -4>>2];d=i[d+ -8>>2];i[b+20>>2]=0;i[b+16>>2]=16520;i[b+12>>2]=a;i[b+8>>2]=16568;qn(b+24|0,0,39);a=a+d|0;a:{if($m(c,16568,0)){i[b+56>>2]=1;M[i[i[c>>2]+20>>2]](c,b+8|0,a,a,1,0);e=i[b+32>>2]==1?a:0;break a}M[i[i[c>>2]+24>>2]](c,b+8|0,a,1,0);b:{switch(i[b+44>>2]){case 0:e=i[b+48>>2]==1?i[b+36>>2]==1?i[b+40>>2]==1?i[b+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(i[b+32>>2]!=1){if(i[b+48>>2]|i[b+36>>2]!=1|i[b+40>>2]!=1){break a}}e=i[b+24>>2]}J=b- -64|0;return e}function Lb(a){a=a|0;var b=0,c=0,d=0;i[a>>2]=1572;b=i[a+60>>2];if(b){c=i[a- -64>>2];d=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;d=i[c>>2];i[c>>2]=0;if(d){Sa(d)}if((b|0)!=(c|0)){continue}break}d=i[a+60>>2]}i[a+64>>2]=b;nn(d)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}b=i[a+36>>2];if(b){c=i[a+40>>2];d=b;b:{if((b|0)==(c|0)){break b}while(1){c=c+ -24|0;M[i[i[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}d=i[a+36>>2]}i[a+40>>2]=b;nn(d)}i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;nn(b)}return a|0}function nb(a){var b=0,c=0,d=0,e=0;d=i[a+640>>2];if(d){b=i[a+644>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+640>>2]}i[a+644>>2]=d;nn(c)}d=i[a+628>>2];if(d){b=i[a+632>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+628>>2]}i[a+632>>2]=d;nn(c)}b=i[a+616>>2];if(b){i[a+620>>2]=b;nn(b)}b=i[a+604>>2];if(b){i[a+608>>2]=b;nn(b)}we(a+584|0);we(a+564|0);we(a+544|0)}function Zk(a,b,c){var d=0,e=0,f=0;e=J-16|0;J=e;a:{b:{if(!c){break b}i[a>>2]=b;i[e+12>>2]=0;d=0;if(!Xk(1,e+12|0,b)){break a}c:{f=i[e+12>>2];if(f){b=0;while(1){if(!Xk(1,e+8|0,i[a>>2])){break b}d=Dm(28);i[d+4>>2]=0;i[d+8>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d>>2]=d+4;i[d+12>>2]=d+16;i[d+24>>2]=i[e+8>>2];if(!Wk(a,d)){break c}i[e>>2]=d;$k(c,e);d=i[e>>2];i[e>>2]=0;if(d){qh(d+12|0,i[d+16>>2]);rh(d,i[d+4>>2]);nn(d)}b=b+1|0;if((f|0)!=(b|0)){continue}break}}d=Wk(a,c);break a}qh(d+12|0,i[d+16>>2]);rh(d,i[d+4>>2]);nn(d)}d=0}J=e+16|0;return d}function jb(a){var b=0,c=0,d=0,e=0;d=i[a+128>>2];if(d){b=i[a+132>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+128>>2]}i[a+132>>2]=d;nn(c)}d=i[a+116>>2];if(d){b=i[a+120>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+116>>2]}i[a+120>>2]=d;nn(c)}b=i[a+104>>2];if(b){i[a+108>>2]=b;nn(b)}b=i[a+92>>2];if(b){i[a+96>>2]=b;nn(b)}we(a+72|0);we(a+52|0);we(a+32|0)}function cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=i[a+60>>2];a:{if(!c){break a}i[c+4>>2]=a+48;if(!(M[i[i[c>>2]+12>>2]](c)|0)){break a}b:{d=M[i[i[a>>2]+24>>2]](a)|0;if((d|0)<1){break b}c=0;while(1){c:{f=i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2];g=M[i[i[a>>2]+20>>2]](a,c)|0;e=i[a+60>>2];if(!(M[i[i[e>>2]+8>>2]](e,i[i[f+8>>2]+(g<<2)>>2])|0)){break c}c=c+1|0;if((d|0)!=(c|0)){continue}break b}break}return 0}if(!(M[i[i[a>>2]+36>>2]](a,b)|0)){break a}if(!(M[i[i[a>>2]+40>>2]](a,b)|0)){break a}h=M[i[i[a>>2]+44>>2]](a)|0}return h|0}function wl(a,b,c){var d=0,e=0,f=0;a:{if(b>>>0<=63){b=0;d=i[a+12>>2];if(d>>>0<2){break a}c=i[c>>2];a=1;while(1){b=l[c+(b<<2)>>2]>l[c+(a<<2)>>2]?a:b;a=a+1|0;if((d|0)!=(a|0)){continue}break}break a}b=i[a+580>>2];d=32-b|0;if((d|0)>=4){c=i[a+576>>2];if((c|0)==i[a+568>>2]){return 0}d=i[c>>2];e=b+4|0;i[a+580>>2]=e;b=d<>>28|0;if((e|0)!=32){break a}i[a+580>>2]=0;i[a+576>>2]=c+4;return b}c=i[a+576>>2];e=c+4|0;if((e|0)==i[a+568>>2]){return 0}f=i[c>>2];i[a+576>>2]=e;i[a+580>>2]=b+ -28;a=60-b|0;b=i[c+4>>2]>>>a|f<>>a-d}return b}function xh(a,b,c,d){var e=0,f=0,g=0;a:{if(!b){if((d|0)<0?1:(d|0)<=0?c>>>0<0:0){return 0}d=i[a>>2];b=i[a+4>>2]-d|0;if(b>>>0>>0){rb(a,c-b|0);break a}if(b>>>0<=c>>>0){break a}i[a+4>>2]=c+d;break a}if((d|0)<0?1:(d|0)<=0?c>>>0<0:0){return 0}e=c;g=i[a>>2];f=i[a+4>>2]-g|0;b:{c:{if(0>(d|0)?1:0>=(d|0)?f>>>0>=c>>>0:0){break c}if(f>>>0>>0){rb(a,e-f|0);break b}if(f>>>0<=e>>>0){break c}i[a+4>>2]=e+g}if(!e){break a}}rn(i[a>>2],b,e)}b=a+24|0;c=b;d=b;a=i[b+4>>2];b=i[b>>2]+1|0;if(b>>>0<1){a=a+1|0}i[d>>2]=b;i[c+4>>2]=a;return 1}function wc(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;g=J-32|0;J=g;j=i[i[i[b+4>>2]+8>>2]+(d<<2)>>2];a:{b:{if((M[i[i[b>>2]+8>>2]](b)|0)!=1|c+ -1>>>0>5){break b}k=M[i[i[b>>2]+36>>2]](b)|0;h=M[i[i[b>>2]+44>>2]](b,d)|0;if(!(h?k:0)){i[a>>2]=0;break a}d=M[i[i[b>>2]+40>>2]](b,d)|0;if(d){b=i[b+44>>2];i[g+12>>2]=d;i[g+8>>2]=b;i[g+20>>2]=h;i[g+16>>2]=h+12;xc(a,c,j,e,g+8|0,f);if(!i[a>>2]){break b}break a}b=i[b+44>>2];i[g+12>>2]=k;i[g+8>>2]=b;i[g+20>>2]=h;i[g+16>>2]=h+12;yc(a,c,j,e,g+8|0,f);if(i[a>>2]){break a}}i[a>>2]=0}J=g+32|0}function hn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if($m(a,i[b+8>>2],e)){gn(b,c,d);return}a:{if($m(a,i[b>>2],e)){if(!(i[b+20>>2]!=(c|0)?i[b+16>>2]!=(c|0):0)){if((d|0)!=1){break a}i[b+32>>2]=1;return}i[b+32>>2]=d;b:{if(i[b+44>>2]==4){break b}h[b+52>>1]=0;a=i[a+8>>2];M[i[i[a>>2]+20>>2]](a,b,c,c,1,e);if(j[b+53|0]){i[b+44>>2]=3;if(!j[b+52|0]){break b}break a}i[b+44>>2]=4}i[b+20>>2]=c;i[b+40>>2]=i[b+40>>2]+1;if(i[b+36>>2]!=1|i[b+24>>2]!=2){break a}g[b+54|0]=1;return}a=i[a+8>>2];M[i[i[a>>2]+24>>2]](a,b,c,d,e)}}function Ef(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=i[a+216>>2];if((c|0)!=i[a+220>>2]){while(1){a:{c=i[o(e,144)+c>>2];if((c|0)<0){break a}f=i[a+4>>2];d=i[f+8>>2];if((c|0)>=i[f+12>>2]-d>>2){break a}c=i[d+(c<<2)>>2];if((M[i[i[c>>2]+24>>2]](c)|0)<1){break a}d=0;while(1){if((M[i[i[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((d|0)<(M[i[i[c>>2]+24>>2]](c)|0)){continue}break a}break}a=i[a+216>>2]+o(e,144)|0;return(j[a+100|0]?a+4|0:0)|0}e=e+1|0;c=i[a+216>>2];if(e>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}return 0}function hl(a,b,c){var d=0,e=0,f=0,h=0;d=J-48|0;J=d;f=Ih(a,b);if((f|0)!=(a+4|0)){bl(a,f)}f=0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=i[c>>2];e=i[c+4>>2]-h|0;if(e){rb(d,e);h=i[c>>2];c=i[d>>2]}else{c=0}pn(c,h,e);h=Gm(d+16|0,b);i[d+36>>2]=0;i[d+28>>2]=0;i[d+32>>2]=0;c=i[d>>2];e=i[d+4>>2]-c|0;b=0;a:{if(!e){break a}rb(d+28|0,e);c=i[d>>2];f=i[d+4>>2]-c|0;b=i[d+28>>2]}pn(b,c,f);cl(d+40|0,a,h,d+16|0);a=i[d+28>>2];if(a){i[d+32>>2]=a;nn(a)}if(g[d+27|0]<=-1){nn(i[d+16>>2])}a=i[d>>2];if(a){i[d+4>>2]=a;nn(a)}J=d+48|0}function Qc(a,b){var c=0,d=0;c=J-32|0;J=c;a:{b:{if(i[a+8>>2]<<5>>>0>=b>>>0){break b}i[c+24>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;if((b|0)<=-1){break a}b=(b+ -1>>>5|0)+1|0;d=Dm(b<<2);i[c+24>>2]=b;i[c+20>>2]=0;i[c+16>>2]=d;b=i[a>>2];i[c+12>>2]=0;i[c+8>>2]=b;d=i[a+4>>2];i[c+4>>2]=d&31;i[c>>2]=b+(d>>>3&536870908);Rc(c+16|0,c+8|0,c);b=i[a>>2];i[a>>2]=i[c+16>>2];i[c+16>>2]=b;d=i[a+4>>2];i[a+4>>2]=i[c+20>>2];i[c+20>>2]=d;d=i[a+8>>2];i[a+8>>2]=i[c+24>>2];i[c+24>>2]=d;if(!b){break b}nn(b)}J=c+32|0;return}Sm();x()}function Ff(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=i[a+216>>2];if((c|0)!=i[a+220>>2]){while(1){a:{c=i[o(e,144)+c>>2];if((c|0)<0){break a}f=i[a+4>>2];d=i[f+8>>2];if((c|0)>=i[f+12>>2]-d>>2){break a}c=i[d+(c<<2)>>2];if((M[i[i[c>>2]+24>>2]](c)|0)<1){break a}d=0;while(1){if((M[i[i[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((d|0)<(M[i[i[c>>2]+24>>2]](c)|0)){continue}break a}break}return(i[a+216>>2]+o(e,144)|0)+104|0}e=e+1|0;c=i[a+216>>2];if(e>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}return a+184|0}function Fb(a,b,c,d){var e=0,f=0,g=0,h=p(0),k=0,l=0,n=0;e=J-32|0;J=e;f=i[c>>2];h=m[c+4>>2];l=Kh(e+24|0);f=-1<>2];if((c|0)!=i[b>>2]){a=i[d+28>>2];while(1){g=i[c>>2];k=i[c+4>>2];h=m[l>>2];m[e+16>>2]=h*p(i[c+8>>2]-f|0);m[e+12>>2]=h*p(k-f|0);m[e+8>>2]=h*p(g-f|0);k=i[d+16>>2];g=i[k>>2];if(!j[g+84|0]){a=i[i[g+68>>2]+(a<<2)>>2]}n=a;a=i[g+40>>2];pn(i[i[g>>2]>>2]+o(n,a)|0,(e+8|0)+(i[k+4>>2]<<2)|0,a);a=i[d+28>>2]+1|0;i[d+28>>2]=a;c=c+12|0;if((c|0)!=i[b>>2]){continue}break}}J=e+32|0}function th(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=Dm(72);ab(f);a:{if((b|0)>=0){g=a+8|0;c=i[a+12>>2];h=i[a+8>>2];d=c-h>>2;b:{if((d|0)>(b|0)){break b}e=b+1|0;if(d>>>0<=b>>>0){Kf(g,e-d|0);break b}if(e>>>0>=d>>>0){break b}e=h+(e<<2)|0;if((e|0)!=(c|0)){while(1){c=c+ -4|0;d=i[c>>2];i[c>>2]=0;if(d){M[i[i[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}i[a+12>>2]=e}c=i[g>>2]+(b<<2)|0;a=i[c>>2];i[c>>2]=f;if(!a){break a}M[i[i[a>>2]+4>>2]](a);break a}M[i[i[f>>2]+4>>2]](f)}return(b^-1)>>>31|0}function tb(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}e=o(b,12);b=Dm(e);i[a>>2]=b;i[a+4>>2]=b;f=b+e|0;i[a+8>>2]=f;g=i[c>>2];d=i[c+4>>2]-g|0;h=d>>2;j=h>>>0<1073741824;k=(d|0)<1;l=d>>>2<<2;while(1){i[b+8>>2]=0;i[b>>2]=0;i[b+4>>2]=0;if(d){if(!j){break a}c=Dm(d);i[b>>2]=c;i[b+4>>2]=c;i[b+8>>2]=c+(h<<2);e=b;if(!k){c=pn(c,g,d)+l|0}i[e+4>>2]=c}b=b+12|0;if((f|0)!=(b|0)){continue}break}i[a+4>>2]=f}return}Sm();x()}Sm();x()}function Vb(a){var b=0,c=0,d=0,e=0,f=0;b=i[a+8>>2];a:{if(j[b+84|0]){break a}c=i[a+16>>2];if(!c|!j[c+84|0]){break a}d=i[b+72>>2];e=i[b+68>>2];g[c+84|0]=0;d=d-e>>2;f=i[c+68>>2];e=i[c+72>>2]-f>>2;b:{if(d>>>0>e>>>0){Wb(c+68|0,d-e|0,1968);b=i[a+8>>2];break b}if(d>>>0>=e>>>0){break b}i[c+72>>2]=f+(d<<2)}if(j[b+84|0]){break a}c=i[b+68>>2];b=i[b+72>>2]-c|0;if(!b){break a}d=b>>2;e=i[i[a+16>>2]+68>>2];b=0;while(1){f=b<<2;i[f+e>>2]=i[c+f>>2];b=b+1|0;if(b>>>0>>0){continue}break}}return i[a+16>>2]}function il(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=J-16|0;J=e;f=a+12|0;j=Ih(f,b);k=a+16|0;a:{if((j|0)!=(k|0)){break a}g=Pe(f,e+12|0,b);d=i[g>>2];if(!d){d=Dm(32);Gm(d+16|0,b);i[d+28>>2]=0;i[d+8>>2]=i[e+12>>2];i[d>>2]=0;i[d+4>>2]=0;i[g>>2]=d;b=i[i[f>>2]>>2];h=d;b:{if(!b){break b}i[f>>2]=b;h=i[g>>2]}b=h;Me(i[a+16>>2],b);a=a+20|0;i[a>>2]=i[a>>2]+1}b=i[c>>2];i[c>>2]=0;c=d+28|0;a=i[c>>2];i[c>>2]=b;if(!a){break a}qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}J=e+16|0;return(j|0)==(k|0)}function gh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;a:{c=i[a+8>>2];b:{if((c|0)<0){break b}d=i[a+4>>2];b=i[d>>2];e=i[d+4>>2]-b>>2;c:{if(c>>>0>e>>>0){hh(d,c-e|0);f=i[a+8>>2];break c}f=c;if(c>>>0>=e>>>0){break c}i[d+4>>2]=b+(c<<2);f=c}g=f;if((f|0)<1){break b}a=i[a+4>>2];b=i[a+4>>2];d=i[a>>2];a=b-d|0;e=(a|0)>-1?a:-1;b=d-b|0;b=o((e|0)<1?e:1,((b|0)>(a|0)?b:a)>>>2|0);a=0;while(1){if((a|0)==(b|0)){break a}i[d+(a<<2)>>2]=a;a=a+1|0;if((a|0)<(g|0)){continue}break}}return(c^-1)>>>31|0}Tm();x()}function bi(a,b){var c=0,d=0;c=J-96|0;J=c;qn(c+16|0,0,76);i[c+92>>2]=-1;i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;a:{if(ci(c+16|0,a,c)){a=i[b>>2];if(a){i[b+4>>2]=a;nn(a)}i[b>>2]=i[c>>2];i[b+4>>2]=i[c+4>>2];i[b+8>>2]=i[c+8>>2];d=i[c+84>>2];break a}a=i[c>>2];if(!a){break a}i[c+4>>2]=a;nn(a)}a=i[c+72>>2];if(a){nn(a)}a=i[c+48>>2];if(a){i[c+52>>2]=a;nn(a)}a=i[c+36>>2];if(a){i[c+40>>2]=a;nn(a)}a=i[c+24>>2];if(a){i[c+28>>2]=a;nn(a)}a=i[c+20>>2];i[c+20>>2]=0;if(a){Qf(c+16|4,a)}J=c+96|0;return d}function Kk(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=14760;b=i[a+68>>2];if(b){i[a+72>>2]=b;nn(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}b=i[a+44>>2];if(b){i[a+48>>2]=b;nn(b)}b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){Sa(b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}b=i[a+4>>2];i[a+4>>2]=0;if(b){lh(b)}return a|0}function _f(a){var b=0,c=0,d=0,e=0;c=1;d=i[a+140>>2];a:{if((d|0)<1){break a}b=d<<4;c=Dm((d|0)!=(d&268435455)?-1:b|4);i[c>>2]=d;c=c+4|0;d=c+b|0;b=c;while(1){b=ze(b)+16|0;if((d|0)!=(b|0)){continue}break}e=i[a+136>>2];i[a+136>>2]=c;if(e){d=e+ -4|0;c=i[d>>2];if(c){b=e+(c<<4)|0;while(1){b=b+ -16|0;if((e|0)!=(b|0)){continue}break}}nn(d)}c=1;if(i[a+140>>2]<1){break a}b=0;while(1){c=Ae(i[a+136>>2]+(b<<4)|0,a);if(!c){break a}b=b+1|0;if((b|0)>2]){continue}break}}return c}function ei(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a>>2];a=i[e+4>>2];d=i[e+8>>2];if(a>>>0>>0){i[a>>2]=i[b>>2];i[e+4>>2]=a+4;return}a:{f=i[e>>2];g=a-f|0;a=g>>2;c=a+1|0;if(c>>>0<1073741824){h=a<<2;d=d-f|0;a=d>>1;c=d>>2>>>0<536870911?a>>>0>>0?c:a:1073741823;a=0;b:{if(!c){break b}if(c>>>0>=1073741824){break a}a=Dm(c<<2)}d=h+a|0;i[d>>2]=i[b>>2];b=a+(c<<2)|0;c=d+4|0;if((g|0)>=1){pn(a,f,g)}i[e+8>>2]=b;i[e+4>>2]=c;i[e>>2]=a;if(f){nn(f)}return}Sm();x()}Ba(14112);x()}function Kb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a=i[a+4>>2];if(a){c=j[b+11|0];d=c<<24>>24<0;g=d?i[b>>2]:b;b=d?i[b+4>>2]:c;while(1){c=j[a+27|0];d=c<<24>>24<0;c=d?i[a+20>>2]:c;h=c>>>0>>0;a:{b:{f=h?c:b;c:{if(f){e=a+16|0;d=d?i[e>>2]:e;e=Nl(g,d,f);d:{if(!e){if(b>>>0>=c>>>0){break d}break a}if((e|0)<=-1){break a}}c=Nl(d,g,f);if(!c){break c}if((c|0)<=-1){break b}return 1}if(b>>>0>>0){break a}}if(h){break b}return 1}a=a+4|0}a=i[a>>2];if(a){continue}break}}return 0}function zk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(14288);x()}function ye(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(10988);x()}function hh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(13352);x()}function na(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(1244);x()}function Ra(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(1496);x()}function _h(a,b){var c=0,d=0,e=0,f=0;c=J-32|0;J=c;d=xn(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){f=d+16&-16;e=Dm(f);i[c+24>>2]=f|-2147483648;i[c+16>>2]=e;i[c+20>>2]=d;break b}g[c+27|0]=d;e=c+16|0;if(!d){break a}}pn(e,b,d)}g[d+e|0]=0;g[c+4|0]=0;i[c>>2]=1701667182;g[c+11|0]=4;d=i[a+4>>2];b=-1;c:{if(!d){break c}d=_k(d,c,c+16|0);b=-1;if(!d){break c}b=ol(a,i[d+24>>2])}if(g[c+11|0]<=-1){nn(i[c>>2])}if(g[c+27|0]<=-1){nn(i[c+16>>2])}J=c+32|0;return b}Fm();x()}function bf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>3;d=g+b|0;if(d>>>0<536870912){c=0;g=g<<3;e=e-f|0;j=e>>2;d=e>>3>>>0<268435455?j>>>0>>0?d:j:536870911;if(d){if(d>>>0>=536870912){break a}c=Dm(d<<3)}b=b<<3;b=qn(c+g|0,0,b)+b|0;d=(d<<3)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(11186);x()}function ii(a,b,c){var d=0,e=0,f=0,h=0,j=0;d=J-32|0;J=d;f=g[a+24|0];e=i[3527];i[d+24>>2]=i[3526];i[d+28>>2]=e;e=i[3525];i[d+16>>2]=i[3524];i[d+20>>2]=e;a:{e=$c(a,b,f,d+16|0);if(e){i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a=0;if(f){if((f|0)<=-1){break a}b=f<<2;a=Dm(b);i[d>>2]=a;h=(f<<2)+a|0;i[d+8>>2]=h;pn(a,d+16|0,b);i[d+4>>2]=h;j=h}b=i[c>>2];if(b){i[c+4>>2]=b;nn(b);h=i[d+8>>2];j=i[d+4>>2];a=i[d>>2]}i[c+8>>2]=h;i[c+4>>2]=j;i[c>>2]=a}J=d+32|0;return e}Sm();x()}function hc(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=2048;b=i[a+60>>2];i[a+60>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}d=i[a+36>>2];if(d){b=d;c=i[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+36>>2]}b=e;i[a+40>>2]=d;nn(b)}i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;nn(b)}return a|0}function Rl(a,b){a:{if(a){if(b>>>0<=127){break a}b:{if(!i[i[4224]>>2]){if((b&-128)==57216){break a}break b}if(b>>>0<=2047){g[a+1|0]=b&63|128;g[a|0]=b>>>6|192;return 2}if(!((b&-8192)!=57344?b>>>0>=55296:0)){g[a+2|0]=b&63|128;g[a|0]=b>>>12|224;g[a+1|0]=b>>>6&63|128;return 3}if(b+ -65536>>>0<=1048575){g[a+3|0]=b&63|128;g[a|0]=b>>>18|240;g[a+2|0]=b>>>6&63|128;g[a+1|0]=b>>>12&63|128;return 4}}i[4312]=25;a=-1}else{a=1}return a}g[a|0]=b;return 1}function ic(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=2048;b=i[a+60>>2];i[a+60>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}d=i[a+36>>2];if(d){b=d;c=i[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+36>>2]}b=e;i[a+40>>2]=d;nn(b)}i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;nn(b)}nn(a)}function ug(a){var b=0,c=0,d=0,e=0;b=i[a+196>>2];if(b){i[a+200>>2]=b;nn(b)}b=i[a+184>>2];if(b){c=i[a+188>>2];d=b;a:{if((b|0)==(c|0)){break a}while(1){d=c+ -12|0;e=i[d>>2];if(e){i[c+ -8>>2]=e;nn(e)}c=d;if((c|0)!=(b|0)){continue}break}d=i[a+184>>2]}i[a+188>>2]=b;nn(d)}b=i[a+156>>2];if(b){i[a+160>>2]=b;nn(b)}b=i[a+136>>2];i[a+136>>2]=0;if(b){c=b+ -4|0;a=i[c>>2];if(a){a=b+(a<<4)|0;while(1){a=a+ -16|0;if((b|0)!=(a|0)){continue}break}}nn(c)}}function Ph(a,b,c){var d=0,e=0,f=0,h=0;d=J-32|0;J=d;e=xn(b);if(e>>>0<4294967280){a:{b:{if(e>>>0>=11){h=e+16&-16;f=Dm(h);i[d+24>>2]=h|-2147483648;i[d+16>>2]=f;i[d+20>>2]=e;break b}g[d+27|0]=e;f=d+16|0;if(!e){break a}}pn(f,b,e)}g[e+f|0]=0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;el(a,d+16|0,d);a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c>>2]=i[d>>2];i[c+4>>2]=i[d+4>>2];i[c+8>>2]=i[d+8>>2];if(g[d+27|0]<=-1){nn(i[d+16>>2])}J=d+32|0;return}Fm();x()}function va(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=J-16|0;J=d;e=i[a+4>>2];a:{if((e|0)==-1){break a}c=i[b+20>>2];if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>0:0){break a}fa(b,i[b+4>>2],i[a+8>>2],i[a+12>>2]);c=i[b+20>>2];if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>=1:0){break a}c=a+20|0;fa(b,i[b+4>>2],c,c+4|0);c=i[b+20>>2];f=i[b+16>>2];g[d+15|0]=i[a+4>>2];if((c|0)>0?1:(c|0)>=0?f>>>0>0:0){break a}fa(b,i[b+4>>2],d+15|0,d+16|0)}J=d+16|0;return(e|0)!=-1|0}function pi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>1>>>0>=b>>>0){if(b){b=b<<1;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];g=c-f|0;h=g>>1;d=h+b|0;if((d|0)>-1){c=0;e=e-f|0;d=e>>1>>>0<1073741823?e>>>0>>0?d:e:2147483647;if(d){if((d|0)<=-1){break a}c=Dm(d<<1)}b=b<<1;b=qn((h<<1)+c|0,0,b)+b|0;d=(d<<1)+c|0;if((g|0)>=1){pn(c,f,g)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(14112);x()}function Ig(a,b){var c=0,d=0,e=0,f=0,g=0;d=i[a+4>>2];a=i[d+4>>2];if((a|0)!=i[d+8>>2]){i[a>>2]=b;i[d+4>>2]=a+4;return}a:{f=i[d>>2];g=a-f|0;e=g>>2;c=e+1|0;if(c>>>0<1073741824){a=g>>1;c=e>>>0<536870911?a>>>0>>0?c:a:1073741823;a=0;b:{if(!c){break b}if(c>>>0>=1073741824){break a}a=Dm(c<<2)}e=a+(e<<2)|0;i[e>>2]=b;b=a+(c<<2)|0;c=e+4|0;if((g|0)>=1){pn(a,f,g)}i[d+8>>2]=b;i[d+4>>2]=c;i[d>>2]=a;if(f){nn(f)}return}Sm();x()}Ba(12220);x()}function Fk(a,b){var c=0,d=0,e=0,f=0,g=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){i[c>>2]=i[b>>2];i[a+4>>2]=c+4;return}a:{f=i[a>>2];g=c-f|0;e=g>>2;d=e+1|0;if(d>>>0<1073741824){c=g>>1;d=e>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}c=Dm(d<<2)}e=c+(e<<2)|0;i[e>>2]=i[b>>2];b=c+(d<<2)|0;d=e+4|0;if((g|0)>=1){pn(c,f,g)}i[a+8>>2]=b;i[a+4>>2]=d;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(14288);x()}function $f(a,b){var c=0,d=0,e=0,f=0,g=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){i[c>>2]=i[b>>2];i[a+4>>2]=c+4;return}a:{f=i[a>>2];g=c-f|0;e=g>>2;d=e+1|0;if(d>>>0<1073741824){c=g>>1;d=e>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}c=Dm(d<<2)}e=c+(e<<2)|0;i[e>>2]=i[b>>2];b=c+(d<<2)|0;d=e+4|0;if((g|0)>=1){pn(c,f,g)}i[a+8>>2]=b;i[a+4>>2]=d;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(12220);x()}function Ga(a,b){var c=0;g[a+24|0]=j[b+24|0];i[a+28>>2]=i[b+28>>2];g[a+32|0]=j[b+32|0];c=i[b+44>>2];i[a+40>>2]=i[b+40>>2];i[a+44>>2]=c;c=i[b+52>>2];i[a+48>>2]=i[b+48>>2];i[a+52>>2]=c;i[a+56>>2]=i[b+56>>2];c=i[b+12>>2];i[a+8>>2]=i[b+8>>2];i[a+12>>2]=c;c=i[b+20>>2];i[a+16>>2]=i[b+16>>2];i[a+20>>2]=c;i[a+60>>2]=i[b+60>>2];b=i[b>>2];if(!b){i[a>>2]=0;return 1}a=i[a>>2];if(!a){return 0}c=a;a=i[b>>2];xh(c,a,i[b+4>>2]-a|0,0);return 1}function Ek(a,b,c){var d=0,e=0,f=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;a:{b:{if(!b){break b}if((b|0)<=-1){break a}e=b+ -1>>>5|0;f=e+1|0;d=Dm(f<<2);i[a+8>>2]=f;i[a>>2]=d;f=j[c|0];i[a+4>>2]=b;i[(b>>>0<33?d:d+(e<<2)|0)>>2]=0;c=b>>>5|0;e=c<<2;if(f){d=qn(d,255,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;i[c>>2]=i[c>>2]|-1>>>32-b;return a}d=qn(d,0,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;i[c>>2]=i[c>>2]&(-1>>>32-b^-1)}return a}Sm();x()}function xk(a,b){var c=0,d=0,e=0;d=J-16|0;J=d;e=Dm(88);c=e;i[c>>2]=0;i[c+4>>2]=0;i[c+64>>2]=0;i[c+68>>2]=0;i[c+56>>2]=0;i[c+48>>2]=0;i[c+52>>2]=0;i[c+40>>2]=0;i[c+44>>2]=0;i[c+32>>2]=0;i[c+36>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+72>>2]=0;i[c+76>>2]=0;i[c+80>>2]=0;i[c+84>>2]=0;i[c+60>>2]=c;a:{if(yk(c,b)){i[a>>2]=e;break a}i[a>>2]=0;i[d+8>>2]=0;Qf(d+8|0,e)}J=d+16|0}function Xb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((M[i[i[b>>2]+20>>2]](b)|0)>=1){while(1){c=ll(i[i[a+4>>2]+4>>2],M[i[i[b>>2]+24>>2]](b,d)|0);if((c|0)==-1){return 0}a:{e=i[a+4>>2];if(j[e+36|0]<=1){if(M[i[i[b>>2]+28>>2]](b,i[i[i[e+4>>2]+8>>2]+(c<<2)>>2])|0){break a}return 0}c=ph(e,c);if(!c){return 0}if(M[i[i[b>>2]+28>>2]](b,c)|0){break a}return 0}d=d+1|0;if((d|0)<(M[i[i[b>>2]+20>>2]](b)|0)){continue}break}}return 1}function Zg(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=fm(b)}d=i[a+4>>2];if(c>>>0>d>>>0){_g(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(Jn(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=fm(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}_g(a,b)}}function Ql(a,b){var c=0;c=(b|0)!=0;a:{b:{c:{if(!b|!(a&3)){break c}while(1){if(!j[a|0]){break b}a=a+1|0;b=b+ -1|0;c=(b|0)!=0;if(!b){break c}if(a&3){continue}break}}if(!c){break a}}d:{if(!j[a|0]|b>>>0<4){break d}while(1){c=i[a>>2];if((c^-1)&c+ -16843009&-2139062144){break d}a=a+4|0;b=b+ -4|0;if(b>>>0>3){continue}break}}if(!b){break a}while(1){if(!j[a|0]){return a}a=a+1|0;b=b+ -1|0;if(b){continue}break}}return 0}function Hh(a,b){var c=0,d=0,e=0,f=0;d=J-16|0;J=d;Qm(d);e=Pe(a,d+12|0,b);c=i[e>>2];if(!c){c=Dm(40);Gm(c+16|0,b);i[c+36>>2]=0;i[c+28>>2]=0;i[c+32>>2]=0;i[c+8>>2]=i[d+12>>2];i[c>>2]=0;i[c+4>>2]=0;i[e>>2]=c;b=i[i[a>>2]>>2];f=c;a:{if(!b){break a}i[a>>2]=b;f=i[e>>2]}b=f;Me(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}a=c+28|0;if(g[c+39|0]<=-1){nn(i[a>>2])}b=i[d+4>>2];i[a>>2]=i[d>>2];i[a+4>>2]=b;i[a+8>>2]=i[d+8>>2];J=d+16|0}function cf(a,b,c){var d=0,e=0,f=0,h=0,j=0;a:{if(a>>>0>10){break a}e=i[c+16>>2];f=i[c+12>>2];d=i[c+20>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=e>>>0:0){break a}f=g[e+i[c>>2]|0];e=e+1|0;if(e>>>0<1){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;e=b;h=b;d=f;b:{if((d|0)<=-1){if(!cf(a+1|0,b,c)){break a}a=i[b+4>>2];b=i[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}i[h>>2]=b;i[e+4>>2]=a;j=1}return j}function Dh(a,b,c){var d=0,e=0,f=0,h=0,j=0;a:{if(a>>>0>10){break a}e=i[c+16>>2];f=i[c+12>>2];d=i[c+20>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=e>>>0:0){break a}f=g[e+i[c>>2]|0];e=e+1|0;if(e>>>0<1){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;e=b;h=b;d=f;b:{if((d|0)<=-1){if(!Dh(a+1|0,b,c)){break a}a=i[b+4>>2];b=i[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}i[h>>2]=b;i[e+4>>2]=a;j=1}return j}function Yf(a,b){var c=0,d=0,e=0,f=0;d=i[a+12>>2];c=i[a+16>>2]-d>>2;a:{if(c>>>0>>0){Ra(a+12|0,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+16>>2]=d+(b<<2)}b:{c=i[a>>2];c:{if(i[a+8>>2]-c>>2>>>0>=b>>>0){break c}if(b>>>0>=1073741824){break b}d=i[a+4>>2];e=b<<2;b=Dm(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>=1){pn(b,c,d)}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b;if(!c){break c}nn(c)}return}Ba(12220);x()}function yb(a){ze(a);ze(a+16|0);ze(a+32|0);ze(a+48|0);ze(a- -64|0);ze(a+80|0);ze(a+96|0);ze(a+112|0);ze(a+128|0);ze(a+144|0);ze(a+160|0);ze(a+176|0);ze(a+192|0);ze(a+208|0);ze(a+224|0);ze(a+240|0);ze(a+256|0);ze(a+272|0);ze(a+288|0);ze(a+304|0);ze(a+320|0);ze(a+336|0);ze(a+352|0);ze(a+368|0);ze(a+384|0);ze(a+400|0);ze(a+416|0);ze(a+432|0);ze(a+448|0);ze(a+464|0);ze(a+480|0);ze(a+496|0)}function tn(a,b,c){var d=0,e=0,f=0;d=i[c+16>>2];a:{if(!d){if(sn(c)){break a}d=i[c+16>>2]}f=i[c+20>>2];if(d-f>>>0>>0){return M[i[c+36>>2]](c,a,b)|0}b:{if(g[c+75|0]<0){d=0;break b}e=b;while(1){d=e;if(!d){d=0;break b}e=d+ -1|0;if(j[e+a|0]!=10){continue}break}e=M[i[c+36>>2]](c,a,d)|0;if(e>>>0>>0){break a}a=a+d|0;b=b-d|0;f=i[c+20>>2]}pn(f,a,b);i[c+20>>2]=i[c+20>>2]+b;e=b+d|0}return e}function Ag(a,b){var c=0,d=0,e=0;a:{if((a|0)!=(b|0)){e=a;c=i[b+4>>2];d=0;b:{if(!c){break b}c:{if(c>>>0<=i[a+8>>2]<<5>>>0){d=i[a>>2];break c}d=i[a>>2];if(d){nn(d);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;c=i[b+4>>2]}if((c|0)<=-1){break a}c=(c+ -1>>>5|0)+1|0;d=Dm(c<<2);i[a+8>>2]=c;i[a+4>>2]=0;i[a>>2]=d;c=i[b+4>>2]}rn(d,i[b>>2],(c+ -1>>>3&536870908)+4|0);d=i[b+4>>2]}i[e+4>>2]=d}return}Sm();x()}function el(a,b,c){var d=0,e=0,f=0;a:{b=Ih(a,b);b:{if((b|0)==(a+4|0)){break b}a=i[b+28>>2];d=i[b+32>>2];if((a|0)==(d|0)){break b}a=d-a|0;if(a&3){break b}d=a>>>2|0;e=i[c+4>>2];a=i[c>>2];f=e-a>>2;c:{if(d>>>0>f>>>0){Ra(c,d-f|0);a=i[c>>2];e=i[c+4>>2];break c}if(d>>>0>=f>>>0){break c}e=(d<<2)+a|0;i[c+4>>2]=e}if((a|0)==(e|0)){break a}c=a;a=i[b+28>>2];pn(c,a,i[b+32>>2]-a|0)}return}Tm();x()}function Lf(a,b){var c=0;c=i[b+8>>2];i[a+12>>2]=i[b+4>>2];i[a+16>>2]=c;i[a+28>>2]=i[b+20>>2];c=i[b+16>>2];i[a+20>>2]=i[b+12>>2];i[a+24>>2]=c;Ag(a+32|0,b+24|0);Ag(a+44|0,b+36|0);if((a+8|0)==(b|0)){i[a+92>>2]=i[b+84>>2];return}Ma(a+56|0,i[b+48>>2],i[b+52>>2]);Ma(a+68|0,i[b+60>>2],i[b- -64>>2]);Ma(a+80|0,i[b+72>>2],i[b+76>>2]);i[a+92>>2]=i[b+84>>2];ua(a+96|0,i[b+88>>2],i[b+92>>2])}function bl(a,b){var c=0,d=0,e=0;c=i[b+4>>2];a:{if(!c){d=i[b+8>>2];if(i[d>>2]==(b|0)){break a}e=b+8|0;while(1){c=i[e>>2];e=c+8|0;d=i[c+8>>2];if((c|0)!=i[d>>2]){continue}break}break a}while(1){d=c;c=i[c>>2];if(c){continue}break}}if(i[a>>2]==(b|0)){i[a>>2]=d}i[a+8>>2]=i[a+8>>2]+ -1;jl(i[a+4>>2],b);a=i[b+28>>2];if(a){i[b+32>>2]=a;nn(a)}if(g[b+27|0]<=-1){nn(i[b+16>>2])}nn(b)}function xf(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11360;b=i[a+48>>2];i[a+48>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=13492;b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}return a|0}function yf(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11360;b=i[a+48>>2];i[a+48>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=13492;b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}nn(a)}function sh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0;d=i[a+32>>2];c=d;e=i[c+8>>2];f=i[c+12>>2];b=i[c+20>>2];h=e;e=i[c+16>>2];c=e+4|0;if(c>>>0<4){b=b+1|0}g=c;c=b;a:{if((f|0)<(b|0)?1:(f|0)<=(b|0)?h>>>0>>0:0){break a}b=e+i[d>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[d+16>>2]=g;i[d+20>>2]=c;if((b|0)<0){break a}i[i[a+4>>2]+80>>2]=b;k=1}return k|0}function Qh(a,b){var c=0,d=0,e=0,f=0,h=0;c=J-32|0;J=c;i[c+24>>2]=0;i[c+28>>2]=0;d=xn(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){e=d+16&-16;f=Dm(e);i[c+16>>2]=e|-2147483648;i[c+8>>2]=f;i[c+12>>2]=d;e=c+8|0;break b}g[c+19|0]=d;e=c+8|0;f=e;if(!d){break a}}pn(f,b,d)}g[d+f|0]=0;fl(a,c+8|0,c+24|0);h=n[c+24>>3];if(g[e+11|0]<=-1){nn(i[c+8>>2])}J=c+32|0;return h}Fm();x()}function Km(a,b,c,d,e,f,h){var j=0,k=0,l=0;j=J-16|0;J=j;if((b^-1)+ -17>>>0>=c>>>0){k=sm(a);a:{if(2147483623>b>>>0){i[j+8>>2]=b<<1;i[j+12>>2]=b+c;c=xm(i[mm(j+12|0,j+8|0)>>2]);break a}c=-18}l=c+1|0;c=ym(l);if(f){lm(c,h,f)}d=d-e|0;h=d;if(d){lm(c+f|0,e+k|0,h)}if((b|0)!=10){nn(k)}zm(a,c);Am(a,l);b=a;a=d+f|0;vm(b,a);g[j+7|0]=0;um(a+c|0,j+7|0);J=j+16|0;return}Fm();x()}function Rh(a,b,c){var d=0,e=0,f=0,h=0;d=J-16|0;J=d;e=xn(c);if(e>>>0<4294967280){a:{b:{if(e>>>0>=11){h=e+16&-16;f=Dm(h);i[d+8>>2]=h|-2147483648;i[d>>2]=f;i[d+4>>2]=e;break b}g[d+11|0]=e;f=d;if(!e){break a}}pn(f,c,e)}g[e+f|0]=0;a=a+16|0;c=0;c:{if(!gl(b,d,a)){break c}c=i[a>>2];if(g[a+11|0]<=-1){break c}c=a}if(g[d+11|0]<=-1){nn(i[d>>2])}J=d+16|0;return c}Fm();x()}function uh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=i[a+32>>2];b=d;f=i[b+12>>2];g=i[b+8>>2];h=f;c=i[b+20>>2];b=i[b+16>>2];e=b+4|0;if(e>>>0<4){c=c+1|0}if((h|0)>(c|0)?1:(h|0)>=(c|0)?g>>>0>=e>>>0:0){b=b+i[d>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[d+16>>2]=e;i[d+20>>2]=c;i[i[a+4>>2]+80>>2]=b}return((f|0)>(c|0)?1:(f|0)>=(c|0)?g>>>0>=e>>>0:0)|0}function rb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>>0>=b>>>0){if(b){c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}f=i[a>>2];g=c-f|0;d=g+b|0;if((d|0)>-1){c=0;e=e-f|0;h=e<<1;d=e>>>0<1073741823?h>>>0>>0?d:h:2147483647;if(d){c=Dm(d)}d=c+d|0;b=qn(c+g|0,0,b)+b|0;if((g|0)>=1){pn(c,f,g)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}function fn(a,b,c,d){g[a+53|0]=1;a:{if(i[a+4>>2]!=(c|0)){break a}g[a+52|0]=1;c=i[a+16>>2];if(!c){i[a+36>>2]=1;i[a+24>>2]=d;i[a+16>>2]=b;if((d|0)!=1|i[a+48>>2]!=1){break a}g[a+54|0]=1;return}if((b|0)==(c|0)){c=i[a+24>>2];if((c|0)==2){i[a+24>>2]=d;c=d}if(i[a+48>>2]!=1|(c|0)!=1){break a}g[a+54|0]=1;return}g[a+54|0]=1;i[a+36>>2]=i[a+36>>2]+1}}function De(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;if(!b){i[c>>2]=0;return}g=0-j[a+12|0]&255;e=i[a+8>>2];while(1){h=d<<1;a:{if(e>>>0>4095){break a}d=i[a+4>>2];if((d|0)<1){break a}d=d+ -1|0;i[a+4>>2]=d;e=j[d+i[a>>2]|0]|e<<8}f=e&255;d=f>>>0>>0;k=f;f=o(e>>>8|0,g);e=d?k+f|0:(e-g|0)-f|0;i[a+8>>2]=e;d=d|h;b=b+ -1|0;if(b){continue}break}i[c>>2]=d}function gi(a,b,c){var d=0,e=0,f=0,g=0;a:{if(l[a+80>>2]>65535){break a}f=i[a+96>>2];d=i[a+100>>2]-f|0;a=(d|0)/12|0;e=o(a,6);g=(e|0)==(b|0);if(!d|(b|0)!=(e|0)){break a}g=1;e=a>>>0>1?a:1;a=0;while(1){b=o(a,6)+c|0;d=o(a,12)+f|0;h[b>>1]=i[d>>2];h[b+2>>1]=i[d+4>>2];h[b+4>>1]=i[d+8>>2];a=a+1|0;if((e|0)!=(a|0)){continue}break}}return g}function Oh(a,b){var c=0,d=0,e=0,f=0;c=J-16|0;J=c;i[c+12>>2]=0;d=xn(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){e=d+16&-16;f=Dm(e);i[c+8>>2]=e|-2147483648;i[c>>2]=f;i[c+4>>2]=d;e=c;break b}g[c+11|0]=d;e=c;f=c;if(!d){break a}}pn(f,b,d)}g[d+f|0]=0;dl(a,c,c+12|0);a=i[c+12>>2];if(g[e+11|0]<=-1){nn(i[c>>2])}J=c+16|0;return a}Fm();x()}function Mf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=J-16|0;J=d;i[a+4>>2]=b;b=i[b+64>>2];e=i[b>>2];b=i[b+4>>2];g[d+15|0]=0;Jf(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=i[a+4>>2];e=i[b+56>>2];b=i[b+52>>2];g[d+14|0]=0;Jf(a+36|0,e-b>>2,d+14|0);b=i[c+12>>2];i[a+16>>2]=i[c+8>>2];i[a+20>>2]=b;b=i[c+4>>2];i[a+8>>2]=i[c>>2];i[a+12>>2]=b;J=d+16|0}function xn(a){var b=0,c=0,d=0;a:{b:{b=a;if(!(b&3)){break b}if(!j[a|0]){return 0}while(1){b=b+1|0;if(!(b&3)){break b}if(j[b|0]){continue}break}break a}while(1){c=b;b=b+4|0;d=i[c>>2];if(!((d^-1)&d+ -16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=j[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function oc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=J-48|0;J=e;a:{if((d|0)!=1){i[a>>2]=0;break a}d=i[b+4>>2];b=i[b+12>>2];i[e+40>>2]=0;f=e+32|0;i[f>>2]=0;i[f+4>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;pc(e,c,b,d,e+8|0);b=i[f>>2];if(b){i[e+36>>2]=b;nn(b)}i[a>>2]=i[e>>2]}J=e+48|0}function an(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=J+ -64|0;J=d;e=1;a:{if($m(a,b,0)){break a}e=0;if(!b){break a}b=bn(b);e=0;if(!b){break a}qn(d+8|4,0,52);i[d+56>>2]=1;i[d+20>>2]=-1;i[d+16>>2]=a;i[d+8>>2]=b;M[i[i[b>>2]+28>>2]](b,d+8|0,i[c>>2],1);a=i[d+32>>2];if((a|0)==1){i[c>>2]=i[d+24>>2]}e=(a|0)==1}a=e;J=d- -64|0;return a|0}function ec(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=M[i[i[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<1){break a}d=i[i[a+36>>2]>>2];f=a+48|0;c=0;if(!(M[i[i[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=i[i[a+36>>2]+(c<<2)>>2];if(M[i[i[g>>2]+20>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function dc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=M[i[i[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<1){break a}d=i[i[a+36>>2]>>2];f=a+48|0;c=0;if(!(M[i[i[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=i[i[a+36>>2]+(c<<2)>>2];if(M[i[i[g>>2]+16>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function rc(a,b,c){var d=0,e=0,f=0,h=0;d=J-80|0;J=d;e=Ea(d+16|0);f=i[i[a+8>>2]+56>>2];h=c<<24>>24;c=o(Fh(5),c);Fa(e,f,h,5,0,c,c>>31);c=Dm(96);e=Ja(c,e);i[d+8>>2]=c;g[c+84|0]=1;i[c+72>>2]=i[c+68>>2];Ka(e,b);i[d+8>>2]=0;b=i[a+16>>2];i[a+16>>2]=c;a:{if(!b){break a}Sa(b);a=i[d+8>>2];i[d+8>>2]=0;if(!a){break a}Sa(a)}J=d+80|0}function Qe(a,b,c,d){var e=0,f=0,g=0,h=0;if(!a){return 1}e=i[c+16>>2];g=i[c+12>>2];f=i[c+20>>2];a:{if((g|0)<(f|0)?1:(g|0)<=(f|0)?l[c+8>>2]<=e>>>0:0){break a}g=j[e+i[c>>2]|0];e=e+1|0;if(e>>>0<1){f=f+1|0}i[c+16>>2]=e;i[c+20>>2]=f;b:{switch(g|0){case 0:return Re(a,b,c,d);case 1:break b;default:break a}}h=Se(a,c,d)}return h}function jn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if($m(a,i[b+8>>2],e)){gn(b,c,d);return}a:{if(!$m(a,i[b>>2],e)){break a}if(!(i[b+20>>2]!=(c|0)?i[b+16>>2]!=(c|0):0)){if((d|0)!=1){break a}i[b+32>>2]=1;return}i[b+20>>2]=c;i[b+32>>2]=d;i[b+40>>2]=i[b+40>>2]+1;if(!(i[b+36>>2]!=1|i[b+24>>2]!=2)){g[b+54|0]=1}i[b+44>>2]=4}}function Pk(a){i[a>>2]=0;i[a+4>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;g[a+24|0]=1;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+36>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;i[a+80>>2]=0;i[a+84>>2]=0;i[a+88>>2]=0;i[a+92>>2]=0;i[a+68>>2]=a}function dm(a){var b=0,c=0,d=0,e=0,f=0;while(1){b=a;a=b+1|0;c=g[b|0];if((c|0)==32|c+ -9>>>0<5){continue}break}a:{b:{c:{c=g[b|0];switch(c+ -43|0){case 0:break b;case 2:break c;default:break a}}e=1}c=g[a|0];b=a;f=e}if(Pl(c)){while(1){d=(o(d,10)-g[b|0]|0)+48|0;a=g[b+1|0];b=b+1|0;if(Pl(a)){continue}break}}return f?d:0-d|0}function di(a,b){var c=0,d=0,e=0,f=0;c=J-16|0;J=c;i[a+68>>2]=0;i[a+72>>2]=0;i[a>>2]=b;Tk(c+8|0,b);d=i[c+8>>2];i[c+8>>2]=0;e=i[a+4>>2];i[a+4>>2]=d;if(e){f=a+4|0;Qf(f,e);d=i[c+8>>2];i[c+8>>2]=0;if(d){Qf(c+8|0,d)}d=i[f>>2]}if(d){e=i[b+100>>2];b=i[b+96>>2];g[c+7|0]=0;Jf(a+56|0,(e-b|0)/12|0,c+7|0)}J=c+16|0;return(d|0)!=0}function zg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=J-16|0;J=d;i[a+4>>2]=b;e=i[b>>2];b=i[b+4>>2];g[d+15|0]=0;Jf(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=i[a+4>>2];e=i[b+28>>2];b=i[b+24>>2];g[d+14|0]=0;Jf(a+36|0,e-b>>2,d+14|0);b=i[c+12>>2];i[a+16>>2]=i[c+8>>2];i[a+20>>2]=b;b=i[c+4>>2];i[a+8>>2]=i[c>>2];i[a+12>>2]=b;J=d+16|0}function ah(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!ah(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function af(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!af(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Xk(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Xk(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Qa(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Qa(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Pf(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Pf(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Nc(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Nc(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Eb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Eb(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Be(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Be(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function wk(a){var b=0;i[a>>2]=0;i[a+4>>2]=0;i[a+56>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+32>>2]=0;i[a+36>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;b=a- -64|0;i[b>>2]=0;i[b+4>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;i[a+80>>2]=0;i[a+84>>2]=0;i[a+60>>2]=a}function lh(a){var b=0,c=0,d=0,e=0;if(a){d=i[a+24>>2];if(d){b=d;c=i[a+28>>2];e=b;a:{if((c|0)==(b|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){qh(b+12|0,i[b+16>>2]);rh(b,i[b+4>>2]);nn(b)}if((c|0)!=(d|0)){continue}break}e=i[a+24>>2]}b=e;i[a+28>>2]=d;nn(b)}qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}}function Nh(a,b){var c=0,d=0,e=0,f=0;c=J-16|0;J=c;d=xn(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){e=d+16&-16;f=Dm(e);i[c+8>>2]=e|-2147483648;i[c>>2]=f;i[c+4>>2]=d;e=c;break b}g[c+11|0]=d;e=c;f=c;if(!d){break a}}pn(f,b,d)}g[d+f|0]=0;a=Kb(a,c);if(g[e+11|0]<=-1){nn(i[c>>2])}J=c+16|0;return(a|0)!=0}Fm();x()}function sf(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=13492;b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}return a|0}function Mk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=J-16|0;J=d;e=i[c>>2];i[c>>2]=0;i[d+8>>2]=e;ql(a,b,d+8|0);c=i[d+8>>2];i[d+8>>2]=0;if(c){Sa(c)}e=i[a+84>>2];c=i[a+88>>2]-e>>2;a:{if((c|0)>(b|0)){break a}b=b+1|0;if(b>>>0>c>>>0){Nk(a+84|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}i[a+88>>2]=e+(b<<2)}J=d+16|0}function ga(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,k=0;h=i[c+8>>2];f=i[c+16>>2];g=i[c+12>>2];d=g;e=i[c+20>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?h>>>0>f>>>0:0){b=j[f+i[c>>2]|0];d=e;k=f+1|0;if(k>>>0<1){d=d+1|0}i[c+16>>2]=k;i[c+20>>2]=d;i[a+4>>2]=b}return((g|0)>(e|0)?1:(g|0)>=(e|0)?h>>>0>f>>>0:0)|0}function Om(a,b,c,d,e){var f=0,g=0,h=0;f=J-16|0;J=f;if(-17-b>>>0>=c>>>0){g=sm(a);a:{if(2147483623>b>>>0){i[f+8>>2]=b<<1;i[f+12>>2]=b+c;c=xm(i[mm(f+12|0,f+8|0)>>2]);break a}c=-18}h=c+1|0;c=ym(h);if(e){lm(c,g,e)}d=d-e|0;if(d){lm(c+e|0,e+g|0,d)}if((b|0)!=10){nn(g)}zm(a,c);Am(a,h);J=f+16|0;return}Fm();x()}function eh(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=13492;b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}nn(a)}function _l(a,b,c){var d=0,e=0,f=0;a:{if((b|0)==1&a>>>0<0|b>>>0<1){d=a;break a}while(1){d=In(a,b,10,0);e=L;f=e;e=Gn(d,e,10,0);c=c+ -1|0;g[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;g[c|0]=d-o(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function Cg(a){a=a|0;var b=0;i[a+8>>2]=12528;i[a>>2]=12316;b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}b=i[a+80>>2];if(b){i[a+84>>2]=b;nn(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;nn(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12764;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}return a|0}function Da(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,h=0,j=0;e=J+ -64|0;J=e;f=M[i[i[b>>2]+44>>2]](b,c)|0;b=M[i[i[b>>2]+40>>2]](b,c)|0;h=Ea(e);j=i[c+56>>2];c=b;b=o(Fh(b),f);Fa(h,j,f<<24>>24,c,0,b,b>>31);b=Dm(96);c=Ja(b,h);i[a>>2]=b;Ka(c,d);g[b+84|0]=1;i[b+72>>2]=i[b+68>>2];J=e- -64|0}function Dg(a){a=a|0;var b=0;i[a+8>>2]=12528;i[a>>2]=12316;b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}b=i[a+80>>2];if(b){i[a+84>>2]=b;nn(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;nn(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12764;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}nn(a)}function Ka(a,b){var c=0,d=0,e=0;a:{if(i[a+64>>2]){break a}d=Dm(32);wh(d);c=i[a+64>>2];i[a+64>>2]=d;if(!c){break a}d=i[c>>2];if(d){i[c+4>>2]=d;nn(d)}nn(c)}c=Fh(i[a+28>>2]);c=o(c,g[a+24|0]);d=c;c=c>>31;e=xh(i[a+64>>2],0,Gn(d,c,b,0),L);if(e){Ha(a,i[a+64>>2],d,c);i[a+80>>2]=b}return e}function nl(a,b){var c=0,d=0,e=0;d=i[a+8>>2];c=i[a+12>>2];a:{if((d|0)!=(c|0)){a=c-d|0;e=(a|0)>-1?a:-1;c=d-c|0;a=o((e|0)<1?e:1,((c|0)>(a|0)?c:a)>>>2|0);e=a>>>0>1?a:1;a=0;while(1){c=i[(a<<2)+d>>2];if(i[c+60>>2]==(b|0)){break a}a=a+1|0;if((e|0)!=(a|0)){continue}break}}c=0}return c}function hi(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=i[a+96>>2];e=i[a+100>>2]-g|0;a=(e|0)/12|0;if(!(!e|(b|0)!=(e|0))){h=a>>>0>1?a:1;a=0;while(1){d=o(a,12);f=d+c|0;d=d+g|0;i[f>>2]=i[d>>2];i[f+4>>2]=i[d+4>>2];i[f+8>>2]=i[d+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}return(b|0)==(e|0)}function Cm(a,b,c){var d=0,e=0,f=0,h=0;f=J-16|0;J=f;e=c-b|0;if(e>>>0<=4294967279){a:{if(e>>>0<=10){wm(a,e);d=a;break a}h=xm(e)+1|0;d=ym(h);zm(a,d);Am(a,h);vm(a,e)}while(1){if((b|0)!=(c|0)){um(d,b);d=d+1|0;b=b+1|0;continue}break}g[f+15|0]=0;um(d,f+15|0);J=f+16|0;return}Fm();x()}function Ei(a,b){var c=0,d=0;c=i[a+4>>2];if(!c){return 0}b=i[i[i[a+8>>2]+(b<<2)>>2]+60>>2];if((b|0)<0){return 0}a=i[c+24>>2];c=i[c+28>>2];if((a|0)==(c|0)){return 0}a:{while(1){d=i[a>>2];if((b|0)==i[d+24>>2]){break a}a=a+4|0;if((c|0)!=(a|0)){continue}break}return 0}return d}function Bg(a){a=a|0;var b=0;i[a>>2]=12528;b=i[a+88>>2];if(b){i[a+92>>2]=b;nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){i[a- -64>>2]=b;nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function Cj(a){a=a|0;var b=0,c=0,d=0,e=0;if(a){if(g[a+27|0]<=-1){nn(i[a+16>>2])}c=i[a>>2];if(c){b=c;d=i[a+4>>2];e=b;a:{if((d|0)==(b|0)){break a}while(1){b=d+ -12|0;if(g[d+ -1|0]<=-1){nn(i[b>>2])}d=b;if((b|0)!=(c|0)){continue}break}e=i[a>>2]}b=e;i[a+4>>2]=c;nn(b)}nn(a)}}function Jg(a){a=a|0;var b=0;i[a>>2]=12528;b=i[a+88>>2];if(b){i[a+92>>2]=b;nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){i[a- -64>>2]=b;nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function gc(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{switch(c|0){case 0:b=Dm(20);Qb(b);break a;case 1:b=Dm(24);kc(b);break a;case 2:b=Dm(48);me(b);break a;case 3:b=Dm(32);kc(b);i[b+28>>2]=-1;i[b+24>>2]=1032;i[b>>2]=6844;break a;default:break b}}i[a>>2]=0;return}i[a>>2]=b}function Le(a,b,c,d){var e=0;e=J-16|0;J=e;c=Oe(a,b,e+12|0,e+8|0,c);if(!i[c>>2]){b=Dm(40);Gm(b+16|0,d);Gm(b+28|0,d+12|0);i[b+8>>2]=i[e+12>>2];i[b>>2]=0;i[b+4>>2]=0;i[c>>2]=b;d=i[i[a>>2]>>2];if(d){i[a>>2]=d;b=i[c>>2]}Me(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}J=e+16|0}function Rf(a){var b=0;b=i[a+84>>2];if(b){i[a+88>>2]=b;nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+52>>2];if(b){i[a+56>>2]=b;nn(b)}b=i[a+40>>2];if(b){i[a+44>>2]=b;nn(b)}b=i[a+28>>2];if(b){i[a+32>>2]=b;nn(b)}b=i[a+12>>2];if(b){nn(b)}a=i[a>>2];if(a){nn(a)}}function Qf(a,b){if(b){a=i[b+76>>2];if(a){i[b+80>>2]=a;nn(a)}a=i[b- -64>>2];if(a){i[b+68>>2]=a;nn(a)}a=i[b+48>>2];if(a){i[b+52>>2]=a;nn(a)}a=i[b+24>>2];if(a){i[b+28>>2]=a;nn(a)}a=i[b+12>>2];if(a){i[b+16>>2]=a;nn(a)}a=i[b>>2];if(a){i[b+4>>2]=a;nn(a)}nn(b)}}function Ce(a){var b=0,c=0,d=0,e=0,f=0;d=j[a+12|0];c=i[a+8>>2];a:{if(c>>>0>4095){break a}b=i[a+4>>2];if((b|0)<1){break a}b=b+ -1|0;i[a+4>>2]=b;c=j[b+i[a>>2]|0]|c<<8}d=0-d&255;b=o(d,c>>>8|0);e=c&255;f=e>>>0>>0;i[a+8>>2]=f?b+e|0:(c-d|0)-b|0;return f}function En(a,b,c,d){var e=0,f=0,g=0,h=0;e=b;f=e>>31;e=e>>31;a=a^e;g=a-e|0;h=(b^f)-((a>>>0>>0)+f|0)|0;e=d;f=e>>31;e=e>>31;a=c^e;e=In(g,h,a-e|0,(d^f)-((a>>>0>>0)+f|0)|0);b=b^d;c=b>>31;a=b>>31;b=e^a;d=b-a|0;L=(c^L)-((b>>>0>>0)+c|0)|0;return d}function fl(a,b,c){var d=0;a:{d=a+4|0;a=Ih(a,b);if((d|0)==(a|0)){break a}b=i[a+32>>2];a=i[a+28>>2];if((b-a|0)!=8){break a}b=j[a+4|0]|j[a+5|0]<<8|(j[a+6|0]<<16|j[a+7|0]<<24);i[c>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24);i[c+4>>2]=b}}function jm(a,b,c){var d=0,e=0,f=0,g=0;e=J-16|0;J=e;b=b-a>>2;while(1){if(b){i[e+12>>2]=a;d=e+12|0;f=d;g=i[d>>2];d=b>>>1|0;i[f>>2]=g+(d<<2);f=(d^-1)+b|0;b=d;d=km(i[e+12>>2],c);b=d?f:b;a=d?i[e+12>>2]+4|0:a;continue}break}J=e+16|0;return a}function ai(a,b,c){var d=0,e=0,f=0;d=J-16|0;J=d;a=i[a+96>>2];i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;e=Dm(12);f=e+12|0;a=pn(e,a+o(b,12)|0,12);b=a;e=a+12|0;a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=f;i[c+4>>2]=e;i[c>>2]=b;J=d+16|0;return 1}function Sa(a){a=a|0;var b=0,c=0;if(a){b=i[a+88>>2];i[a+88>>2]=0;if(b){c=i[b+8>>2];if(c){i[b+12>>2]=c;nn(c)}nn(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;nn(b)}b=i[a+64>>2];i[a+64>>2]=0;if(b){c=i[b>>2];if(c){i[b+4>>2]=c;nn(c)}nn(b)}nn(a)}}function te(a){a=a|0;var b=0;i[a+24>>2]=1140;i[a>>2]=10864;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}i[a>>2]=2264;b=i[a+20>>2];i[a+20>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}return a|0}function pl(a,b){var c=0,d=0,e=0,f=0;c=J-16|0;J=c;d=i[a+12>>2];e=i[a+8>>2];f=i[b>>2];i[b>>2]=0;i[c+8>>2]=f;M[i[i[a>>2]+8>>2]](a,d-e>>2,c+8|0);b=i[c+8>>2];i[c+8>>2]=0;if(b){Sa(b)}J=c+16|0;return(i[a+12>>2]-i[a+8>>2]>>2)+ -1|0}function Dn(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=o(e,f);g=c&65535;h=a&65535;i=o(g,h);f=(i>>>16|0)+o(f,g)|0;e=(f&65535)+o(e,h)|0;a=(o(b,c)+j|0)+o(a,d)+(f>>>16)+(e>>>16)|0;b=i&65535|e<<16;L=a;return b}function ue(a){a=a|0;var b=0;i[a+24>>2]=1140;i[a>>2]=10864;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}i[a>>2]=2264;b=i[a+20>>2];i[a+20>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}nn(a)}function zh(a){h[a+38>>1]=0;i[a>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;g[a+29|0]=0;g[a+30|0]=0;g[a+31|0]=0;g[a+32|0]=0;g[a+33|0]=0;g[a+34|0]=0;g[a+35|0]=0;g[a+36|0]=0;return a}function ea(a,b){a=a|0;b=b|0;var c=0,d=0;c=J-16|0;J=c;a=i[a+4>>2];a:{if((a|0)==-1){break a}g[c+15|0]=a;d=i[b+20>>2];if((d|0)>0?1:(d|0)>=0?l[b+16>>2]>0:0){break a}fa(b,i[b+4>>2],c+15|0,c+16|0)}J=c+16|0;return(a|0)!=-1|0}function yh(a,b){var c=0,d=0;d=i[a>>2];c=i[a+4>>2]-d|0;a:{if(c>>>0>>0){rb(a,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+4>>2]=b+d}b=a+24|0;c=b;d=b;a=i[b+4>>2];b=i[b>>2]+1|0;if(b>>>0<1){a=a+1|0}i[d>>2]=b;i[c+4>>2]=a}function Hm(a,b,c){var d=0,e=0,f=0;d=J-16|0;J=d;if(4294967279>=c>>>0){a:{if(c>>>0<=10){wm(a,c);e=a;break a}f=xm(c)+1|0;e=ym(f);zm(a,e);Am(a,f);vm(a,c)}lm(e,b,c);g[d+15|0]=0;um(c+e|0,d+15|0);J=d+16|0;return}Fm();x()}function oh(a){a=a|0;var b=0,c=0,d=0;b=i[a+8>>2];d=i[a+12>>2];if((b|0)==(d|0)){return 1}while(1){a:{c=i[b>>2];c=M[i[i[c>>2]+16>>2]](c,i[a+32>>2])|0;b=b+4|0;if((d|0)==(b|0)){break a}if(c){continue}}break}return c|0}function cn(a,b,c){var d=0;d=i[a+16>>2];if(!d){i[a+36>>2]=1;i[a+24>>2]=c;i[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(i[a+24>>2]!=2){break a}i[a+24>>2]=c;return}g[a+54|0]=1;i[a+24>>2]=2;i[a+36>>2]=i[a+36>>2]+1}}function $(a,b){a=a|0;b=b|0;var c=0,d=0;i[b>>2]=2;c=i[b+8>>2];d=i[b+12>>2]-c|0;if(d>>>0<=4294967291){b=b+8|0;yh(b,d+4|0);c=i[b>>2]}b=c+d|0;a=i[a+4>>2];g[b|0]=a;g[b+1|0]=a>>>8;g[b+2|0]=a>>>16;g[b+3|0]=a>>>24}function Eh(a){var b=0,c=0,d=0,e=0,f=0,h=0;g[a+36|0]=0;d=i[a+20>>2];e=a;f=a;h=i[a+16>>2];a=i[a+32>>2]+7|0;if(a>>>0<7){b=1}c=b>>>3|0;a=b<<29|a>>>3;b=h+a|0;c=c+d|0;i[f+16>>2]=b;i[e+20>>2]=b>>>0>>0?c+1|0:c}function ud(a){a=a|0;var b=0;i[a>>2]=5396;b=i[a+96>>2];if(b){nn(b)}b=i[a+84>>2];if(b){nn(b)}b=i[a+72>>2];if(b){nn(b)}b=i[a+60>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Jc(a){a=a|0;var b=0;i[a>>2]=3380;b=i[a+96>>2];if(b){nn(b)}b=i[a+84>>2];if(b){nn(b)}b=i[a+72>>2];if(b){nn(b)}b=i[a+60>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function $l(a,b,c,d,e){var f=0;f=J-256|0;J=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;qn(f,b&255,d?c:256);if(!d){while(1){Vl(a,f,256);c=c+ -256|0;if(c>>>0>255){continue}break}}Vl(a,f,c)}J=f+256|0}function Jm(a,b,c){var d=0,e=0,f=0,h=0;e=J-16|0;J=e;d=qm(a);a:{if(d>>>0>=c>>>0){f=sm(a);h=f;d=c;if(c){rn(h,b,d)}g[e+15|0]=0;um(c+f|0,e+15|0);Bm(a,c);break a}f=a;a=pm(a);Km(f,d,c-d|0,a,a,c,b)}J=e+16|0}function vd(a){a=a|0;var b=0;i[a>>2]=5396;b=i[a+96>>2];if(b){nn(b)}b=i[a+84>>2];if(b){nn(b)}b=i[a+72>>2];if(b){nn(b)}b=i[a+60>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Kc(a){a=a|0;var b=0;i[a>>2]=3380;b=i[a+96>>2];if(b){nn(b)}b=i[a+84>>2];if(b){nn(b)}b=i[a+72>>2];if(b){nn(b)}b=i[a+60>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Mm(a,b){var c=0,d=0,e=0,f=0;e=J-16|0;J=e;if(b){d=qm(a);c=pm(a);f=c+b|0;if(d-c>>>0>>0){Om(a,d,f-d|0,c,c)}d=c;c=sm(a);d=d+c|0;if(b){qn(d,0,b)}Bm(a,f);g[e+15|0]=0;um(c+f|0,e+15|0)}J=e+16|0}function gl(a,b,c){var d=0,e=0;d=a+4|0;a=Ih(a,b);if((d|0)==(a|0)){return 0}b=i[a+32>>2];d=i[a+28>>2];if((b|0)!=(d|0)){Lm(c,b-d|0);e=Pm(c);c=i[a+28>>2];pn(e,c,i[a+32>>2]-c|0)}return(b|0)!=(d|0)}function ph(a,b){var c=0,d=0;a:{if((b|0)<0){break a}c=i[a+4>>2];if(i[c+12>>2]-i[c+8>>2]>>2<=(b|0)){break a}a=i[i[a+8>>2]+(i[i[a+20>>2]+(b<<2)>>2]<<2)>>2];d=M[i[i[a>>2]+32>>2]](a,b)|0}return d}function Ia(a){Ea(a);i[a+64>>2]=0;i[a+68>>2]=0;i[a+88>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;g[a+77|0]=0;g[a+78|0]=0;g[a+79|0]=0;g[a+80|0]=0;g[a+81|0]=0;g[a+82|0]=0;g[a+83|0]=0;g[a+84|0]=0;return a}function Ha(a,b,c,d){var e=0;i[a>>2]=b;e=i[b+20>>2];i[a+8>>2]=i[b+16>>2];i[a+12>>2]=e;e=i[b+24>>2];b=i[b+28>>2];i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=c;i[a+44>>2]=d;i[a+16>>2]=e;i[a+20>>2]=b}function sn(a){var b=0;b=j[a+74|0];g[a+74|0]=b+ -1|b;b=i[a>>2];if(b&8){i[a>>2]=b|32;return-1}i[a+4>>2]=0;i[a+8>>2]=0;b=i[a+44>>2];i[a+28>>2]=b;i[a+20>>2]=b;i[a+16>>2]=b+i[a+48>>2];return 0}function Zh(a,b,c,d){var e=0,f=0;e=J+ -64|0;J=e;f=zh(e+8|0);Ah(f,b,c);Ie(e+48|0,a,f,d);i[a+24>>2]=i[e+48>>2];Im(a+28|0,e+48|4);a=a+24|0;if(g[e+63|0]<=-1){nn(i[e+52>>2])}J=e- -64|0;return a}function Xh(a,b,c,d){var e=0,f=0;e=J+ -64|0;J=e;f=zh(e+8|0);Ah(f,b,c);He(e+48|0,a,f,d);i[a+24>>2]=i[e+48>>2];Im(a+28|0,e+48|4);a=a+24|0;if(g[e+63|0]<=-1){nn(i[e+52>>2])}J=e- -64|0;return a}function Ea(a){i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+28>>2]=9;g[a+24|0]=1;i[a+56>>2]=-1;i[a+60>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;return a}function om(a,b){var c=0,d=0;c=j[a|0];d=j[b|0];a:{if(!c|(c|0)!=(d|0)){break a}while(1){d=j[b+1|0];c=j[a+1|0];if(!c){break a}b=b+1|0;a=a+1|0;if((c|0)==(d|0)){continue}break}}return c-d|0}function ol(a,b){var c=0,d=0;c=i[a+8>>2];a=i[a+12>>2];if((c|0)!=(a|0)){d=a-c>>2;a=0;while(1){if(i[i[(a<<2)+c>>2]+60>>2]==(b|0)){return a}a=a+1|0;if(a>>>0>>0){continue}break}}return-1}function Ok(a,b){a=a|0;b=b|0;var c=0,d=0;sl(a,b);a:{if((b|0)<0){break a}c=i[a+88>>2];d=i[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){rn(b,d,c)}i[a+88>>2]=b+c}}function qh(a,b){var c=0;if(b){qh(a,i[b>>2]);qh(a,i[b+4>>2]);c=b+28|0;a=i[c>>2];i[c>>2]=0;if(a){qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}if(g[b+27|0]<=-1){nn(i[b+16>>2])}nn(b)}}function on(a){var b=0,c=0;b=i[4274];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?(c|0)>=1:0){break a}if(a>>>0>Sn()<<16>>>0){if(!(F(a|0)|0)){break a}}i[4274]=a;return b}i[4312]=48;return-1}function jc(a,b){a=a|0;b=b|0;var c=0,d=0;d=i[a+16>>2];c=0;a:{if(i[a+20>>2]-d>>2<=(b|0)){break a}b=i[(b<<2)+d>>2];c=0;if((b|0)<0){break a}c=Vb(i[i[a+36>>2]+(b<<2)>>2])}return c|0}function dl(a,b,c){var d=0;a:{d=a+4|0;a=Ih(a,b);if((d|0)==(a|0)){break a}b=i[a+32>>2];a=i[a+28>>2];if((b-a|0)!=4){break a}i[c>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24)}}function Tg(a){a=a|0;var b=0;i[a+8>>2]=11956;i[a>>2]=13076;b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12208;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}return a|0}function Ng(a){a=a|0;var b=0;i[a+8>>2]=12948;i[a>>2]=12784;b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12764;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}return a|0}function Gm(a,b){var c=0,d=0,e=0;d=J-16|0;J=d;c=a;a:{if(!rm(b)){i[c+8>>2]=i[b+8>>2];e=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=e;break a}Hm(a,i[b>>2],i[b+4>>2])}J=d+16|0;return a}function Ug(a){a=a|0;var b=0;i[a+8>>2]=11956;i[a>>2]=13076;b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12208;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}nn(a)}function Tb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=i[a+8>>2];if(g[d+24|0]<1){break a}if(!Ka(d,i[b+4>>2]-i[b>>2]>>2)){break a}return M[i[i[a>>2]+32>>2]](a,b,c)|0}return 0}function Og(a){a=a|0;var b=0;i[a+8>>2]=12948;i[a>>2]=12784;b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12764;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}nn(a)}function Nl(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}while(1){d=j[a|0];e=j[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}f=d-e|0}return f}function xd(a){a=a|0;var b=0;i[a>>2]=5632;b=i[a+76>>2];if(b){nn(b)}b=i[a+68>>2];i[a+68>>2]=0;if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Tc(a){a=a|0;var b=0;i[a>>2]=3628;b=i[a+76>>2];if(b){nn(b)}b=i[a+68>>2];i[a+68>>2]=0;if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Qm(a){var b=0,c=0,d=0,e=0;b=J-32|0;J=b;c=b+8|0;d=b+32|0;e=b+21|0;a:{if((d|0)==(e|0)){break a}}Rm(c,e,d);c=J-16|0;J=c;Cm(a,b+21|0,i[b+8>>2]);J=c+16|0;J=b+32|0}function Ca(a,b){var c=0;c=Dm(40);i[c>>2]=-1;wh(c+8|0);M[i[i[a>>2]+16>>2]](a,c);a=i[b+88>>2];i[b+88>>2]=c;if(a){b=i[a+8>>2];if(b){i[a+12>>2]=b;nn(b)}nn(a)}return 1}function yd(a){a=a|0;var b=0;i[a>>2]=5632;b=i[a+76>>2];if(b){nn(b)}b=i[a+68>>2];i[a+68>>2]=0;if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Uc(a){a=a|0;var b=0;i[a>>2]=3628;b=i[a+76>>2];if(b){nn(b)}b=i[a+68>>2];i[a+68>>2]=0;if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function bm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=J-16|0;J=e;a=em(I(i[a+60>>2],b|0,c|0,d&255,e+8|0)|0);J=e+16|0;L=a?-1:i[e+12>>2];return(a?-1:i[e+8>>2])|0}function tc(a){a=a|0;var b=0;i[a>>2]=2264;b=i[a+20>>2];i[a+20>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}return a|0}function _(a,b){a=a|0;b=b|0;var c=0;b=i[b+88>>2];if(!(!b|i[b>>2]!=2)){c=a;a=i[b+8>>2];i[c+4>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24);c=1}return c|0}function kd(a){a=a|0;a:{if(!i[a- -64>>2]|!i[a+68>>2]|(!i[a+44>>2]|!i[a+48>>2])){break a}if(!i[a+52>>2]|!i[a+56>>2]){break a}return i[a+92>>2]!=-1|0}return 0}function ih(a){i[a+40>>2]=0;i[a>>2]=13492;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;h[a+36>>1]=0}function Wa(a,b){a=a|0;b=b|0;a:{if(!(M[i[i[a>>2]+36>>2]](a,b)|0)){break a}if(!(M[i[i[a>>2]+40>>2]](a,b)|0)){break a}return M[i[i[a>>2]+44>>2]](a)|0}return 0}function Nm(a,b){var c=0,d=0;c=J-16|0;J=c;a:{if(rm(a)){d=i[a>>2];g[c+15|0]=0;um(b+d|0,c+15|0);vm(a,b);break a}g[c+14|0]=0;um(a+b|0,c+14|0);wm(a,b)}J=c+16|0}function Nf(a){a=a|0;var b=0;i[a>>2]=11956;b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12208;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function Mg(a){a=a|0;var b=0;i[a>>2]=12948;b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function Wl(a){var b=0,c=0,d=0;if(Pl(g[i[a>>2]])){while(1){b=i[a>>2];d=g[b|0];i[a>>2]=b+1;c=(o(c,10)+d|0)+ -48|0;if(Pl(g[b+1|0])){continue}break}}return c}function Ud(a){a=a|0;a:{if(!i[a+48>>2]|!i[a+52>>2]|(!i[a+28>>2]|!i[a+32>>2])){break a}if(!i[a+36>>2]|!i[a+40>>2]){break a}return i[a+76>>2]!=-1|0}return 0}function $b(a,b){var c=0;Na(a);i[a+36>>2]=0;i[a+40>>2]=0;i[a>>2]=2048;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;c=i[b>>2];i[b>>2]=0;i[a+60>>2]=c}function uc(a){a=a|0;var b=0;i[a>>2]=2264;b=i[a+20>>2];i[a+20>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}nn(a)}function Jh(a,b){var c=0;b=Ih(a,b);a:{if((b|0)==(a+4|0)){break a}a=b+28|0;if(g[b+39|0]<=-1){a=i[a>>2]}a=dm(a);if((a|0)==-1){break a}c=(a|0)!=0}return c}function wg(a){a=a|0;var b=0;i[a>>2]=11956;b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12208;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function ab(a){Na(a);i[a+36>>2]=0;i[a+40>>2]=0;i[a>>2]=1572;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+68>>2]=0}function Sg(a){a=a|0;var b=0;i[a>>2]=12948;b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function mc(a,b){a=a|0;b=b|0;var c=0,d=0;d=i[a+4>>2];a:{if(d){c=1;if(j[d+36|0]<2){break a}}c=M[i[i[a>>2]+48>>2]](a,i[b+4>>2]-i[b>>2]>>2)|0}return c|0}function Rm(a,b,c){var d=0,e=0;e=a;d=c-b|0;a:{if(!((1-(l[4056]>1)|0)>(d|0)?(d|0)<=9:0)){g[b|0]=49;i[a>>2]=b+1;a=0;break a}i[a>>2]=c;a=61}i[e+4>>2]=a}function $k(a,b){var c=0,d=0;a:{d=i[b>>2];if(!d){break a}c=i[a+28>>2];if(c>>>0>2]){i[b>>2]=0;i[c>>2]=d;i[a+28>>2]=c+4;break a}al(a+24|0,b)}}function kn(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($m(a,i[b+8>>2],f)){fn(b,c,d,e);return}a=i[a+8>>2];M[i[i[a>>2]+20>>2]](a,b,c,d,e,f)}function pe(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(j[i[a+4>>2]+36|0]>=2){b=0;if(!(M[i[i[a>>2]+52>>2]](a)|0)){break a}}b=Ca(a+24|0,i[a+16>>2])}return b|0}function Yh(a,b,c){var d=0;d=J-16|0;J=d;Ie(d,a,b,c);i[a+24>>2]=i[d>>2];Im(a+28|0,d|4);a=a+24|0;if(g[d+15|0]<=-1){nn(i[d+4>>2])}J=d+16|0;return a}function Wh(a,b,c){var d=0;d=J-16|0;J=d;He(d,a,b,c);i[a+24>>2]=i[d>>2];Im(a+28|0,d|4);a=a+24|0;if(g[d+15|0]<=-1){nn(i[d+4>>2])}J=d+16|0;return a}function vh(a,b,c){var d=0,e=0,f=0;if((b|0)>0){while(1){e=d<<2;f=i[e+a>>2];i[c+e>>2]=0-(f&1)^f>>>1;d=d+1|0;if((d|0)!=(b|0)){continue}break}}}function oe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(j[i[a+4>>2]+36|0]<=1){d=0;if(!(M[i[i[a>>2]+52>>2]](a)|0)){break a}}d=qc(a,b,c)}return d|0}function ml(a){var b=0,c=0;b=i[a+20>>2];a:{if((i[a+24>>2]-b|0)<1){break a}b=i[b>>2];if((b|0)==-1){break a}c=i[i[a+8>>2]+(b<<2)>>2]}return c}function ll(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=o(b,12)+a|0;a=i[b+20>>2];if((i[b+24>>2]-a|0)<1){break a}c=i[a>>2]}return c}function Fa(a,b,c,d,e,f,h){i[a>>2]=0;i[a+56>>2]=b;i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=f;i[a+44>>2]=h;g[a+32|0]=e;i[a+28>>2]=d;g[a+24|0]=c}function ze(a){i[a>>2]=0;i[a+4>>2]=0;g[a+5|0]=0;g[a+6|0]=0;g[a+7|0]=0;g[a+8|0]=0;g[a+9|0]=0;g[a+10|0]=0;g[a+11|0]=0;g[a+12|0]=0;return a}function Yl(a,b,c,d){if(a|b){while(1){c=c+ -1|0;g[c|0]=j[(a&15)+15488|0]|d;a=(b&15)<<28|a>>>4;b=b>>>4|0;if(a|b){continue}break}}return c}function Nd(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(j[i[a+4>>2]+36|0]>=2){b=0;if(!ga(a+24|0,Vb(a),c)){break a}}b=Ca(a+24|0,i[a+16>>2])}return b|0}function Md(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(j[i[a+4>>2]+36|0]<=1){d=0;if(!ga(a+24|0,i[a+8>>2],c)){break a}}d=qc(a,b,c)}return d|0}function Jk(a){a=a|0;var b=0;i[a>>2]=14364;b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}b=i[a+84>>2];if(b){i[a+88>>2]=b;nn(b)}Kk(a);return a|0}function Uh(a){var b=0;Gh(a);b=a+16|0;i[b>>2]=0;i[b+4>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+12>>2]=b;i[a+32>>2]=0;i[a+36>>2]=0;return a}function Lk(a){a=a|0;var b=0;i[a>>2]=14364;b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}b=i[a+84>>2];if(b){i[a+88>>2]=b;nn(b)}Kk(a);nn(a)}function Ld(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(!lc(a,b,c)){break a}a=i[a+8>>2];if(j[a+24|0]!=3){break a}return i[a+28>>2]==9|0}return 0}function rh(a,b){if(b){rh(a,i[b>>2]);rh(a,i[b+4>>2]);a=i[b+28>>2];if(a){i[b+32>>2]=a;nn(a)}if(g[b+27|0]<=-1){nn(i[b+16>>2])}nn(b)}}function Na(a){i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=1360;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0}function ad(a){a=a|0;var b=0;i[a>>2]=3856;b=i[a+76>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Bd(a){a=a|0;var b=0;i[a>>2]=5848;b=i[a+76>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function uj(){var a=0;a=Dm(28);i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;return a|0}function Ua(a){a=a|0;var b=0;i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;nn(b)}return a|0}function Em(a,b){var c=0,d=0,e=0,f=0;c=xn(b);d=Dm(c+13|0);i[d+8>>2]=0;i[d+4>>2]=c;i[d>>2]=c;e=a,f=pn(d+12|0,b,c+1|0),i[e>>2]=f}function Ne(a,b){if(b){Ne(a,i[b>>2]);Ne(a,i[b+4>>2]);if(g[b+39|0]<=-1){nn(i[b+28>>2])}if(g[b+27|0]<=-1){nn(i[b+16>>2])}nn(b)}}function en(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if($m(a,i[b+8>>2],0)){cn(b,c,d);return}a=i[a+8>>2];M[i[i[a>>2]+28>>2]](a,b,c,d)}function bd(a){a=a|0;var b=0;i[a>>2]=3856;b=i[a+76>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Ik(a){kl(a);i[a+84>>2]=0;i[a+88>>2]=0;i[a>>2]=14364;i[a+92>>2]=0;i[a+96>>2]=0;i[a+100>>2]=0;i[a+104>>2]=0;return a}function Cd(a){a=a|0;var b=0;i[a>>2]=5848;b=i[a+76>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Dm(a){var b=0;a=a?a:1;a:{while(1){b=mn(a);if(b){break a}b=i[4331];if(b){M[b|0]();continue}break}E();x()}return b}function Zl(a,b,c){if(a|b){while(1){c=c+ -1|0;g[c|0]=a&7|48;a=(b&7)<<29|a>>>3;b=b>>>3|0;if(a|b){continue}break}}return c}function ej(){var a=0;a=Dm(24);i[a+4>>2]=0;i[a+8>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a>>2]=a+4;i[a+12>>2]=a+16;return a|0}function ta(a,b,c,d,e){var f=0;f=b+ -1|0;if(f>>>0<=29){i[a+4>>2]=b;ua(a+8|0,c,(d<<2)+c|0);m[a+20>>2]=e}return f>>>0<30}function pa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(i[c>>2]==i[c+4>>2]){qa(a,b,i[d+80>>2],d);return 1}ra(a,b,c,d);return 1}function Wi(){var a=0;a=Dm(24);i[a+8>>2]=0;i[a+12>>2]=0;i[a+4>>2]=-1;i[a>>2]=1140;i[a+16>>2]=0;i[a+20>>2]=0;return a|0}function me(a){kc(a);i[a+32>>2]=0;i[a+36>>2]=0;i[a+28>>2]=-1;i[a+24>>2]=1140;i[a>>2]=10864;i[a+40>>2]=0;i[a+44>>2]=0}function ne(a,b,c){a=a|0;b=b|0;c=c|0;if(lc(a,b,c)){a=i[i[i[i[b+4>>2]+8>>2]+(c<<2)>>2]+28>>2]==9}else{a=0}return a|0}function Rb(a,b,c){a=a|0;b=b|0;c=c|0;i[a+4>>2]=b;b=i[i[i[b+4>>2]+8>>2]+(c<<2)>>2];i[a+12>>2]=c;i[a+8>>2]=b;return 1}function Wc(a){a=a|0;var b=0;if(!(!i[a+60>>2]|!i[a+44>>2]|(!i[a+48>>2]|!i[a+52>>2]))){b=i[a+56>>2]!=0}return b|0}function Vh(a){var b=0;b=J-32|0;J=b;Ge(b+8|0,a);a=i[b+24>>2];if(g[b+23|0]<=-1){nn(i[b+12>>2])}J=b+32|0;return a}function $m(a,b,c){if(!c){return i[a+4>>2]==i[b+4>>2]}if((a|0)==(b|0)){return 1}return!om(i[a+4>>2],i[b+4>>2])}function wh(a){i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;return a}function Xm(a){var b=0,c=0;a:{b=i[a>>2]+ -12|0;c=b+8|0;a=i[c>>2]+ -1|0;i[c>>2]=a;if((a|0)>-1){break a}nn(b)}}function Fd(a){a=a|0;var b=0;i[a>>2]=6072;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0} - - - -function Ba(a){var b=0;b=A(8)|0;i[b>>2]=16324;i[b>>2]=16368;Em(b+4|0,a);i[b>>2]=16416;B(b|0,16448,13);x()}function re(a){a=a|0;var b=0,c=0;c=a+24|0;b=Vb(a);if(!b){b=i[a+8>>2]}return wa(c,b,i[i[a+4>>2]+32>>2])|0}function ck(a){a=a|0;if(a){if(g[a+39|0]<=-1){nn(i[a+28>>2])}dk(a+12|0,i[a+16>>2]);Ne(a,i[a+4>>2]);nn(a)}}function xg(a){a=a|0;var b=0;i[a>>2]=12208;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function hd(a){a=a|0;var b=0;i[a>>2]=4092;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Kg(a){a=a|0;var b=0;i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function Cc(a){a=a|0;var b=0;if(!(!i[a+52>>2]|(!i[a+44>>2]|!i[a+48>>2]))){b=i[a+56>>2]!=0}return b|0}function yg(a){a=a|0;var b=0;i[a>>2]=12208;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function id(a){a=a|0;var b=0;i[a>>2]=4092;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Xc(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|!b|j[b+24|0]!=3)){i[a+60>>2]=b;c=1}return c|0}function Lg(a){a=a|0;var b=0;i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function Gd(a){a=a|0;var b=0;i[a>>2]=6072;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function ld(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a- -64>>2]=b;c=1}return c|0}function we(a){var b=0;i[a+16>>2]=0;b=i[a>>2];i[a+4>>2]=b;i[a+12>>2]=b;if(b){i[a+4>>2]=b;nn(b)}}function ln(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($m(a,i[b+8>>2],f)){fn(b,c,d,e)}}function Vd(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a+48>>2]=b;c=1}return c|0}function Bh(a,b,c,d){h[a+38>>1]=d;i[a>>2]=b;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=c;i[a+12>>2]=0}function xm(a){var b=0;if(a>>>0>=11){b=a+16&-16;a=b+ -1|0;a=(a|0)==11?b:a}else{a=10}return a}function Zb(a){a=a|0;var b=0;i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}return a|0}function Hc(a){a=a|0;var b=0;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Cn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=M[a|0](b,c,d,e)|0;H(L|0);return a|0}function xa(a){a=a|0;var b=0;i[a>>2]=1140;b=i[a+8>>2];if(b){i[a+12>>2]=b;nn(b)}return a|0}function _b(a){a=a|0;var b=0;i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}nn(a)}function Jn(a){var b=0,c=0;while(1){c=b;if(a){a=a-1&a;b=b+1|0;continue}break}return c}function Ac(a){a=a|0;var b=0;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function ya(a){a=a|0;var b=0;i[a>>2]=1140;b=i[a+8>>2];if(b){i[a+12>>2]=b;nn(b)}nn(a)}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;return xi(b,c,d,e,f)|0}function dk(a,b){if(b){dk(a,i[b>>2]);dk(a,i[b+4>>2]);Ne(b+20|0,i[b+24>>2]);nn(b)}}function Ah(a,b,c){i[a+16>>2]=0;i[a+20>>2]=0;i[a>>2]=b;i[a+8>>2]=c;i[a+12>>2]=0}function Qb(a){i[a+12>>2]=-1;i[a+16>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=1884}function Li(a){a=a|0;var b=0;if(a){b=i[a+8>>2];if(b){i[a+12>>2]=b;nn(b)}nn(a)}}function dn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if($m(a,i[b+8>>2],0)){cn(b,c,d)}}function rf(a){a=a|0;if(i[a+44>>2]){return M[i[i[a>>2]+48>>2]](a)|0}return 0}function aa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ba(a,b,c,i[d+80>>2],d)|0}function wn(a,b){var c=0;c=J-16|0;J=c;i[c+12>>2]=b;Tl(i[4178],a,b);J=c+16|0}function tf(a,b){a=a|0;b=b|0;a=i[a+48>>2];return M[i[i[a>>2]+20>>2]](a,b)|0}function mj(a){a=a|0;var b=0;if(a){b=i[a>>2];if(b){i[a+4>>2]=b;nn(b)}nn(a)}}function jj(){var a=0;a=Dm(12);i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;return a|0}function hj(a){a=a|0;var b=0;b=a+4|0;if(g[a+15|0]<=-1){b=i[b>>2]}return b|0}function Lm(a,b){var c=0;c=pm(a);if(c>>>0>>0){Mm(a,b-c|0);return}Nm(a,b)}function Bf(a,b){a=a|0;b=b|0;a=i[a+48>>2];return M[i[i[a>>2]+16>>2]](a,b)|0}function Af(a,b){a=a|0;b=b|0;a=i[a+48>>2];return M[i[i[a>>2]+12>>2]](a,b)|0}function ve(a){i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}function qm(a){if(rm(a)){a=(i[a+8>>2]&2147483647)+ -1|0}else{a=10}return a}function Kn(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function un(a,b,c){a:{if(i[c+76>>2]<=-1){a=tn(a,b,c);break a}a=tn(a,b,c)}}function nm(a,b){var c=0,d=0;c=J-16|0;J=c;d=km(a,b);J=c+16|0;return d?b:a}function Fh(a){a=a+ -1|0;if(a>>>0<=10){return i[(a<<2)+14040>>2]}return-1}function pd(a,b){a=a|0;b=b|0;if(b>>>0<=1){i[a+28>>2]=b}return b>>>0<2|0}function fj(a){a=a|0;if(a){qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}}function fh(a,b){a=a|0;b=b|0;g[b+84|0]=1;i[b+72>>2]=i[b+68>>2];return 1}function Oa(a,b,c){a=a|0;b=b|0;c=c|0;i[a+32>>2]=c;i[a+28>>2]=b;return 1}function gn(a,b,c){if(!(i[a+28>>2]==1|i[a+4>>2]!=(b|0))){i[a+28>>2]=c}}function hm(a,b,c){var d=0;d=J-16|0;J=d;a=jm(a,b,c);J=d+16|0;return a}function Jj(a,b,c){a=a|0;b=b|0;c=c|0;return i[i[b+8>>2]+(c<<2)>>2]}function $i(){var a=0;a=Dm(8);i[a+4>>2]=-1;i[a>>2]=1032;return a|0}function zf(a){a=a|0;a=i[a+48>>2];return M[i[i[a>>2]+36>>2]](a)|0}function wf(a){a=a|0;a=i[a+48>>2];return M[i[i[a>>2]+28>>2]](a)|0}function vf(a){a=a|0;a=i[a+48>>2];return M[i[i[a>>2]+24>>2]](a)|0}function ij(a){a=a|0;if(a){if(g[a+15|0]<=-1){nn(i[a+4>>2])}nn(a)}}function Fj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Zh(a,b,c,d)|0}function Ej(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Xh(a,b,c,d)|0}function se(a,b){a=a|0;b=b|0;return sa(a+24|0,Vb(a),i[a+8>>2])|0}function Od(a,b){a=a|0;b=b|0;return da(a+24|0,Vb(a),i[a+8>>2])|0}function Yj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return vi(b,c,d)|0}function Xj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ri(b,c,d)|0}function Wj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return oi(b,c,d)|0}function Vj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return mi(b,c,d)|0}function Uj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ki(b,c,d)|0}function Tj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ti(b,c,d)|0}function Sj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ji(b,c,d)|0}function Sb(a,b){a=a|0;b=b|0;i[a+12>>2]=-1;i[a+8>>2]=b;return 1}function Rj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ii(b,c,d)|0}function Qj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return hi(b,c,d)|0}function Pj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return gi(b,c,d)|0}function Nj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ai(b,c,d)|0}function Ij(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return $h(b,c,d)|0}function ym(a){if(4294967295>>0){Ba(15926);x()}return Dm(a)}function qe(a,b){a=a|0;b=b|0;return M[i[i[a>>2]+56>>2]](a,b)|0}function Xi(a,b){a=a|0;b=b|0;return M[i[i[a>>2]+12>>2]](a,b)|0}function Mh(a,b,c){if((c|0)>=1){m[a>>2]=b/p(c|0)}return(c|0)>0}function Ji(){var a=0;a=Dm(40);i[a>>2]=-1;wh(a+8|0);return a|0}function Bn(a,b){a=a|0;b=b|0;if(!i[4714]){i[4715]=b;i[4714]=a}}function Yi(a,b){a=a|0;b=b|0;return p(m[i[a+8>>2]+(b<<2)>>2])}function kj(a,b){a=a|0;b=b|0;return p(m[i[a>>2]+(b<<2)>>2])}function Gh(a){i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=a+4;return a}function vl(a,b,c){return(i[a+12>>2]+ -1|0)==(c|0)?0:c+1|0}function pm(a){if(rm(a)){return i[a+4>>2]}return j[a+11|0]}function dj(a){a=a|0;return(i[a+100>>2]-i[a+96>>2]|0)/12|0}function Xa(a,b){a=a|0;b=b|0;return i[i[a+4>>2]+(b<<2)>>2]}function vn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L=0;return 0}function Ln(a){if(a){return 31-r(a+ -1^a)|0}return 32} - - - -function tj(a,b){a=a|0;b=b|0;return i[i[a>>2]+(b<<2)>>2]}function sj(a,b){a=a|0;b=b|0;return k[i[a>>2]+(b<<1)>>1]}function qj(a,b){a=a|0;b=b|0;return h[i[a>>2]+(b<<1)>>1]}function zj(a,b,c){a=a|0;b=b|0;c=c|0;return Rh(a,b,c)|0}function lc(a,b,c){a=a|0;b=b|0;c=c|0;return Rb(a,b,c)|0}function bk(a,b,c){a=a|0;b=b|0;c=c|0;return Yh(a,b,c)|0}function ak(a,b,c){a=a|0;b=b|0;c=c|0;return Wh(a,b,c)|0}function Wm(a){a=a|0;i[a>>2]=16368;Xm(a+4|0);return a|0}function Bj(a,b,c){a=a|0;b=b|0;c=c|0;return Sh(a,b,c)|0}function xj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ph(b,c,d)}function wj(a,b,c){a=a|0;b=b|0;c=c|0;return Oh(b,c)|0}function vj(a,b,c){a=a|0;b=b|0;c=c|0;return Nh(b,c)|0}function em(a){if(!a){return 0}i[4312]=a;return-1} - - - -function Pm(a){if(pm(a)>>>0<=0){im();x()}return sm(a)}function Oj(a,b,c){a=a|0;b=b|0;c=c|0;return bi(b,c)|0}function Mj(a,b,c){a=a|0;b=b|0;c=c|0;return Ei(b,c)|0}function Kj(a,b,c){a=a|0;b=b|0;c=c|0;return nl(b,c)|0}function Hj(a,b,c){a=a|0;b=b|0;c=c|0;return _h(b,c)|0}function Gj(a,b,c){a=a|0;b=b|0;c=c|0;return ll(b,c)|0}function kl(a){i[a>>2]=14760;qn(a+4|0,0,80);return a}function Im(a,b){if((a|0)!=(b|0)){Jm(a,sm(b),pm(b))}}function yj(a,b,c){a=a|0;b=b|0;c=c|0;return+Qh(b,c)}function bj(a){a=a|0;return i[a+12>>2]-i[a+8>>2]>>2}function pj(a,b){a=a|0;b=b|0;return j[i[a>>2]+b|0]}function nj(a,b){a=a|0;b=b|0;return g[i[a>>2]+b|0]}function Ya(a){a=a|0;return i[a+8>>2]-i[a+4>>2]>>2}function _i(a){a=a|0;if(a){M[i[i[a>>2]+4>>2]](a)}}function Df(a,b){a=a|0;b=b|0;i[a+4>>2]=b;return 1}function Bm(a,b){if(rm(a)){vm(a,b);return}wm(a,b)}function sm(a){if(rm(a)){return i[a>>2]}return a}function rj(a){a=a|0;return i[a+4>>2]-i[a>>2]>>1}function lj(a){a=a|0;return i[a+4>>2]-i[a>>2]>>2}function qf(a){ih(a);i[a+44>>2]=0;i[a>>2]=11264}function oj(a){a=a|0;return i[a+4>>2]-i[a>>2]|0}function Sl(a,b){if(!a){return 0}return Rl(a,b)}function kc(a){Qb(a);i[a+20>>2]=0;i[a>>2]=2264}function Vl(a,b,c){if(!(j[a|0]&32)){tn(b,c,a)}}function Ii(a,b,c){a=a|0;b=b|0;c=c|0;Ah(a,b,c)}function vc(a){a=a|0;return g[i[a+8>>2]+24|0]}function Ub(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Lj(a,b){a=a|0;b=b|0;return i[b+4>>2]}function An(a){a=a|0;a=J-a&-16;J=a;return a|0}function Aj(a,b){a=a|0;b=b|0;return i[b+8>>2]}function Aa(a,b){a=a|0;b=b|0;return g[b+24|0]}function ie(a){a=a|0;i[a>>2]=9848;return a|0}function ce(a){a=a|0;i[a>>2]=8844;return a|0}function _d(a){a=a|0;i[a>>2]=7896;return a|0}function Sd(a){a=a|0;i[a>>2]=6960;return a|0}function am(a){a=a|0;return C(i[a+60>>2])|0}function In(a,b,c,d){a=Fn(a,b,c,d);return a}function Hn(a,b,c,d){a=En(a,b,c,d);return a}function Gn(a,b,c,d){a=Dn(a,b,c,d);return a}function $j(a,b){a=a|0;b=b|0;return Vh(b)|0}function Kh(a){i[a>>2]=1065353216;return a}function Zi(a){a=a|0;return p(m[a+20>>2])}function Am(a,b){i[a+8>>2]=b|-2147483648}function km(a,b){return l[a>>2]>2]}function je(a){a=a|0;i[a>>2]=9848;nn(a)}function de(a){a=a|0;i[a>>2]=8844;nn(a)}function Td(a){a=a|0;i[a>>2]=6960;nn(a)}function $d(a){a=a|0;i[a>>2]=7896;nn(a)}function Za(a){a=a|0;return i[a+28>>2]}function Vi(a){a=a|0;return i[a+60>>2]}function Ui(a){a=a|0;return i[a+48>>2]}function Ti(a){a=a|0;return i[a+40>>2]}function Qi(a){a=a|0;return i[a+56>>2]}function Pi(a){a=a|0;return i[a+88>>2]}function Oi(a){a=a|0;return i[a+80>>2]}function rm(a){return j[a+11|0]>>>7|0}function la(a,b){a=a|0;b=b|0;return 2}function ka(a,b){a=a|0;b=b|0;return 6}function gj(a){a=a|0;return!i[a>>2]|0}function cg(a){a=a|0;return i[a+8>>2]}function _a(a,b){a=a|0;b=b|0;return 0}function Zm(a){a=a|0;return i[a+4>>2]}function Si(a){a=a|0;return j[a+32|0]}function Ri(a){a=a|0;return g[a+24|0]}function Ec(a,b){a=a|0;b=b|0;return-1}function Bc(a){a=a|0;return i[a+4>>2]}function $a(a,b){a=a|0;b=b|0;return 1}function _j(a,b){a=a|0;b=b|0;Je(a,b)}function lm(a,b,c){if(c){pn(a,b,c)}}function gm(a,b,c){return hm(a,b,c)}function Pl(a){return a+ -48>>>0<10}function Lh(a,b,c){m[a>>2]=p(c|0)/b}function Ki(a){a=a|0;return i[a>>2]}function cj(){return Ik(Dm(108))|0}function aj(){return kl(Dm(84))|0}function Vm(a){a=a|0;return 16301}function Ni(){return Ia(Dm(96))|0}function Mi(){return Ea(Dm(64))|0}function Hi(){return zh(Dm(40))|0}function Gi(a){a=a|0;if(a){nn(a)}}function Dj(){return Uh(Dm(40))|0}function _m(a){a=a|0;Wm(a);nn(a)}function mm(a,b){return nm(a,b)}function ha(a){a=a|0;return a|0}function vg(a){a=a|0;nn(tg(a))}function um(a,b){g[a|0]=j[b|0]}function ul(a){a=a|0;nn(Kk(a))}function sg(a){a=a|0;nn(rg(a))}function qg(a){a=a|0;nn(pg(a))}function Ym(a){a=a|0;nn(Wm(a))}function Mb(a){a=a|0;nn(Lb(a))}function za(a){a=a|0;return 1}function jd(a){a=a|0;return 6}function ja(a){a=a|0;return 2}function cd(a){a=a|0;return 5}function Vc(a){a=a|0;return 3}function Lc(a){a=a|0;return 4}function Dc(a){a=a|0;return 0}function wm(a,b){g[a+11|0]=b}function vm(a,b){i[a+4>>2]=b}function Sm(){Ba(16264);x()}function Fm(){Ba(16200);x()}function zm(a,b){i[a>>2]=b}function ia(a){a=a|0;nn(a)}function Ol(){return 17248}function Fi(){return 14180}function zn(a){a=a|0;J=a}function yn(){return J|0}function Va(a){a=a|0;x()}function rk(){return 12}function qk(){return 11}function pk(){return 10}function vk(){return-5}function uk(){return-4}function tk(){return-3}function sk(){return-2}function ok(){return 9}function nk(){return 8}function mk(){return 7}function lk(){return 6}function kk(){return 5}function jk(){return 4}function ik(){return 3}function hk(){return 2}function gk(){return 1}function fk(){return 0}function ek(){return-1}function Tm(){im();x()}function im(){E();x()}function tm(a){a=a|0}function Um(){x()}function Z(){} +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,A=0;x=ea-672|0;ea=x;e=F[b+12>>2];a:{b:{d=F[b+20>>2];g=F[b+16>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;c:{if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>I[b+8>>2]:0){break c}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);F[a>>2]=f;d=F[b+20>>2];e=d;i=F[b+16>>2];k=i+4|0;d=k>>>0<4?d+1|0:d;F[b+16>>2]=k;F[b+20>>2]=d;if(f>>>0>31){break c}g=F[b+12>>2];d=e;e=i+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break c}d=k+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];e=d;f=F[b+16>>2];i=f+4|0;d=i>>>0<4?d+1|0:d;F[b+16>>2]=i;F[b+20>>2]=d;g=F[b+12>>2];d=e;e=f+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break c}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+12>>2]=f;d=F[b+20>>2];e=d;i=F[b+16>>2];k=i+4|0;d=k>>>0<4?d+1|0:d;F[b+16>>2]=k;F[b+20>>2]=d;d=F[a+20>>2];if((d|0)!=(f|0)?d:0){break c}g=F[b+12>>2];d=e;e=i+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break c}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+16>>2]=g;e=F[b+20>>2];i=F[b+16>>2]+4|0;e=i>>>0<4?e+1|0:e;F[b+16>>2]=i;F[b+20>>2]=e;if(g>>>0>=7){F[x>>2]=g;Fd(14780,x);break c}F[x+664>>2]=c;d:{if(!f){break d}e:{i=F[c>>2];if(f>>>0<=(F[c+8>>2]-i|0)/12>>>0){break e}if(f>>>0<357913942){d=F[c+4>>2];g=L(f,12);e=sa(g);f=e+g|0;e=e+L((d-i|0)/12|0,12)|0;g=e;if((d|0)!=(i|0)){g=e;while(1){g=g-12|0;d=d-12|0;F[g>>2]=F[d>>2];F[g+4>>2]=F[d+4>>2];F[g+8>>2]=F[d+8>>2];if((d|0)!=(i|0)){continue}break}}F[c+8>>2]=f;F[c+4>>2]=e;F[c>>2]=g;if(!i){break e}ra(i);break e}break b}f:{switch(F[a+16>>2]){case 0:u=zb(x+8|0,3);i=u;v=x+664|0;e=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;g:{if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>I[b+8>>2]:0){break g}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);F[i>>2]=f;d=F[b+20>>2];e=d;k=F[b+16>>2];m=k+4|0;d=m>>>0<4?d+1|0:d;F[b+16>>2]=m;F[b+20>>2]=d;if(f>>>0>32){break g}g=F[b+12>>2];d=e;e=k+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break g}d=m+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=g;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(!g){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}w=F[i+4>>2];e=0;f=ea-32|0;ea=f;b=F[i+12>>2];F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;if(b){if(b>>>0>=1073741824){break a}d=b<<2;e=sa(d);F[f+8>>2]=e;j=d+e|0;F[f+16>>2]=j;ua(e,0,d);F[f+12>>2]=j}d=F[i+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;j=F[f+12>>2];e=F[f+8>>2];b=F[i+12>>2]}F[d+4>>2]=j;F[d>>2]=e;F[d+8>>2]=F[f+16>>2];e=0;F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;h:{if(b){if(b>>>0>=1073741824){break a}b=b<<2;h=sa(b);F[f+8>>2]=h;e=b+h|0;F[f+16>>2]=e;ua(h,0,b);F[f+12>>2]=e}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;h=F[f+8>>2];e=F[f+12>>2]}F[b+4>>2]=e;F[b>>2]=h;F[b+8>>2]=F[f+16>>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;za(f+8|0);b=F[f+24>>2]+F[f+28>>2]|0;d=(b>>>0)/341|0;b=F[F[f+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]=w;d=F[f+28>>2];b=d+1|0;F[f+28>>2]=b;i:{if(b>>>0>>0){break i}z=i+96|0;while(1){k=F[f+12>>2];e=F[f+24>>2];j=b-1|0;d=e+j|0;g=(d>>>0)/341|0;d=F[k+(g<<2)>>2]+L(d-L(g,341)|0,12)|0;m=F[d+8>>2];h=F[d+4>>2];g=F[d>>2];F[f+28>>2]=j;d=F[f+16>>2];j=d-k|0;if(((j?L(j>>2,341)-1|0:0)-(b+e|0)|0)+1>>>0>=682){ra(F[d-4>>2]);F[f+16>>2]=F[f+16>>2]-4}e=0;if(g>>>0>w>>>0){break i}h=(h|0)==(F[i+12>>2]-1|0)?0:h+1|0;if(h>>>0>=I[i+12>>2]){break i}j=L(m,12);l=j+F[i+132>>2]|0;k=j+F[i+120>>2]|0;j:{k:{n=h<<2;d=F[i>>2]-F[n+F[l>>2]>>2]|0;if(!d){if(!g){break k}while(1){b=F[k>>2];n=F[b+8>>2];o=F[b+4>>2];p=F[b>>2];j=F[v>>2];b=F[j+4>>2];l=F[j+8>>2];l:{if(b>>>0>>0){F[b+8>>2]=n;F[b+4>>2]=o;F[b>>2]=p;F[j+4>>2]=b+12;break l}m=F[j>>2];s=(b-m|0)/12|0;h=s+1|0;if(h>>>0>=357913942){break a}l=(l-m|0)/12|0;r=l<<1;l=l>>>0<178956970?h>>>0>r>>>0?h:r:357913941;d=0;m:{if(!l){break m}if(l>>>0>=357913942){break b}d=sa(L(l,12))}h=d+L(s,12)|0;F[h+8>>2]=n;F[h+4>>2]=o;F[h>>2]=p;n=h+12|0;if((b|0)!=(m|0)){while(1){h=h-12|0;b=b-12|0;F[h>>2]=F[b>>2];F[h+4>>2]=F[b+4>>2];F[h+8>>2]=F[b+8>>2];if((b|0)!=(m|0)){continue}break}}F[j+8>>2]=d+L(l,12);F[j+4>>2]=n;F[j>>2]=h;if(!m){break l}ra(m)}F[i+8>>2]=F[i+8>>2]+1;e=e+1|0;if((g|0)!=(e|0)){continue}break}break k}n:{o:{p:{q:{if(g>>>0<=2){d=F[i+108>>2];F[d>>2]=h;e=1;b=F[i+12>>2];if(b>>>0>1){break q}break n}if(I[i+8>>2]>I[i+4>>2]){break i}b=F[i+120>>2];o=m+1|0;l=L(o,12);e=b+l|0;if((e|0)!=(k|0)){Ba(e,F[k>>2],F[k+4>>2]);b=F[i+120>>2]}b=n+F[b+l>>2]|0;F[b>>2]=F[b>>2]+(1<>2];k=32-d|0;r:{if((b|0)<=(k|0)){k=F[i+28>>2];if((k|0)==F[i+20>>2]){e=0;break r}e=F[k>>2];p=b+d|0;F[i+32>>2]=p;e=e<>>32-b|0;if((p|0)!=32){break r}F[i+32>>2]=0;F[i+28>>2]=k+4;break r}e=F[i+28>>2];p=e+4|0;if((p|0)==F[i+20>>2]){e=0;break r}s=F[e>>2];F[i+28>>2]=p;k=b-k|0;F[i+32>>2]=k;e=F[e+4>>2]>>>32-k|s<>>32-b}b=(g>>>1|0)-e|0;e=g-b|0;s:{if((e|0)==(b|0)){d=b;break s}d=F[i+88>>2];if((d|0)==F[i+80>>2]){break p}g=F[d>>2];k=F[i+92>>2];p=k+1|0;F[i+92>>2]=p;g=g&-2147483648>>>k;t:{if((p|0)==32){F[i+92>>2]=0;F[i+88>>2]=d+4;if(g){break t}break p}if(!g){break p}}d=e}e=b;break o}while(1){h=(b-1|0)==(h|0)?0:h+1|0;F[d+(e<<2)>>2]=h;b=F[i+12>>2];e=e+1|0;if(b>>>0>e>>>0){continue}break}break n}d=b}b=F[i+132>>2];g=b+j|0;j=F[g>>2];k=j+n|0;F[k>>2]=F[k>>2]+1;Ba(b+l|0,j,F[g+4>>2]);if(e){b=F[f+28>>2]+F[f+24>>2]|0;j=F[f+12>>2];g=F[f+16>>2]-j|0;if((b|0)==((g?L(g>>2,341)-1|0:0)|0)){za(f+8|0);j=F[f+12>>2];b=F[f+24>>2]+F[f+28>>2]|0}g=(b>>>0)/341|0;b=F[(g<<2)+j>>2]+L(b-L(g,341)|0,12)|0;F[b+8>>2]=m;F[b+4>>2]=h;F[b>>2]=e;F[f+28>>2]=F[f+28>>2]+1}if(!d){break k}b=F[f+28>>2]+F[f+24>>2]|0;e=F[f+12>>2];g=F[f+16>>2]-e|0;if((b|0)==((g?L(g>>2,341)-1|0:0)|0)){za(f+8|0);e=F[f+12>>2];b=F[f+24>>2]+F[f+28>>2]|0}g=e;e=(b>>>0)/341|0;b=F[g+(e<<2)>>2]+L(b-L(e,341)|0,12)|0;F[b+8>>2]=o;F[b+4>>2]=h;F[b>>2]=d;b=F[f+28>>2]+1|0;F[f+28>>2]=b;break j}d=0;if(!g){break k}while(1){if(b){p=F[k>>2];s=F[l>>2];j=F[i+96>>2];r=F[i+108>>2];b=0;while(1){m=r+(b<<2)|0;F[j+(F[m>>2]<<2)>>2]=0;h=F[m>>2]<<2;e=F[i>>2]-F[h+s>>2]|0;u:{if(!e){break u}h=h+j|0;n=F[i+52>>2];q=32-n|0;if((q|0)>=(e|0)){o=F[i+48>>2];if((o|0)==F[i+40>>2]){F[h>>2]=0;break u}F[h>>2]=F[o>>2]<>>32-e;e=e+F[i+52>>2]|0;F[i+52>>2]=e;if((e|0)!=32){break u}F[i+52>>2]=0;F[i+48>>2]=o+4;break u}o=F[i+48>>2];t=o+4|0;if((t|0)==F[i+40>>2]){F[h>>2]=0;break u}y=F[o>>2];F[i+48>>2]=t;q=e-q|0;F[i+52>>2]=q;F[h>>2]=F[o+4>>2]>>>32-q|y<>>32-e}e=F[m>>2]<<2;h=e+j|0;F[h>>2]=F[h>>2]|F[e+p>>2];b=b+1|0;if(b>>>0>2]){continue}break}}mb(v,z);F[i+8>>2]=F[i+8>>2]+1;d=d+1|0;if((g|0)==(d|0)){break k}b=F[i+12>>2];continue}}b=F[f+28>>2]}if(b){continue}break}}F[f+28>>2]=0;b=F[f+16>>2];g=F[f+12>>2];h=b-g>>2;if(h>>>0>=3){while(1){ra(F[g>>2]);g=F[f+12>>2]+4|0;F[f+12>>2]=g;b=F[f+16>>2];h=b-g>>2;if(h>>>0>2){continue}break}}e=170;v:{switch(h-1|0){case 1:e=341;case 0:F[f+24>>2]=e;break;default:break v}}w:{if((b|0)==(g|0)){break w}while(1){ra(F[g>>2]);g=g+4|0;if((g|0)!=(b|0)){continue}break}b=F[f+16>>2];d=F[f+12>>2];if((b|0)==(d|0)){break w}F[f+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[f+8>>2];if(b){ra(b)}ea=f+32|0;break h}}Ab(u);break d;case 1:u=zb(x+8|0,3);i=u;v=x+664|0;e=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];h=g+4|0;d=h>>>0<4?d+1|0:d;x:{if((d|0)>(e|0)?1:(d|0)>=(e|0)?h>>>0>I[b+8>>2]:0){break x}d=g+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i>>2]=h;d=F[b+20>>2];e=d;f=F[b+16>>2];k=f+4|0;d=k>>>0<4?d+1|0:d;F[b+16>>2]=k;F[b+20>>2]=d;if(h>>>0>32){break x}g=F[b+12>>2];d=e;e=f+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break x}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[i+4>>2]=g;e=F[b+20>>2];h=F[b+16>>2]+4|0;e=h>>>0<4?e+1|0:e;F[b+16>>2]=h;F[b+20>>2]=e;if(!g){break x}F[i+8>>2]=0;if(!ya(i+16|0,b)){break x}if(!ya(i+36|0,b)){break x}if(!ya(i+56|0,b)){break x}if(!ya(i+76|0,b)){break x}w=F[i+4>>2];e=0;f=ea-32|0;ea=f;b=F[i+12>>2];F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;if(b){if(b>>>0>=1073741824){break a}d=b<<2;j=sa(d);F[f+8>>2]=j;e=d+j|0;F[f+16>>2]=e;ua(j,0,d);F[f+12>>2]=e}d=F[i+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;e=F[f+12>>2];j=F[f+8>>2];b=F[i+12>>2]}F[d+4>>2]=e;F[d>>2]=j;F[d+8>>2]=F[f+16>>2];j=0;F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;h=0;y:{if(b){if(b>>>0>=1073741824){break a}b=b<<2;h=sa(b);F[f+8>>2]=h;j=b+h|0;F[f+16>>2]=j;ua(h,0,b);F[f+12>>2]=j}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;j=F[f+12>>2];h=F[f+8>>2]}F[b+4>>2]=j;F[b>>2]=h;F[b+8>>2]=F[f+16>>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;za(f+8|0);b=F[f+24>>2]+F[f+28>>2]|0;d=(b>>>0)/341|0;b=F[F[f+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]=w;d=F[f+28>>2];b=d+1|0;F[f+28>>2]=b;z:{if(b>>>0>>0){break z}z=i+96|0;while(1){m=F[f+12>>2];e=F[f+24>>2];j=b-1|0;d=e+j|0;g=(d>>>0)/341|0;d=F[m+(g<<2)>>2]+L(d-L(g,341)|0,12)|0;k=F[d+8>>2];h=F[d+4>>2];g=F[d>>2];F[f+28>>2]=j;d=F[f+16>>2];j=d-m|0;if(((j?L(j>>2,341)-1|0:0)-(b+e|0)|0)+1>>>0>=682){ra(F[d-4>>2]);F[f+16>>2]=F[f+16>>2]-4}if(g>>>0>w>>>0){break z}e=0;b=F[i+12>>2];h=(h|0)==(b-1|0)?0:h+1|0;if(h>>>0>=b>>>0){break z}b=F[i+120>>2];j=L(k,12);m=b+j|0;A:{B:{l=h<<2;o=j+F[i+132>>2]|0;d=F[i>>2]-F[l+F[o>>2]>>2]|0;if(!d){if(!g){break B}while(1){b=F[m>>2];n=F[b+8>>2];o=F[b+4>>2];p=F[b>>2];j=F[v>>2];b=F[j+4>>2];l=F[j+8>>2];C:{if(b>>>0>>0){F[b+8>>2]=n;F[b+4>>2]=o;F[b>>2]=p;F[j+4>>2]=b+12;break C}k=F[j>>2];s=(b-k|0)/12|0;h=s+1|0;if(h>>>0>=357913942){break a}l=(l-k|0)/12|0;r=l<<1;l=l>>>0<178956970?h>>>0>r>>>0?h:r:357913941;d=0;D:{if(!l){break D}if(l>>>0>=357913942){break b}d=sa(L(l,12))}h=d+L(s,12)|0;F[h+8>>2]=n;F[h+4>>2]=o;F[h>>2]=p;n=h+12|0;if((b|0)!=(k|0)){while(1){h=h-12|0;b=b-12|0;F[h>>2]=F[b>>2];F[h+4>>2]=F[b+4>>2];F[h+8>>2]=F[b+8>>2];if((b|0)!=(k|0)){continue}break}}F[j+8>>2]=d+L(l,12);F[j+4>>2]=n;F[j>>2]=h;if(!k){break C}ra(k)}F[i+8>>2]=F[i+8>>2]+1;e=e+1|0;if((g|0)!=(e|0)){continue}break}break B}E:{F:{G:{H:{if(g>>>0<=2){d=F[i+108>>2];F[d>>2]=h;j=1;b=F[i+12>>2];if(b>>>0>1){break H}break E}if(I[i+8>>2]>I[i+4>>2]){break z}n=b;b=j+12|0;Ba(n+b|0,F[m>>2],F[m+4>>2]);b=l+F[b+F[i+120>>2]>>2]|0;F[b>>2]=F[b>>2]+(1<>2];m=32-d|0;I:{if((b|0)<=(m|0)){m=F[i+28>>2];if((m|0)==F[i+20>>2]){break I}e=F[m>>2];n=b+d|0;F[i+32>>2]=n;e=e<>>32-b|0;if((n|0)!=32){break I}F[i+32>>2]=0;F[i+28>>2]=m+4;break I}e=F[i+28>>2];n=e+4|0;if((n|0)==F[i+20>>2]){e=0;break I}o=F[e>>2];F[i+28>>2]=n;m=b-m|0;F[i+32>>2]=m;e=F[e+4>>2]>>>32-m|o<>>32-b}m=k+1|0;b=(g>>>1|0)-e|0;e=g-b|0;J:{if((e|0)==(b|0)){d=b;break J}d=F[i+88>>2];if((d|0)==F[i+80>>2]){break G}g=F[d>>2];n=F[i+92>>2];o=n+1|0;F[i+92>>2]=o;g=g&-2147483648>>>n;K:{if((o|0)==32){F[i+92>>2]=0;F[i+88>>2]=d+4;if(g){break K}break G}if(!g){break G}}d=e}e=b;break F}while(1){h=(b-1|0)==(h|0)?0:h+1|0;F[d+(j<<2)>>2]=h;b=F[i+12>>2];j=j+1|0;if(b>>>0>j>>>0){continue}break}break E}d=b}b=F[i+132>>2];g=b+j|0;j=F[g>>2];l=j+l|0;F[l>>2]=F[l>>2]+1;Ba(b+L(m,12)|0,j,F[g+4>>2]);if(e){b=F[f+28>>2]+F[f+24>>2]|0;j=F[f+12>>2];g=F[f+16>>2]-j|0;if((b|0)==((g?L(g>>2,341)-1|0:0)|0)){za(f+8|0);j=F[f+12>>2];b=F[f+24>>2]+F[f+28>>2]|0}g=(b>>>0)/341|0;b=F[(g<<2)+j>>2]+L(b-L(g,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=h;F[b>>2]=e;F[f+28>>2]=F[f+28>>2]+1}if(!d){break B}b=F[f+28>>2]+F[f+24>>2]|0;j=F[f+12>>2];e=F[f+16>>2]-j|0;if((b|0)==((e?L(e>>2,341)-1|0:0)|0)){za(f+8|0);j=F[f+12>>2];b=F[f+24>>2]+F[f+28>>2]|0}e=(b>>>0)/341|0;b=F[(e<<2)+j>>2]+L(b-L(e,341)|0,12)|0;F[b+8>>2]=m;F[b+4>>2]=h;F[b>>2]=d;b=F[f+28>>2]+1|0;F[f+28>>2]=b;break A}d=0;if(!g){break B}while(1){if(b){p=F[m>>2];s=F[o>>2];j=F[i+96>>2];r=F[i+108>>2];b=0;while(1){k=r+(b<<2)|0;F[j+(F[k>>2]<<2)>>2]=0;h=F[k>>2]<<2;e=F[i>>2]-F[h+s>>2]|0;L:{if(!e){break L}h=h+j|0;l=F[i+52>>2];q=32-l|0;if((q|0)>=(e|0)){n=F[i+48>>2];if((n|0)==F[i+40>>2]){F[h>>2]=0;break L}F[h>>2]=F[n>>2]<>>32-e;e=e+F[i+52>>2]|0;F[i+52>>2]=e;if((e|0)!=32){break L}F[i+52>>2]=0;F[i+48>>2]=n+4;break L}n=F[i+48>>2];t=n+4|0;if((t|0)==F[i+40>>2]){F[h>>2]=0;break L}y=F[n>>2];F[i+48>>2]=t;q=e-q|0;F[i+52>>2]=q;F[h>>2]=F[n+4>>2]>>>32-q|y<>>32-e}e=F[k>>2]<<2;h=e+j|0;F[h>>2]=F[h>>2]|F[e+p>>2];b=b+1|0;if(b>>>0>2]){continue}break}}mb(v,z);F[i+8>>2]=F[i+8>>2]+1;d=d+1|0;if((g|0)==(d|0)){break B}b=F[i+12>>2];continue}}b=F[f+28>>2]}if(b){continue}break}}F[f+28>>2]=0;b=F[f+16>>2];g=F[f+12>>2];h=b-g>>2;if(h>>>0>=3){while(1){ra(F[g>>2]);g=F[f+12>>2]+4|0;F[f+12>>2]=g;b=F[f+16>>2];h=b-g>>2;if(h>>>0>2){continue}break}}j=170;M:{switch(h-1|0){case 1:j=341;case 0:F[f+24>>2]=j;break;default:break M}}N:{if((b|0)==(g|0)){break N}while(1){ra(F[g>>2]);g=g+4|0;if((g|0)!=(b|0)){continue}break}b=F[f+16>>2];d=F[f+12>>2];if((b|0)==(d|0)){break N}F[f+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[f+8>>2];if(b){ra(b)}ea=f+32|0;break y}}Ab(u);break d;case 2:u=xb(x+8|0,3);i=u;v=x+664|0;e=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;O:{if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>I[b+8>>2]:0){break O}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);F[i>>2]=f;d=F[b+20>>2];e=d;k=F[b+16>>2];m=k+4|0;d=m>>>0<4?d+1|0:d;F[b+16>>2]=m;F[b+20>>2]=d;if(f>>>0>32){break O}g=F[b+12>>2];d=e;e=k+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break O}d=m+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=g;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(!g){break O}F[i+8>>2]=0;if(!xa(i+16|0,b)){break O}if(!ya(i+32|0,b)){break O}if(!ya(i+52|0,b)){break O}if(!ya(i+72|0,b)){break O}w=F[i+4>>2];e=0;f=ea-32|0;ea=f;b=F[i+12>>2];F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;if(b){if(b>>>0>=1073741824){break a}d=b<<2;e=sa(d);F[f+8>>2]=e;j=d+e|0;F[f+16>>2]=j;ua(e,0,d);F[f+12>>2]=j}d=F[i+116>>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;j=F[f+12>>2];e=F[f+8>>2];b=F[i+12>>2]}F[d+4>>2]=j;F[d>>2]=e;F[d+8>>2]=F[f+16>>2];e=0;F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;P:{if(b){if(b>>>0>=1073741824){break a}b=b<<2;h=sa(b);F[f+8>>2]=h;e=b+h|0;F[f+16>>2]=e;ua(h,0,b);F[f+12>>2]=e}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;h=F[f+8>>2];e=F[f+12>>2]}F[b+4>>2]=e;F[b>>2]=h;F[b+8>>2]=F[f+16>>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;za(f+8|0);b=F[f+24>>2]+F[f+28>>2]|0;d=(b>>>0)/341|0;b=F[F[f+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]=w;d=F[f+28>>2];b=d+1|0;F[f+28>>2]=b;Q:{if(b>>>0>>0){break Q}z=i+92|0;s=i+16|0;while(1){k=F[f+12>>2];e=F[f+24>>2];j=b-1|0;d=e+j|0;g=(d>>>0)/341|0;d=F[k+(g<<2)>>2]+L(d-L(g,341)|0,12)|0;m=F[d+8>>2];h=F[d+4>>2];g=F[d>>2];F[f+28>>2]=j;d=F[f+16>>2];j=d-k|0;if(((j?L(j>>2,341)-1|0:0)-(b+e|0)|0)+1>>>0>=682){ra(F[d-4>>2]);F[f+16>>2]=F[f+16>>2]-4}e=0;if(g>>>0>w>>>0){break Q}h=(h|0)==(F[i+12>>2]-1|0)?0:h+1|0;if(h>>>0>=I[i+12>>2]){break Q}j=L(m,12);l=j+F[i+128>>2]|0;k=j+F[i+116>>2]|0;R:{n=h<<2;d=F[i>>2]-F[n+F[l>>2]>>2]|0;if(!d){if(!g){break R}while(1){b=F[k>>2];n=F[b+8>>2];o=F[b+4>>2];p=F[b>>2];j=F[v>>2];b=F[j+4>>2];l=F[j+8>>2];S:{if(b>>>0>>0){F[b+8>>2]=n;F[b+4>>2]=o;F[b>>2]=p;F[j+4>>2]=b+12;break S}m=F[j>>2];r=(b-m|0)/12|0;h=r+1|0;if(h>>>0>=357913942){break a}l=(l-m|0)/12|0;q=l<<1;l=l>>>0<178956970?h>>>0>q>>>0?h:q:357913941;d=0;T:{if(!l){break T}if(l>>>0>=357913942){break b}d=sa(L(l,12))}h=d+L(r,12)|0;F[h+8>>2]=n;F[h+4>>2]=o;F[h>>2]=p;n=h+12|0;if((b|0)!=(m|0)){while(1){h=h-12|0;b=b-12|0;F[h>>2]=F[b>>2];F[h+4>>2]=F[b+4>>2];F[h+8>>2]=F[b+8>>2];if((b|0)!=(m|0)){continue}break}}F[j+8>>2]=d+L(l,12);F[j+4>>2]=n;F[j>>2]=h;if(!m){break S}ra(m)}F[i+8>>2]=F[i+8>>2]+1;e=e+1|0;if((g|0)!=(e|0)){continue}break}break R}U:{V:{W:{X:{if(g>>>0<=2){d=F[i+104>>2];F[d>>2]=h;e=1;b=F[i+12>>2];if(b>>>0>1){break X}break U}if(I[i+8>>2]>I[i+4>>2]){break Q}b=F[i+116>>2];o=m+1|0;l=L(o,12);e=b+l|0;if((e|0)!=(k|0)){Ba(e,F[k>>2],F[k+4>>2]);b=F[i+116>>2]}b=n+F[b+l>>2]|0;F[b>>2]=F[b>>2]+(1<>2]=0;qc(s,O(g)^31,f+4|0);b=(g>>>1|0)-F[f+4>>2]|0;e=g-b|0;Y:{if((e|0)==(b|0)){d=b;break Y}d=F[i+84>>2];if((d|0)==F[i+76>>2]){break W}g=F[d>>2];k=F[i+88>>2];p=k+1|0;F[i+88>>2]=p;g=g&-2147483648>>>k;Z:{if((p|0)==32){F[i+88>>2]=0;F[i+84>>2]=d+4;if(g){break Z}break W}if(!g){break W}}d=e}e=b;break V}while(1){h=(b-1|0)==(h|0)?0:h+1|0;F[d+(e<<2)>>2]=h;b=F[i+12>>2];e=e+1|0;if(b>>>0>e>>>0){continue}break}break U}d=b}b=F[i+128>>2];g=b+j|0;j=F[g>>2];k=j+n|0;F[k>>2]=F[k>>2]+1;Ba(b+l|0,j,F[g+4>>2]);if(e){b=F[f+28>>2]+F[f+24>>2]|0;j=F[f+12>>2];g=F[f+16>>2]-j|0;if((b|0)==((g?L(g>>2,341)-1|0:0)|0)){za(f+8|0);j=F[f+12>>2];b=F[f+24>>2]+F[f+28>>2]|0}g=(b>>>0)/341|0;b=F[(g<<2)+j>>2]+L(b-L(g,341)|0,12)|0;F[b+8>>2]=m;F[b+4>>2]=h;F[b>>2]=e;F[f+28>>2]=F[f+28>>2]+1}if(!d){break R}b=F[f+28>>2]+F[f+24>>2]|0;e=F[f+12>>2];g=F[f+16>>2]-e|0;if((b|0)==((g?L(g>>2,341)-1|0:0)|0)){za(f+8|0);e=F[f+12>>2];b=F[f+24>>2]+F[f+28>>2]|0}g=e;e=(b>>>0)/341|0;b=F[g+(e<<2)>>2]+L(b-L(e,341)|0,12)|0;F[b+8>>2]=o;F[b+4>>2]=h;F[b>>2]=d;F[f+28>>2]=F[f+28>>2]+1;break R}d=0;if(!g){break R}while(1){if(b){p=F[k>>2];r=F[l>>2];j=F[i+92>>2];q=F[i+104>>2];b=0;while(1){m=q+(b<<2)|0;F[j+(F[m>>2]<<2)>>2]=0;h=F[m>>2]<<2;e=F[i>>2]-F[h+r>>2]|0;_:{if(!e){break _}h=h+j|0;n=F[i+48>>2];t=32-n|0;if((t|0)>=(e|0)){o=F[i+44>>2];if((o|0)==F[i+36>>2]){F[h>>2]=0;break _}F[h>>2]=F[o>>2]<>>32-e;e=e+F[i+48>>2]|0;F[i+48>>2]=e;if((e|0)!=32){break _}F[i+48>>2]=0;F[i+44>>2]=o+4;break _}o=F[i+44>>2];y=o+4|0;if((y|0)==F[i+36>>2]){F[h>>2]=0;break _}A=F[o>>2];F[i+44>>2]=y;t=e-t|0;F[i+48>>2]=t;F[h>>2]=F[o+4>>2]>>>32-t|A<>>32-e}e=F[m>>2]<<2;h=e+j|0;F[h>>2]=F[h>>2]|F[e+p>>2];b=b+1|0;if(b>>>0>2]){continue}break}}mb(v,z);F[i+8>>2]=F[i+8>>2]+1;d=d+1|0;if((g|0)==(d|0)){break R}b=F[i+12>>2];continue}}b=F[f+28>>2];if(b){continue}break}}F[f+28>>2]=0;b=F[f+16>>2];g=F[f+12>>2];h=b-g>>2;if(h>>>0>=3){while(1){ra(F[g>>2]);g=F[f+12>>2]+4|0;F[f+12>>2]=g;b=F[f+16>>2];h=b-g>>2;if(h>>>0>2){continue}break}}e=170;$:{switch(h-1|0){case 1:e=341;case 0:F[f+24>>2]=e;break;default:break $}}aa:{if((b|0)==(g|0)){break aa}while(1){ra(F[g>>2]);g=g+4|0;if((g|0)!=(b|0)){continue}break}b=F[f+16>>2];d=F[f+12>>2];if((b|0)==(d|0)){break aa}F[f+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[f+8>>2];if(b){ra(b)}ea=f+32|0;break P}}yb(u);break d;case 3:u=xb(x+8|0,3);i=u;v=x+664|0;e=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];h=g+4|0;d=h>>>0<4?d+1|0:d;ba:{if((d|0)>(e|0)?1:(d|0)>=(e|0)?h>>>0>I[b+8>>2]:0){break ba}d=g+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i>>2]=h;d=F[b+20>>2];e=d;f=F[b+16>>2];k=f+4|0;d=k>>>0<4?d+1|0:d;F[b+16>>2]=k;F[b+20>>2]=d;if(h>>>0>32){break ba}g=F[b+12>>2];d=e;e=f+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break ba}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[i+4>>2]=g;e=F[b+20>>2];h=F[b+16>>2]+4|0;e=h>>>0<4?e+1|0:e;F[b+16>>2]=h;F[b+20>>2]=e;if(!g){break ba}F[i+8>>2]=0;if(!xa(i+16|0,b)){break ba}if(!ya(i+32|0,b)){break ba}if(!ya(i+52|0,b)){break ba}if(!ya(i+72|0,b)){break ba}w=F[i+4>>2];e=0;f=ea-32|0;ea=f;b=F[i+12>>2];F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;if(b){if(b>>>0>=1073741824){break a}d=b<<2;j=sa(d);F[f+8>>2]=j;e=d+j|0;F[f+16>>2]=e;ua(j,0,d);F[f+12>>2]=e}d=F[i+116>>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;e=F[f+12>>2];j=F[f+8>>2];b=F[i+12>>2]}F[d+4>>2]=e;F[d>>2]=j;F[d+8>>2]=F[f+16>>2];j=0;F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;h=0;ca:{if(b){if(b>>>0>=1073741824){break a}b=b<<2;h=sa(b);F[f+8>>2]=h;j=b+h|0;F[f+16>>2]=j;ua(h,0,b);F[f+12>>2]=j}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;j=F[f+12>>2];h=F[f+8>>2]}F[b+4>>2]=j;F[b>>2]=h;F[b+8>>2]=F[f+16>>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;za(f+8|0);b=F[f+24>>2]+F[f+28>>2]|0;d=(b>>>0)/341|0;b=F[F[f+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]=w;d=F[f+28>>2];b=d+1|0;F[f+28>>2]=b;da:{if(b>>>0>>0){break da}z=i+92|0;s=i+16|0;while(1){m=F[f+12>>2];e=F[f+24>>2];j=b-1|0;d=e+j|0;g=(d>>>0)/341|0;d=F[m+(g<<2)>>2]+L(d-L(g,341)|0,12)|0;k=F[d+8>>2];h=F[d+4>>2];g=F[d>>2];F[f+28>>2]=j;d=F[f+16>>2];j=d-m|0;if(((j?L(j>>2,341)-1|0:0)-(b+e|0)|0)+1>>>0>=682){ra(F[d-4>>2]);F[f+16>>2]=F[f+16>>2]-4}if(g>>>0>w>>>0){break da}e=0;b=F[i+12>>2];h=(h|0)==(b-1|0)?0:h+1|0;if(h>>>0>=b>>>0){break da}b=F[i+116>>2];j=L(k,12);m=b+j|0;ea:{l=h<<2;o=j+F[i+128>>2]|0;d=F[i>>2]-F[l+F[o>>2]>>2]|0;if(!d){if(!g){break ea}while(1){b=F[m>>2];n=F[b+8>>2];o=F[b+4>>2];p=F[b>>2];j=F[v>>2];b=F[j+4>>2];l=F[j+8>>2];fa:{if(b>>>0>>0){F[b+8>>2]=n;F[b+4>>2]=o;F[b>>2]=p;F[j+4>>2]=b+12;break fa}k=F[j>>2];r=(b-k|0)/12|0;h=r+1|0;if(h>>>0>=357913942){break a}l=(l-k|0)/12|0;q=l<<1;l=l>>>0<178956970?h>>>0>q>>>0?h:q:357913941;d=0;ga:{if(!l){break ga}if(l>>>0>=357913942){break b}d=sa(L(l,12))}h=d+L(r,12)|0;F[h+8>>2]=n;F[h+4>>2]=o;F[h>>2]=p;n=h+12|0;if((b|0)!=(k|0)){while(1){h=h-12|0;b=b-12|0;F[h>>2]=F[b>>2];F[h+4>>2]=F[b+4>>2];F[h+8>>2]=F[b+8>>2];if((b|0)!=(k|0)){continue}break}}F[j+8>>2]=d+L(l,12);F[j+4>>2]=n;F[j>>2]=h;if(!k){break fa}ra(k)}F[i+8>>2]=F[i+8>>2]+1;e=e+1|0;if((g|0)!=(e|0)){continue}break}break ea}ha:{ia:{ja:{ka:{if(g>>>0<=2){d=F[i+104>>2];F[d>>2]=h;j=1;b=F[i+12>>2];if(b>>>0>1){break ka}break ha}if(I[i+8>>2]>I[i+4>>2]){break da}e=b;b=j+12|0;Ba(e+b|0,F[m>>2],F[m+4>>2]);b=l+F[b+F[i+116>>2]>>2]|0;F[b>>2]=F[b>>2]+(1<>2]=0;qc(s,O(g)^31,f+4|0);m=k+1|0;b=(g>>>1|0)-F[f+4>>2]|0;e=g-b|0;la:{if((e|0)==(b|0)){d=b;break la}d=F[i+84>>2];if((d|0)==F[i+76>>2]){break ja}g=F[d>>2];n=F[i+88>>2];o=n+1|0;F[i+88>>2]=o;g=g&-2147483648>>>n;ma:{if((o|0)==32){F[i+88>>2]=0;F[i+84>>2]=d+4;if(g){break ma}break ja}if(!g){break ja}}d=e}e=b;break ia}while(1){h=(b-1|0)==(h|0)?0:h+1|0;F[d+(j<<2)>>2]=h;b=F[i+12>>2];j=j+1|0;if(b>>>0>j>>>0){continue}break}break ha}d=b}b=F[i+128>>2];g=b+j|0;j=F[g>>2];l=j+l|0;F[l>>2]=F[l>>2]+1;Ba(b+L(m,12)|0,j,F[g+4>>2]);if(e){b=F[f+28>>2]+F[f+24>>2]|0;j=F[f+12>>2];g=F[f+16>>2]-j|0;if((b|0)==((g?L(g>>2,341)-1|0:0)|0)){za(f+8|0);j=F[f+12>>2];b=F[f+24>>2]+F[f+28>>2]|0}g=(b>>>0)/341|0;b=F[(g<<2)+j>>2]+L(b-L(g,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=h;F[b>>2]=e;F[f+28>>2]=F[f+28>>2]+1}if(!d){break ea}b=F[f+28>>2]+F[f+24>>2]|0;j=F[f+12>>2];e=F[f+16>>2]-j|0;if((b|0)==((e?L(e>>2,341)-1|0:0)|0)){za(f+8|0);j=F[f+12>>2];b=F[f+24>>2]+F[f+28>>2]|0}e=(b>>>0)/341|0;b=F[(e<<2)+j>>2]+L(b-L(e,341)|0,12)|0;F[b+8>>2]=m;F[b+4>>2]=h;F[b>>2]=d;F[f+28>>2]=F[f+28>>2]+1;break ea}d=0;if(!g){break ea}while(1){if(b){p=F[m>>2];r=F[o>>2];j=F[i+92>>2];q=F[i+104>>2];b=0;while(1){k=q+(b<<2)|0;F[j+(F[k>>2]<<2)>>2]=0;h=F[k>>2]<<2;e=F[i>>2]-F[h+r>>2]|0;na:{if(!e){break na}h=h+j|0;l=F[i+48>>2];t=32-l|0;if((t|0)>=(e|0)){n=F[i+44>>2];if((n|0)==F[i+36>>2]){F[h>>2]=0;break na}F[h>>2]=F[n>>2]<>>32-e;e=e+F[i+48>>2]|0;F[i+48>>2]=e;if((e|0)!=32){break na}F[i+48>>2]=0;F[i+44>>2]=n+4;break na}n=F[i+44>>2];y=n+4|0;if((y|0)==F[i+36>>2]){F[h>>2]=0;break na}A=F[n>>2];F[i+44>>2]=y;t=e-t|0;F[i+48>>2]=t;F[h>>2]=F[n+4>>2]>>>32-t|A<>>32-e}e=F[k>>2]<<2;h=e+j|0;F[h>>2]=F[h>>2]|F[e+p>>2];b=b+1|0;if(b>>>0>2]){continue}break}}mb(v,z);F[i+8>>2]=F[i+8>>2]+1;d=d+1|0;if((g|0)==(d|0)){break ea}b=F[i+12>>2];continue}}b=F[f+28>>2];if(b){continue}break}}F[f+28>>2]=0;b=F[f+16>>2];g=F[f+12>>2];h=b-g>>2;if(h>>>0>=3){while(1){ra(F[g>>2]);g=F[f+12>>2]+4|0;F[f+12>>2]=g;b=F[f+16>>2];h=b-g>>2;if(h>>>0>2){continue}break}}j=170;oa:{switch(h-1|0){case 1:j=341;case 0:F[f+24>>2]=j;break;default:break oa}}pa:{if((b|0)==(g|0)){break pa}while(1){ra(F[g>>2]);g=g+4|0;if((g|0)!=(b|0)){continue}break}b=F[f+16>>2];d=F[f+12>>2];if((b|0)==(d|0)){break pa}F[f+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[f+8>>2];if(b){ra(b)}ea=f+32|0;break ca}}yb(u);break d;case 4:u=ab(x+8|0,3);f=u;v=x+664|0;e=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];h=g+4|0;d=h>>>0<4?d+1|0:d;qa:{if((d|0)>(e|0)?1:(d|0)>=(e|0)?h>>>0>I[b+8>>2]:0){break qa}d=g+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[f>>2]=h;d=F[b+20>>2];e=d;j=F[b+16>>2];i=j+4|0;d=i>>>0<4?d+1|0:d;F[b+16>>2]=i;F[b+20>>2]=d;if(h>>>0>32){break qa}g=F[b+12>>2];d=e;e=j+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break qa}d=i+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[f+4>>2]=g;e=F[b+20>>2];h=F[b+16>>2]+4|0;e=h>>>0<4?e+1|0:e;F[b+16>>2]=h;F[b+20>>2]=e;if(!g){break qa}F[f+8>>2]=0;if(!vb(f+16|0,b)){break qa}if(!ya(f+544|0,b)){break qa}if(!ya(f+564|0,b)){break qa}if(!ya(f+584|0,b)){break qa}w=F[f+4>>2];b=0;d=0;e=ea-32|0;ea=e;g=F[f+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}h=g<<2;b=sa(h);F[e+8>>2]=b;d=b+h|0;F[e+16>>2]=d;ua(b,0,h);F[e+12>>2]=d}h=F[f+628>>2];j=F[h>>2];if(j){F[h+4>>2]=j;ra(j);F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;g=F[f+12>>2];d=F[e+12>>2];b=F[e+8>>2]}F[h+4>>2]=d;F[h>>2]=b;F[h+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;h=0;ra:{if(g){if(g>>>0>=1073741824){break a}d=g<<2;h=sa(d);F[e+8>>2]=h;b=d+h|0;F[e+16>>2]=b;ua(h,0,d);F[e+12>>2]=b}d=F[f+640>>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;h=F[e+8>>2];b=F[e+12>>2]}F[d+4>>2]=b;F[d>>2]=h;F[d+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]=w;b=F[e+28>>2];g=b+1|0;F[e+28>>2]=g;sa:{if(b>>>0>g>>>0){break sa}z=f+604|0;while(1){m=F[e+12>>2];h=F[e+24>>2];i=g-1|0;b=h+i|0;d=(b>>>0)/341|0;b=F[m+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;k=F[b+8>>2];d=F[b+4>>2];j=F[b>>2];F[e+28>>2]=i;b=F[e+16>>2];i=b-m|0;if(((i?L(i>>2,341)-1|0:0)-(g+h|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(j>>>0>w>>>0){break sa}h=(d|0)==(F[f+12>>2]-1|0)?0:d+1|0;if(h>>>0>=I[f+12>>2]){break sa}m=L(k,12);l=m+F[f+640>>2]|0;i=m+F[f+628>>2]|0;ta:{ua:{n=h<<2;d=F[f>>2]-F[n+F[l>>2]>>2]|0;if(!d){k=0;if(!j){break ua}while(1){b=F[i>>2];n=F[b+8>>2];o=F[b+4>>2];p=F[b>>2];d=F[v>>2];g=F[d+4>>2];l=F[d+8>>2];va:{if(g>>>0>>0){F[g+8>>2]=n;F[g+4>>2]=o;F[g>>2]=p;F[d+4>>2]=g+12;break va}m=F[d>>2];s=(g-m|0)/12|0;h=s+1|0;if(h>>>0>=357913942){break a}l=(l-m|0)/12|0;r=l<<1;l=l>>>0<178956970?h>>>0>r>>>0?h:r:357913941;b=0;wa:{if(!l){break wa}if(l>>>0>=357913942){break b}b=sa(L(l,12))}h=b+L(s,12)|0;F[h+8>>2]=n;F[h+4>>2]=o;F[h>>2]=p;n=h+12|0;if((g|0)!=(m|0)){while(1){h=h-12|0;g=g-12|0;F[h>>2]=F[g>>2];F[h+4>>2]=F[g+4>>2];F[h+8>>2]=F[g+8>>2];if((g|0)!=(m|0)){continue}break}}F[d+8>>2]=b+L(l,12);F[d+4>>2]=n;F[d>>2]=h;if(!m){break va}ra(m)}F[f+8>>2]=F[f+8>>2]+1;k=k+1|0;if((j|0)!=(k|0)){continue}break}break ua}xa:{ya:{za:{if(j>>>0<=2){d=F[f+616>>2];F[d>>2]=h;b=1;g=F[f+12>>2];if(g>>>0>1){break za}break xa}if(I[f+8>>2]>I[f+4>>2]){break sa}b=F[f+628>>2];o=k+1|0;l=L(o,12);g=b+l|0;if((g|0)!=(i|0)){Ba(g,F[i>>2],F[i+4>>2]);b=F[f+628>>2]}b=n+F[b+l>>2]|0;F[b>>2]=F[b>>2]+(1<>2]=h;b=b+1|0;g=F[f+12>>2];if(b>>>0>>0){continue}break}break xa}Aa:{Ba:{b=(j>>>1|0)-b|0;g=j-b|0;Ca:{if((g|0)==(b|0)){d=b;break Ca}d=F[f+596>>2];if((d|0)==F[f+588>>2]){break Ba}j=F[d>>2];i=F[f+600>>2];p=i+1|0;F[f+600>>2]=p;j=j&-2147483648>>>i;Da:{if((p|0)==32){F[f+600>>2]=0;F[f+596>>2]=d+4;if(j){break Da}break Ba}if(!j){break Ba}}d=g}g=b;break Aa}d=b}b=F[f+640>>2];j=b+m|0;i=F[j>>2];m=i+n|0;F[m>>2]=F[m>>2]+1;Ba(b+l|0,i,F[j+4>>2]);if(g){b=F[e+28>>2]+F[e+24>>2]|0;j=F[e+12>>2];i=F[e+16>>2]-j|0;if((b|0)==((i?L(i>>2,341)-1|0:0)|0)){za(e+8|0);j=F[e+12>>2];b=F[e+24>>2]+F[e+28>>2]|0}i=j;j=(b>>>0)/341|0;b=F[i+(j<<2)>>2]+L(b-L(j,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=h;F[b>>2]=g;F[e+28>>2]=F[e+28>>2]+1}if(!d){break ua}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;i=F[e+12>>2]}else{i=b}b=(g>>>0)/341|0;b=F[i+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=o;F[b+4>>2]=h;F[b>>2]=d;g=F[e+28>>2]+1|0;F[e+28>>2]=g;break ta}d=0;if(!j){break ua}while(1){if(g){p=F[i>>2];s=F[l>>2];k=F[f+604>>2];r=F[f+616>>2];g=0;while(1){m=r+(g<<2)|0;F[k+(F[m>>2]<<2)>>2]=0;h=F[m>>2]<<2;b=F[f>>2]-F[h+s>>2]|0;Ea:{if(!b){break Ea}h=h+k|0;n=F[f+560>>2];q=32-n|0;if((q|0)>=(b|0)){o=F[f+556>>2];if((o|0)==F[f+548>>2]){F[h>>2]=0;break Ea}F[h>>2]=F[o>>2]<>>32-b;b=b+F[f+560>>2]|0;F[f+560>>2]=b;if((b|0)!=32){break Ea}F[f+560>>2]=0;F[f+556>>2]=o+4;break Ea}o=F[f+556>>2];t=o+4|0;if((t|0)==F[f+548>>2]){F[h>>2]=0;break Ea}y=F[o>>2];F[f+556>>2]=t;q=b-q|0;F[f+560>>2]=q;F[h>>2]=F[o+4>>2]>>>32-q|y<>>32-b}b=F[m>>2]<<2;h=b+k|0;F[h>>2]=F[h>>2]|F[b+p>>2];g=g+1|0;if(g>>>0>2]){continue}break}}mb(v,z);F[f+8>>2]=F[f+8>>2]+1;d=d+1|0;if((j|0)==(d|0)){break ua}g=F[f+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];h=g-b>>2;if(h>>>0>=3){while(1){ra(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;g=F[e+16>>2];h=g-b>>2;if(h>>>0>2){continue}break}}d=170;Fa:{switch(h-1|0){case 1:d=341;case 0:F[e+24>>2]=d;break;default:break Fa}}Ga:{if((b|0)==(g|0)){break Ga}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 Ga}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break ra}}bb(u);break d;case 5:u=ab(x+8|0,3);i=u;v=x+664|0;e=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];h=g+4|0;d=h>>>0<4?d+1|0:d;Ha:{if((d|0)>(e|0)?1:(d|0)>=(e|0)?h>>>0>I[b+8>>2]:0){break Ha}d=g+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i>>2]=h;d=F[b+20>>2];e=d;j=F[b+16>>2];f=j+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(h>>>0>32){break Ha}g=F[b+12>>2];d=e;e=j+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break Ha}d=f+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=g;e=F[b+20>>2];h=F[b+16>>2]+4|0;e=h>>>0<4?e+1|0:e;F[b+16>>2]=h;F[b+20>>2]=e;if(!g){break Ha}F[i+8>>2]=0;if(!vb(i+16|0,b)){break Ha}if(!ya(i+544|0,b)){break Ha}if(!ya(i+564|0,b)){break Ha}if(!ya(i+584|0,b)){break Ha}w=F[i+4>>2];b=0;d=0;f=ea-32|0;ea=f;g=F[i+12>>2];F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;if(g){if(g>>>0>=1073741824){break a}e=g<<2;b=sa(e);F[f+8>>2]=b;d=b+e|0;F[f+16>>2]=d;ua(b,0,e);F[f+12>>2]=d}e=F[i+628>>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;g=F[i+12>>2];d=F[f+12>>2];b=F[f+8>>2]}F[e+4>>2]=d;F[e>>2]=b;F[e+8>>2]=F[f+16>>2];b=0;F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;h=0;Ia:{if(g){if(g>>>0>=1073741824){break a}d=g<<2;h=sa(d);F[f+8>>2]=h;b=d+h|0;F[f+16>>2]=b;ua(h,0,d);F[f+12>>2]=b}d=F[i+640>>2];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;h=F[f+8>>2];b=F[f+12>>2]}F[d+4>>2]=b;F[d>>2]=h;F[d+8>>2]=F[f+16>>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;za(f+8|0);b=F[f+24>>2]+F[f+28>>2]|0;d=(b>>>0)/341|0;b=F[F[f+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]=w;b=F[f+28>>2];g=b+1|0;F[f+28>>2]=g;Ja:{if(b>>>0>g>>>0){break Ja}z=i+604|0;while(1){m=F[f+12>>2];j=F[f+24>>2];k=g-1|0;b=j+k|0;d=(b>>>0)/341|0;b=F[m+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;e=F[b+8>>2];h=F[b+4>>2];d=F[b>>2];F[f+28>>2]=k;b=F[f+16>>2];k=b-m|0;if(((k?L(k>>2,341)-1|0:0)-(g+j|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[f+16>>2]=F[f+16>>2]-4}if(d>>>0>w>>>0){break Ja}b=F[i+12>>2];h=(h|0)==(b-1|0)?0:h+1|0;if(h>>>0>=b>>>0){break Ja}b=F[i+628>>2];j=L(e,12);m=b+j|0;Ka:{La:{k=h<<2;o=j+F[i+640>>2]|0;g=F[i>>2]-F[k+F[o>>2]>>2]|0;if(!g){j=0;if(!d){break La}while(1){b=F[m>>2];n=F[b+8>>2];o=F[b+4>>2];p=F[b>>2];e=F[v>>2];g=F[e+4>>2];l=F[e+8>>2];Ma:{if(g>>>0>>0){F[g+8>>2]=n;F[g+4>>2]=o;F[g>>2]=p;F[e+4>>2]=g+12;break Ma}k=F[e>>2];s=(g-k|0)/12|0;h=s+1|0;if(h>>>0>=357913942){break a}l=(l-k|0)/12|0;r=l<<1;l=l>>>0<178956970?h>>>0>r>>>0?h:r:357913941;b=0;Na:{if(!l){break Na}if(l>>>0>=357913942){break b}b=sa(L(l,12))}h=b+L(s,12)|0;F[h+8>>2]=n;F[h+4>>2]=o;F[h>>2]=p;n=h+12|0;if((g|0)!=(k|0)){while(1){h=h-12|0;g=g-12|0;F[h>>2]=F[g>>2];F[h+4>>2]=F[g+4>>2];F[h+8>>2]=F[g+8>>2];if((g|0)!=(k|0)){continue}break}}F[e+8>>2]=b+L(l,12);F[e+4>>2]=n;F[e>>2]=h;if(!k){break Ma}ra(k)}F[i+8>>2]=F[i+8>>2]+1;j=j+1|0;if((d|0)!=(j|0)){continue}break}break La}Oa:{Pa:{Qa:{if(d>>>0<=2){e=F[i+616>>2];F[e>>2]=h;b=1;g=F[i+12>>2];if(g>>>0>1){break Qa}break Oa}if(I[i+8>>2]>I[i+4>>2]){break Ja}n=b;b=j+12|0;Ba(n+b|0,F[m>>2],F[m+4>>2]);b=k+F[b+F[i+628>>2]>>2]|0;F[b>>2]=F[b>>2]+(1<>2]=h;b=b+1|0;g=F[i+12>>2];if(b>>>0>>0){continue}break}break Oa}m=e+1|0;Ra:{Sa:{b=(d>>>1|0)-b|0;g=d-b|0;Ta:{if((g|0)==(b|0)){d=b;break Ta}d=F[i+596>>2];if((d|0)==F[i+588>>2]){break Sa}l=F[d>>2];n=F[i+600>>2];o=n+1|0;F[i+600>>2]=o;l=l&-2147483648>>>n;Ua:{if((o|0)==32){F[i+600>>2]=0;F[i+596>>2]=d+4;if(l){break Ua}break Sa}if(!l){break Sa}}d=g}g=b;break Ra}d=b}n=k;b=F[i+640>>2];j=b+j|0;k=F[j>>2];l=n+k|0;F[l>>2]=F[l>>2]+1;Ba(b+L(m,12)|0,k,F[j+4>>2]);if(g){b=F[f+28>>2]+F[f+24>>2]|0;j=F[f+12>>2];k=F[f+16>>2]-j|0;if((b|0)==((k?L(k>>2,341)-1|0:0)|0)){za(f+8|0);j=F[f+12>>2];b=F[f+24>>2]+F[f+28>>2]|0}k=j;j=(b>>>0)/341|0;b=F[k+(j<<2)>>2]+L(b-L(j,341)|0,12)|0;F[b+8>>2]=e;F[b+4>>2]=h;F[b>>2]=g;F[f+28>>2]=F[f+28>>2]+1}if(!d){break La}g=F[f+28>>2]+F[f+24>>2]|0;b=F[f+12>>2];e=F[f+16>>2]-b|0;if((g|0)==((e?L(e>>2,341)-1|0:0)|0)){za(f+8|0);g=F[f+24>>2]+F[f+28>>2]|0;e=F[f+12>>2]}else{e=b}b=(g>>>0)/341|0;b=F[e+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=m;F[b+4>>2]=h;F[b>>2]=d;g=F[f+28>>2]+1|0;F[f+28>>2]=g;break Ka}j=0;if(!d){break La}while(1){if(g){p=F[m>>2];s=F[o>>2];h=F[i+604>>2];r=F[i+616>>2];g=0;while(1){k=r+(g<<2)|0;F[h+(F[k>>2]<<2)>>2]=0;e=F[k>>2]<<2;b=F[i>>2]-F[e+s>>2]|0;Va:{if(!b){break Va}e=e+h|0;l=F[i+560>>2];q=32-l|0;if((q|0)>=(b|0)){n=F[i+556>>2];if((n|0)==F[i+548>>2]){F[e>>2]=0;break Va}F[e>>2]=F[n>>2]<>>32-b;b=b+F[i+560>>2]|0;F[i+560>>2]=b;if((b|0)!=32){break Va}F[i+560>>2]=0;F[i+556>>2]=n+4;break Va}n=F[i+556>>2];t=n+4|0;if((t|0)==F[i+548>>2]){F[e>>2]=0;break Va}y=F[n>>2];F[i+556>>2]=t;q=b-q|0;F[i+560>>2]=q;F[e>>2]=F[n+4>>2]>>>32-q|y<>>32-b}b=F[k>>2]<<2;e=b+h|0;F[e>>2]=F[e>>2]|F[b+p>>2];g=g+1|0;if(g>>>0>2]){continue}break}}mb(v,z);F[i+8>>2]=F[i+8>>2]+1;j=j+1|0;if((d|0)==(j|0)){break La}g=F[i+12>>2];continue}}g=F[f+28>>2]}if(g){continue}break}}F[f+28>>2]=0;g=F[f+16>>2];e=F[f+12>>2];h=g-e>>2;if(h>>>0>=3){while(1){ra(F[e>>2]);e=F[f+12>>2]+4|0;F[f+12>>2]=e;g=F[f+16>>2];h=g-e>>2;if(h>>>0>2){continue}break}}b=170;Wa:{switch(h-1|0){case 1:b=341;case 0:F[f+24>>2]=b;break;default:break Wa}}Xa:{if((e|0)==(g|0)){break Xa}while(1){ra(F[e>>2]);e=e+4|0;if((e|0)!=(g|0)){continue}break}b=F[f+16>>2];d=F[f+12>>2];if((b|0)==(d|0)){break Xa}F[f+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[f+8>>2];if(b){ra(b)}ea=f+32|0;break Ia}}bb(u);break d;case 6:break f;default:break c}}u=ab(x+8|0,3);f=u;v=x+664|0;e=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];h=g+4|0;d=h>>>0<4?d+1|0:d;Ya:{if((d|0)>(e|0)?1:(d|0)>=(e|0)?h>>>0>I[b+8>>2]:0){break Ya}d=g+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[f>>2]=h;d=F[b+20>>2];e=d;j=F[b+16>>2];i=j+4|0;d=i>>>0<4?d+1|0:d;F[b+16>>2]=i;F[b+20>>2]=d;if(h>>>0>32){break Ya}g=F[b+12>>2];d=e;e=j+8|0;d=e>>>0<8?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break Ya}d=i+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[f+4>>2]=g;e=F[b+20>>2];h=F[b+16>>2]+4|0;e=h>>>0<4?e+1|0:e;F[b+16>>2]=h;F[b+20>>2]=e;if(!g){break Ya}F[f+8>>2]=0;if(!vb(f+16|0,b)){break Ya}if(!ya(f+544|0,b)){break Ya}if(!ya(f+564|0,b)){break Ya}if(!ya(f+584|0,b)){break Ya}w=F[f+4>>2];b=0;d=0;e=ea-32|0;ea=e;g=F[f+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}h=g<<2;b=sa(h);F[e+8>>2]=b;d=b+h|0;F[e+16>>2]=d;ua(b,0,h);F[e+12>>2]=d}h=F[f+628>>2];j=F[h>>2];if(j){F[h+4>>2]=j;ra(j);F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;g=F[f+12>>2];d=F[e+12>>2];b=F[e+8>>2]}F[h+4>>2]=d;F[h>>2]=b;F[h+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;h=0;Za:{if(g){if(g>>>0>=1073741824){break a}d=g<<2;h=sa(d);F[e+8>>2]=h;b=d+h|0;F[e+16>>2]=b;ua(h,0,d);F[e+12>>2]=b}d=F[f+640>>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;h=F[e+8>>2];b=F[e+12>>2]}F[d+4>>2]=b;F[d>>2]=h;F[d+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]=w;b=F[e+28>>2];g=b+1|0;F[e+28>>2]=g;_a:{if(b>>>0>g>>>0){break _a}z=f+604|0;while(1){i=F[e+12>>2];b=F[e+24>>2];d=g-1|0;h=b+d|0;j=(h>>>0)/341|0;h=F[i+(j<<2)>>2]+L(h-L(j,341)|0,12)|0;k=F[h+8>>2];j=F[h>>2];F[e+28>>2]=d;d=F[e+16>>2];h=d-i|0;if(((h?L(h>>2,341)-1|0:0)-(b+g|0)|0)+1>>>0>=682){ra(F[d-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(j>>>0>w>>>0){break _a}b=F[f+628>>2];m=L(k,12);l=m+F[f+640>>2]|0;h=Td(f,j,l);if(h>>>0>=I[f+12>>2]){break _a}i=b+m|0;$a:{ab:{n=h<<2;d=F[f>>2]-F[n+F[l>>2]>>2]|0;if(!d){k=0;if(!j){break ab}while(1){b=F[i>>2];n=F[b+8>>2];o=F[b+4>>2];p=F[b>>2];d=F[v>>2];g=F[d+4>>2];l=F[d+8>>2];bb:{if(g>>>0>>0){F[g+8>>2]=n;F[g+4>>2]=o;F[g>>2]=p;F[d+4>>2]=g+12;break bb}m=F[d>>2];s=(g-m|0)/12|0;h=s+1|0;if(h>>>0>=357913942){break a}l=(l-m|0)/12|0;r=l<<1;l=l>>>0<178956970?h>>>0>r>>>0?h:r:357913941;b=0;cb:{if(!l){break cb}if(l>>>0>=357913942){break b}b=sa(L(l,12))}h=b+L(s,12)|0;F[h+8>>2]=n;F[h+4>>2]=o;F[h>>2]=p;n=h+12|0;if((g|0)!=(m|0)){while(1){h=h-12|0;g=g-12|0;F[h>>2]=F[g>>2];F[h+4>>2]=F[g+4>>2];F[h+8>>2]=F[g+8>>2];if((g|0)!=(m|0)){continue}break}}F[d+8>>2]=b+L(l,12);F[d+4>>2]=n;F[d>>2]=h;if(!m){break bb}ra(m)}F[f+8>>2]=F[f+8>>2]+1;k=k+1|0;if((j|0)!=(k|0)){continue}break}break ab}db:{eb:{fb:{if(j>>>0<=2){d=F[f+616>>2];F[d>>2]=h;b=1;g=F[f+12>>2];if(g>>>0>1){break fb}break db}if(I[f+8>>2]>I[f+4>>2]){break _a}b=F[f+628>>2];o=k+1|0;l=L(o,12);g=b+l|0;if((g|0)!=(i|0)){Ba(g,F[i>>2],F[i+4>>2]);b=F[f+628>>2]}b=n+F[b+l>>2]|0;F[b>>2]=F[b>>2]+(1<>2]=h;b=b+1|0;g=F[f+12>>2];if(b>>>0>>0){continue}break}break db}gb:{hb:{b=(j>>>1|0)-b|0;g=j-b|0;ib:{if((g|0)==(b|0)){d=b;break ib}d=F[f+596>>2];if((d|0)==F[f+588>>2]){break hb}j=F[d>>2];i=F[f+600>>2];p=i+1|0;F[f+600>>2]=p;j=j&-2147483648>>>i;jb:{if((p|0)==32){F[f+600>>2]=0;F[f+596>>2]=d+4;if(j){break jb}break hb}if(!j){break hb}}d=g}g=b;break gb}d=b}b=F[f+640>>2];j=b+m|0;i=F[j>>2];m=i+n|0;F[m>>2]=F[m>>2]+1;Ba(b+l|0,i,F[j+4>>2]);if(g){b=F[e+28>>2]+F[e+24>>2]|0;j=F[e+12>>2];i=F[e+16>>2]-j|0;if((b|0)==((i?L(i>>2,341)-1|0:0)|0)){za(e+8|0);j=F[e+12>>2];b=F[e+24>>2]+F[e+28>>2]|0}i=j;j=(b>>>0)/341|0;b=F[i+(j<<2)>>2]+L(b-L(j,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=h;F[b>>2]=g;F[e+28>>2]=F[e+28>>2]+1}if(!d){break ab}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;i=F[e+12>>2]}else{i=b}b=(g>>>0)/341|0;b=F[i+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=o;F[b+4>>2]=h;F[b>>2]=d;g=F[e+28>>2]+1|0;F[e+28>>2]=g;break $a}d=0;if(!j){break ab}while(1){if(g){p=F[i>>2];s=F[l>>2];k=F[f+604>>2];r=F[f+616>>2];g=0;while(1){m=r+(g<<2)|0;F[k+(F[m>>2]<<2)>>2]=0;h=F[m>>2]<<2;b=F[f>>2]-F[h+s>>2]|0;kb:{if(!b){break kb}h=h+k|0;n=F[f+560>>2];q=32-n|0;if((q|0)>=(b|0)){o=F[f+556>>2];if((o|0)==F[f+548>>2]){F[h>>2]=0;break kb}F[h>>2]=F[o>>2]<>>32-b;b=b+F[f+560>>2]|0;F[f+560>>2]=b;if((b|0)!=32){break kb}F[f+560>>2]=0;F[f+556>>2]=o+4;break kb}o=F[f+556>>2];t=o+4|0;if((t|0)==F[f+548>>2]){F[h>>2]=0;break kb}y=F[o>>2];F[f+556>>2]=t;q=b-q|0;F[f+560>>2]=q;F[h>>2]=F[o+4>>2]>>>32-q|y<>>32-b}b=F[m>>2]<<2;h=b+k|0;F[h>>2]=F[h>>2]|F[b+p>>2];g=g+1|0;if(g>>>0>2]){continue}break}}mb(v,z);F[f+8>>2]=F[f+8>>2]+1;d=d+1|0;if((j|0)==(d|0)){break ab}g=F[f+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];h=g-b>>2;if(h>>>0>=3){while(1){ra(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;g=F[e+16>>2];h=g-b>>2;if(h>>>0>2){continue}break}}d=170;lb:{switch(h-1|0){case 1:d=341;case 0:F[e+24>>2]=d;break;default:break lb}}mb:{if((b|0)==(g|0)){break mb}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 mb}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){ra(b)}ea=e+32|0;break Za}}bb(u)}h=F[a+12>>2]==((F[c+4>>2]-F[c>>2]|0)/12|0)}ea=x+672|0;return h}wa(14841);V()}va();V()}function qd(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;if(!a){return 1}p=F[c+16>>2];f=F[c+20>>2];j=F[c+12>>2];a:{if((f|0)>(j|0)?1:(f|0)>=(j|0)?p>>>0>=I[c+8>>2]:0){break a}j=G[p+F[c>>2]|0];p=p+1|0;f=p>>>0<1?f+1|0:f;F[c+16>>2]=p;F[c+20>>2]=f;b:{switch(j|0){case 0:f=a;g=b;j=ea+-64|0;ea=j;F[j+56>>2]=0;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;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;c:{if(!pd(j+8|0,c)){break c}if(!Ie(j+8|0,c)|(F[j+20>>2]?0:f)){break c}Fb(c,0,0);d:{if(!f){break d}r=F[j+36>>2];s=F[j+48>>2];n=F[j+24>>2];if((g|0)<=0){i=F[j+56>>2];while(1){e:{if(i>>>0>16383){break e}a=F[j+52>>2];while(1){if((a|0)<1){break e}a=a-1|0;F[j+52>>2]=a;i=G[a+s|0]|i<<8;F[j+56>>2]=i;if(i>>>0<16384){continue}break}}a=i&4095;b=(F[(a<<2)+n>>2]<<3)+r|0;i=(L(F[b>>2],i>>>12|0)+a|0)-F[b+4>>2]|0;F[j+56>>2]=i;l=g+l|0;if(f>>>0>l>>>0){continue}break}break d}f:{if(G[c+36|0]){x=g<<2;k=F[j+56>>2];while(1){g:{if(k>>>0>16383){break g}a=F[j+52>>2];while(1){if((a|0)<1){break g}a=a-1|0;F[j+52>>2]=a;k=G[a+s|0]|k<<8;F[j+56>>2]=k;if(k>>>0<16384){continue}break}}a=k&4095;m=F[(a<<2)+n>>2];b=(m<<3)+r|0;k=(L(F[b>>2],k>>>12|0)+a|0)-F[b+4>>2]|0;F[j+56>>2]=k;if(m>>>0>32){break f}h:{if(!m){ua((h<<2)+d|0,0,x);h=g+h|0;break h}p=m&-2;y=m&1;q=g+h|0;b=F[c+32>>2];t=F[c+28>>2];u=F[c+24>>2];while(1){i=0;a=b;l=0;e=p;if((m|0)!=1){while(1){o=(a>>>3|0)+u|0;i:{if(o>>>0>=t>>>0){o=0;break i}o=G[o|0];b=a+1|0;F[c+32>>2]=b;o=(o>>>(a&7)&1)<>>3|0)+u|0;j:{if(o>>>0>=t>>>0){o=0;break j}o=G[o|0];b=a+1|0;F[c+32>>2]=b;o=(o>>>(a&7)&1)<<(i|1);a=b}i=i+2|0;l=l|o;e=e-2|0;if(e){continue}break}}o=(h<<2)+d|0;if(y){e=(a>>>3|0)+u|0;v=0;k:{if(e>>>0>=t>>>0){break k}e=G[e|0];b=a+1|0;F[c+32>>2]=b;v=(e>>>(a&7)&1)<>2]=l;h=h+1|0;if((q|0)!=(h|0)){continue}break}h=q}w=g+w|0;if(f>>>0>w>>>0){continue}break}break d}i=F[j+56>>2];l:{if(i>>>0>16383){break l}a=F[j+52>>2];while(1){if((a|0)<1){break l}a=a-1|0;F[j+52>>2]=a;i=G[a+s|0]|i<<8;F[j+56>>2]=i;if(i>>>0<16384){continue}break}}a=i&4095;b=(F[(a<<2)+n>>2]<<3)+r|0;F[j+56>>2]=(L(F[b>>2],i>>>12|0)+a|0)-F[b+4>>2]}i=0;break c}D[c+36|0]=0;g=F[c+20>>2];d=c;f=F[c+16>>2];b=0;a=F[c+32>>2]+7|0;b=a>>>0<7?1:b;c=a;a=b>>>3|0;c=(b&7)<<29|c>>>3;b=f+c|0;f=a+g|0;F[d+16>>2]=b;F[d+20>>2]=b>>>0>>0?f+1|0:f;i=1}a=F[j+36>>2];if(a){F[j+40>>2]=a;ra(a)}a=F[j+24>>2];if(a){F[j+28>>2]=a;ra(a)}a=F[j+8>>2];if(a){F[j+12>>2]=a;ra(a)}ea=j- -64|0;return i;case 1:break b;default:break a}}b=0;h=F[c+16>>2];f=F[c+20>>2];p=F[c+12>>2];m:{if((f|0)>(p|0)?1:(f|0)>=(p|0)?h>>>0>=I[c+8>>2]:0){break m}p=G[h+F[c>>2]|0];h=h+1|0;f=h>>>0<1?f+1|0:f;F[c+16>>2]=h;F[c+20>>2]=f;n:{switch(p-1|0){case 4:g=0;b=ea+-64|0;ea=b;F[b+56>>2]=0;F[b+48>>2]=0;F[b+52>>2]=0;F[b+40>>2]=0;F[b+44>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;o:{if(!pd(b+8|0,c)|(F[b+20>>2]?0:a)){break o}if(!Ie(b+8|0,c)){break o}if(!a){g=1;break o}h=F[b+36>>2];f=F[b+48>>2];l=F[b+24>>2];c=F[b+56>>2];while(1){p:{if(c>>>0>16383){break p}g=F[b+52>>2];while(1){if((g|0)<1){break p}g=g-1|0;F[b+52>>2]=g;c=G[f+g|0]|c<<8;F[b+56>>2]=c;if(c>>>0<16384){continue}break}}g=c&4095;k=F[l+(g<<2)>>2];e=h+(k<<3)|0;c=(L(F[e>>2],c>>>12|0)+g|0)-F[e+4>>2]|0;F[b+56>>2]=c;F[(q<<2)+d>>2]=k;g=1;q=q+1|0;if((q|0)!=(a|0)){continue}break}}a=F[b+36>>2];if(a){F[b+40>>2]=a;ra(a)}a=F[b+24>>2];if(a){F[b+28>>2]=a;ra(a)}a=F[b+8>>2];if(a){F[b+12>>2]=a;ra(a)}ea=b- -64|0;b=g;break m;case 8:q=a;p=d;g=0;e=ea+-64|0;ea=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;q:{r:{a=H[c+38>>1];if(!a){break r}s:{if(a>>>0<=511){a=F[c+12>>2];f=F[c+20>>2];b=F[c+16>>2];d=b+4|0;f=d>>>0<4?f+1|0:f;if((a|0)<(f|0)?1:(a|0)<=(f|0)?d>>>0>I[c+8>>2]: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[e+12>>2]=i;a=c;f=F[a+20>>2];b=F[a+16>>2]+4|0;f=b>>>0<4?f+1|0:f;F[a+16>>2]=b;F[a+20>>2]=f;break s}if(!ib(1,e+12|0,c)){break r}i=F[e+12>>2]}b=F[e>>2];a=F[e+4>>2]-b>>2;t:{if(a>>>0>>0){Ja(e,i-a|0);i=F[e+12>>2];break t}if(a>>>0<=i>>>0){break t}F[e+4>>2]=b+(i<<2)}if(!i){k=1;break r}o=F[c+8>>2];m=F[c+12>>2];while(1){d=F[c+16>>2];b=F[c+20>>2];a=b;if((a|0)>(m|0)?1:(a|0)>=(m|0)?d>>>0>=o>>>0:0){break r}r=F[c>>2];f=G[r+d|0];d=d+1|0;b=d>>>0<1?b+1|0:b;a=c;h=d;F[a+16>>2]=d;F[a+20>>2]=b;d=f>>>2|0;j=0;u:{v:{w:{x:{s=f&3;switch(s|0){case 0:break v;case 3:break x;default:break w}}b=d+g|0;n=0;if(b>>>0>=i>>>0){break q}ua(F[e>>2]+(g<<2)|0,0,(f&252)+4|0);g=b;break u}while(1){n=0;if((b|0)>(m|0)?1:(b|0)>=(m|0)?h>>>0>=o>>>0:0){break q}i=G[h+r|0];f=b;b=h+1|0;f=b>>>0<1?f+1|0:f;h=b;F[c+16>>2]=b;b=f;F[a+20>>2]=b;d=i<<(j<<3|6)|d;j=j+1|0;if((s|0)!=(j|0)){continue}break}}F[F[e>>2]+(g<<2)>>2]=d}g=g+1|0;i=F[e+12>>2];if(g>>>0>>0){continue}break}f=e+16|0;h=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;d=b>>2;y:{if(d>>>0<=8191){Ja(f,8192-d|0);break y}if((b|0)==32768){break y}F[e+20>>2]=a+32768}z:{a=e+28|0;g=F[a>>2];b=F[e+32>>2]-g>>3;if(b>>>0>>0){sb(a,i-b|0);g=F[a>>2];break z}if(b>>>0>i>>>0){F[e+32>>2]=(i<<3)+g}if(i){break z}n=0;break q}a=F[h>>2];d=0;F[g+4>>2]=0;F[g>>2]=a;b=F[h>>2];a=1;A:{if(b>>>0>8192){break A}j=0;B:{while(1){a=b;C:{if(a>>>0<=d>>>0){break C}m=a+(d^-1)|0;k=F[f>>2];b=a-d&7;if(b){while(1){F[k+(d<<2)>>2]=j;d=d+1|0;b=b-1|0;if(b){continue}break}}if(m>>>0<=6){break C}while(1){b=k+(d<<2)|0;F[b>>2]=j;F[b+28>>2]=j;F[b+24>>2]=j;F[b+20>>2]=j;F[b+16>>2]=j;F[b+12>>2]=j;F[b+8>>2]=j;F[b+4>>2]=j;d=d+8|0;if((a|0)!=(d|0)){continue}break}}j=j+1|0;if((i|0)!=(j|0)){b=h+(j<<2)|0;d=F[b>>2];k=(j<<3)+g|0;F[k+4>>2]=a;F[k>>2]=d;d=a;b=a+F[b>>2]|0;if(b>>>0>8192){break B}continue}break}b=a}a=j>>>0>>0}n=!a&(b|0)==8192;break q}n=k}D:{if(!n|(F[e+12>>2]?0:q)){break D}E:{if(H[c+38>>1]<=511){a=F[c+12>>2];i=a;f=F[c+20>>2];b=F[c+16>>2];d=b+8|0;f=d>>>0<8?f+1|0:f;k=F[c+8>>2];g=d;if((a|0)<(f|0)?1:(a|0)<=(f|0)?k>>>0>>0:0){break D}a=b+F[c>>2]|0;h=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);b=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=g;F[c+20>>2]=f;break E}if(!cb(1,e+56|0,c)){break D}g=F[c+16>>2];f=F[c+20>>2];k=F[c+8>>2];i=F[c+12>>2];h=F[e+56>>2];b=F[e+60>>2]}a=g;d=k-a|0;a=i-((a>>>0>k>>>0)+f|0)|0;if((a|0)==(b|0)&d>>>0>>0|a>>>0>>0){break D}b=b+f|0;a=c;d=g;k=d+h|0;F[a+16>>2]=k;F[a+20>>2]=d>>>0>k>>>0?b+1|0:b;if((h|0)<1){break D}c=g+F[c>>2]|0;F[e+40>>2]=c;g=e;F:{G:{H:{I:{J:{b=h-1|0;d=c+b|0;switch((G[d|0]>>>6|0)-1|0){case 2:break H;case 1:break I;case 0:break J;default:break G}}if((h|0)<2){break D}b=h-2|0;F[e+44>>2]=b;d=(c+h|0)-2|0;a=G[d+1|0]<<8&16128|G[d|0];break F}if((h|0)<3){break D}b=h-3|0;F[e+44>>2]=b;d=(c+h|0)-3|0;a=G[d+2|0]<<16&4128768|G[d+1|0]<<8|G[d|0];break F}b=h-4|0;F[e+44>>2]=b;d=(c+h|0)-4|0;a=G[d+2|0]<<16|G[d+3|0]<<24&1056964608|G[d+1|0]<<8|G[d|0];break F}F[e+44>>2]=b;a=G[d|0]&63}a=a+32768|0;F[g+48>>2]=a;if(a>>>0>8388607){break D}if(!q){l=1;break D}d=F[e+28>>2];k=0;g=F[e+16>>2];while(1){K:{if(a>>>0>32767){break K}while(1){if((b|0)<1){break K}b=b-1|0;F[e+44>>2]=b;a=G[b+c|0]|a<<8;F[e+48>>2]=a;if(a>>>0<32768){continue}break}}h=a&8191;f=F[g+(h<<2)>>2];l=d+(f<<3)|0;a=(L(F[l>>2],a>>>13|0)+h|0)-F[l+4>>2]|0;F[e+48>>2]=a;F[p+(k<<2)>>2]=f;l=1;k=k+1|0;if((q|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;ra(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;ra(a)}a=F[e>>2];if(a){F[e+4>>2]=a;ra(a)}ea=e- -64|0;b=l;break m;case 9:q=a;p=d;g=0;e=ea+-64|0;ea=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;L:{M:{a=H[c+38>>1];if(!a){break M}N:{if(a>>>0<=511){a=F[c+12>>2];f=F[c+20>>2];b=F[c+16>>2];d=b+4|0;f=d>>>0<4?f+1|0:f;if((a|0)<(f|0)?1:(a|0)<=(f|0)?d>>>0>I[c+8>>2]:0){break M}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[e+12>>2]=i;a=c;b=F[a+20>>2];d=F[a+16>>2]+4|0;b=d>>>0<4?b+1|0:b;F[a+16>>2]=d;F[a+20>>2]=b;break N}if(!ib(1,e+12|0,c)){break M}i=F[e+12>>2]}b=F[e>>2];a=F[e+4>>2]-b>>2;O:{if(a>>>0>>0){Ja(e,i-a|0);i=F[e+12>>2];break O}if(a>>>0<=i>>>0){break O}F[e+4>>2]=b+(i<<2)}if(!i){k=1;break M}r=F[c+8>>2];m=F[c+12>>2];while(1){b=F[c+16>>2];f=F[c+20>>2];a=f;if((a|0)>(m|0)?1:(a|0)>=(m|0)?b>>>0>=r>>>0:0){break M}s=F[c>>2];o=G[s+b|0];b=b+1|0;f=b>>>0<1?f+1|0:f;a=c;h=b;F[a+16>>2]=b;b=f;F[a+20>>2]=b;d=o>>>2|0;j=0;P:{Q:{R:{S:{f=o&3;switch(f|0){case 0:break Q;case 3:break S;default:break R}}b=d+g|0;n=0;if(b>>>0>=i>>>0){break L}ua(F[e>>2]+(g<<2)|0,0,(o&252)+4|0);g=b;break P}while(1){n=0;if((b|0)>(m|0)?1:(b|0)>=(m|0)?h>>>0>=r>>>0:0){break L}i=G[h+s|0];h=h+1|0;b=h>>>0<1?b+1|0:b;F[c+16>>2]=h;F[a+20>>2]=b;d=i<<(j<<3|6)|d;j=j+1|0;if((f|0)!=(j|0)){continue}break}}F[F[e>>2]+(g<<2)>>2]=d}g=g+1|0;i=F[e+12>>2];if(g>>>0>>0){continue}break}f=e+16|0;h=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;d=b>>2;T:{if(d>>>0<=32767){Ja(f,32768-d|0);break T}if((b|0)==131072){break T}F[e+20>>2]=a+131072}U:{a=e+28|0;g=F[a>>2];b=F[e+32>>2]-g>>3;if(b>>>0>>0){sb(a,i-b|0);g=F[a>>2];break U}if(b>>>0>i>>>0){F[e+32>>2]=(i<<3)+g}if(i){break U}n=0;break L}a=F[h>>2];d=0;F[g+4>>2]=0;F[g>>2]=a;b=F[h>>2];a=1;V:{if(b>>>0>32768){break V}j=0;W:{while(1){a=b;X:{if(a>>>0<=d>>>0){break X}m=a+(d^-1)|0;k=F[f>>2];b=a-d&7;if(b){while(1){F[k+(d<<2)>>2]=j;d=d+1|0;b=b-1|0;if(b){continue}break}}if(m>>>0<=6){break X}while(1){b=k+(d<<2)|0;F[b>>2]=j;F[b+28>>2]=j;F[b+24>>2]=j;F[b+20>>2]=j;F[b+16>>2]=j;F[b+12>>2]=j;F[b+8>>2]=j;F[b+4>>2]=j;d=d+8|0;if((a|0)!=(d|0)){continue}break}}j=j+1|0;if((i|0)!=(j|0)){b=h+(j<<2)|0;d=F[b>>2];k=(j<<3)+g|0;F[k+4>>2]=a;F[k>>2]=d;d=a;b=a+F[b>>2]|0;if(b>>>0>32768){break W}continue}break}b=a}a=j>>>0>>0}n=!a&(b|0)==32768;break L}n=k}Y:{if(!n|(F[e+12>>2]?0:q)){break Y}Z:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;b=F[c+20>>2];d=F[c+16>>2];g=d+8|0;b=g>>>0<8?b+1|0:b;k=F[c+8>>2];f=b;if((a|0)<(b|0)?1:(b|0)>=(a|0)?k>>>0>>0:0){break Y}a=d+F[c>>2]|0;h=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);b=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=g;F[c+20>>2]=f;break Z}if(!cb(1,e+56|0,c)){break Y}g=F[c+16>>2];f=F[c+20>>2];k=F[c+8>>2];i=F[c+12>>2];h=F[e+56>>2];b=F[e+60>>2]}a=g;d=k-a|0;a=i-((a>>>0>k>>>0)+f|0)|0;if((a|0)==(b|0)&d>>>0>>0|a>>>0>>0){break Y}a=b+f|0;i=g+h|0;F[c+16>>2]=i;F[c+20>>2]=g>>>0>i>>>0?a+1|0:a;if((h|0)<1){break Y}c=g+F[c>>2]|0;F[e+40>>2]=c;g=e;_:{$:{aa:{ba:{ca:{b=h-1|0;d=c+b|0;switch((G[d|0]>>>6|0)-1|0){case 2:break aa;case 1:break ba;case 0:break ca;default:break $}}if((h|0)<2){break Y}b=h-2|0;F[e+44>>2]=b;d=(c+h|0)-2|0;a=G[d+1|0]<<8&16128|G[d|0];break _}if((h|0)<3){break Y}b=h-3|0;F[e+44>>2]=b;d=(c+h|0)-3|0;a=G[d+2|0]<<16&4128768|G[d+1|0]<<8|G[d|0];break _}b=h-4|0;F[e+44>>2]=b;d=(c+h|0)-4|0;a=G[d+2|0]<<16|G[d+3|0]<<24&1056964608|G[d+1|0]<<8|G[d|0];break _}F[e+44>>2]=b;a=G[d|0]&63}a=a+131072|0;F[g+48>>2]=a;if(a>>>0>33554431){break Y}if(!q){l=1;break Y}d=F[e+28>>2];k=0;g=F[e+16>>2];while(1){da:{if(a>>>0>131071){break da}while(1){if((b|0)<1){break da}b=b-1|0;F[e+44>>2]=b;a=G[b+c|0]|a<<8;F[e+48>>2]=a;if(a>>>0<131072){continue}break}}h=a&32767;f=F[g+(h<<2)>>2];l=d+(f<<3)|0;a=(L(F[l>>2],a>>>15|0)+h|0)-F[l+4>>2]|0;F[e+48>>2]=a;F[p+(k<<2)>>2]=f;l=1;k=k+1|0;if((q|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;ra(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;ra(a)}a=F[e>>2];if(a){F[e+4>>2]=a;ra(a)}ea=e- -64|0;b=l;break m;case 10:q=a;p=d;g=0;e=ea+-64|0;ea=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;ea:{fa:{a=H[c+38>>1];if(!a){break fa}ga:{if(a>>>0<=511){a=F[c+12>>2];b=F[c+20>>2];d=F[c+16>>2];h=d+4|0;b=h>>>0<4?b+1|0:b;if((a|0)<(b|0)?1:(a|0)<=(b|0)?h>>>0>I[c+8>>2]:0){break fa}a=d+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[e+12>>2]=i;a=c;f=F[a+20>>2];b=F[a+16>>2]+4|0;f=b>>>0<4?f+1|0:f;F[a+16>>2]=b;F[a+20>>2]=f;break ga}if(!ib(1,e+12|0,c)){break fa}i=F[e+12>>2]}b=F[e>>2];a=F[e+4>>2]-b>>2;ha:{if(a>>>0>>0){Ja(e,i-a|0);i=F[e+12>>2];break ha}if(a>>>0<=i>>>0){break ha}F[e+4>>2]=b+(i<<2)}if(!i){k=1;break fa}r=F[c+8>>2];m=F[c+12>>2];while(1){b=F[c+16>>2];f=F[c+20>>2];a=f;if((a|0)>(m|0)?1:(a|0)>=(m|0)?b>>>0>=r>>>0:0){break fa}s=F[c>>2];o=G[s+b|0];b=b+1|0;f=b>>>0<1?f+1|0:f;a=c;h=b;F[a+16>>2]=b;b=f;F[a+20>>2]=b;d=o>>>2|0;j=0;ia:{ja:{ka:{la:{n=o&3;switch(n|0){case 0:break ja;case 3:break la;default:break ka}}b=d+g|0;a=0;if(b>>>0>=i>>>0){break ea}ua(F[e>>2]+(g<<2)|0,0,(o&252)+4|0);g=b;break ia}while(1){a=0;if((b|0)>(m|0)?1:(b|0)>=(m|0)?h>>>0>=r>>>0:0){break ea}i=G[h+s|0];a=b;b=h+1|0;a=b>>>0<1?a+1|0:a;h=b;F[c+16>>2]=b;b=a;F[c+20>>2]=a;d=i<<(j<<3|6)|d;j=j+1|0;if((n|0)!=(j|0)){continue}break}}F[F[e>>2]+(g<<2)>>2]=d}g=g+1|0;i=F[e+12>>2];if(g>>>0>>0){continue}break}f=e+16|0;h=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;d=b>>2;ma:{if(d>>>0<=65535){Ja(f,65536-d|0);break ma}if((b|0)==262144){break ma}F[e+20>>2]=a+262144}na:{a=e+28|0;g=F[a>>2];b=F[e+32>>2]-g>>3;if(b>>>0>>0){sb(a,i-b|0);g=F[a>>2];break na}if(b>>>0>i>>>0){F[e+32>>2]=(i<<3)+g}if(i){break na}a=0;break ea}a=F[h>>2];d=0;F[g+4>>2]=0;F[g>>2]=a;b=F[h>>2];a=1;oa:{if(b>>>0>65536){break oa}j=0;pa:{while(1){a=b;qa:{if(a>>>0<=d>>>0){break qa}m=a+(d^-1)|0;k=F[f>>2];b=a-d&7;if(b){while(1){F[k+(d<<2)>>2]=j;d=d+1|0;b=b-1|0;if(b){continue}break}}if(m>>>0<=6){break qa}while(1){b=k+(d<<2)|0;F[b>>2]=j;F[b+28>>2]=j;F[b+24>>2]=j;F[b+20>>2]=j;F[b+16>>2]=j;F[b+12>>2]=j;F[b+8>>2]=j;F[b+4>>2]=j;d=d+8|0;if((a|0)!=(d|0)){continue}break}}j=j+1|0;if((i|0)!=(j|0)){b=h+(j<<2)|0;d=F[b>>2];k=(j<<3)+g|0;F[k+4>>2]=a;F[k>>2]=d;d=a;b=a+F[b>>2]|0;if(b>>>0>65536){break pa}continue}break}b=a}a=j>>>0>>0}a=!a&(b|0)==65536;break ea}a=k}ra:{if(!a|(F[e+12>>2]?0:q)){break ra}sa:{if(H[c+38>>1]<=511){a=F[c+12>>2];i=a;f=F[c+20>>2];b=F[c+16>>2];d=b+8|0;f=d>>>0<8?f+1|0:f;k=F[c+8>>2];g=d;if((a|0)<(f|0)?1:(a|0)<=(f|0)?k>>>0>>0:0){break ra}a=b+F[c>>2]|0;h=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);b=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=g;F[c+20>>2]=f;break sa}if(!cb(1,e+56|0,c)){break ra}g=F[c+16>>2];f=F[c+20>>2];k=F[c+8>>2];i=F[c+12>>2];h=F[e+56>>2];b=F[e+60>>2]}a=g;d=k-a|0;a=i-((a>>>0>k>>>0)+f|0)|0;if((a|0)==(b|0)&d>>>0>>0|a>>>0>>0){break ra}f=b+f|0;a=c;d=g;k=d+h|0;F[a+16>>2]=k;F[a+20>>2]=d>>>0>k>>>0?f+1|0:f;if((h|0)<1){break ra}c=g+F[c>>2]|0;F[e+40>>2]=c;g=e;ta:{ua:{va:{wa:{xa:{b=h-1|0;d=c+b|0;switch((G[d|0]>>>6|0)-1|0){case 2:break va;case 1:break wa;case 0:break xa;default:break ua}}if((h|0)<2){break ra}b=h-2|0;F[e+44>>2]=b;d=(c+h|0)-2|0;a=G[d+1|0]<<8&16128|G[d|0];break ta}if((h|0)<3){break ra}b=h-3|0;F[e+44>>2]=b;d=(c+h|0)-3|0;a=G[d+2|0]<<16&4128768|G[d+1|0]<<8|G[d|0];break ta}b=h-4|0;F[e+44>>2]=b;d=(c+h|0)-4|0;a=G[d+2|0]<<16|G[d+3|0]<<24&1056964608|G[d+1|0]<<8|G[d|0];break ta}F[e+44>>2]=b;a=G[d|0]&63}a=a+262144|0;F[g+48>>2]=a;if(a>>>0>67108863){break ra}if(!q){l=1;break ra}d=F[e+28>>2];k=0;g=F[e+16>>2];while(1){ya:{if(a>>>0>262143){break ya}while(1){if((b|0)<1){break ya}b=b-1|0;F[e+44>>2]=b;a=G[b+c|0]|a<<8;F[e+48>>2]=a;if(a>>>0<262144){continue}break}}h=a&65535;f=F[g+(h<<2)>>2];l=d+(f<<3)|0;a=(L(F[l>>2],a>>>16|0)+h|0)-F[l+4>>2]|0;F[e+48>>2]=a;F[p+(k<<2)>>2]=f;l=1;k=k+1|0;if((q|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;ra(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;ra(a)}a=F[e>>2];if(a){F[e+4>>2]=a;ra(a)}ea=e- -64|0;b=l;break m;case 11:q=a;p=d;g=0;e=ea+-64|0;ea=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;za:{Aa:{a=H[c+38>>1];if(!a){break Aa}Ba:{if(a>>>0<=511){a=F[c+12>>2];f=F[c+20>>2];b=F[c+16>>2];d=b+4|0;f=d>>>0<4?f+1|0:f;if((a|0)<(f|0)?1:(a|0)<=(f|0)?d>>>0>I[c+8>>2]:0){break Aa}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[e+12>>2]=i;a=c;f=F[a+20>>2];b=F[a+16>>2]+4|0;f=b>>>0<4?f+1|0:f;F[a+16>>2]=b;F[a+20>>2]=f;break Ba}if(!ib(1,e+12|0,c)){break Aa}i=F[e+12>>2]}b=F[e>>2];a=F[e+4>>2]-b>>2;Ca:{if(a>>>0>>0){Ja(e,i-a|0);i=F[e+12>>2];break Ca}if(a>>>0<=i>>>0){break Ca}F[e+4>>2]=b+(i<<2)}if(!i){k=1;break Aa}o=F[c+8>>2];m=F[c+12>>2];while(1){d=F[c+16>>2];b=F[c+20>>2];a=b;if((a|0)>(m|0)?1:(a|0)>=(m|0)?d>>>0>=o>>>0:0){break Aa}r=F[c>>2];f=G[r+d|0];d=d+1|0;b=d>>>0<1?b+1|0:b;a=c;h=d;F[a+16>>2]=d;F[a+20>>2]=b;d=f>>>2|0;j=0;Da:{Ea:{Fa:{Ga:{s=f&3;switch(s|0){case 0:break Ea;case 3:break Ga;default:break Fa}}b=d+g|0;n=0;if(b>>>0>=i>>>0){break za}ua(F[e>>2]+(g<<2)|0,0,(f&252)+4|0);g=b;break Da}while(1){n=0;if((b|0)>(m|0)?1:(b|0)>=(m|0)?h>>>0>=o>>>0:0){break za}i=G[h+r|0];f=b;b=h+1|0;f=b>>>0<1?f+1|0:f;h=b;F[c+16>>2]=b;b=f;F[a+20>>2]=b;d=i<<(j<<3|6)|d;j=j+1|0;if((s|0)!=(j|0)){continue}break}}F[F[e>>2]+(g<<2)>>2]=d}g=g+1|0;i=F[e+12>>2];if(g>>>0>>0){continue}break}f=e+16|0;h=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;d=b>>2;Ha:{if(d>>>0<=262143){Ja(f,262144-d|0);break Ha}if((b|0)==1048576){break Ha}F[e+20>>2]=a- -1048576}Ia:{a=e+28|0;g=F[a>>2];b=F[e+32>>2]-g>>3;if(b>>>0>>0){sb(a,i-b|0);g=F[a>>2];break Ia}if(b>>>0>i>>>0){F[e+32>>2]=(i<<3)+g}if(i){break Ia}n=0;break za}a=F[h>>2];d=0;F[g+4>>2]=0;F[g>>2]=a;b=F[h>>2];a=1;Ja:{if(b>>>0>262144){break Ja}j=0;Ka:{while(1){a=b;La:{if(a>>>0<=d>>>0){break La}m=a+(d^-1)|0;k=F[f>>2];b=a-d&7;if(b){while(1){F[k+(d<<2)>>2]=j;d=d+1|0;b=b-1|0;if(b){continue}break}}if(m>>>0<=6){break La}while(1){b=k+(d<<2)|0;F[b>>2]=j;F[b+28>>2]=j;F[b+24>>2]=j;F[b+20>>2]=j;F[b+16>>2]=j;F[b+12>>2]=j;F[b+8>>2]=j;F[b+4>>2]=j;d=d+8|0;if((a|0)!=(d|0)){continue}break}}j=j+1|0;if((i|0)!=(j|0)){b=h+(j<<2)|0;d=F[b>>2];k=(j<<3)+g|0;F[k+4>>2]=a;F[k>>2]=d;d=a;b=a+F[b>>2]|0;if(b>>>0>262144){break Ka}continue}break}b=a}a=j>>>0>>0}n=!a&(b|0)==262144;break za}n=k}Ma:{if(!n|(F[e+12>>2]?0:q)){break Ma}Na:{if(H[c+38>>1]<=511){a=F[c+12>>2];i=a;f=F[c+20>>2];b=F[c+16>>2];d=b+8|0;f=d>>>0<8?f+1|0:f;k=F[c+8>>2];g=d;if((a|0)<(f|0)?1:(a|0)<=(f|0)?k>>>0>>0:0){break Ma}a=b+F[c>>2]|0;h=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);b=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=g;F[c+20>>2]=f;break Na}if(!cb(1,e+56|0,c)){break Ma}g=F[c+16>>2];f=F[c+20>>2];k=F[c+8>>2];i=F[c+12>>2];h=F[e+56>>2];b=F[e+60>>2]}a=g;d=k-a|0;a=i-((a>>>0>k>>>0)+f|0)|0;if((a|0)==(b|0)&d>>>0>>0|a>>>0>>0){break Ma}b=b+f|0;a=c;d=g;k=d+h|0;F[a+16>>2]=k;F[a+20>>2]=d>>>0>k>>>0?b+1|0:b;if((h|0)<1){break Ma}c=g+F[c>>2]|0;F[e+40>>2]=c;g=e;Oa:{Pa:{Qa:{Ra:{Sa:{b=h-1|0;d=c+b|0;switch((G[d|0]>>>6|0)-1|0){case 2:break Qa;case 1:break Ra;case 0:break Sa;default:break Pa}}if((h|0)<2){break Ma}b=h-2|0;F[e+44>>2]=b;d=(c+h|0)-2|0;a=G[d+1|0]<<8&16128|G[d|0];break Oa}if((h|0)<3){break Ma}b=h-3|0;F[e+44>>2]=b;d=(c+h|0)-3|0;a=G[d+2|0]<<16&4128768|G[d+1|0]<<8|G[d|0];break Oa}b=h-4|0;F[e+44>>2]=b;d=(c+h|0)-4|0;a=G[d+2|0]<<16|G[d+3|0]<<24&1056964608|G[d+1|0]<<8|G[d|0];break Oa}F[e+44>>2]=b;a=G[d|0]&63}a=a- -1048576|0;F[g+48>>2]=a;if(a>>>0>268435455){break Ma}if(!q){l=1;break Ma}d=F[e+28>>2];k=0;g=F[e+16>>2];while(1){Ta:{if(a>>>0>1048575){break Ta}while(1){if((b|0)<1){break Ta}b=b-1|0;F[e+44>>2]=b;a=G[b+c|0]|a<<8;F[e+48>>2]=a;if(a>>>0<1048576){continue}break}}h=a&262143;f=F[g+(h<<2)>>2];l=d+(f<<3)|0;a=(L(F[l>>2],a>>>18|0)+h|0)-F[l+4>>2]|0;F[e+48>>2]=a;F[p+(k<<2)>>2]=f;l=1;k=k+1|0;if((q|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;ra(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;ra(a)}a=F[e>>2];if(a){F[e+4>>2]=a;ra(a)}ea=e- -64|0;b=l;break m;case 12:q=a;p=d;g=0;e=ea+-64|0;ea=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;Ua:{Va:{a=H[c+38>>1];if(!a){break Va}Wa:{if(a>>>0<=511){a=F[c+12>>2];f=F[c+20>>2];b=F[c+16>>2];d=b+4|0;f=d>>>0<4?f+1|0:f;if((a|0)<(f|0)?1:(a|0)<=(f|0)?d>>>0>I[c+8>>2]: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[e+12>>2]=i;a=c;b=F[a+20>>2];d=F[a+16>>2]+4|0;b=d>>>0<4?b+1|0:b;F[a+16>>2]=d;F[a+20>>2]=b;break Wa}if(!ib(1,e+12|0,c)){break Va}i=F[e+12>>2]}b=F[e>>2];a=F[e+4>>2]-b>>2;Xa:{if(a>>>0>>0){Ja(e,i-a|0);i=F[e+12>>2];break Xa}if(a>>>0<=i>>>0){break Xa}F[e+4>>2]=b+(i<<2)}if(!i){k=1;break Va}r=F[c+8>>2];m=F[c+12>>2];while(1){b=F[c+16>>2];f=F[c+20>>2];a=f;if((a|0)>(m|0)?1:(a|0)>=(m|0)?b>>>0>=r>>>0:0){break Va}s=F[c>>2];o=G[s+b|0];b=b+1|0;f=b>>>0<1?f+1|0:f;a=c;h=b;F[a+16>>2]=b;b=f;F[a+20>>2]=b;d=o>>>2|0;j=0;Ya:{Za:{_a:{$a:{f=o&3;switch(f|0){case 0:break Za;case 3:break $a;default:break _a}}b=d+g|0;n=0;if(b>>>0>=i>>>0){break Ua}ua(F[e>>2]+(g<<2)|0,0,(o&252)+4|0);g=b;break Ya}while(1){n=0;if((b|0)>(m|0)?1:(b|0)>=(m|0)?h>>>0>=r>>>0:0){break Ua}i=G[h+s|0];h=h+1|0;b=h>>>0<1?b+1|0:b;F[c+16>>2]=h;F[a+20>>2]=b;d=i<<(j<<3|6)|d;j=j+1|0;if((f|0)!=(j|0)){continue}break}}F[F[e>>2]+(g<<2)>>2]=d}g=g+1|0;i=F[e+12>>2];if(g>>>0>>0){continue}break}f=e+16|0;h=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;d=b>>2;ab:{if(d>>>0<=524287){Ja(f,524288-d|0);break ab}if((b|0)==2097152){break ab}F[e+20>>2]=a+2097152}bb:{a=e+28|0;g=F[a>>2];b=F[e+32>>2]-g>>3;if(b>>>0>>0){sb(a,i-b|0);g=F[a>>2];break bb}if(b>>>0>i>>>0){F[e+32>>2]=(i<<3)+g}if(i){break bb}n=0;break Ua}a=F[h>>2];d=0;F[g+4>>2]=0;F[g>>2]=a;b=F[h>>2];a=1;cb:{if(b>>>0>524288){break cb}j=0;db:{while(1){a=b;eb:{if(a>>>0<=d>>>0){break eb}m=a+(d^-1)|0;k=F[f>>2];b=a-d&7;if(b){while(1){F[k+(d<<2)>>2]=j;d=d+1|0;b=b-1|0;if(b){continue}break}}if(m>>>0<=6){break eb}while(1){b=k+(d<<2)|0;F[b>>2]=j;F[b+28>>2]=j;F[b+24>>2]=j;F[b+20>>2]=j;F[b+16>>2]=j;F[b+12>>2]=j;F[b+8>>2]=j;F[b+4>>2]=j;d=d+8|0;if((a|0)!=(d|0)){continue}break}}j=j+1|0;if((i|0)!=(j|0)){b=h+(j<<2)|0;d=F[b>>2];k=(j<<3)+g|0;F[k+4>>2]=a;F[k>>2]=d;d=a;b=a+F[b>>2]|0;if(b>>>0>524288){break db}continue}break}b=a}a=j>>>0>>0}n=!a&(b|0)==524288;break Ua}n=k}fb:{if(!n|(F[e+12>>2]?0:q)){break fb}gb:{if(H[c+38>>1]<=511){a=F[c+12>>2];i=a;b=F[c+20>>2];d=F[c+16>>2];g=d+8|0;b=g>>>0<8?b+1|0:b;k=F[c+8>>2];f=b;if((a|0)<(b|0)?1:(b|0)>=(a|0)?k>>>0>>0:0){break fb}a=d+F[c>>2]|0;h=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);b=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=g;F[c+20>>2]=f;break gb}if(!cb(1,e+56|0,c)){break fb}g=F[c+16>>2];f=F[c+20>>2];k=F[c+8>>2];i=F[c+12>>2];h=F[e+56>>2];b=F[e+60>>2]}a=g;d=k-a|0;a=i-((a>>>0>k>>>0)+f|0)|0;if((a|0)==(b|0)&d>>>0>>0|a>>>0>>0){break fb}a=b+f|0;i=g+h|0;F[c+16>>2]=i;F[c+20>>2]=g>>>0>i>>>0?a+1|0:a;if((h|0)<1){break fb}c=g+F[c>>2]|0;F[e+40>>2]=c;g=e;hb:{ib:{jb:{kb:{lb:{b=h-1|0;d=c+b|0;switch((G[d|0]>>>6|0)-1|0){case 2:break jb;case 1:break kb;case 0:break lb;default:break ib}}if((h|0)<2){break fb}b=h-2|0;F[e+44>>2]=b;d=(c+h|0)-2|0;a=G[d+1|0]<<8&16128|G[d|0];break hb}if((h|0)<3){break fb}b=h-3|0;F[e+44>>2]=b;d=(c+h|0)-3|0;a=G[d+2|0]<<16&4128768|G[d+1|0]<<8|G[d|0];break hb}b=h-4|0;F[e+44>>2]=b;d=(c+h|0)-4|0;a=G[d+2|0]<<16|G[d+3|0]<<24&1056964608|G[d+1|0]<<8|G[d|0];break hb}F[e+44>>2]=b;a=G[d|0]&63}a=a+2097152|0;F[g+48>>2]=a;if(a>>>0>536870911){break fb}if(!q){l=1;break fb}d=F[e+28>>2];k=0;g=F[e+16>>2];while(1){mb:{if(a>>>0>2097151){break mb}while(1){if((b|0)<1){break mb}b=b-1|0;F[e+44>>2]=b;a=G[b+c|0]|a<<8;F[e+48>>2]=a;if(a>>>0<2097152){continue}break}}h=a&524287;f=F[g+(h<<2)>>2];l=d+(f<<3)|0;a=(L(F[l>>2],a>>>19|0)+h|0)-F[l+4>>2]|0;F[e+48>>2]=a;F[p+(k<<2)>>2]=f;l=1;k=k+1|0;if((q|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;ra(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;ra(a)}a=F[e>>2];if(a){F[e+4>>2]=a;ra(a)}ea=e- -64|0;b=l;break m;case 17:b=He(a,c,d);break m;case 0:case 1:case 2:case 3:case 5:case 6:case 7:l=ea+-64|0;ea=l;F[l+48>>2]=0;F[l+40>>2]=0;F[l+44>>2]=0;F[l+32>>2]=0;F[l+36>>2]=0;F[l+24>>2]=0;F[l+28>>2]=0;F[l+16>>2]=0;F[l+20>>2]=0;F[l+8>>2]=0;F[l+12>>2]=0;F[l>>2]=0;F[l+4>>2]=0;nb:{if(!pd(l,c)|(F[l+12>>2]?0:a)){break nb}ob:{if(H[c+38>>1]<=511){i=F[c+12>>2];g=i;b=F[c+20>>2];f=F[c+16>>2];h=f+8|0;b=h>>>0<8?b+1|0:b;k=F[c+8>>2];if((b|0)>(g|0)?1:(b|0)>=(g|0)?k>>>0>>0:0){break nb}f=f+F[c>>2]|0;g=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=G[f+4|0]|G[f+5|0]<<8|(G[f+6|0]<<16|G[f+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=b;break ob}if(!cb(1,l+56|0,c)){break nb}h=F[c+16>>2];b=F[c+20>>2];k=F[c+8>>2];i=F[c+12>>2];g=F[l+56>>2];f=F[l+60>>2]}p=k-h|0;k=i-((h>>>0>k>>>0)+b|0)|0;if((k|0)==(f|0)&g>>>0>p>>>0|f>>>0>k>>>0){break nb}f=b+f|0;p=g+h|0;F[c+16>>2]=p;F[c+20>>2]=g>>>0>p>>>0?f+1|0:f;if((g|0)<1){break nb}h=h+F[c>>2]|0;F[l+40>>2]=h;b=l;pb:{qb:{rb:{sb:{tb:{c=g-1|0;f=h+c|0;switch((G[f|0]>>>6|0)-1|0){case 2:break rb;case 1:break sb;case 0:break tb;default:break qb}}if((g|0)<2){break nb}c=g-2|0;F[l+44>>2]=c;g=(g+h|0)-2|0;g=G[g+1|0]<<8&16128|G[g|0];break pb}if((g|0)<3){break nb}c=g-3|0;F[l+44>>2]=c;g=(g+h|0)-3|0;g=G[g+2|0]<<16&4128768|G[g+1|0]<<8|G[g|0];break pb}c=g-4|0;F[l+44>>2]=c;g=(g+h|0)-4|0;g=G[g+2|0]<<16|G[g+3|0]<<24&1056964608|G[g+1|0]<<8|G[g|0];break pb}F[l+44>>2]=c;g=G[f|0]&63}g=g+16384|0;F[b+48>>2]=g;if(g>>>0>4194303){break nb}if(!a){e=1;break nb}f=F[l+28>>2];b=0;k=F[l+16>>2];while(1){ub:{if(g>>>0>16383){break ub}while(1){if((c|0)<1){break ub}c=c-1|0;F[l+44>>2]=c;g=G[c+h|0]|g<<8;F[l+48>>2]=g;if(g>>>0<16384){continue}break}}e=g&4095;q=F[k+(e<<2)>>2];p=f+(q<<3)|0;g=(L(F[p>>2],g>>>12|0)+e|0)-F[p+4>>2]|0;F[l+48>>2]=g;F[(b<<2)+d>>2]=q;e=1;b=b+1|0;if((b|0)!=(a|0)){continue}break}}a=F[l+28>>2];if(a){F[l+32>>2]=a;ra(a)}a=F[l+16>>2];if(a){F[l+20>>2]=a;ra(a)}a=F[l>>2];if(a){F[l+4>>2]=a;ra(a)}ea=l- -64|0;b=e;break m;case 13:case 14:case 15:case 16:break n;default:break m}}b=He(a,c,d)}q=b}return q}function ei(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;m=ea+-64|0;ea=m;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}e=c&3;if(c-1>>>0>=3){n=c&-4;while(1){c=b<<2;F[c+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(c|4)>>2]=0;F[F[a+136>>2]+(c|8)>>2]=0;F[F[a+136>>2]+(c|12)>>2]=0;b=b+4|0;n=n-4|0;if(n){continue}break}}if(!e){break a}while(1){F[F[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;e=e-1|0;if(e){continue}break}}F[a+148>>2]=0}b:{c:{d:{b=F[a+4>>2];r=G[b+36|0];c=r<<8|G[b+37|0];e:{if(c>>>0>513){break e}g=F[b+32>>2];if(c>>>0<=511){d=F[g+20>>2];h=F[g+16>>2];c=h+4|0;d=c>>>0<4?d+1|0:d;f=c;c=d;e=F[g+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>I[g+8>>2]:0){break d}d=h+F[g>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[g+16>>2]=f;F[g+20>>2]=c;F[a+132>>2]=d;break e}if(!Ea(1,m,g)){break d}b=F[a+4>>2];r=G[b+36|0];F[a+132>>2]=F[m>>2]}d=F[b+32>>2];f:{g:{h:{if((r&255)>>>0<=1){r=0;f=F[d+20>>2];g=F[d+16>>2];c=g+4|0;f=c>>>0<4?f+1|0:f;h=c;c=f;e=F[d+12>>2];if((c|0)>(e|0)?1:(c|0)>=(e|0)?h>>>0>I[d+8>>2]:0){break c}g=g+F[d>>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[d+16>>2]=h;F[d+20>>2]=c;F[a+156>>2]=g;n=a+156|0;break h}r=0;if(!Ea(1,m+60|0,d)){break c}b=F[a+4>>2];c=G[b+36|0];F[a+156>>2]=F[m+60>>2];n=a+156|0;if(c>>>0>1){break g}}d=F[b+32>>2];b=F[d+8>>2];g=F[d+12>>2];e=b;b=F[d+20>>2];h=F[d+16>>2];c=h+4|0;b=c>>>0<4?b+1|0:b;f=c;c=b;if((b|0)>(g|0)?1:(b|0)>=(g|0)?e>>>0>>0:0){break c}b=h+F[d>>2]|0;e=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[m+56>>2]=e;F[d+16>>2]=f;F[d+20>>2]=c;break f}if(!Ea(1,m+56|0,F[b+32>>2])){break c}e=F[m+56>>2]}if(e>>>0>1431655765|I[n>>2]>L(e,3)>>>0){break c}u=F[a+4>>2];c=F[u+32>>2];n=F[c+8>>2];f=F[c+16>>2];g=F[c+12>>2];b=g;d=F[c+20>>2];if((b|0)<(d|0)?1:(b|0)<=(d|0)?n>>>0<=f>>>0:0){break c}i=F[c>>2];j=G[i+f|0];l=f+1|0;b=l>>>0<1?d+1|0:d;F[c+16>>2]=l;F[c+20>>2]=b;i:{if(G[u+36|0]<=1){b=g;g=f+5|0;d=g>>>0<5?d+1|0:d;h=g;g=d;if((b|0)<(d|0)?1:(d|0)>=(b|0)?h>>>0>n>>>0:0){break c}b=i+l|0;n=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[m+52>>2]=n;F[c+16>>2]=h;F[c+20>>2]=g;if(e>>>0>=n>>>0){break i}break c}if(!Ea(1,m+52|0,c)){break c}n=F[m+52>>2];if(n>>>0>e>>>0){break c}}if(((n>>>0)/3|0)+n>>>0>>0){break c}b=F[a+4>>2];g=F[b+32>>2];j:{if(G[b+36|0]<=1){b=F[g+20>>2];c=F[g+16>>2];d=c+4|0;b=d>>>0<4?b+1|0:b;h=d;d=b;f=F[g+12>>2];if((d|0)>(f|0)?1:(d|0)>=(f|0)?h>>>0>I[g+8>>2]:0){break c}b=c+F[g>>2]|0;c=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[m+48>>2]=c;F[g+16>>2]=h;F[g+20>>2]=d;if(c>>>0<=n>>>0){break j}break c}if(!Ea(1,m+48|0,g)){break c}c=F[m+48>>2];if(n>>>0>>0){break c}}F[a+28>>2]=F[a+24>>2];d=sa(88);Oc(d);b=F[a+8>>2];F[a+8>>2]=d;k:{if(!b){break k}Za(b);if(F[a+8>>2]){break k}break c}F[a+164>>2]=F[a+160>>2];Kb(a+160|0,e);F[a+176>>2]=F[a+172>>2];Kb(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];v=a+216|0;id(v);hd(v,j);if(!Mc(F[a+8>>2],e,F[a+156>>2]+c|0)){break c}b=F[a+156>>2];D[m|0]=1;Na(a+120|0,b+c|0,m);b=F[a+4>>2];d=H[b+36>>1];d=(d<<8|d>>>8)&65535;l:{if(d>>>0<=513){g=F[b+32>>2];m:{if(d>>>0<=511){d=F[g+20>>2];h=F[g+16>>2];b=h+4|0;d=b>>>0<4?d+1|0:d;f=b;b=d;e=F[g+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>I[g+8>>2]:0){break c}d=h+F[g>>2]|0;e=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[g+16>>2]=f;F[g+20>>2]=b;break m}if(!Ea(1,m+44|0,g)){break c}e=F[m+44>>2]}if(!e){break c}b=F[F[a+4>>2]+32>>2];d=F[b+8>>2];g=F[b+16>>2];b=F[b+12>>2]-(F[b+20>>2]+(d>>>0>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?d-g>>>0>>0:0){break c}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;d=F[F[a+4>>2]+32>>2];b=F[d+16>>2];g=(b+F[d>>2]|0)+e|0;h=F[d+8>>2];b=(h-b|0)-e|0;E[m+38>>1]=H[d+38>>1];F[m>>2]=g;F[m+16>>2]=0;F[m+20>>2]=0;F[m+8>>2]=b;F[m+12>>2]=0;b=Jb(a,m);if((b|0)==-1){break c}u=b;z=b>>31;break l}u=-1;z=-1;if((Jb(a,F[b+32>>2])|0)==-1){break c}}g=a+232|0;gd(g,a);C=a,J=ga[F[F[a>>2]+36>>2]](a)|0,F[C+380>>2]=J;F[a+372>>2]=j;F[a+384>>2]=F[a+156>>2]+c;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;h=m;c=0;j=ea-16|0;ea=j;n:{o:{b=F[g+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[g+4>>2];F[g+40>>2]=F[g>>2];F[g+44>>2]=b;b=F[g+36>>2];F[g+72>>2]=F[g+32>>2];F[g+76>>2]=b;d=F[g+28>>2];b=g- -64|0;F[b>>2]=F[g+24>>2];F[b+4>>2]=d;b=F[g+20>>2];F[g+56>>2]=F[g+16>>2];F[g+60>>2]=b;b=F[g+12>>2];F[g+48>>2]=F[g+8>>2];F[g+52>>2]=b;if(!Fb(g+40|0,1,j+8|0)){break o}b=F[g+44>>2];F[g>>2]=F[g+40>>2];F[g+4>>2]=b;b=F[g+76>>2];F[g+32>>2]=F[g+72>>2];F[g+36>>2]=b;b=F[g+68>>2];F[g+24>>2]=F[g+64>>2];F[g+28>>2]=b;d=F[g+60>>2];e=d;b=F[g+56>>2];F[g+16>>2]=b;F[g+20>>2]=d;f=F[g+52>>2];d=F[g+48>>2];F[g+8>>2]=d;F[g+12>>2]=f;l=d-b|0;p=F[j+12>>2];o=p;f=f-((b>>>0>d>>>0)+e|0)|0;d=F[j+8>>2];if((o|0)==(f|0)&l>>>0>>0|f>>>0>>0){break o}i=b+d|0;b=e+p|0;F[g+16>>2]=i;F[g+20>>2]=d>>>0>i>>>0?b+1|0:b}p:{if(H[g+38>>1]<=513){b=F[g+4>>2];F[g+96>>2]=F[g>>2];F[g+100>>2]=b;b=F[g+36>>2];F[g+128>>2]=F[g+32>>2];F[g+132>>2]=b;b=F[g+28>>2];F[g+120>>2]=F[g+24>>2];F[g+124>>2]=b;b=F[g+20>>2];F[g+112>>2]=F[g+16>>2];F[g+116>>2]=b;b=F[g+12>>2];F[g+104>>2]=F[g+8>>2];F[g+108>>2]=b;if(!Fb(g+96|0,1,j+8|0)){break o}b=F[g+100>>2];F[g>>2]=F[g+96>>2];F[g+4>>2]=b;b=F[g+132>>2];F[g+32>>2]=F[g+128>>2];F[g+36>>2]=b;b=F[g+124>>2];F[g+24>>2]=F[g+120>>2];F[g+28>>2]=b;d=F[g+116>>2];i=d;b=F[g+112>>2];F[g+16>>2]=b;F[g+20>>2]=d;f=F[g+108>>2];e=f;d=F[g+104>>2];F[g+8>>2]=d;F[g+12>>2]=e;l=d-b|0;p=F[j+12>>2];o=p;f=e-((b>>>0>d>>>0)+i|0)|0;d=F[j+8>>2];if((o|0)==(f|0)&l>>>0>>0|f>>>0>>0){break o}f=i+p|0;b=b+d|0;f=b>>>0>>0?f+1|0:f;F[g+16>>2]=b;F[g+20>>2]=f;break p}if(!xa(g+80|0,g)){break n}}if(!Ce(g)){break n}b=F[g+4>>2];F[h>>2]=F[g>>2];F[h+4>>2]=b;b=F[g+36>>2];F[h+32>>2]=F[g+32>>2];F[h+36>>2]=b;b=F[g+28>>2];F[h+24>>2]=F[g+24>>2];F[h+28>>2]=b;b=F[g+20>>2];F[h+16>>2]=F[g+16>>2];F[h+20>>2]=b;b=F[g+12>>2];F[h+8>>2]=F[g+8>>2];F[h+12>>2]=b;b=F[g+144>>2];b=H[(ga[F[F[b>>2]+32>>2]](b)|0)+36>>1];q:{if(((b<<8|b>>>8)&65535)>>>0<=513){b=F[g+144>>2];r:{if(G[(ga[F[F[b>>2]+32>>2]](b)|0)+36|0]<=1){b=F[h+20>>2];f=F[h+16>>2];d=f+4|0;b=d>>>0<4?b+1|0:b;i=d;d=b;e=F[h+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?i>>>0>I[h+8>>2]:0){break n}b=f+F[h>>2]|0;e=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[h+16>>2]=i;F[h+20>>2]=d;break r}if(!Ea(1,j+8|0,h)){break n}e=F[j+8>>2]}b=F[g+152>>2];if(b>>>0<=e>>>0){break n}e=F[h+16>>2];d=F[h+20>>2];i=F[h+12>>2];if((d|0)>(i|0)?1:(d|0)>=(i|0)?e>>>0>=I[h+8>>2]:0){break n}i=G[e+F[h>>2]|0];e=e+1|0;d=e>>>0<1?d+1|0:d;f=h;F[f+16>>2]=e;F[f+20>>2]=d;if(i){break n}F[g+176>>2]=2;F[g+180>>2]=7;break q}F[g+176>>2]=2;F[g+180>>2]=7;b=F[g+152>>2]}if((b|0)<0){break n}F[j+8>>2]=0;d=g+184|0;f=F[g+156>>2];c=F[g+160>>2]-f>>2;s:{if(c>>>0>>0){Oa(g+156|0,b-c|0,j+8|0);b=F[g+180>>2]-F[g+176>>2]|0;break s}if(b>>>0>>0){F[g+160>>2]=f+(b<<2)}b=5}f=b+1|0;b=F[g+188>>2];c=F[g+184>>2];e=(b-c|0)/12|0;t:{if(f>>>0>e>>>0){f=f-e|0;i=F[d+8>>2];c=F[d+4>>2];u:{if(f>>>0<=(i-c|0)/12>>>0){b=d;if(f){e=c;c=L((L(f,12)-12>>>0)/12|0,12)+12|0;c=ua(e,0,c)+c|0}F[b+4>>2]=c;break u}v:{w:{x:{b=F[d>>2];l=(c-b|0)/12|0;e=l+f|0;if(e>>>0<357913942){i=(i-b|0)/12|0;p=i<<1;i=i>>>0<178956970?e>>>0>p>>>0?e:p:357913941;if(i){if(i>>>0>=357913942){break x}k=sa(L(i,12))}e=L(l,12)+k|0;l=L((L(f,12)-12>>>0)/12|0,12)+12|0;f=ua(e,0,l);l=f+l|0;i=L(i,12)+k|0;if((b|0)==(c|0)){break w}while(1){e=e-12|0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=c-12|0;F[e>>2]=F[c>>2];F[e+4>>2]=F[c+4>>2];F[e+8>>2]=F[c+8>>2];F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;if((b|0)!=(c|0)){continue}break}F[d+8>>2]=i;b=F[d+4>>2];F[d+4>>2]=l;c=F[d>>2];F[d>>2]=e;if((b|0)==(c|0)){break v}while(1){f=b-12|0;e=F[f>>2];if(e){F[b-8>>2]=e;ra(e)}b=f;if((b|0)!=(c|0)){continue}break}break v}break b}wa(12220);V()}F[d+8>>2]=i;F[d+4>>2]=l;F[d>>2]=f}if(c){ra(c)}}e=F[g+188>>2];break t}if(e>>>0<=f>>>0){e=b;break t}e=c+L(f,12)|0;if((b|0)!=(e|0)){while(1){c=b-12|0;f=F[c>>2];if(f){F[b-8>>2]=f;ra(f)}b=c;if((b|0)!=(e|0)){continue}break}}F[g+188>>2]=e}i=g+196|0;c=F[g+184>>2];b=(e-c|0)/12|0;k=F[g+196>>2];f=F[g+200>>2]-k>>2;y:{if(b>>>0>f>>>0){Ia(i,b-f|0);c=F[g+184>>2];e=F[g+188>>2];break y}if(b>>>0>=f>>>0){break y}F[g+200>>2]=k+(b<<2)}if((c|0)==(e|0)){c=1;break n}b=0;while(1){if(!Ea(1,j+8|0,h)){break o}c=F[g+148>>2];f=(F[c+4>>2]-F[c>>2]>>2>>>0)/3|0;c=F[j+8>>2];if(f>>>0>>0){break o}if(c){e=F[d>>2];p=L(b,12);f=e+p|0;k=F[f>>2];l=F[f+4>>2]-k>>2;z:{if(l>>>0>>0){Ja(f,c-l|0);e=F[d>>2];break z}if(c>>>0>=l>>>0){break z}F[f+4>>2]=k+(c<<2)}qd(c,1,h,F[e+p>>2]);F[F[i>>2]+(b<<2)>>2]=c}c=1;b=b+1|0;if(b>>>0<(F[g+188>>2]-F[g+184>>2]|0)/12>>>0){continue}break}break n}c=0}ea=j+16|0;A:{if(!c){break A}b=0;k=ea-96|0;ea=k;F[k+72>>2]=0;F[k+64>>2]=0;F[k+68>>2]=0;F[k+48>>2]=0;F[k+52>>2]=0;F[k+40>>2]=0;F[k+44>>2]=0;F[k+56>>2]=1065353216;F[k+32>>2]=0;F[k+24>>2]=0;F[k+28>>2]=0;l=1;d=a;t=F[a+124>>2];B:{C:{D:{E:{if((n|0)<1){break E}w=d+232|0;y=F[d+216>>2]!=F[d+220>>2];while(1){f=b;b=b+1|0;F:{G:{H:{I:{J:{K:{L:{M:{N:{O:{P:{a=F[d+404>>2];Q:{if((a|0)!=-1){c=-1;h=F[d+428>>2]+(a<<2)|0;e=F[h>>2];a=e-1|0;F[h>>2]=a;if((e|0)<1){break D}c=F[F[F[d+416>>2]+L(F[d+404>>2],12)>>2]+(a<<2)>>2];a=F[(c<<2)+12288>>2];F[d+400>>2]=a;if(c){break Q}break G}a=F[d+376>>2];a=H[(ga[F[F[a>>2]+32>>2]](a)|0)+36>>1];if(((a<<8|a>>>8)&65535)>>>0>513){break P}j=d;if(G[d+308|0]){i=F[d+296>>2];c=F[d+304>>2];a=i+(c>>>3|0)|0;p=F[d+300>>2];if(a>>>0>=p>>>0){break M}h=G[a|0];a=c+1|0;F[d+304>>2]=a;if(!(h>>>(c&7)&1)){break M}h=0;e=a>>>3|0;o=i+e|0;R:{if(o>>>0>=p>>>0){c=a;break R}h=G[o|0];c=c+2|0;F[d+304>>2]=c;e=c>>>3|0;h=h>>>(a&7)&1}a=e+i|0;if(a>>>0

>>0){a=G[a|0];F[d+304>>2]=c+1;h=a>>>(c&7)<<1&2|h}a=h<<1|1}else{a=1}F[j+400>>2]=a}c=-1;S:{switch(a-1|0){case 2:case 4:j=F[k+68>>2];if((j|0)==F[k+64>>2]){break D}e=F[d+8>>2];c=F[e+12>>2];h=L(f,3);i=(a|0)==5;p=h+(i?2:1)|0;q=p<<2;a=F[j-4>>2];F[c+q>>2]=a;F[c+(a<<2)>>2]=p;Ta(e+24|0);c=-1;o=F[d+8>>2];j=F[o+24>>2];if((t|0)>2]-j>>2){break D}c=F[o>>2];e=F[e+28>>2]-F[e+24>>2]|0;o=(e>>2)-1|0;F[c+q>>2]=o;if(e){F[j+(o<<2)>>2]=p}e=i?h:h+2|0;p=c+(h+i<<2)|0;T:{U:{V:{if((a|0)!=-1){i=a+((a>>>0)%3|0?-1:2)|0;if((i|0)==-1){break V}i=F[c+(i<<2)>>2];F[c+(e<<2)>>2]=i;if((i|0)==-1){break U}F[j+(i<<2)>>2]=e;break U}F[c+(e<<2)>>2]=-1;e=-1;break T}F[c+(e<<2)>>2]=-1}j=a+1|0;a=(j>>>0)%3|0?j:a-2|0;e=-1;if((a|0)==-1){break T}e=F[c+(a<<2)>>2]}F[p>>2]=e;c=F[k+68>>2];F[c-4>>2]=h;break N;case 6:break O;case 0:break S;default:break D}}h=F[k+68>>2];e=F[k+64>>2];if((h|0)==(e|0)){break D}j=h-4|0;p=F[j>>2];F[k+68>>2]=j;o=F[k+44>>2];if(!o){break L}c=F[k+40>>2];q=Nj(o)>>>0>1;i=f&o+2147483647;W:{if(!q){break W}a=f;i=a;if(a>>>0>>0){break W}i=(f>>>0)%(o>>>0)|0}a=F[c+(i<<2)>>2];if(!a){break L}c=F[a>>2];if(!c){break L}X:{if(!q){a=o-1|0;while(1){o=F[c+4>>2];Y:{if((o|0)!=(f|0)){if((i|0)!=(a&o)){break L}break Y}if((f|0)==F[c+8>>2]){break X}}c=F[c>>2];if(c){continue}break}break L}while(1){a=F[c+4>>2];Z:{if((a|0)!=(f|0)){if(a>>>0>=o>>>0){a=(a>>>0)%(o>>>0)|0}if((a|0)!=(i|0)){break L}break Z}if((f|0)==F[c+8>>2]){break X}}c=F[c>>2];if(c){continue}break}break L}if((j|0)!=F[k+72>>2]){F[j>>2]=F[c+12>>2];F[k+68>>2]=h;a=e;break K}j=j-e|0;h=j>>2;i=h+1|0;if(i>>>0>=1073741824){break b}o=j>>1;i=h>>>0<536870911?i>>>0>o>>>0?i:o:1073741823;a=0;_:{if(!i){break _}if(i>>>0>=1073741824){break C}a=sa(i<<2)}h=a+(h<<2)|0;F[h>>2]=F[c+12>>2];h=h+4|0;if((j|0)>=1){ta(a,e,j)}F[k+72>>2]=(i<<2)+a;F[k+68>>2]=h;F[k+64>>2]=a;if(!e){break K}ra(e);h=F[k+68>>2];a=F[k+64>>2];break K}F[d+400>>2]=7}e=F[d+8>>2];Ta(e+24|0);c=-1;a=F[d+8>>2];h=L(f,3);j=F[e+28>>2]-F[e+24>>2]|0;e=j>>2;p=e-1|0;F[F[a>>2]+(h<<2)>>2]=p;Ta(a+24|0);i=h+1|0;F[F[a>>2]+(i<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[d+8>>2];Ta(a+24|0);o=h+2|0;F[F[a>>2]+(o<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;q=F[d+8>>2];a=F[q+24>>2];if((t|0)>2]-a>>2){break D}$:{aa:{if(!j){F[(e<<2)+a>>2]=i;a=a+4|0;break aa}F[(p<<2)+a>>2]=h;if((j|0)==-4){break aa}F[(e<<2)+a>>2]=i;c=e+1|0;if((c|0)==-1){break $}a=(c<<2)+a|0}F[a>>2]=o}a=F[k+68>>2];if((a|0)!=F[k+72>>2]){F[a>>2]=h;c=a+4|0;F[k+68>>2]=c;break N}e=F[k+64>>2];j=a-e|0;c=j>>2;i=c+1|0;if(i>>>0>=1073741824){break b}p=j>>1;i=c>>>0<536870911?i>>>0>p>>>0?i:p:1073741823;a=0;ba:{if(!i){break ba}if(i>>>0>=1073741824){break C}a=sa(i<<2)}c=a+(c<<2)|0;F[c>>2]=h;c=c+4|0;if((j|0)>=1){ta(a,e,j)}F[k+72>>2]=a+(i<<2);F[k+68>>2]=c;F[k+64>>2]=a;if(!e){break N}ra(e);c=F[k+68>>2]}Zc(w,F[c-4>>2]);c=F[d+40>>2];if((c|0)==F[d+36>>2]){break F}h=(f^-1)+n|0;while(1){a=F[c-8>>2];if(a>>>0>h>>>0){break J}if((a|0)!=(h|0)){break F}f=G[c-4|0];a=c-12|0;c=F[a>>2];F[d+40>>2]=a;if((c|0)<0){break J}a=F[F[k+68>>2]-4>>2];F[k+20>>2]=(c^-1)+n;F[k+88>>2]=k+20;bd(k,k+40|0,k+20|0,k+88|0);e=F[k>>2];ca:{if(f&1){f=-1;if((a|0)==-1){break ca}c=a+1|0;f=(c>>>0)%3|0?c:a-2|0;break ca}f=-1;if((a|0)==-1){break ca}f=a-1|0;if((a>>>0)%3|0){break ca}f=a+2|0}F[e+12>>2]=f;c=F[d+40>>2];if((c|0)!=F[d+36>>2]){continue}break}break F}F[d+400>>2]=0;break G}h=j;a=e}if((a|0)==(h|0)){break J}c=F[h-4>>2];a=(c|0)==-1;j=F[d+8>>2];if(F[F[j+12>>2]+(c<<2)>>2]!=-1?!a:0){break J}s=(p|0)==-1;i=F[j+12>>2];if(F[i+(p<<2)>>2]!=-1?!s:0){break J}o=L(f,3);q=o+2|0;F[i+(c<<2)>>2]=q;f=q<<2;F[f+i>>2]=c;e=o+1|0;F[i+(p<<2)>>2]=e;A=e<<2;F[i+A>>2]=p;if(a){break I}e=-1;l=-1;a=F[j>>2];B=a+(o<<2)|0;x=c+((c>>>0)%3|0?-1:2)|0;if((x|0)!=-1){l=F[(x<<2)+a>>2]}F[B>>2]=l;x=c+1|0;c=(x>>>0)%3|0?x:c-2|0;if((c|0)==-1){break H}e=F[(c<<2)+a>>2];break H}c=-1;if(l&1){break D}break E}l=-1;a=F[j>>2];F[a+(o<<2)>>2]=-1;e=-1}F[a+A>>2]=e;da:{ea:{fa:{if(!s){c=p+((p>>>0)%3|0?-1:2)|0;if((c|0)==-1){break fa}c=F[(c<<2)+a>>2];F[a+f>>2]=c;if((c|0)==-1){break ea}F[F[j+24>>2]+(c<<2)>>2]=q;break ea}F[a+f>>2]=-1;e=-1;c=-1;break da}F[a+f>>2]=-1}e=-1;f=p+1|0;f=(f>>>0)%3|0?f:p-2|0;c=-1;if((f|0)==-1){break da}e=F[(f<<2)+a>>2];c=f}f=F[d+388>>2];p=l<<2;q=f+p|0;s=f;f=e<<2;F[q>>2]=F[q>>2]+F[s+f>>2];j=F[j+24>>2];f=j+f|0;if((l|0)!=-1){F[j+p>>2]=F[f>>2]}ga:{if((c|0)==-1){break ga}while(1){F[(c<<2)+a>>2]=l;j=c+1|0;c=(j>>>0)%3|0?j:c-2|0;if((c|0)==-1){break ga}c=F[i+(c<<2)>>2];if((c|0)==-1){break ga}j=c+1|0;c=(j>>>0)%3|0?j:c-2|0;if((c|0)!=-1){continue}break}}F[f>>2]=-1;ha:{if(y){break ha}a=F[k+28>>2];if((a|0)!=F[k+32>>2]){F[a>>2]=e;F[k+28>>2]=a+4;break ha}ia:{c=F[k+24>>2];f=a-c|0;i=f>>2;j=i+1|0;if(j>>>0<1073741824){l=f>>1;j=i>>>0<536870911?j>>>0>l>>>0?j:l:1073741823;a=0;ja:{if(!j){break ja}if(j>>>0>=1073741824){break ia}a=sa(j<<2)}i=a+(i<<2)|0;F[i>>2]=e;if((f|0)>=1){ta(a,c,f)}F[k+32>>2]=a+(j<<2);F[k+28>>2]=i+4;F[k+24>>2]=a;if(!c){break ha}ra(c);h=F[k+68>>2];break ha}break b}break C}F[h-4>>2]=o;Zc(w,o);break F}c=F[k+68>>2];if((c|0)==F[k+64>>2]){c=-1;break D}a=-1;j=F[d+8>>2];p=F[j+24>>2];h=p;o=c-4|0;c=F[o>>2];e=-1;ka:{if((c|0)==-1){break ka}i=c+1|0;i=(i>>>0)%3|0?i:c-2|0;e=-1;if((i|0)==-1){break ka}e=F[F[j>>2]+(i<<2)>>2]}h=F[h+(e<<2)>>2];if((h|0)!=-1){a=h+1|0;a=(a>>>0)%3|0?a:h-2|0}h=F[j+12>>2];i=L(f,3);f=i+1|0;F[h+(c<<2)>>2]=f;q=f<<2;F[q+h>>2]=c;l=i+2|0;F[h+(a<<2)>>2]=l;s=l<<2;F[s+h>>2]=a;h=-1;f=-1;la:{if((c|0)==-1){break la}c=c+((c>>>0)%3|0?-1:2)|0;f=-1;if((c|0)==-1){break la}f=F[F[j>>2]+(c<<2)>>2]}ma:{if((a|0)==-1){break ma}c=a+1|0;a=(c>>>0)%3|0?c:a-2|0;if((a|0)==-1){break ma}h=F[F[j>>2]+(a<<2)>>2]}c=-1;if((e|0)==(f|0)|(e|0)==(h|0)){break D}a=F[j>>2];F[a+(i<<2)>>2]=e;F[a+q>>2]=h;F[a+s>>2]=f;if((f|0)!=-1){F[p+(f<<2)>>2]=l}a=F[d+120>>2]+(e>>>3&536870908)|0;c=F[a>>2];C=a,J=Oj(e)&c,F[C>>2]=J;F[o>>2]=i;Zc(w,i)}l=(b|0)<(n|0);if((b|0)!=(n|0)){continue}break}b=n}c=-1;l=F[d+8>>2];if((t|0)>2]-F[l+24>>2]>>2){break D}e=F[k+68>>2];if((e|0)!=F[k+64>>2]){h=d+60|0;w=d+312|0;while(1){a=e-4|0;l=F[a>>2];F[k+68>>2]=a;na:{oa:{pa:{qa:{if(H[d+270>>1]<=513){if(!G[d+364|0]){break pa}a=F[d+360>>2];f=F[d+352>>2]+(a>>>3|0)|0;if(f>>>0>=I[d+356>>2]){break oa}f=G[f|0];F[d+360>>2]=a+1;a=f>>>(a&7)&1;break qa}a=Fa(w)}if(!a){break oa}}o=F[d+8>>2];p=F[o>>2];if(((F[o+4>>2]-p>>2>>>0)/3|0)<=(b|0)){break D}a=-1;n=-1;j=F[o+24>>2];e=j;f=-1;ra:{if((l|0)==-1){break ra}i=l+1|0;i=(i>>>0)%3|0?i:l-2|0;f=-1;if((i|0)==-1){break ra}f=F[p+(i<<2)>>2]}i=f;f=F[e+(i<<2)>>2];sa:{if((f|0)==-1){break sa}e=f+1|0;f=(e>>>0)%3|0?e:f-2|0;if((f|0)==-1){break sa}a=f+1|0;a=(a>>>0)%3|0?a:f-2|0;if((a|0)!=-1){n=F[p+(a<<2)>>2]}a=f}t=-1;e=-1;j=F[j+(n<<2)>>2];f=-1;ta:{if((j|0)==-1){break ta}q=j+1|0;j=(q>>>0)%3|0?q:j-2|0;f=-1;if((j|0)==-1){break ta}f=j+1|0;f=(f>>>0)%3|0?f:j-2|0;if((f|0)!=-1){e=F[p+(f<<2)>>2]}f=j}o=F[o+12>>2];j=L(b,3);q=j<<2;F[o+q>>2]=l;F[o+(l<<2)>>2]=j;l=j+1|0;y=l<<2;F[y+o>>2]=a;F[o+(a<<2)>>2]=l;a=j+2|0;s=a<<2;F[s+o>>2]=f;F[o+(f<<2)>>2]=a;F[p+q>>2]=n;o=p+y|0;F[o>>2]=e;p=p+s|0;F[p>>2]=i;f=F[d+120>>2];e=j>>>0>l>>>0?-1:n;n=f+(e>>>3&536870908)|0;i=F[n>>2];C=n,J=Oj(e)&i,F[C>>2]=J;t=(l|0)!=-1?F[o>>2]:t;e=f+(t>>>3&536870908)|0;n=F[e>>2];C=e,J=Oj(t)&n,F[C>>2]=J;e=-1;e=(a|0)!=-1?F[p>>2]:e;a=f+(e>>>3&536870908)|0;f=F[a>>2];C=a,J=Oj(e)&f,F[C>>2]=J;e=F[d+64>>2];f=F[d+68>>2];if((e|0)==f<<5){if((e+1|0)<=-1){break b}a=h;if(e>>>0<=1073741822){e=e+32&-32;f=f<<6;f=e>>>0>f>>>0?e:f}else{f=2147483647}db(a,f);e=F[d+64>>2]}b=b+1|0;F[d+64>>2]=e+1;a=F[d+60>>2]+(e>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>2];if((a|0)!=F[d+80>>2]){F[a>>2]=j;F[d+76>>2]=a+4;break na}f=F[d+72>>2];e=a-f|0;i=e>>2;n=i+1|0;if(n>>>0>=1073741824){break b}l=e>>1;n=i>>>0<536870911?l>>>0>>0?n:l:1073741823;a=0;ua:{if(!n){break ua}if(n>>>0>=1073741824){break C}a=sa(n<<2)}i=a+(i<<2)|0;F[i>>2]=j;if((e|0)>=1){ta(a,f,e)}F[d+80>>2]=a+(n<<2);F[d+76>>2]=i+4;F[d+72>>2]=a;if(!f){break na}ra(f);break na}a=F[d+64>>2];e=F[d+68>>2];if((a|0)==e<<5){if((a+1|0)<=-1){break b}f=h;if(a>>>0<=1073741822){a=a+32&-32;e=e<<6;a=a>>>0>e>>>0?a:e}else{a=2147483647}db(f,a);a=F[d+64>>2]}F[d+64>>2]=a+1;f=F[d+60>>2]+(a>>>3&536870908)|0;e=F[f>>2];C=f,J=Oj(a)&e,F[C>>2]=J;a=F[d+76>>2];if((a|0)!=F[d+80>>2]){F[a>>2]=l;F[d+76>>2]=a+4;break na}f=F[d+72>>2];e=a-f|0;j=e>>2;n=j+1|0;if(n>>>0>=1073741824){break b}i=e>>1;n=j>>>0<536870911?i>>>0>>0?n:i:1073741823;a=0;va:{if(!n){break va}if(n>>>0>=1073741824){break C}a=sa(n<<2)}j=a+(j<<2)|0;F[j>>2]=l;if((e|0)>=1){ta(a,f,e)}F[d+80>>2]=a+(n<<2);F[d+76>>2]=j+4;F[d+72>>2]=a;if(!f){break na}ra(f)}e=F[k+68>>2];if((e|0)!=F[k+64>>2]){continue}break}l=F[d+8>>2]}if(((F[l+4>>2]-F[l>>2]>>2>>>0)/3|0)!=(b|0)){break D}e=F[l+24>>2];c=F[l+28>>2]-e>>2;n=F[k+24>>2];j=F[k+28>>2];if((n|0)==(j|0)){break D}while(1){h=F[n>>2];b=c-1|0;a=(b<<2)+e|0;if(F[a>>2]==-1){while(1){b=c-2|0;c=c-1|0;a=(b<<2)+e|0;if(F[a>>2]==-1){continue}break}}if(b>>>0>=h>>>0){F[k>>2]=l;a=F[a>>2];D[k+12|0]=1;F[k+8>>2]=a;F[k+4>>2]=a;if((a|0)!=-1){F[F[l>>2]+(a<<2)>>2]=h;tb(k);e=F[k+8>>2];if((e|0)!=-1){while(1){F[F[F[d+8>>2]>>2]+(e<<2)>>2]=h;tb(k);e=F[k+8>>2];if((e|0)!=-1){continue}break}}l=F[d+8>>2]}e=F[l+24>>2];a=e+(b<<2)|0;if((h|0)!=-1){F[(h<<2)+e>>2]=F[a>>2]}F[a>>2]=-1;a=1<>2];h=f+(h>>>3&536870908)|0;i=h;f=f+(b>>>3&536870908)|0;b=1<>2];wa:{if(F[f>>2]&b){break wa}p=F[h>>2]&(a^-1)}F[i>>2]=p;F[f>>2]=F[f>>2]&(b^-1);c=c-1|0}n=n+4|0;if((j|0)!=(n|0)){continue}break}}a=F[k+24>>2];if(a){F[k+28>>2]=a;ra(a)}a=F[k+48>>2];if(a){while(1){b=F[a>>2];ra(a);a=b;if(a){continue}break}}a=F[k+40>>2];F[k+40>>2]=0;if(a){ra(a)}a=F[k+64>>2];if(a){F[k+68>>2]=a;ra(a)}ea=k+96|0;break B}wa(12220);V()}if((c|0)==-1){break A}a=F[m+16>>2];b=a+F[m>>2]|0;h=F[m+8>>2];h=h-a|0;a=F[F[d+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]=h;F[a+12>>2]=0;a=F[d+4>>2];b=H[a+36>>1];h=b<<8|b>>>8;if((h&65535)>>>0<=513){a=F[a+32>>2];f=z+F[a+20>>2]|0;b=u+F[a+16>>2]|0;f=b>>>0>>0?f+1|0:f;F[a+16>>2]=b;F[a+20>>2]=f}xa:{if(F[d+216>>2]==F[d+220>>2]){break xa}b=F[d+8>>2];a=F[b>>2];b=F[b+4>>2];ya:{if((h&65535)>>>0>=513){if((a|0)==(b|0)){break xa}b=0;break ya}if((a|0)==(b|0)){break xa}b=0;while(1){if(fd(d,b)){b=b+3|0;a=F[d+8>>2];if(b>>>0>2]-F[a>>2]>>2>>>0){continue}break xa}break}break A}while(1){if(ed(d,b)){b=b+3|0;a=F[d+8>>2];if(b>>>0>2]-F[a>>2]>>2>>>0){continue}break xa}break}break A}dd(g);b=F[d+216>>2];if((b|0)!=F[d+220>>2]){n=0;while(1){g=L(n,144);Kc((g+b|0)+4|0,F[d+8>>2]);a=F[v>>2];b=a+g|0;h=F[b+132>>2];f=F[b+136>>2];if((h|0)!=(f|0)){Db(b+4|0,F[h>>2]);b=h+4|0;if((f|0)!=(b|0)){while(1){Db((g+F[v>>2]|0)+4|0,F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}}a=F[v>>2]}Jc((a+g|0)+4|0);n=n+1|0;b=F[d+216>>2];if(n>>>0<(F[d+220>>2]-b|0)/144>>>0){continue}break}}a=F[d+8>>2];Ib(d+184|0,F[a+28>>2]-F[a+24>>2]>>2);r=F[d+216>>2];if((r|0)!=F[d+220>>2]){b=0;while(1){a=L(b,144)+r|0;g=F[a+60>>2]-F[a+56>>2]>>2;f=a+104|0;a=F[d+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Ib(f,(a|0)>(g|0)?a:g);b=b+1|0;r=F[d+216>>2];if(b>>>0<(F[d+220>>2]-r|0)/144>>>0){continue}break}}r=cd(d,c)}break c}r=0}ea=m- -64|0;return r|0}va();V()}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;k=ea+-64|0;ea=k;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;b=F[a+140>>2];a:{if(!b){break a}e=b&3;if(b-1>>>0>=3){l=b&-4;while(1){b=c<<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;c=c+4|0;l=l-4|0;if(l){continue}break}}if(!e){break a}while(1){F[F[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;e=e-1|0;if(e){continue}break}}F[a+148>>2]=0}b:{c:{c=F[a+4>>2];r=G[c+36|0];b=r<<8|G[c+37|0];d:{if(b>>>0>513){break d}g=F[c+32>>2];if(b>>>0<=511){b=F[g+20>>2];f=F[g+16>>2];d=f+4|0;b=d>>>0<4?b+1|0:b;h=d;d=b;q=F[g+12>>2];if((b|0)>(q|0)?1:(b|0)>=(q|0)?h>>>0>I[g+8>>2]:0){break c}b=f+F[g>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[g+16>>2]=h;F[g+20>>2]=d;F[a+132>>2]=b;break d}if(!Ea(1,k,g)){break c}c=F[a+4>>2];r=G[c+36|0];F[a+132>>2]=F[k>>2]}g=F[c+32>>2];e:{f:{g:{if((r&255)>>>0<=1){r=0;d=F[g+20>>2];f=F[g+16>>2];b=f+4|0;d=b>>>0<4?d+1|0:d;h=b;b=d;q=F[g+12>>2];if((b|0)>(q|0)?1:(b|0)>=(q|0)?h>>>0>I[g+8>>2]:0){break b}d=f+F[g>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[k+60>>2]=d;F[g+16>>2]=h;F[g+20>>2]=b;F[a+156>>2]=d;l=a+156|0;break g}r=0;if(!Ea(1,k+60|0,g)){break b}c=F[a+4>>2];b=G[c+36|0];F[a+156>>2]=F[k+60>>2];l=a+156|0;if(b>>>0>1){break f}}d=F[c+32>>2];c=F[d+8>>2];g=F[d+12>>2];e=c;c=F[d+20>>2];f=F[d+16>>2];b=f+4|0;c=b>>>0<4?c+1|0:c;h=b;b=c;if((b|0)>(g|0)?1:(b|0)>=(g|0)?e>>>0>>0:0){break b}c=f+F[d>>2]|0;e=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[k+56>>2]=e;F[d+16>>2]=h;F[d+20>>2]=b;break e}if(!Ea(1,k+56|0,F[c+32>>2])){break b}e=F[k+56>>2]}if(e>>>0>1431655765|I[l>>2]>L(e,3)>>>0){break b}q=F[a+4>>2];b=F[q+32>>2];l=F[b+8>>2];h=F[b+16>>2];g=F[b+12>>2];d=g;c=F[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?l>>>0<=h>>>0:0){break b}j=F[b>>2];i=G[j+h|0];d=c;n=h+1|0;d=n>>>0<1?d+1|0:d;F[b+16>>2]=n;F[b+20>>2]=d;h:{if(G[q+36|0]<=1){d=g;g=h+5|0;c=g>>>0<5?c+1|0:c;f=g;g=c;if((d|0)<(c|0)?1:(c|0)>=(d|0)?f>>>0>l>>>0:0){break b}c=j+n|0;l=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[k+52>>2]=l;F[b+16>>2]=f;F[b+20>>2]=g;if(e>>>0>=l>>>0){break h}break b}if(!Ea(1,k+52|0,b)){break b}l=F[k+52>>2];if(l>>>0>e>>>0){break b}}if(((l>>>0)/3|0)+l>>>0>>0){break b}c=F[a+4>>2];d=F[c+32>>2];i:{if(G[c+36|0]<=1){c=F[d+20>>2];g=F[d+16>>2];b=g+4|0;c=b>>>0<4?c+1|0:c;f=b;b=c;h=F[d+12>>2];if((b|0)>(h|0)?1:(b|0)>=(h|0)?f>>>0>I[d+8>>2]:0){break b}c=g+F[d>>2]|0;g=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[k+48>>2]=g;F[d+16>>2]=f;F[d+20>>2]=b;if(g>>>0<=l>>>0){break i}break b}if(!Ea(1,k+48|0,d)){break b}g=F[k+48>>2];if(l>>>0>>0){break b}}F[a+28>>2]=F[a+24>>2];b=sa(88);Oc(b);c=F[a+8>>2];F[a+8>>2]=b;j:{if(!c){break j}Za(c);if(F[a+8>>2]){break j}break b}F[a+164>>2]=F[a+160>>2];Kb(a+160|0,e);F[a+176>>2]=F[a+172>>2];Kb(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];v=a+216|0;id(v);hd(v,i);if(!Mc(F[a+8>>2],e,F[a+156>>2]+g|0)){break b}c=F[a+156>>2];D[k|0]=1;Na(a+120|0,c+g|0,k);c=F[a+4>>2];b=H[c+36>>1];b=(b<<8|b>>>8)&65535;k:{if(b>>>0<=513){d=F[c+32>>2];l:{if(b>>>0<=511){b=F[d+20>>2];f=F[d+16>>2];c=f+4|0;b=c>>>0<4?b+1|0:b;h=c;c=b;q=F[d+12>>2];if((b|0)>(q|0)?1:(b|0)>=(q|0)?h>>>0>I[d+8>>2]:0){break b}b=f+F[d>>2]|0;e=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[d+16>>2]=h;F[d+20>>2]=c;break l}if(!Ea(1,k+44|0,d)){break b}e=F[k+44>>2]}if(!e){break b}c=F[F[a+4>>2]+32>>2];b=F[c+8>>2];d=F[c+16>>2];c=F[c+12>>2]-(F[c+20>>2]+(b>>>0>>0)|0)|0;if((c|0)<0?1:(c|0)<=0?b-d>>>0>>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;b=F[F[a+4>>2]+32>>2];c=F[b+16>>2];d=(c+F[b>>2]|0)+e|0;f=F[b+8>>2];c=(f-c|0)-e|0;E[k+38>>1]=H[b+38>>1];F[k>>2]=d;F[k+16>>2]=0;F[k+20>>2]=0;F[k+8>>2]=c;F[k+12>>2]=0;c=Jb(a,k);if((c|0)==-1){break b}q=c;B=c>>31;break k}q=-1;B=-1;if((Jb(a,F[c+32>>2])|0)==-1){break b}}t=a+232|0;gd(t,a);J=a,K=ga[F[F[a>>2]+36>>2]](a)|0,F[J+380>>2]=K;F[a+372>>2]=i;F[a+384>>2]=F[a+156>>2]+g;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;b=0;f=ea-16|0;ea=f;c=k;m:{if(!De(t,c)){break m}d=F[c+20>>2];h=F[c+16>>2];g=h+4|0;d=g>>>0<4?d+1|0:d;e=g;g=d;i=F[c+12>>2];if((d|0)>(i|0)?1:(d|0)>=(i|0)?e>>>0>I[c+8>>2]:0){break m}d=h+F[c>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[c+16>>2]=e;F[c+20>>2]=g;if((d|0)<0){break m}g=d;d=F[t+152>>2];if((g|0)>=(d|0)){break m}F[f+12>>2]=0;g=F[t+156>>2];b=F[t+160>>2]-g>>2;n:{if(b>>>0>>0){Oa(t+156|0,d-b|0,f+12|0);break n}if(b>>>0<=d>>>0){break n}F[t+160>>2]=g+(d<<2)}b=xa(t+168|0,c)}ea=f+16|0;o:{if(!b){break o}c=0;j=ea-96|0;ea=j;F[j+72>>2]=0;F[j+64>>2]=0;F[j+68>>2]=0;F[j+48>>2]=0;F[j+52>>2]=0;F[j+40>>2]=0;F[j+44>>2]=0;F[j+56>>2]=1065353216;F[j+32>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;n=1;d=a;w=F[a+124>>2];p:{q:{r:{s:{t:{u:{if((l|0)<1){break u}z=d+400|0;u=d+232|0;A=F[d+216>>2]!=F[d+220>>2];while(1){f=c;c=c+1|0;v:{w:{x:{y:{z:{if(F[d+420>>2]!=-1){if(Fa(z)){break z}}h=d;if(G[d+308|0]){i=F[d+296>>2];b=F[d+304>>2];a=i+(b>>>3|0)|0;o=F[d+300>>2];if(a>>>0>=o>>>0){break y}g=G[a|0];a=b+1|0;F[d+304>>2]=a;if(!(g>>>(b&7)&1)){break y}g=0;e=a>>>3|0;m=i+e|0;A:{if(m>>>0>=o>>>0){b=a;break A}g=G[m|0];b=b+2|0;F[d+304>>2]=b;e=b>>>3|0;g=g>>>(a&7)&1}a=e+i|0;if(a>>>0>>0){a=G[a|0];F[d+304>>2]=b+1;g=a>>>(b&7)<<1&2|g}a=g<<1|1}else{a=1}F[h+416>>2]=a;break w}a=F[d+420>>2];F[d+416>>2]=a;if(a){break w}break x}F[d+416>>2]=0}b=F[j+68>>2];if((b|0)==F[j+64>>2]){b=-1;break t}i=-1;h=F[d+8>>2];o=F[h+24>>2];g=o;m=b-4|0;b=F[m>>2];a=-1;B:{if((b|0)==-1){break B}e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;a=-1;if((e|0)==-1){break B}a=F[F[h>>2]+(e<<2)>>2]}g=F[g+(a<<2)>>2];if((g|0)!=-1){e=g+1|0;i=(e>>>0)%3|0?e:g-2|0}g=F[h+12>>2];e=L(f,3);f=e+1|0;F[g+(b<<2)>>2]=f;p=f<<2;F[p+g>>2]=b;n=e+2|0;F[g+(i<<2)>>2]=n;x=n<<2;F[x+g>>2]=i;g=-1;f=-1;C:{if((b|0)==-1){break C}b=b+((b>>>0)%3|0?-1:2)|0;f=-1;if((b|0)==-1){break C}f=F[F[h>>2]+(b<<2)>>2]}D:{if((i|0)==-1){break D}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1){break D}g=F[F[h>>2]+(b<<2)>>2]}b=-1;if((a|0)==(f|0)|(a|0)==(g|0)){break t}b=F[h>>2];F[b+(e<<2)>>2]=a;F[b+p>>2]=g;F[b+x>>2]=f;if((f|0)!=-1){F[o+(f<<2)>>2]=n}b=F[d+120>>2]+(a>>>3&536870908)|0;g=F[b>>2];J=b,K=Oj(a)&g,F[J>>2]=K;F[m>>2]=e;_c(u,e);break v}b=-1;E:{F:{G:{H:{I:{J:{K:{L:{M:{switch(a-1|0){case 2:case 4:e=F[j+68>>2];if((e|0)==F[j+64>>2]){break t}h=F[d+8>>2];b=F[h+12>>2];g=L(f,3);i=(a|0)==5;o=g+(i?2:1)|0;p=o<<2;a=F[e-4>>2];F[b+p>>2]=a;F[b+(a<<2)>>2]=o;Ta(h+24|0);b=-1;m=F[d+8>>2];e=F[m+24>>2];if((w|0)>2]-e>>2){break t}b=F[m>>2];h=F[h+28>>2]-F[h+24>>2]|0;m=(h>>2)-1|0;F[b+p>>2]=m;if(h){F[e+(m<<2)>>2]=o}h=i?g:g+2|0;s=b+(g+i<<2)|0;N:{O:{P:{if((a|0)!=-1){i=a+((a>>>0)%3|0?-1:2)|0;if((i|0)==-1){break P}i=F[b+(i<<2)>>2];F[b+(h<<2)>>2]=i;if((i|0)==-1){break O}F[e+(i<<2)>>2]=h;break O}F[b+(h<<2)>>2]=-1;h=-1;break N}F[b+(h<<2)>>2]=-1}e=a+1|0;a=(e>>>0)%3|0?e:a-2|0;h=-1;if((a|0)==-1){break N}h=F[b+(a<<2)>>2]}F[s>>2]=h;b=F[j+68>>2];F[b-4>>2]=g;break L;case 0:g=F[j+68>>2];h=F[j+64>>2];if((g|0)==(h|0)){break t}e=g-4|0;o=F[e>>2];F[j+68>>2]=e;m=F[j+44>>2];if(!m){break I}s=F[j+40>>2];p=Nj(m)>>>0>1;b=f&m+2147483647;Q:{if(!p){break Q}a=f;b=a;if(a>>>0>>0){break Q}b=(f>>>0)%(m>>>0)|0}i=b;a=F[s+(i<<2)>>2];if(!a){break I}b=F[a>>2];if(!b){break I}R:{if(!p){a=m-1|0;while(1){m=F[b+4>>2];S:{if((m|0)!=(f|0)){if((i|0)!=(a&m)){break I}break S}if((f|0)==F[b+8>>2]){break R}}b=F[b>>2];if(b){continue}break}break I}while(1){a=F[b+4>>2];T:{if((a|0)!=(f|0)){if(a>>>0>=m>>>0){a=(a>>>0)%(m>>>0)|0}if((a|0)!=(i|0)){break I}break T}if((f|0)==F[b+8>>2]){break R}}b=F[b>>2];if(b){continue}break}break I}if((e|0)!=F[j+72>>2]){F[e>>2]=F[b+12>>2];F[j+68>>2]=g;a=h;break H}e=e-h|0;g=e>>2;i=g+1|0;if(i>>>0>=1073741824){break K}m=e>>1;i=g>>>0<536870911?i>>>0>m>>>0?i:m:1073741823;a=0;U:{if(!i){break U}if(i>>>0>=1073741824){break q}a=sa(i<<2)}g=a+(g<<2)|0;F[g>>2]=F[b+12>>2];g=g+4|0;if((e|0)>=1){ta(a,h,e)}F[j+72>>2]=(i<<2)+a;F[j+68>>2]=g;F[j+64>>2]=a;if(!h){break H}ra(h);g=F[j+68>>2];a=F[j+64>>2];break H;case 6:break M;default:break t}}h=F[d+8>>2];Ta(h+24|0);a=F[d+8>>2];g=L(f,3);e=F[h+28>>2]-F[h+24>>2]|0;h=e>>2;o=h-1|0;F[F[a>>2]+(g<<2)>>2]=o;Ta(a+24|0);i=g+1|0;F[F[a>>2]+(i<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[d+8>>2];Ta(a+24|0);m=g+2|0;F[F[a>>2]+(m<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;p=F[d+8>>2];a=F[p+24>>2];if((w|0)>2]-a>>2){break t}V:{W:{if(!e){F[(h<<2)+a>>2]=i;a=a+4|0;break W}F[(o<<2)+a>>2]=g;if((e|0)==-4){break W}F[(h<<2)+a>>2]=i;b=h+1|0;if((b|0)==-1){break V}a=(b<<2)+a|0}F[a>>2]=m}a=F[j+68>>2];if((a|0)!=F[j+72>>2]){F[a>>2]=g;b=a+4|0;F[j+68>>2]=b;break L}h=F[j+64>>2];e=a-h|0;b=e>>2;i=b+1|0;if(i>>>0>=1073741824){break J}o=e>>1;i=b>>>0<536870911?i>>>0>o>>>0?i:o:1073741823;a=0;X:{if(!i){break X}if(i>>>0>=1073741824){break q}a=sa(i<<2)}b=a+(b<<2)|0;F[b>>2]=g;b=b+4|0;if((e|0)>=1){ta(a,h,e)}F[j+72>>2]=a+(i<<2);F[j+68>>2]=b;F[j+64>>2]=a;if(!h){break L}ra(h);b=F[j+68>>2]}_c(u,F[b-4>>2]);b=F[d+40>>2];if((b|0)==F[d+36>>2]){break v}g=(f^-1)+l|0;while(1){a=F[b-8>>2];if(a>>>0>g>>>0){break G}if((a|0)!=(g|0)){break v}f=G[b-4|0];a=b-12|0;b=F[a>>2];F[d+40>>2]=a;if((b|0)<0){break G}a=F[F[j+68>>2]-4>>2];F[j+20>>2]=(b^-1)+l;F[j+88>>2]=j+20;bd(j,j+40|0,j+20|0,j+88|0);h=F[j>>2];Y:{if(f&1){b=-1;if((a|0)==-1){break Y}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0;break Y}b=-1;if((a|0)==-1){break Y}b=a-1|0;if((a>>>0)%3|0){break Y}b=a+2|0}F[h+12>>2]=b;b=F[d+40>>2];if((b|0)!=F[d+36>>2]){continue}break}break v}va();V()}va();V()}g=e;a=h}if((a|0)==(g|0)){break G}a=F[g-4>>2];e=(a|0)==-1;h=F[d+8>>2];if(F[F[h+12>>2]+(a<<2)>>2]!=-1?!e:0){break G}x=(o|0)==-1;m=F[h+12>>2];if(F[m+(o<<2)>>2]!=-1?!x:0){break G}p=L(f,3);f=p+2|0;F[m+(a<<2)>>2]=f;b=f<<2;F[b+m>>2]=a;i=p+1|0;F[m+(o<<2)>>2]=i;C=i<<2;F[m+C>>2]=o;if(e){break F}e=-1;n=-1;i=F[h>>2];s=i+(p<<2)|0;y=a+((a>>>0)%3|0?-1:2)|0;if((y|0)!=-1){n=F[(y<<2)+i>>2]}F[s>>2]=n;y=a+1|0;a=(y>>>0)%3|0?y:a-2|0;if((a|0)==-1){break E}e=F[(a<<2)+i>>2];break E}b=-1;if(n&1){break t}break u}n=-1;i=F[h>>2];F[i+(p<<2)>>2]=-1;e=-1}F[i+C>>2]=e;Z:{_:{$:{if(!x){a=o+((o>>>0)%3|0?-1:2)|0;if((a|0)==-1){break $}a=F[(a<<2)+i>>2];F[b+i>>2]=a;if((a|0)==-1){break _}F[F[h+24>>2]+(a<<2)>>2]=f;break _}F[b+i>>2]=-1;b=-1;a=-1;break Z}F[b+i>>2]=-1}b=-1;f=o+1|0;f=(f>>>0)%3|0?f:o-2|0;a=-1;if((f|0)==-1){break Z}b=f;a=F[(b<<2)+i>>2]}f=F[d+388>>2];e=n<<2;o=f+e|0;s=f;f=a<<2;F[o>>2]=F[o>>2]+F[s+f>>2];h=F[h+24>>2];f=h+f|0;if((n|0)!=-1){F[e+h>>2]=F[f>>2]}aa:{if((b|0)==-1){break aa}while(1){F[(b<<2)+i>>2]=n;h=b+1|0;b=(h>>>0)%3|0?h:b-2|0;if((b|0)==-1){break aa}b=F[m+(b<<2)>>2];if((b|0)==-1){break aa}h=b+1|0;b=(h>>>0)%3|0?h:b-2|0;if((b|0)!=-1){continue}break}}F[f>>2]=-1;ba:{if(A){break ba}b=F[j+28>>2];if((b|0)!=F[j+32>>2]){F[b>>2]=a;F[j+28>>2]=b+4;break ba}ca:{f=F[j+24>>2];h=b-f|0;i=h>>2;e=i+1|0;if(e>>>0<1073741824){n=h>>1;e=i>>>0<536870911?e>>>0>n>>>0?e:n:1073741823;b=0;da:{if(!e){break da}if(e>>>0>=1073741824){break ca}b=sa(e<<2)}i=b+(i<<2)|0;F[i>>2]=a;if((h|0)>=1){ta(b,f,h)}F[j+32>>2]=b+(e<<2);F[j+28>>2]=i+4;F[j+24>>2]=b;if(!f){break ba}ra(f);g=F[j+68>>2];break ba}va();V()}break q}F[g-4>>2]=p;_c(u,p)}n=(c|0)<(l|0);if((c|0)!=(l|0)){continue}break}c=l}b=-1;n=F[d+8>>2];if((w|0)>2]-F[n+24>>2]>>2){break t}e=F[j+68>>2];if((e|0)!=F[j+64>>2]){g=d+60|0;w=d+312|0;while(1){a=e-4|0;n=F[a>>2];F[j+68>>2]=a;ea:{fa:{ga:{ha:{if(H[d+270>>1]<=513){if(!G[d+364|0]){break ga}a=F[d+360>>2];f=F[d+352>>2]+(a>>>3|0)|0;if(f>>>0>=I[d+356>>2]){break fa}f=G[f|0];F[d+360>>2]=a+1;a=f>>>(a&7)&1;break ha}a=Fa(w)}if(!a){break fa}}m=F[d+8>>2];o=F[m>>2];if(((F[m+4>>2]-o>>2>>>0)/3|0)<=(c|0)){break t}a=-1;i=-1;h=F[m+24>>2];f=h;l=-1;ia:{if((n|0)==-1){break ia}e=n+1|0;e=(e>>>0)%3|0?e:n-2|0;l=-1;if((e|0)==-1){break ia}l=F[o+(e<<2)>>2]}f=F[f+(l<<2)>>2];ja:{if((f|0)==-1){break ja}e=f+1|0;f=(e>>>0)%3|0?e:f-2|0;if((f|0)==-1){break ja}a=f+1|0;a=(a>>>0)%3|0?a:f-2|0;if((a|0)!=-1){i=F[o+(a<<2)>>2]}a=f}e=-1;p=-1;h=F[h+(i<<2)>>2];f=-1;ka:{if((h|0)==-1){break ka}u=h+1|0;h=(u>>>0)%3|0?u:h-2|0;f=-1;if((h|0)==-1){break ka}f=h+1|0;f=(f>>>0)%3|0?f:h-2|0;if((f|0)!=-1){p=F[o+(f<<2)>>2]}f=h}m=F[m+12>>2];h=L(c,3);u=h<<2;F[m+u>>2]=n;F[m+(n<<2)>>2]=h;n=h+1|0;z=n<<2;F[z+m>>2]=a;F[m+(a<<2)>>2]=n;a=h+2|0;A=a<<2;F[A+m>>2]=f;F[m+(f<<2)>>2]=a;F[o+u>>2]=i;m=o+z|0;F[m>>2]=p;o=o+A|0;F[o>>2]=l;f=F[d+120>>2];l=h>>>0>n>>>0?-1:i;i=f+(l>>>3&536870908)|0;p=F[i>>2];J=i,K=Oj(l)&p,F[J>>2]=K;e=(n|0)!=-1?F[m>>2]:e;l=f+(e>>>3&536870908)|0;i=F[l>>2];J=l,K=Oj(e)&i,F[J>>2]=K;e=-1;e=(a|0)!=-1?F[o>>2]:e;a=f+(e>>>3&536870908)|0;f=F[a>>2];J=a,K=Oj(e)&f,F[J>>2]=K;e=F[d+64>>2];f=F[d+68>>2];if((e|0)==f<<5){if((e+1|0)<=-1){break s}a=g;if(e>>>0<=1073741822){l=e+32&-32;f=f<<6;f=f>>>0>>0?l:f}else{f=2147483647}db(a,f);e=F[d+64>>2]}c=c+1|0;F[d+64>>2]=e+1;a=F[d+60>>2]+(e>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>2];if((a|0)!=F[d+80>>2]){F[a>>2]=h;F[d+76>>2]=a+4;break ea}f=F[d+72>>2];l=a-f|0;i=l>>2;e=i+1|0;if(e>>>0>=1073741824){break r}n=l>>1;e=i>>>0<536870911?e>>>0>n>>>0?e:n:1073741823;a=0;la:{if(!e){break la}if(e>>>0>=1073741824){break q}a=sa(e<<2)}i=a+(i<<2)|0;F[i>>2]=h;if((l|0)>=1){ta(a,f,l)}F[d+80>>2]=a+(e<<2);F[d+76>>2]=i+4;F[d+72>>2]=a;if(!f){break ea}ra(f);break ea}a=F[d+64>>2];h=F[d+68>>2];if((a|0)==h<<5){if((a+1|0)<=-1){break s}f=g;if(a>>>0<=1073741822){a=a+32&-32;h=h<<6;a=a>>>0>h>>>0?a:h}else{a=2147483647}db(f,a);a=F[d+64>>2]}F[d+64>>2]=a+1;f=F[d+60>>2]+(a>>>3&536870908)|0;h=F[f>>2];J=f,K=Oj(a)&h,F[J>>2]=K;a=F[d+76>>2];if((a|0)!=F[d+80>>2]){F[a>>2]=n;F[d+76>>2]=a+4;break ea}f=F[d+72>>2];h=a-f|0;e=h>>2;l=e+1|0;if(l>>>0>=1073741824){break r}i=h>>1;l=e>>>0<536870911?i>>>0>>0?l:i:1073741823;a=0;ma:{if(!l){break ma}if(l>>>0>=1073741824){break q}a=sa(l<<2)}e=a+(e<<2)|0;F[e>>2]=n;if((h|0)>=1){ta(a,f,h)}F[d+80>>2]=a+(l<<2);F[d+76>>2]=e+4;F[d+72>>2]=a;if(!f){break ea}ra(f)}e=F[j+68>>2];if((e|0)!=F[j+64>>2]){continue}break}n=F[d+8>>2]}if(((F[n+4>>2]-F[n>>2]>>2>>>0)/3|0)!=(c|0)){break t}e=F[n+24>>2];b=F[n+28>>2]-e>>2;i=F[j+24>>2];h=F[j+28>>2];if((i|0)==(h|0)){break t}while(1){g=F[i>>2];c=b-1|0;a=(c<<2)+e|0;if(F[a>>2]==-1){while(1){c=b-2|0;b=b-1|0;a=(c<<2)+e|0;if(F[a>>2]==-1){continue}break}}if(c>>>0>=g>>>0){F[j>>2]=n;a=F[a>>2];D[j+12|0]=1;F[j+8>>2]=a;F[j+4>>2]=a;if((a|0)!=-1){F[F[n>>2]+(a<<2)>>2]=g;tb(j);e=F[j+8>>2];if((e|0)!=-1){while(1){F[F[F[d+8>>2]>>2]+(e<<2)>>2]=g;tb(j);e=F[j+8>>2];if((e|0)!=-1){continue}break}}n=F[d+8>>2]}e=F[n+24>>2];a=e+(c<<2)|0;if((g|0)!=-1){F[(g<<2)+e>>2]=F[a>>2]}F[a>>2]=-1;a=1<>2];g=f+(g>>>3&536870908)|0;l=g;f=f+(c>>>3&536870908)|0;c=1<>2];na:{if(F[f>>2]&c){break na}s=F[g>>2]&(a^-1)}F[l>>2]=s;F[f>>2]=F[f>>2]&(c^-1);b=b-1|0}i=i+4|0;if((h|0)!=(i|0)){continue}break}}a=F[j+24>>2];if(a){F[j+28>>2]=a;ra(a)}a=F[j+48>>2];if(a){while(1){c=F[a>>2];ra(a);a=c;if(a){continue}break}}a=F[j+40>>2];F[j+40>>2]=0;if(a){ra(a)}a=F[j+64>>2];if(a){F[j+68>>2]=a;ra(a)}ea=j+96|0;break p}va();V()}va();V()}wa(12220);V()}if((b|0)==-1){break o}a=F[k+16>>2];c=a+F[k>>2]|0;g=F[k+8>>2];g=g-a|0;a=F[F[d+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=c;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=g;F[a+12>>2]=0;a=F[d+4>>2];c=H[a+36>>1];f=c<<8|c>>>8;if((f&65535)>>>0<=513){a=F[a+32>>2];c=B+F[a+20>>2]|0;g=q+F[a+16>>2]|0;c=g>>>0>>0?c+1|0:c;F[a+16>>2]=g;F[a+20>>2]=c}oa:{if(F[d+216>>2]==F[d+220>>2]){break oa}c=F[d+8>>2];a=F[c>>2];c=F[c+4>>2];pa:{if((f&65535)>>>0>=513){if((a|0)==(c|0)){break oa}c=0;break pa}if((a|0)==(c|0)){break oa}c=0;while(1){if(fd(d,c)){c=c+3|0;a=F[d+8>>2];if(c>>>0>2]-F[a>>2]>>2>>>0){continue}break oa}break}break o}while(1){if(ed(d,c)){c=c+3|0;a=F[d+8>>2];if(c>>>0>2]-F[a>>2]>>2>>>0){continue}break oa}break}break o}dd(t);c=F[d+216>>2];if((c|0)!=F[d+220>>2]){l=0;while(1){g=L(l,144);Kc((g+c|0)+4|0,F[d+8>>2]);a=F[v>>2];c=a+g|0;f=F[c+132>>2];h=F[c+136>>2];if((f|0)!=(h|0)){Db(c+4|0,F[f>>2]);c=f+4|0;if((h|0)!=(c|0)){while(1){Db((g+F[v>>2]|0)+4|0,F[c>>2]);c=c+4|0;if((h|0)!=(c|0)){continue}break}}a=F[v>>2]}Jc((a+g|0)+4|0);l=l+1|0;c=F[d+216>>2];if(l>>>0<(F[d+220>>2]-c|0)/144>>>0){continue}break}}a=F[d+8>>2];Ib(d+184|0,F[a+28>>2]-F[a+24>>2]>>2);r=F[d+216>>2];if((r|0)!=F[d+220>>2]){c=0;while(1){a=L(c,144)+r|0;g=F[a+60>>2]-F[a+56>>2]>>2;f=a+104|0;a=F[d+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Ib(f,(a|0)>(g|0)?a:g);c=c+1|0;r=F[d+216>>2];if(c>>>0<(F[d+220>>2]-r|0)/144>>>0){continue}break}}r=cd(d,b)}break b}r=0}ea=k- -64|0;return r|0}function hi(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;l=ea+-64|0;ea=l;F[a+132>>2]=0;if(F[a+148>>2]){d=F[a+144>>2];if(d){while(1){b=F[d>>2];ra(d);d=b;if(b){continue}break}}d=0;F[a+144>>2]=0;b=F[a+140>>2];a:{if(!b){break a}e=b&3;if(b-1>>>0>=3){k=b&-4;while(1){b=d<<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;d=d+4|0;k=k-4|0;if(k){continue}break}}if(!e){break a}while(1){F[F[a+136>>2]+(d<<2)>>2]=0;d=d+1|0;e=e-1|0;if(e){continue}break}}F[a+148>>2]=0}b:{c:{d=F[a+4>>2];s=G[d+36|0];b=s<<8|G[d+37|0];d:{if(b>>>0>513){break d}c=F[d+32>>2];if(b>>>0<=511){b=F[c+20>>2];p=F[c+16>>2];f=p+4|0;b=f>>>0<4?b+1|0:b;g=f;f=b;k=F[c+12>>2];if((b|0)>(k|0)?1:(b|0)>=(k|0)?g>>>0>I[c+8>>2]:0){break c}b=p+F[c>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[c+16>>2]=g;F[c+20>>2]=f;F[a+132>>2]=b;break d}if(!Ea(1,l,c)){break c}d=F[a+4>>2];s=G[d+36|0];F[a+132>>2]=F[l>>2]}c=F[d+32>>2];e:{f:{g:{if((s&255)>>>0<=1){s=0;b=F[c+20>>2];p=F[c+16>>2];f=p+4|0;b=f>>>0<4?b+1|0:b;g=f;f=b;k=F[c+12>>2];if((b|0)>(k|0)?1:(b|0)>=(k|0)?g>>>0>I[c+8>>2]:0){break b}b=p+F[c>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[l+60>>2]=b;F[c+16>>2]=g;F[c+20>>2]=f;F[a+156>>2]=b;k=a+156|0;break g}s=0;if(!Ea(1,l+60|0,c)){break b}d=F[a+4>>2];b=G[d+36|0];F[a+156>>2]=F[l+60>>2];k=a+156|0;if(b>>>0>1){break f}}f=F[d+32>>2];d=F[f+8>>2];c=F[f+12>>2];i=d;d=F[f+20>>2];p=F[f+16>>2];b=p+4|0;d=b>>>0<4?d+1|0:d;g=b;b=d;if((b|0)>(c|0)?1:(b|0)>=(c|0)?i>>>0>>0:0){break b}d=p+F[f>>2]|0;e=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[l+56>>2]=e;F[f+16>>2]=g;F[f+20>>2]=b;break e}if(!Ea(1,l+56|0,F[d+32>>2])){break b}e=F[l+56>>2]}if(e>>>0>1431655765|I[k>>2]>L(e,3)>>>0){break b}k=F[a+4>>2];b=F[k+32>>2];i=F[b+8>>2];g=F[b+16>>2];c=F[b+12>>2];d=F[b+20>>2];if((c|0)<(d|0)?1:(c|0)<=(d|0)?i>>>0<=g>>>0:0){break b}j=F[b>>2];h=G[j+g|0];o=g+1|0;f=o>>>0<1?d+1|0:d;F[b+16>>2]=o;F[b+20>>2]=f;h:{if(G[k+36|0]<=1){f=c;c=g+5|0;d=c>>>0<5?d+1|0:d;p=c;c=d;if((c|0)>(f|0)?1:(c|0)>=(f|0)?p>>>0>i>>>0:0){break b}d=j+o|0;k=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[l+52>>2]=k;F[b+16>>2]=p;F[b+20>>2]=c;if(e>>>0>=k>>>0){break h}break b}if(!Ea(1,l+52|0,b)){break b}k=F[l+52>>2];if(k>>>0>e>>>0){break b}}if(((k>>>0)/3|0)+k>>>0>>0){break b}d=F[a+4>>2];c=F[d+32>>2];i:{if(G[d+36|0]<=1){d=F[c+20>>2];f=F[c+16>>2];b=f+4|0;d=b>>>0<4?d+1|0:d;p=b;b=d;g=F[c+12>>2];if((b|0)>(g|0)?1:(b|0)>=(g|0)?p>>>0>I[c+8>>2]:0){break b}d=f+F[c>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[l+48>>2]=f;F[c+16>>2]=p;F[c+20>>2]=b;if(f>>>0<=k>>>0){break i}break b}if(!Ea(1,l+48|0,c)){break b}f=F[l+48>>2];if(k>>>0>>0){break b}}F[a+28>>2]=F[a+24>>2];b=sa(88);Oc(b);d=F[a+8>>2];F[a+8>>2]=b;j:{if(!d){break j}Za(d);if(F[a+8>>2]){break j}break b}F[a+164>>2]=F[a+160>>2];Kb(a+160|0,e);F[a+176>>2]=F[a+172>>2];Kb(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];v=a+216|0;id(v);hd(v,h);if(!Mc(F[a+8>>2],e,F[a+156>>2]+f|0)){break b}d=F[a+156>>2];D[l|0]=1;Na(a+120|0,d+f|0,l);d=F[a+4>>2];b=H[d+36>>1];b=(b<<8|b>>>8)&65535;k:{if(b>>>0<=513){f=F[d+32>>2];l:{if(b>>>0<=511){b=F[f+20>>2];c=F[f+16>>2];d=c+4|0;b=d>>>0<4?b+1|0:b;p=d;d=b;g=F[f+12>>2];if((b|0)>(g|0)?1:(b|0)>=(g|0)?p>>>0>I[f+8>>2]:0){break b}b=c+F[f>>2]|0;e=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[f+16>>2]=p;F[f+20>>2]=d;break l}if(!Ea(1,l+44|0,f)){break b}e=F[l+44>>2]}if(!e){break b}d=F[F[a+4>>2]+32>>2];b=F[d+8>>2];f=F[d+16>>2];d=F[d+12>>2]-(F[d+20>>2]+(b>>>0>>0)|0)|0;if((d|0)<0?1:(d|0)<=0?b-f>>>0>>0:0){break b}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;b=F[F[a+4>>2]+32>>2];d=F[b+16>>2];f=(d+F[b>>2]|0)+e|0;c=F[b+8>>2];d=(c-d|0)-e|0;E[l+38>>1]=H[b+38>>1];F[l>>2]=f;F[l+16>>2]=0;F[l+20>>2]=0;F[l+8>>2]=d;F[l+12>>2]=0;d=Jb(a,l);if((d|0)==-1){break b}p=d;z=d>>31;break k}p=-1;z=-1;if((Jb(a,F[d+32>>2])|0)==-1){break b}}y=a+232|0;gd(y,a);F[a+372>>2]=h;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;m:{if(!De(y,l)){break m}d=0;j=ea-96|0;ea=j;F[j+72>>2]=0;F[j+64>>2]=0;F[j+68>>2]=0;F[j+48>>2]=0;F[j+52>>2]=0;F[j+40>>2]=0;F[j+44>>2]=0;F[j+56>>2]=1065353216;F[j+32>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;o=1;g=a;q=F[a+124>>2];n:{o:{p:{q:{r:{s:{t:{u:{if((k|0)<1){break u}u=F[g+216>>2]!=F[g+220>>2];while(1){f=d;d=d+1|0;v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{if(!G[g+308|0]){break F}G:{H:{h=F[g+296>>2];b=F[g+304>>2];a=h+(b>>>3|0)|0;e=F[g+300>>2];if(a>>>0>=e>>>0){break H}a=G[a|0];c=b+1|0;F[g+304>>2]=c;if(!(a>>>(b&7)&1)){break H}a=0;i=c>>>3|0;n=h+i|0;I:{if(n>>>0>=e>>>0){b=c;break I}a=G[n|0];b=b+2|0;F[g+304>>2]=b;i=b>>>3|0;a=a>>>(c&7)&1}c=h+i|0;if(c>>>0>>0){c=G[c|0];F[g+304>>2]=b+1;a=c>>>(b&7)<<1&2|a}a=a<<1;switch(a-1|0){case 0:case 2:case 4:break p;case 5:break E;case 1:case 3:break G;default:break F}}a=F[j+68>>2];if((a|0)==F[j+64>>2]){b=-1;break t}o=-1;h=F[g+8>>2];n=F[h+24>>2];i=n;m=a-4|0;b=F[m>>2];c=-1;J:{if((b|0)==-1){break J}a=b+1|0;a=(a>>>0)%3|0?a:b-2|0;c=-1;if((a|0)==-1){break J}c=F[F[h>>2]+(a<<2)>>2]}a=F[i+(c<<2)>>2];if((a|0)!=-1){i=a+1|0;o=(i>>>0)%3|0?i:a-2|0}a=F[h+12>>2];i=L(f,3);f=i+1|0;F[a+(b<<2)>>2]=f;r=f<<2;F[r+a>>2]=b;e=i+2|0;F[a+(o<<2)>>2]=e;t=e<<2;F[t+a>>2]=o;a=-1;f=-1;K:{if((b|0)==-1){break K}b=b+((b>>>0)%3|0?-1:2)|0;f=-1;if((b|0)==-1){break K}f=F[F[h>>2]+(b<<2)>>2]}L:{if((o|0)==-1){break L}b=o+1|0;b=(b>>>0)%3|0?b:o-2|0;if((b|0)==-1){break L}a=F[F[h>>2]+(b<<2)>>2]}b=-1;if((c|0)==(f|0)|(a|0)==(c|0)){break t}b=F[h>>2];F[b+(i<<2)>>2]=c;F[b+r>>2]=a;F[b+t>>2]=f;if((f|0)!=-1){F[n+(f<<2)>>2]=e}a=F[g+120>>2]+(c>>>3&536870908)|0;b=F[a>>2];B=a,C=Oj(c)&b,F[B>>2]=C;F[m>>2]=i;break v}b=F[j+68>>2];if((b|0)==F[j+64>>2]){b=-1;break t}h=F[g+8>>2];i=F[h+12>>2];c=L(f,3);e=(a|1)==5;n=c+(e?2:1)|0;r=n<<2;a=F[b-4>>2];F[i+r>>2]=a;F[i+(a<<2)>>2]=n;Ta(h+24|0);b=-1;m=F[g+8>>2];i=F[m+24>>2];if((q|0)>2]-i>>2){break t}b=F[m>>2];h=F[h+28>>2]-F[h+24>>2]|0;m=(h>>2)-1|0;F[b+r>>2]=m;if(h){F[i+(m<<2)>>2]=n}h=e?c:c+2|0;n=b+(c+e<<2)|0;M:{N:{O:{if((a|0)!=-1){e=a+((a>>>0)%3|0?-1:2)|0;if((e|0)==-1){break O}e=F[b+(e<<2)>>2];F[b+(h<<2)>>2]=e;if((e|0)==-1){break N}F[i+(e<<2)>>2]=h;break N}F[b+(h<<2)>>2]=-1;i=-1;break M}F[b+(h<<2)>>2]=-1}i=a+1|0;a=(i>>>0)%3|0?i:a-2|0;i=-1;if((a|0)==-1){break M}i=F[b+(a<<2)>>2]}F[n>>2]=i;F[F[j+68>>2]-4>>2]=c;break D}i=F[j+68>>2];c=F[j+64>>2];if((i|0)==(c|0)){b=-1;break t}a=i-4|0;n=F[a>>2];F[j+68>>2]=a;m=F[j+44>>2];if(!m){break A}e=Nj(m)>>>0>1;b=f&m+2147483647;P:{if(!e){break P}b=f;if(f>>>0>>0){break P}b=(f>>>0)%(m>>>0)|0}h=b;b=F[F[j+40>>2]+(h<<2)>>2];if(!b){break A}b=F[b>>2];if(!b){break A}Q:{if(!e){e=m-1|0;while(1){m=F[b+4>>2];R:{if((m|0)!=(f|0)){if((e&m)!=(h|0)){break A}break R}if((f|0)==F[b+8>>2]){break Q}}b=F[b>>2];if(b){continue}break}break A}while(1){e=F[b+4>>2];S:{if((e|0)!=(f|0)){if(e>>>0>=m>>>0){e=(e>>>0)%(m>>>0)|0}if((e|0)!=(h|0)){break A}break S}if((f|0)==F[b+8>>2]){break Q}}b=F[b>>2];if(b){continue}break}break A}if((a|0)!=F[j+72>>2]){F[a>>2]=F[b+12>>2];F[j+68>>2]=i;a=c;break z}h=a-c|0;i=h>>2;e=i+1|0;if(e>>>0>=1073741824){break C}m=h>>1;e=i>>>0<536870911?e>>>0>m>>>0?e:m:1073741823;a=0;T:{if(!e){break T}if(e>>>0>=1073741824){break o}a=sa(e<<2)}i=a+(i<<2)|0;F[i>>2]=F[b+12>>2];i=i+4|0;if((h|0)>=1){ta(a,c,h)}F[j+72>>2]=(e<<2)+a;F[j+68>>2]=i;F[j+64>>2]=a;if(!c){break z}ra(c);i=F[j+68>>2];a=F[j+64>>2];break z}h=F[g+8>>2];Ta(h+24|0);b=-1;a=F[g+8>>2];c=L(f,3);i=F[h+28>>2]-F[h+24>>2]|0;h=i>>2;n=h-1|0;F[F[a>>2]+(c<<2)>>2]=n;Ta(a+24|0);e=c+1|0;F[F[a>>2]+(e<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[g+8>>2];Ta(a+24|0);m=c+2|0;F[F[a>>2]+(m<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;r=F[g+8>>2];a=F[r+24>>2];if((q|0)>2]-a>>2){break t}U:{V:{if(!i){F[(h<<2)+a>>2]=e;a=a+4|0;break V}F[(n<<2)+a>>2]=c;if((i|0)==-4){break V}F[(h<<2)+a>>2]=e;b=h+1|0;if((b|0)==-1){break U}a=(b<<2)+a|0}F[a>>2]=m}a=F[j+68>>2];if((a|0)!=F[j+72>>2]){F[a>>2]=c;F[j+68>>2]=a+4;break D}b=F[j+64>>2];h=a-b|0;e=h>>2;i=e+1|0;if(i>>>0>=1073741824){break B}n=h>>1;i=e>>>0<536870911?i>>>0>n>>>0?i:n:1073741823;a=0;W:{if(!i){break W}if(i>>>0>=1073741824){break o}a=sa(i<<2)}e=a+(e<<2)|0;F[e>>2]=c;if((h|0)>=1){ta(a,b,h)}F[j+72>>2]=a+(i<<2);F[j+68>>2]=e+4;F[j+64>>2]=a;if(!b){break D}ra(b)}b=F[g+40>>2];if((b|0)==F[g+36>>2]){break v}f=(f^-1)+k|0;while(1){a=F[b-8>>2];if(a>>>0>f>>>0){break y}if((a|0)!=(f|0)){break v}c=G[b-4|0];a=b-12|0;b=F[a>>2];F[g+40>>2]=a;if((b|0)<0){break y}a=F[F[j+68>>2]-4>>2];F[j+20>>2]=(b^-1)+k;F[j+88>>2]=j+20;bd(j,j+40|0,j+20|0,j+88|0);i=F[j>>2];X:{if(c&1){b=-1;if((a|0)==-1){break X}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0;break X}b=-1;if((a|0)==-1){break X}b=a-1|0;if((a>>>0)%3|0){break X}b=a+2|0}F[i+12>>2]=b;b=F[g+40>>2];if((b|0)!=F[g+36>>2]){continue}break}break v}va();V()}va();V()}i=a;a=c}if((a|0)==(i|0)){break y}a=F[i-4>>2];h=(a|0)==-1;c=F[g+8>>2];if(F[F[c+12>>2]+(a<<2)>>2]!=-1?!h:0){break y}t=(n|0)==-1;m=F[c+12>>2];if(F[m+(n<<2)>>2]!=-1?!t:0){break y}f=L(f,3);r=f+2|0;F[m+(a<<2)>>2]=r;b=r<<2;F[b+m>>2]=a;e=f+1|0;F[m+(n<<2)>>2]=e;w=e<<2;F[w+m>>2]=n;if(h){break x}e=-1;h=-1;o=F[c>>2];A=o+(f<<2)|0;x=a+((a>>>0)%3|0?-1:2)|0;if((x|0)!=-1){h=F[(x<<2)+o>>2]}F[A>>2]=h;x=a+1|0;a=(x>>>0)%3|0?x:a-2|0;if((a|0)==-1){break w}e=F[(a<<2)+o>>2];break w}b=-1;if(o&1){break t}break u}h=-1;o=F[c>>2];F[o+(f<<2)>>2]=-1;e=-1}F[o+w>>2]=e;Y:{Z:{_:{if(!t){a=n+((n>>>0)%3|0?-1:2)|0;if((a|0)==-1){break _}a=F[(a<<2)+o>>2];F[b+o>>2]=a;if((a|0)==-1){break Z}F[F[c+24>>2]+(a<<2)>>2]=r;break Z}F[b+o>>2]=-1;e=-1;b=-1;break Y}F[b+o>>2]=-1}e=-1;a=n+1|0;a=(a>>>0)%3|0?a:n-2|0;b=-1;if((a|0)==-1){break Y}e=F[(a<<2)+o>>2];b=a}c=F[c+24>>2];a=c+(e<<2)|0;if((h|0)!=-1){F[c+(h<<2)>>2]=F[a>>2]}$:{if((b|0)==-1){break $}while(1){F[(b<<2)+o>>2]=h;c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break $}b=F[m+(b<<2)>>2];if((b|0)==-1){break $}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)!=-1){continue}break}}F[a>>2]=-1;aa:{if(u){break aa}a=F[j+28>>2];if((a|0)!=F[j+32>>2]){F[a>>2]=e;F[j+28>>2]=a+4;break aa}ba:{b=F[j+24>>2];c=a-b|0;o=c>>2;h=o+1|0;if(h>>>0<1073741824){n=c>>1;h=o>>>0<536870911?h>>>0>n>>>0?h:n:1073741823;a=0;ca:{if(!h){break ca}if(h>>>0>=1073741824){break ba}a=sa(h<<2)}o=a+(o<<2)|0;F[o>>2]=e;if((c|0)>=1){ta(a,b,c)}F[j+32>>2]=a+(h<<2);F[j+28>>2]=o+4;F[j+24>>2]=a;if(!b){break aa}ra(b);i=F[j+68>>2];break aa}va();V()}break o}F[i-4>>2]=f}o=(d|0)<(k|0);if((d|0)!=(k|0)){continue}break}d=k}b=-1;f=F[g+8>>2];if((q|0)>2]-F[f+24>>2]>>2){break t}e=F[j+68>>2];if((e|0)!=F[j+64>>2]){f=g+60|0;r=g+312|0;while(1){a=e-4|0;n=F[a>>2];F[j+68>>2]=a;da:{ea:{fa:{ga:{if(H[g+270>>1]<=513){if(!G[g+364|0]){break fa}a=F[g+360>>2];c=F[g+352>>2]+(a>>>3|0)|0;if(c>>>0>=I[g+356>>2]){break ea}c=G[c|0];F[g+360>>2]=a+1;a=c>>>(a&7)&1;break ga}a=Fa(r)}if(!a){break ea}}q=F[g+8>>2];m=F[q>>2];if(((F[q+4>>2]-m>>2>>>0)/3|0)<=(d|0)){break t}a=-1;h=-1;k=F[q+24>>2];c=k;i=-1;ha:{if((n|0)==-1){break ha}e=n+1|0;e=(e>>>0)%3|0?e:n-2|0;i=-1;if((e|0)==-1){break ha}i=F[m+(e<<2)>>2]}c=F[c+(i<<2)>>2];ia:{if((c|0)==-1){break ia}e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;if((c|0)==-1){break ia}a=c+1|0;a=(a>>>0)%3|0?a:c-2|0;if((a|0)!=-1){h=F[m+(a<<2)>>2]}a=c}o=-1;e=-1;k=F[k+(h<<2)>>2];c=-1;ja:{if((k|0)==-1){break ja}u=k+1|0;k=(u>>>0)%3|0?u:k-2|0;c=-1;if((k|0)==-1){break ja}c=k+1|0;c=(c>>>0)%3|0?c:k-2|0;if((c|0)!=-1){e=F[m+(c<<2)>>2]}c=k}q=F[q+12>>2];k=L(d,3);u=k<<2;F[q+u>>2]=n;F[q+(n<<2)>>2]=k;n=k+1|0;t=n<<2;F[t+q>>2]=a;F[q+(a<<2)>>2]=n;a=k+2|0;w=a<<2;F[w+q>>2]=c;F[q+(c<<2)>>2]=a;F[m+u>>2]=h;q=m+t|0;F[q>>2]=e;m=m+w|0;F[m>>2]=i;c=F[g+120>>2];h=k>>>0>n>>>0?-1:h;i=c+(h>>>3&536870908)|0;e=F[i>>2];B=i,C=Oj(h)&e,F[B>>2]=C;o=(n|0)!=-1?F[q>>2]:o;h=c+(o>>>3&536870908)|0;i=F[h>>2];B=h,C=Oj(o)&i,F[B>>2]=C;e=-1;e=(a|0)!=-1?F[m>>2]:e;a=c+(e>>>3&536870908)|0;c=F[a>>2];B=a,C=Oj(e)&c,F[B>>2]=C;e=F[g+64>>2];c=F[g+68>>2];if((e|0)==c<<5){if((e+1|0)<=-1){break s}a=f;if(e>>>0<=1073741822){h=e+32&-32;c=c<<6;c=c>>>0>>0?h:c}else{c=2147483647}db(a,c);e=F[g+64>>2]}d=d+1|0;F[g+64>>2]=e+1;a=F[g+60>>2]+(e>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>2];if((a|0)!=F[g+80>>2]){F[a>>2]=k;F[g+76>>2]=a+4;break da}c=F[g+72>>2];h=a-c|0;e=h>>2;i=e+1|0;if(i>>>0>=1073741824){break r}o=h>>1;i=e>>>0<536870911?i>>>0>o>>>0?i:o:1073741823;a=0;ka:{if(!i){break ka}if(i>>>0>=1073741824){break o}a=sa(i<<2)}e=a+(e<<2)|0;F[e>>2]=k;if((h|0)>=1){ta(a,c,h)}F[g+80>>2]=a+(i<<2);F[g+76>>2]=e+4;F[g+72>>2]=a;if(!c){break da}ra(c);break da}a=F[g+64>>2];k=F[g+68>>2];if((a|0)==k<<5){if((a+1|0)<=-1){break s}c=f;if(a>>>0<=1073741822){a=a+32&-32;k=k<<6;a=a>>>0>k>>>0?a:k}else{a=2147483647}db(c,a);a=F[g+64>>2]}F[g+64>>2]=a+1;c=F[g+60>>2]+(a>>>3&536870908)|0;k=F[c>>2];B=c,C=Oj(a)&k,F[B>>2]=C;a=F[g+76>>2];if((a|0)!=F[g+80>>2]){F[a>>2]=n;F[g+76>>2]=a+4;break da}c=F[g+72>>2];k=a-c|0;i=k>>2;h=i+1|0;if(h>>>0>=1073741824){break r}e=k>>1;h=i>>>0<536870911?e>>>0>>0?h:e:1073741823;a=0;la:{if(!h){break la}if(h>>>0>=1073741824){break q}a=sa(h<<2)}i=a+(i<<2)|0;F[i>>2]=n;if((k|0)>=1){ta(a,c,k)}F[g+80>>2]=a+(h<<2);F[g+76>>2]=i+4;F[g+72>>2]=a;if(!c){break da}ra(c)}e=F[j+68>>2];if((e|0)!=F[j+64>>2]){continue}break}f=F[g+8>>2]}if(((F[f+4>>2]-F[f>>2]>>2>>>0)/3|0)!=(d|0)){break t}e=F[f+24>>2];b=F[f+28>>2]-e>>2;h=F[j+24>>2];i=F[j+28>>2];if((h|0)==(i|0)){break t}while(1){c=F[h>>2];d=b-1|0;a=(d<<2)+e|0;if(F[a>>2]==-1){while(1){d=b-2|0;b=b-1|0;a=(d<<2)+e|0;if(F[a>>2]==-1){continue}break}}if(c>>>0<=d>>>0){F[j>>2]=f;a=F[a>>2];D[j+12|0]=1;F[j+8>>2]=a;F[j+4>>2]=a;if((a|0)!=-1){F[F[f>>2]+(a<<2)>>2]=c;tb(j);e=F[j+8>>2];if((e|0)!=-1){while(1){F[F[F[g+8>>2]>>2]+(e<<2)>>2]=c;tb(j);e=F[j+8>>2];if((e|0)!=-1){continue}break}}f=F[g+8>>2]}e=F[f+24>>2];a=e+(d<<2)|0;if((c|0)!=-1){F[(c<<2)+e>>2]=F[a>>2]}F[a>>2]=-1;a=1<>2];c=k+(c>>>3&536870908)|0;n=c;k=k+(d>>>3&536870908)|0;d=1<>2];ma:{if(F[k>>2]&d){break ma}m=F[c>>2]&(a^-1)}F[n>>2]=m;F[k>>2]=F[k>>2]&(d^-1);b=b-1|0}h=h+4|0;if((i|0)!=(h|0)){continue}break}}a=F[j+24>>2];if(a){F[j+28>>2]=a;ra(a)}a=F[j+48>>2];if(a){while(1){d=F[a>>2];ra(a);a=d;if(a){continue}break}}a=F[j+40>>2];F[j+40>>2]=0;if(a){ra(a)}a=F[j+64>>2];if(a){F[j+68>>2]=a;ra(a)}ea=j+96|0;break n}va();V()}va();V()}wa(12220)}V()}wa(12220);V()}if((b|0)==-1){break m}a=F[l+16>>2];d=a+F[l>>2]|0;f=F[l+8>>2];f=f-a|0;a=F[F[g+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=d;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=f;F[a+12>>2]=0;a=F[g+4>>2];d=H[a+36>>1];c=d<<8|d>>>8;if((c&65535)>>>0<=513){a=F[a+32>>2];f=z+F[a+20>>2]|0;d=p+F[a+16>>2]|0;f=d>>>0

>>0?f+1|0:f;F[a+16>>2]=d;F[a+20>>2]=f}na:{if(F[g+216>>2]==F[g+220>>2]){break na}d=F[g+8>>2];a=F[d>>2];d=F[d+4>>2];oa:{if((c&65535)>>>0>=513){if((a|0)==(d|0)){break na}d=0;break oa}if((a|0)==(d|0)){break na}d=0;while(1){if(fd(g,d)){d=d+3|0;a=F[g+8>>2];if(d>>>0>2]-F[a>>2]>>2>>>0){continue}break na}break}break m}while(1){if(ed(g,d)){d=d+3|0;a=F[g+8>>2];if(d>>>0>2]-F[a>>2]>>2>>>0){continue}break na}break}break m}dd(y);d=F[g+216>>2];if((d|0)!=F[g+220>>2]){k=0;while(1){f=L(k,144);Kc((f+d|0)+4|0,F[g+8>>2]);a=F[v>>2];d=a+f|0;c=F[d+132>>2];p=F[d+136>>2];if((c|0)!=(p|0)){Db(d+4|0,F[c>>2]);d=c+4|0;if((p|0)!=(d|0)){while(1){Db((f+F[v>>2]|0)+4|0,F[d>>2]);d=d+4|0;if((p|0)!=(d|0)){continue}break}}a=F[v>>2]}Jc((a+f|0)+4|0);k=k+1|0;d=F[g+216>>2];if(k>>>0<(F[g+220>>2]-d|0)/144>>>0){continue}break}}a=F[g+8>>2];Ib(g+184|0,F[a+28>>2]-F[a+24>>2]>>2);s=F[g+216>>2];if((s|0)!=F[g+220>>2]){d=0;while(1){a=L(d,144)+s|0;f=F[a+60>>2]-F[a+56>>2]>>2;c=a+104|0;a=F[g+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Ib(c,(a|0)>(f|0)?a:f);d=d+1|0;s=F[g+216>>2];if(d>>>0<(F[g+220>>2]-s|0)/144>>>0){continue}break}}s=cd(g,b)}break b}s=0}ea=l- -64|0;return s|0}function pg(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;a=b;h=c;a:{b:{c:{d:{e:{switch(d-1|0){case 0:b=0;k=ea-16|0;ea=k;n=F[a+80>>2];c=D[h+24|0];f:{if((L(n,c)|0)!=(e|0)){break f}d=F[h+28>>2]!=1;if(!(d|!G[h+84|0])){ta(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);j=1;break f}a=0;F[k+8>>2]=0;F[k>>2]=0;F[k+4>>2]=0;if(c){if((c|0)<=-1){break d}g=sa(c);F[k>>2]=g;F[k+8>>2]=c+g;ua(g,0,c)}g:{h:{if(!n){break h}if(!d){if((c|0)>=1){d=c&-4;e=c&3;o=c-1>>>0<3;while(1){c=a;b=F[F[h>>2]>>2];p=F[h+40>>2];a=F[h+48>>2]+Kj(p,F[h+44>>2],G[h+84|0]?a:F[F[h+68>>2]+(a<<2)>>2],0)|0;i=ta(g,b+a|0,p);j=0;b=d;if(!o){while(1){a=f+l|0;D[a|0]=G[i+j|0];D[a+1|0]=G[i+(j|1)|0];D[a+2|0]=G[i+(j|2)|0];D[a+3|0]=G[i+(j|3)|0];j=j+4|0;l=l+4|0;b=b-4|0;if(b){continue}break}}a=e;if(a){while(1){D[f+l|0]=G[i+j|0];j=j+1|0;l=l+1|0;a=a-1|0;if(a){continue}break}}j=1;a=c+1|0;if((n|0)!=(a|0)){continue}break}break g}m=F[h>>2];c=F[h+48>>2];p=F[h+68>>2];q=G[h+84|0];d=F[h+44>>2];e=F[h+40>>2];r=e;if((n|0)!=1){b=n&-2;while(1){f=j|1;h=F[m>>2];i=Kj(e,d,q?j:F[p+(j<<2)>>2],0)+c|0;l=ta(g,h+i|0,r);o=F[m>>2];h=e;i=d;if(!q){f=F[p+(f<<2)>>2]}h=Kj(h,i,f,0)+c|0;ta(l,h+o|0,r);j=j+2|0;b=b-2|0;if(b){continue}break}}if(!(n&1)){break h}b=g;f=F[m>>2];if(!q){j=F[p+(j<<2)>>2]}h=b;b=Kj(e,d,j,0)+c|0;ta(h,b+f|0,r);break h}a=1;if((c|0)<1){while(1){if(!kc(h,G[h+84|0]?j:F[F[h+68>>2]+(j<<2)>>2],D[h+24|0],g)){break h}j=j+1|0;a=n>>>0>j>>>0;if((j|0)!=(n|0)){continue}break}break h}d=c&-4;e=c&3;o=c-1>>>0<3;while(1){if(!kc(h,G[h+84|0]?b:F[F[h+68>>2]+(b<<2)>>2],D[h+24|0],g)){break h}j=0;a=d;if(!o){while(1){c=f+l|0;D[c|0]=G[g+j|0];D[c+1|0]=G[(j|1)+g|0];D[c+2|0]=G[(j|2)+g|0];D[c+3|0]=G[(j|3)+g|0];j=j+4|0;l=l+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){D[f+l|0]=G[g+j|0];j=j+1|0;l=l+1|0;a=a-1|0;if(a){continue}break}}b=b+1|0;a=n>>>0>b>>>0;if((b|0)!=(n|0)){continue}break}j=b>>>0>=n>>>0;break g}j=a^1;if(!g){break f}}ra(g)}break c;case 2:d=ea-16|0;ea=d;g=D[h+24|0];b=g<<1;m=F[a+80>>2];i:{if((L(b,m)|0)!=(e|0)){break i}c=F[h+28>>2]!=3;if(!(c|!G[h+84|0])){ta(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);i=1;break i}a=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(g){if((g|0)<=-1){break d}k=sa(b);F[d>>2]=k;F[d+8>>2]=(g<<1)+k;ua(k,0,b)}j:{k:{if(!m){break k}if(!c){p=F[h>>2];b=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];c=F[h+44>>2];e=F[h+40>>2];s=e;if((g|0)<=0){if((m|0)!=1){a=m&-2;while(1){f=i|1;g=F[p>>2];h=Kj(e,c,r?i:F[q+(i<<2)>>2],0)+b|0;j=ta(k,g+h|0,s);l=F[p>>2];g=e;h=c;if(!r){f=F[q+(f<<2)>>2]}g=Kj(g,h,f,0)+b|0;ta(j,g+l|0,s);i=i+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(m&1)){break k}f=k;g=F[p>>2];if(!r){i=F[q+(i<<2)>>2]}c=Kj(e,c,i,0)+b|0;ta(f,c+g|0,s);break k}h=g&-4;l=g&3;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];i=Kj(e,c,r?g:F[q+(g<<2)>>2],0)+b|0;o=ta(k,a+i|0,s);i=0;a=h;if(!u){while(1){n=(j<<1)+f|0;t=i<<1;E[n>>1]=H[t+o>>1];E[n+2>>1]=H[o+(t|2)>>1];E[n+4>>1]=H[o+(t|4)>>1];E[n+6>>1]=H[o+(t|6)>>1];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=l;if(a){while(1){E[(j<<1)+f>>1]=H[o+(i<<1)>>1];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}i=1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break j}a=1;if((g|0)<1){while(1){if(!ic(h,G[h+84|0]?i:F[F[h+68>>2]+(i<<2)>>2],D[h+24|0],k)){break k}i=i+1|0;a=m>>>0>i>>>0;if((i|0)!=(m|0)){continue}break}break k}c=g&-4;e=g&3;o=g-1>>>0<3;g=0;while(1){if(!ic(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],k)){break k}i=0;a=c;if(!o){while(1){b=(j<<1)+f|0;l=i<<1;E[b>>1]=H[l+k>>1];E[b+2>>1]=H[(l|2)+k>>1];E[b+4>>1]=H[(l|4)+k>>1];E[b+6>>1]=H[(l|6)+k>>1];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){E[(j<<1)+f>>1]=H[(i<<1)+k>>1];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=m>>>0>g>>>0;if((g|0)!=(m|0)){continue}break}i=g>>>0>=m>>>0;break j}i=a^1;if(!k){break i}}ra(k)}break b;case 4:d=ea-16|0;ea=d;g=D[h+24|0];b=g<<2;m=F[a+80>>2];l:{if((L(b,m)|0)!=(e|0)){break l}c=F[h+28>>2]!=5;if(!(c|!G[h+84|0])){ta(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);i=1;break l}a=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(g){if((g|0)<=-1){break d}k=sa(b);F[d>>2]=k;F[d+8>>2]=(g<<2)+k;ua(k,0,b)}m:{n:{if(!m){break n}if(!c){p=F[h>>2];b=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];c=F[h+44>>2];e=F[h+40>>2];s=e;if((g|0)<=0){if((m|0)!=1){a=m&-2;while(1){f=i|1;g=F[p>>2];h=Kj(e,c,r?i:F[q+(i<<2)>>2],0)+b|0;j=ta(k,g+h|0,s);l=F[p>>2];g=e;h=c;if(!r){f=F[q+(f<<2)>>2]}g=Kj(g,h,f,0)+b|0;ta(j,g+l|0,s);i=i+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(m&1)){break n}f=k;g=F[p>>2];if(!r){i=F[q+(i<<2)>>2]}c=Kj(e,c,i,0)+b|0;ta(f,c+g|0,s);break n}h=g&-4;l=g&3;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];i=Kj(e,c,r?g:F[q+(g<<2)>>2],0)+b|0;o=ta(k,a+i|0,s);i=0;a=h;if(!u){while(1){n=(j<<2)+f|0;t=i<<2;F[n>>2]=F[t+o>>2];F[n+4>>2]=F[o+(t|4)>>2];F[n+8>>2]=F[o+(t|8)>>2];F[n+12>>2]=F[o+(t|12)>>2];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=l;if(a){while(1){F[(j<<2)+f>>2]=F[o+(i<<2)>>2];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}i=1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break m}a=1;if((g|0)<1){while(1){if(!gc(h,G[h+84|0]?i:F[F[h+68>>2]+(i<<2)>>2],D[h+24|0],k)){break n}i=i+1|0;a=m>>>0>i>>>0;if((i|0)!=(m|0)){continue}break}break n}c=g&-4;e=g&3;o=g-1>>>0<3;g=0;while(1){if(!gc(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],k)){break n}i=0;a=c;if(!o){while(1){b=(j<<2)+f|0;l=i<<2;F[b>>2]=F[l+k>>2];F[b+4>>2]=F[(l|4)+k>>2];F[b+8>>2]=F[(l|8)+k>>2];F[b+12>>2]=F[(l|12)+k>>2];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){F[(j<<2)+f>>2]=F[(i<<2)+k>>2];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=m>>>0>g>>>0;if((g|0)!=(m|0)){continue}break}i=g>>>0>=m>>>0;break m}i=a^1;if(!k){break l}}ra(k)}break b;case 1:b=0;k=ea-16|0;ea=k;n=F[a+80>>2];c=D[h+24|0];o:{if((L(n,c)|0)!=(e|0)){break o}d=F[h+28>>2]!=2;if(!(d|!G[h+84|0])){ta(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);j=1;break o}a=0;F[k+8>>2]=0;F[k>>2]=0;F[k+4>>2]=0;if(c){if((c|0)<=-1){break d}g=sa(c);F[k>>2]=g;F[k+8>>2]=c+g;ua(g,0,c)}p:{q:{if(!n){break q}if(!d){if((c|0)>=1){d=c&-4;e=c&3;o=c-1>>>0<3;while(1){c=a;b=F[F[h>>2]>>2];p=F[h+40>>2];a=F[h+48>>2]+Kj(p,F[h+44>>2],G[h+84|0]?a:F[F[h+68>>2]+(a<<2)>>2],0)|0;i=ta(g,b+a|0,p);j=0;b=d;if(!o){while(1){a=f+l|0;D[a|0]=G[i+j|0];D[a+1|0]=G[i+(j|1)|0];D[a+2|0]=G[i+(j|2)|0];D[a+3|0]=G[i+(j|3)|0];j=j+4|0;l=l+4|0;b=b-4|0;if(b){continue}break}}a=e;if(a){while(1){D[f+l|0]=G[i+j|0];j=j+1|0;l=l+1|0;a=a-1|0;if(a){continue}break}}j=1;a=c+1|0;if((n|0)!=(a|0)){continue}break}break p}m=F[h>>2];c=F[h+48>>2];p=F[h+68>>2];q=G[h+84|0];d=F[h+44>>2];e=F[h+40>>2];r=e;if((n|0)!=1){b=n&-2;while(1){f=j|1;h=F[m>>2];i=Kj(e,d,q?j:F[p+(j<<2)>>2],0)+c|0;l=ta(g,h+i|0,r);o=F[m>>2];h=e;i=d;if(!q){f=F[p+(f<<2)>>2]}h=Kj(h,i,f,0)+c|0;ta(l,h+o|0,r);j=j+2|0;b=b-2|0;if(b){continue}break}}if(!(n&1)){break q}b=g;f=F[m>>2];if(!q){j=F[p+(j<<2)>>2]}h=b;b=Kj(e,d,j,0)+c|0;ta(h,b+f|0,r);break q}a=1;if((c|0)<1){while(1){if(!jc(h,G[h+84|0]?j:F[F[h+68>>2]+(j<<2)>>2],D[h+24|0],g)){break q}j=j+1|0;a=n>>>0>j>>>0;if((j|0)!=(n|0)){continue}break}break q}d=c&-4;e=c&3;o=c-1>>>0<3;while(1){if(!jc(h,G[h+84|0]?b:F[F[h+68>>2]+(b<<2)>>2],D[h+24|0],g)){break q}j=0;a=d;if(!o){while(1){c=f+l|0;D[c|0]=G[g+j|0];D[c+1|0]=G[(j|1)+g|0];D[c+2|0]=G[(j|2)+g|0];D[c+3|0]=G[(j|3)+g|0];j=j+4|0;l=l+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){D[f+l|0]=G[g+j|0];j=j+1|0;l=l+1|0;a=a-1|0;if(a){continue}break}}b=b+1|0;a=n>>>0>b>>>0;if((b|0)!=(n|0)){continue}break}j=b>>>0>=n>>>0;break p}j=a^1;if(!g){break o}}ra(g)}break c;case 3:d=ea-16|0;ea=d;g=D[h+24|0];b=g<<1;m=F[a+80>>2];r:{if((L(b,m)|0)!=(e|0)){break r}c=F[h+28>>2]!=4;if(!(c|!G[h+84|0])){ta(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);i=1;break r}a=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(g){if((g|0)<=-1){break d}k=sa(b);F[d>>2]=k;F[d+8>>2]=(g<<1)+k;ua(k,0,b)}s:{t:{if(!m){break t}if(!c){p=F[h>>2];b=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];c=F[h+44>>2];e=F[h+40>>2];s=e;if((g|0)<=0){if((m|0)!=1){a=m&-2;while(1){f=i|1;g=F[p>>2];h=Kj(e,c,r?i:F[q+(i<<2)>>2],0)+b|0;j=ta(k,g+h|0,s);l=F[p>>2];g=e;h=c;if(!r){f=F[q+(f<<2)>>2]}g=Kj(g,h,f,0)+b|0;ta(j,g+l|0,s);i=i+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(m&1)){break t}f=k;g=F[p>>2];if(!r){i=F[q+(i<<2)>>2]}c=Kj(e,c,i,0)+b|0;ta(f,c+g|0,s);break t}h=g&-4;l=g&3;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];i=Kj(e,c,r?g:F[q+(g<<2)>>2],0)+b|0;o=ta(k,a+i|0,s);i=0;a=h;if(!u){while(1){n=(j<<1)+f|0;t=i<<1;E[n>>1]=H[t+o>>1];E[n+2>>1]=H[o+(t|2)>>1];E[n+4>>1]=H[o+(t|4)>>1];E[n+6>>1]=H[o+(t|6)>>1];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=l;if(a){while(1){E[(j<<1)+f>>1]=H[o+(i<<1)>>1];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}i=1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break s}a=1;if((g|0)<1){while(1){if(!hc(h,G[h+84|0]?i:F[F[h+68>>2]+(i<<2)>>2],D[h+24|0],k)){break t}i=i+1|0;a=m>>>0>i>>>0;if((i|0)!=(m|0)){continue}break}break t}c=g&-4;e=g&3;o=g-1>>>0<3;g=0;while(1){if(!hc(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],k)){break t}i=0;a=c;if(!o){while(1){b=(j<<1)+f|0;l=i<<1;E[b>>1]=H[l+k>>1];E[b+2>>1]=H[(l|2)+k>>1];E[b+4>>1]=H[(l|4)+k>>1];E[b+6>>1]=H[(l|6)+k>>1];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){E[(j<<1)+f>>1]=H[(i<<1)+k>>1];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=m>>>0>g>>>0;if((g|0)!=(m|0)){continue}break}i=g>>>0>=m>>>0;break s}i=a^1;if(!k){break r}}ra(k)}break b;case 5:d=ea-16|0;ea=d;g=D[h+24|0];b=g<<2;m=F[a+80>>2];u:{if((L(b,m)|0)!=(e|0)){break u}c=F[h+28>>2]!=6;if(!(c|!G[h+84|0])){ta(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);i=1;break u}a=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(g){if((g|0)<=-1){break d}k=sa(b);F[d>>2]=k;F[d+8>>2]=(g<<2)+k;ua(k,0,b)}v:{w:{if(!m){break w}if(!c){p=F[h>>2];b=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];c=F[h+44>>2];e=F[h+40>>2];s=e;if((g|0)<=0){if((m|0)!=1){a=m&-2;while(1){f=i|1;g=F[p>>2];h=Kj(e,c,r?i:F[q+(i<<2)>>2],0)+b|0;j=ta(k,g+h|0,s);l=F[p>>2];g=e;h=c;if(!r){f=F[q+(f<<2)>>2]}g=Kj(g,h,f,0)+b|0;ta(j,g+l|0,s);i=i+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(m&1)){break w}f=k;g=F[p>>2];if(!r){i=F[q+(i<<2)>>2]}c=Kj(e,c,i,0)+b|0;ta(f,c+g|0,s);break w}h=g&-4;l=g&3;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];i=Kj(e,c,r?g:F[q+(g<<2)>>2],0)+b|0;o=ta(k,a+i|0,s);i=0;a=h;if(!u){while(1){n=(j<<2)+f|0;t=i<<2;F[n>>2]=F[t+o>>2];F[n+4>>2]=F[o+(t|4)>>2];F[n+8>>2]=F[o+(t|8)>>2];F[n+12>>2]=F[o+(t|12)>>2];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=l;if(a){while(1){F[(j<<2)+f>>2]=F[o+(i<<2)>>2];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}i=1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break v}a=1;if((g|0)<1){while(1){if(!fc(h,G[h+84|0]?i:F[F[h+68>>2]+(i<<2)>>2],D[h+24|0],k)){break w}i=i+1|0;a=m>>>0>i>>>0;if((i|0)!=(m|0)){continue}break}break w}c=g&-4;e=g&3;o=g-1>>>0<3;g=0;while(1){if(!fc(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],k)){break w}i=0;a=c;if(!o){while(1){b=(j<<2)+f|0;l=i<<2;F[b>>2]=F[l+k>>2];F[b+4>>2]=F[(l|4)+k>>2];F[b+8>>2]=F[(l|8)+k>>2];F[b+12>>2]=F[(l|12)+k>>2];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){F[(j<<2)+f>>2]=F[(i<<2)+k>>2];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=m>>>0>g>>>0;if((g|0)!=(m|0)){continue}break}i=g>>>0>=m>>>0;break v}i=a^1;if(!k){break u}}ra(k)}break b;case 8:break e;default:break a}}b=0;c=0;m=ea-16|0;ea=m;g=D[h+24|0];d=g<<2;n=F[a+80>>2];x:{if((L(d,n)|0)!=(e|0)){break x}e=F[h+28>>2];a=0;F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;y:{z:{A:{B:{if(!g){break B}if((g|0)<=-1){break A}c=sa(d);F[m>>2]=c;i=(g<<2)+c|0;F[m+8>>2]=i;d=d-4|0;j=(d>>>2|0)+1&7;C:{if(!j){b=c;break C}b=c;while(1){F[b>>2]=-1073741824;b=b+4|0;j=j-1|0;if(j){continue}break}}if(d>>>0<28){break B}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((i|0)!=(b|0)){continue}break}}if(!n){break z}if((e|0)==9){b=0;p=F[h>>2];d=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];e=F[h+44>>2];h=F[h+40>>2];s=h;if((g|0)<=0){if((n|0)!=1){a=n&-2;while(1){f=b|1;g=F[p>>2];i=Kj(h,e,r?b:F[q+(b<<2)>>2],0)+d|0;k=ta(c,g+i|0,s);j=F[p>>2];g=h;i=e;if(!r){f=F[q+(f<<2)>>2]}g=Kj(g,i,f,0)+d|0;ta(k,g+j|0,s);b=b+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(n&1)){break z}f=c;g=F[p>>2];if(!r){b=F[q+(b<<2)>>2]}b=Kj(h,e,b,0)+d|0;ta(f,b+g|0,s);break z}i=g&-4;k=g&3;j=0;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];b=Kj(h,e,r?g:F[q+(g<<2)>>2],0)+d|0;l=ta(c,a+b|0,s);b=0;a=i;if(!u){while(1){o=(j<<2)+f|0;t=b<<2;J[o>>2]=J[t+l>>2];J[o+4>>2]=J[l+(t|4)>>2];J[o+8>>2]=J[l+(t|8)>>2];J[o+12>>2]=J[l+(t|12)>>2];b=b+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=k;if(a){while(1){J[(j<<2)+f>>2]=J[l+(b<<2)>>2];b=b+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}b=1;g=g+1|0;if((n|0)!=(g|0)){continue}break}break y}a=1;if((g|0)<1){b=0;while(1){if(!Xa(h,G[h+84|0]?b:F[F[h+68>>2]+(b<<2)>>2],D[h+24|0],c)){break z}b=b+1|0;a=n>>>0>b>>>0;if((b|0)!=(n|0)){continue}break}break z}d=g&-4;e=g&3;j=0;l=g-1>>>0<3;g=0;while(1){if(!Xa(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],c)){break z}b=0;a=d;if(!l){while(1){i=(j<<2)+f|0;k=b<<2;J[i>>2]=J[k+c>>2];J[i+4>>2]=J[(k|4)+c>>2];J[i+8>>2]=J[(k|8)+c>>2];J[i+12>>2]=J[(k|12)+c>>2];b=b+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){J[(j<<2)+f>>2]=J[(b<<2)+c>>2];b=b+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=n>>>0>g>>>0;if((g|0)!=(n|0)){continue}break}b=g>>>0>=n>>>0;break y}va();V()}b=a^1;if(!c){break x}}ra(c)}ea=m+16|0;i=b&1;break a}va();V()}ea=k+16|0;i=j&1;break a}ea=d+16|0;i=i&1}return i|0}function zg(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,O=0;z=c;c=0;n=ea-96|0;ea=n;ua(n+16|0,0,76);F[n+92>>2]=-1;F[n+8>>2]=0;F[n>>2]=0;F[n+4>>2]=0;q=ea-16|0;ea=q;k=n+16|0;F[k+68>>2]=0;F[k+72>>2]=0;F[k>>2]=b;B=q+8|0;s=ea-16|0;ea=s;u=b;a=F[b+20>>2];a:{if((F[b+24>>2]-a|0)<1){break a}a=F[a>>2];if((a|0)==-1){break a}c=F[F[u+8>>2]+(a<<2)>>2]}b:{c:{d:{if(!c){F[B>>2]=0;break d}a=F[u+100>>2];b=F[u+96>>2];F[s+8>>2]=0;F[s>>2]=0;F[s+4>>2]=0;d=a-b|0;a=(d|0)/12|0;e:{if(!d){break e}if(a>>>0>=357913942){break c}f=sa(d);F[s>>2]=f;F[s+8>>2]=f+L(a,12);h=f;f=L((d-12>>>0)/12|0,12)+12|0;d=ua(h,0,f);F[s+4>>2]=d+f;if(G[c+84|0]){c=a>>>0>1?a:1;h=c&1;if(a>>>0>=2){a=c&-2;while(1){f=L(g,12);c=f+b|0;e=F[c+4>>2];j=F[c>>2];f=d+f|0;F[f+8>>2]=F[c+8>>2];F[f>>2]=j;F[f+4>>2]=e;f=L(g|1,12);c=f+b|0;e=F[c+8>>2];j=F[c+4>>2];f=d+f|0;F[f>>2]=F[c>>2];F[f+4>>2]=j;F[f+8>>2]=e;g=g+2|0;a=a-2|0;if(a){continue}break}}if(!h){break e}a=b;b=L(g,12);a=a+b|0;c=F[a+4>>2];g=F[a>>2];b=b+d|0;F[b+8>>2]=F[a+8>>2];F[b>>2]=g;F[b+4>>2]=c;break e}h=a>>>0>1?a:1;c=F[c+68>>2];a=0;while(1){f=L(a,12);g=f+b|0;e=F[c+(F[g>>2]<<2)>>2];j=F[c+(F[g+4>>2]<<2)>>2];f=d+f|0;F[f+8>>2]=F[c+(F[g+8>>2]<<2)>>2];F[f+4>>2]=j;F[f>>2]=e;a=a+1|0;if((h|0)!=(a|0)){continue}break}}C=ea-16|0;ea=C;e=sa(88);F[e>>2]=0;F[e+4>>2]=0;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;a=e- -64|0;F[a>>2]=0;F[a+4>>2]=0;F[e+72>>2]=0;F[e+76>>2]=0;F[e+80>>2]=0;F[e+84>>2]=0;F[e+60>>2]=e;A=ea-16|0;ea=A;F[e+80>>2]=0;F[e+84>>2]=0;a=F[e+76>>2];F[e+76>>2]=0;if(a){ra(a)}F[e+68>>2]=0;F[e+72>>2]=0;b=e- -64|0;a=F[b>>2];F[b>>2]=0;if(a){ra(a)}f:{g:{h:{g=F[s>>2];i=F[s+4>>2]-g|0;c=(i|0)/12|0;b=L(c,3);a=F[e>>2];d=F[e+4>>2]-a>>2;i:{if(b>>>0>d>>>0){j:{d=b-d|0;f=F[e+8>>2];a=F[e+4>>2];if(d>>>0<=f-a>>2>>>0){b=e;if(d){c=a;a=d<<2;a=ua(c,0,a)+a|0}F[b+4>>2]=a;break j}k:{b=a;a=F[e>>2];g=b-a|0;h=g>>2;b=h+d|0;if(b>>>0<1073741824){c=0;f=f-a|0;j=f>>1;b=f>>2>>>0<536870911?b>>>0>j>>>0?b:j:1073741823;if(b){if(b>>>0>=1073741824){break k}c=sa(b<<2)}d=d<<2;d=ua((h<<2)+c|0,0,d)+d|0;if((g|0)>=1){ta(c,a,g)}F[e+8>>2]=(b<<2)+c;F[e+4>>2]=d;F[e>>2]=c;if(a){ra(a)}break j}break h}break g}g=F[s>>2];i=F[s+4>>2]-g|0;c=(i|0)/12|0;break i}if(b>>>0>=d>>>0){break i}F[e+4>>2]=a+(b<<2)}if(i){d=c>>>0>1?c:1;f=F[e>>2];a=0;while(1){c=L(a,12);b=c+f|0;c=c+g|0;F[b>>2]=F[c>>2];F[b+4>>2]=F[c+4>>2];F[b+8>>2]=F[c+8>>2];a=a+1|0;if((d|0)!=(a|0)){continue}break}}F[A+12>>2]=-1;i=0;h=ea-48|0;ea=h;t=A+12|0;l:{if(!t){break l}w=e+12|0;f=F[e+4>>2];o=F[e>>2];a=f-o|0;d=a>>2;c=F[e+12>>2];b=F[e+16>>2]-c>>2;m:{if(d>>>0>b>>>0){ce(w,d-b|0);f=F[e+4>>2];o=F[e>>2];a=f-o|0;d=a>>2;break m}if(b>>>0<=d>>>0){break m}F[e+16>>2]=c+(d<<2)}F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;n:{if(!a){c=0;break n}if((a|0)>-1){c=sa(a);F[h+36>>2]=c;F[h+32>>2]=c;F[h+40>>2]=(d<<2)+c;b=c;a=0;while(1){g=F[(a<<2)+o>>2];b=b-c>>2;o:{if(g>>>0>>0){break o}F[h+16>>2]=0;d=g+1|0;if(d>>>0>b>>>0){Oa(h+32|0,d-b|0,h+16|0);o=F[e>>2];f=F[e+4>>2];c=F[h+32>>2];break o}if(b>>>0<=d>>>0){break o}F[h+36>>2]=(d<<2)+c}b=(g<<2)+c|0;F[b>>2]=F[b>>2]+1;a=a+1|0;i=f-o|0;d=i>>2;if(a>>>0>=d>>>0){break n}b=F[h+36>>2];continue}}break g}F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;if(i){if(d>>>0>=536870912){break h}a=sa(i<<1);F[h+16>>2]=a;b=d<<3;g=b+a|0;F[h+24>>2]=g;ua(a,255,b);F[h+20>>2]=g}f=0;F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;b=F[h+36>>2]-c|0;x=b>>2;p:{if(!b){break p}if((b|0)<=-1){break h}l=sa(b);F[h>>2]=l;F[h+8>>2]=(x<<2)+l;a=0;g=ua(l,0,b);F[h+4>>2]=g+b;b=L(b>>>2|0,(b|0)<1?b:1);b=b>>>0>1?b:1;j=b&3;i=0;if(b-1>>>0>=3){m=b&-4;while(1){b=i<<2;F[b+g>>2]=a;p=b|4;a=F[b+c>>2]+a|0;F[p+g>>2]=a;r=b|8;a=a+F[c+p>>2]|0;F[r+g>>2]=a;b=b|12;a=a+F[c+r>>2]|0;F[b+g>>2]=a;a=a+F[b+c>>2]|0;i=i+4|0;m=m-4|0;if(m){continue}break}}if(!j){break p}while(1){b=i<<2;F[b+g>>2]=a;i=i+1|0;a=F[b+c>>2]+a|0;j=j-1|0;if(j){continue}break}}if(d){while(1){E=f<<2;a=E+o|0;m=-1;g=f+1|0;b=(g>>>0)%3|0?g:f-2|0;if((b|0)!=-1){m=F[(b<<2)+o>>2]}b=F[a>>2];j=-1;a=(f>>>0)%3|0;i=(a?-1:2)+f|0;if((i|0)!=-1){j=F[(i<<2)+o>>2]}q:{if(!(((b|0)!=(j|0)?!((j|0)==(m|0)|(b|0)==(m|0)):0)|a)){F[e+40>>2]=F[e+40>>2]+1;f=f+3|0;break q}a=j<<2;y=F[a+c>>2];r:{s:{if((y|0)<1){break s}p=F[h+16>>2];a=F[a+l>>2];i=0;while(1){r=p+(a<<3)|0;v=F[r>>2];if((v|0)==-1){break s}t:{if((m|0)!=(v|0)){break t}r=F[r+4>>2];H=(r|0)!=-1;v=(b|0)==-1;u:{if(!H){break u}v=(b|0)==F[(r<<2)+o>>2]}if(v){break t}while(1){v:{b=a;i=i+1|0;if((y|0)<=(i|0)){break v}v=p+(b<<3)|0;a=b+1|0;I=p+(a<<3)|0;J=F[I>>2];F[v>>2]=J;F[v+4>>2]=F[I+4>>2];if((J|0)!=-1){continue}}break}F[p+(b<<3)>>2]=-1;if(!H){break s}a=F[w>>2];F[a+E>>2]=r;F[a+(r<<2)>>2]=f;break r}a=a+1|0;i=i+1|0;if((y|0)!=(i|0)){continue}break}}a=m<<2;m=F[a+c>>2];if((m|0)<1){break r}p=F[h+16>>2];a=F[a+l>>2];i=0;while(1){b=p+(a<<3)|0;if(F[b>>2]==-1){F[b>>2]=j;F[b+4>>2]=f;break r}a=a+1|0;i=i+1|0;if((m|0)!=(i|0)){continue}break}}f=g}if(f>>>0>>0){continue}break}}F[t>>2]=x;if(l){F[h+4>>2]=l;ra(l)}a=F[h+16>>2];if(a){F[h+20>>2]=a;ra(a)}a=F[h+32>>2];if(!a){break l}F[h+36>>2]=a;ra(a)}ea=h+48|0;y=(t|0)!=0;if(y){i=ea-32|0;ea=i;a=F[e>>2];b=F[e+4>>2];D[i|0]=0;r=Nc(i+16|0,b-a>>2,i);F[i+8>>2]=0;F[i>>2]=0;o=F[e>>2];a=F[e+4>>2];while(1){w:{p=0;j=0;if((a|0)==(o|0)){break w}while(1){f=F[r>>2];x:{if(F[f+(j>>>3&536870908)>>2]>>>j&1){break x}d=F[i>>2];F[i+4>>2]=d;a=j;while(1){y:{b=a+1|0;h=a;a=(b>>>0)%3|0?b:a-2|0;if((a|0)==-1){break y}a=F[F[e+12>>2]+(a<<2)>>2];if((a|0)==-1){break y}b=a+1|0;a=(b>>>0)%3|0?b:a-2|0;if((j|0)==(a|0)|(a|0)==-1){break y}if(!(F[(a>>>3&536870908)+f>>2]>>>a&1)){continue}}break}b=d;a=h;z:{A:{while(1){c=(a>>>3&536870908)+f|0;F[c>>2]=F[c>>2]|1<>>0)%3|0?c:a-2|0;g=((a>>>0)%3|0?-1:2)+a|0;B:{if((b|0)==(d|0)){break B}t=F[(c<<2)+o>>2];f=b;a=b;if((g|0)==-1){while(1){if((t|0)==F[f>>2]){l=-1;a=-1;m=F[f+4>>2];if((m|0)!=-1){break A}}f=f+8|0;if((f|0)!=(d|0)){continue}break B}}while(1){C:{if((t|0)!=F[a>>2]){break C}l=F[F[e+12>>2]+(g<<2)>>2];m=F[a+4>>2];if((l|0)==(m|0)){break C}a=g;f=-1;b=-1;if((m|0)==-1){break z}break A}a=a+8|0;if((d|0)!=(a|0)){continue}break}}l=g<<2;m=F[l+o>>2];D:{if(F[i+8>>2]!=(d|0)){a=d;F[a>>2]=m;F[a+4>>2]=c;F[i+4>>2]=a+8;break D}d=d-b|0;o=d>>3;f=o+1|0;if(f>>>0>=536870912){break h}t=d>>2;f=o>>>0<268435455?f>>>0>t>>>0?f:t:536870911;a=0;E:{if(!f){break E}if(f>>>0>=536870912){break g}a=sa(f<<3)}o=a+(o<<3)|0;F[o>>2]=m;F[o+4>>2]=c;if((d|0)>=1){ta(a,b,d)}F[i+8>>2]=a+(f<<3);F[i+4>>2]=o+8;F[i>>2]=a;if(!b){break D}ra(b)}F:{if((g|0)==-1){break F}a=F[l+F[e+12>>2]>>2];if((a|0)==-1){break F}a=a+((a>>>0)%3|0?-1:2)|0;if((h|0)==(a|0)|(a|0)==-1){break F}o=F[e>>2];f=F[r>>2];d=F[i+4>>2];b=F[i>>2];continue}break}o=F[e>>2];break x}f=F[F[e+12>>2]+(m<<2)>>2];g=a;b=m}if((l|0)!=-1){F[F[e+12>>2]+(l<<2)>>2]=-1}a=F[e+12>>2];if((f|0)!=-1){F[a+(f<<2)>>2]=-1}F[a+(g<<2)>>2]=-1;F[a+(b<<2)>>2]=-1;p=1}j=j+1|0;a=F[e+4>>2];if(j>>>0>2>>>0){continue}break}if(p){continue}}break}a=F[i>>2];if(a){F[i+4>>2]=a;ra(a)}a=F[r>>2];if(a){ra(a)}ea=i+32|0;o=0;m=ea-48|0;ea=m;a=F[A+12>>2];F[e+36>>2]=a;r=e+24|0;c=F[e+24>>2];b=F[e+28>>2]-c>>2;G:{if(b>>>0>>0){ce(r,a-b|0);break G}if(a>>>0>=b>>>0){break G}F[e+28>>2]=c+(a<<2)}D[m+16|0]=0;h=Nc(m+32|0,a,m+16|0);b=F[e>>2];c=F[e+4>>2];D[m+15|0]=0;i=Nc(m+16|0,c-b>>2,m+15|0);g=F[e+4>>2];b=F[e>>2];if(g-b>>2>>>0>2){while(1){t=L(o,3);c=t+1|0;H:{I:{if((c|0)==-1){c=-1;f=b;break I}c=F[(c<<2)+b>>2];f=t+2|0;d=-1;if((f|0)==-1){break H}f=(f<<2)+b|0}d=F[f>>2]}J:{if((c|0)==(d|0)){break J}f=c;c=F[(t<<2)+b>>2];if((f|0)==(c|0)|(c|0)==(d|0)){break J}d=F[i>>2];w=0;while(1){g=t+w|0;if(!(F[(g>>>3&536870908)+d>>2]>>>g&1)){c=F[F[e>>2]+(g<<2)>>2];b=1<>2];d=c>>>5|0;p=F[l+(d<<2)>>2];x=b&p;f=a;K:{if(!x){break K}b=F[e+28>>2];L:{if((b|0)!=F[e+32>>2]){F[b>>2]=-1;F[e+28>>2]=b+4;break L}d=F[r>>2];f=b-d|0;l=f>>2;j=l+1|0;if(j>>>0>=1073741824){break h}p=f>>1;j=l>>>0<536870911?j>>>0>p>>>0?j:p:1073741823;b=0;M:{if(!j){break M}if(j>>>0>=1073741824){break g}b=sa(j<<2)}l=b+(l<<2)|0;F[l>>2]=-1;if((f|0)>=1){ta(b,d,f)}F[e+32>>2]=b+(j<<2);F[e+28>>2]=l+4;F[e+24>>2]=b;if(!d){break L}ra(d)}b=F[e+52>>2];N:{if((b|0)!=F[e+56>>2]){F[b>>2]=c;F[e+52>>2]=b+4;break N}d=F[e+48>>2];f=b-d|0;l=f>>2;j=l+1|0;if(j>>>0>=1073741824){break h}p=f>>1;j=l>>>0<536870911?j>>>0>p>>>0?j:p:1073741823;b=0;O:{if(!j){break O}if(j>>>0>=1073741824){break g}b=sa(j<<2)}l=b+(l<<2)|0;F[l>>2]=c;if((f|0)>=1){ta(b,d,f)}F[e+56>>2]=b+(j<<2);F[e+52>>2]=l+4;F[e+48>>2]=b;if(!d){break N}ra(d)}b=F[h+4>>2];d=F[h+8>>2];if((b|0)==d<<5){if((b+1|0)<=-1){break h}c=h;if(b>>>0<=1073741822){b=b+32&-32;d=d<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}db(c,b);b=F[h+4>>2]}F[h+4>>2]=b+1;l=F[h>>2];c=l+(b>>>3&536870908)|0;d=F[c>>2];N=c,O=Oj(b)&d,F[N>>2]=O;b=1<>>5|0;p=F[(d<<2)+l>>2];c=a;f=a+1|0}F[(d<<2)+l>>2]=b|p;d=F[i>>2];a=g;P:{Q:{while(1){if((a|0)==-1){break Q}b=(a>>>3&536870908)+d|0;F[b>>2]=F[b>>2]|1<>2]+(c<<2)>>2]=a;if(x){F[F[e>>2]+(a<<2)>>2]=c}j=g;l=a+1|0;a=(l>>>0)%3|0?l:a-2|0;b=-1;R:{if((a|0)==-1){break R}a=F[F[e+12>>2]+(a<<2)>>2];b=-1;if((a|0)==-1){break R}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0}a=b;if((j|0)!=(a|0)){continue}break}if((g|0)!=-1){break P}}S:{a=g+((g>>>0)%3|0?-1:2)|0;if((a|0)==-1){break S}a=F[F[e+12>>2]+(a<<2)>>2];if((a|0)==-1){break S}d=F[i>>2];a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)==-1){break P}while(1){b=(a>>>3&536870908)+d|0;F[b>>2]=F[b>>2]|1<>2]+(a<<2)>>2]=c}a=((a>>>0)%3|0?-1:2)+a|0;if((a|0)==-1){break P}a=F[F[e+12>>2]+(a<<2)>>2];if((a|0)==-1){break P}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}break P}d=F[i>>2]}a=f}w=w+1|0;if((w|0)!=3){continue}break}b=F[e>>2];g=F[e+4>>2]}o=o+1|0;if(o>>>0<(g-b>>2>>>0)/3>>>0){continue}break}}g=0;F[e+44>>2]=0;c=F[h>>2];a=F[h+4>>2];b=a>>>5|0;d=a&31;if(b|d){f=(b<<2)+c|0;a=0;b=c;while(1){if(!(F[b>>2]>>>a&1)){g=g+1|0;F[e+44>>2]=g}j=(a|0)==31;a=j?0:a+1|0;b=j?b+4|0:b;if((f|0)!=(b|0)|(a|0)!=(d|0)){continue}break}}a=F[i>>2];if(a){ra(a);c=F[h>>2]}if(c){ra(c)}ea=m+48|0}ea=A+16|0;T:{if(y){F[B>>2]=e;break T}F[B>>2]=0;F[C+8>>2]=0;Za(e)}ea=C+16|0;break f}va();V()}wa(14188);V()}a=F[s>>2];if(!a){break d}F[s+4>>2]=a;ra(a)}ea=s+16|0;break b}va();V()}a=F[q+8>>2];F[q+8>>2]=0;b=F[k+4>>2];F[k+4>>2]=a;if(b){Za(b);a=F[q+8>>2];F[q+8>>2]=0;if(a){Za(a)}a=F[k+4>>2]}U:{if(!a){break U}a=F[u+100>>2];b=F[u+96>>2];g=0;D[q+8|0]=0;Na(k+56|0,(a-b|0)/12|0,q+8|0);a=F[u+100>>2];b=F[u+96>>2];if((a|0)==(b|0)){K=1;break U}while(1){if(!(F[F[k+56>>2]+(g>>>3&536870908)>>2]>>>g&1)){a=L(g,3);Ic(k,0,a);b=F[k+8>>2];c=F[k+12>>2];Ic(k,1,a+1|0);d=F[k+20>>2];f=F[k+24>>2];Ic(k,2,a+2|0);d=f-d>>2;b=c-b|0;c=b>>2;a=d>>>0>c>>>0;c=F[k+36>>2]-F[k+32>>2]>>2>>>0>(a?d:c)>>>0?2:a?1:b?0:-1;V:{if(F[k+68>>2]<1){break V}F[q+8>>2]=F[k+76>>2];F[q>>2]=n;hb(q,q+8|0);b=q;d=F[((c<<2)+k|0)+44>>2];a=-1;W:{if((d|0)<0){break W}a=(d>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(a,12)|0)+(d-L(a,3)<<2)>>2]}F[b+8>>2]=a;F[q>>2]=n;hb(q,q+8|0);b=F[k+72>>2];F[k+72>>2]=b+2;if(!(b&1)){break V}F[q+8>>2]=a;F[q>>2]=n;hb(q,q+8|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;f=F[a+12>>2]-F[a+8>>2]|0;j=(f|0)<1;X:{if(j){break X}d=F[((c<<2)+k|0)+44>>2];h=(d>>>0)/3|0;e=(d|0)==-1;a=e?-1:h;c=F[k+56>>2]+(a>>>3&536870908)|0;F[c>>2]=F[c>>2]|1<>2]=F[k+72>>2]+1;F[b+12>>2]=(d|0)>=0?F[(F[F[k>>2]+96>>2]+L(h,12)|0)+((d>>>0)%3<<2)>>2]:-1;F[b+8>>2]=n;hb(b+8|0,b+12|0);Y:{if(!e){a=-1;c=b;e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;if((e|0)>=0){m=(e>>>0)/3|0;e=F[(F[F[k>>2]+96>>2]+L(m,12)|0)+(e-L(m,3)<<2)>>2]}else{e=-1}F[c+12>>2]=e;F[b+8>>2]=n;hb(b+8|0,b+12|0);c=d+(d-L(h,3)|0?-1:2)|0;if((c|0)<0){break Y}a=(c>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(a,12)|0)+(c-L(a,3)<<2)>>2];break Y}a=-1;F[b+12>>2]=-1;F[b+8>>2]=n;hb(b+8|0,b+12|0)}F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=n;a=-1;hb(b+8|0,b+12|0);a=(d|0)!=-1?F[F[F[k+4>>2]+12>>2]+(d<<2)>>2]:a;d=1;c=L(f>>>2|0,j?f:1);if((c|0)<=1){break X}e=(c|0)>1?c:1;while(1){c=a;h=(a>>>0)/3|0;a=(a|0)==-1?-1:h;f=F[k+56>>2]+(a>>>3&536870908)|0;F[f>>2]=F[f>>2]|1<>2]=F[k+72>>2]+1;a=-1;a=(c|0)>=0?F[(F[F[k>>2]+96>>2]+L(h,12)|0)+((c>>>0)%3<<2)>>2]:a;F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=n;hb(b+8|0,b+12|0);Z:{_:{if(d&1){a=-1;if((c|0)==-1){break Z}f=c-1|0;if((c|0)!=(L(h,3)|0)){break _}f=c+2|0;break _}a=-1;if((c|0)==-1){break Z}a=c+1|0;f=(a>>>0)%3|0?a:c-2|0}a=-1;if((f|0)==-1){break Z}a=F[F[F[k+4>>2]+12>>2]+(f<<2)>>2]}d=d+1|0;if((e|0)!=(d|0)){continue}break}}ea=b+16|0;b=F[u+96>>2];a=F[u+100>>2]}K=1;g=g+1|0;if(g>>>0<(a-b|0)/12>>>0){continue}break}}ea=q+16|0;$:{if(K){a=F[z>>2];if(a){F[z+4>>2]=a;ra(a)}F[z>>2]=F[n>>2];F[z+4>>2]=F[n+4>>2];F[z+8>>2]=F[n+8>>2];M=F[n+84>>2];break $}a=F[n>>2];if(!a){break $}F[n+4>>2]=a;ra(a)}a=F[n+72>>2];if(a){ra(a)}a=F[n+48>>2];if(a){F[n+52>>2]=a;ra(a)}a=F[n+36>>2];if(a){F[n+40>>2]=a;ra(a)}a=F[n+24>>2];if(a){F[n+28>>2]=a;ra(a)}a=F[n+20>>2];F[n+20>>2]=0;if(a){Za(a)}ea=n+96|0;return M|0}function Id(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;m=ea-16|0;ea=m;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{if(a>>>0<=244){f=F[4332];i=a>>>0<11?16:a+11&-8;c=i>>>3|0;b=f>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;e=F[b+17376>>2];a=e+8|0;c=F[e+8>>2];b=b+17368|0;m:{if((c|0)==(b|0)){n=17328,o=Oj(d)&f,F[n>>2]=o;break m}F[c+12>>2]=b;F[b+8>>2]=c}b=d<<3;F[e+4>>2]=b|3;b=b+e|0;F[b+4>>2]=F[b+4>>2]|1;break a}k=F[4334];if(k>>>0>=i>>>0){break l}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+17376>>2];b=F[g+8>>2];a=a+17368|0;n:{if((b|0)==(a|0)){f=Oj(c)&f;F[4332]=f;break n}F[b+12>>2]=a;F[a+8>>2]=b}a=g+8|0;F[g+4>>2]=i|3;d=g+i|0;b=c<<3;e=b-i|0;F[d+4>>2]=e|1;F[b+g>>2]=e;if(k){b=k>>>3|0;c=(b<<3)+17368|0;g=F[4337];b=1<>2]}F[c+8>>2]=g;F[b+12>>2]=g;F[g+12>>2]=c;F[g+8>>2]=b}F[4337]=d;F[4334]=e;break a}h=F[4333];if(!h){break l}b=(h&0-h)-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)+17632>>2];d=(F[b+4>>2]&-8)-i|0;c=b;while(1){p:{a=F[c+16>>2];if(!a){a=F[c+20>>2];if(!a){break p}}c=(F[a+4>>2]&-8)-i|0;e=c>>>0>>0;d=e?c:d;b=e?a:b;c=a;continue}break}j=b+i|0;if(j>>>0<=b>>>0){break k}l=F[b+24>>2];e=F[b+12>>2];if((e|0)!=(b|0)){a=F[b+8>>2];F[a+12>>2]=e;F[e+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;e=a;c=a+20|0;a=F[c>>2];if(a){continue}c=e+16|0;a=F[e+16>>2];if(a){continue}break}F[g>>2]=0;break b}i=-1;if(a>>>0>4294967231){break l}a=a+11|0;i=a&-8;j=F[4333];if(!j){break l}f=31;d=0-i|0;if(i>>>0<=16777215){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;f=(a<<1|i>>>a+21&1)+28|0}c=F[(f<<2)+17632>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=i<<((f|0)==31?0:25-(f>>>1|0)|0);while(1){t:{g=(F[c+4>>2]&-8)-i|0;if(g>>>0>=d>>>0){break t}e=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|e)){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)+17632>>2]}if(!a){break q}}while(1){b=(F[a+4>>2]&-8)-i|0;c=b>>>0>>0;d=c?b:d;e=c?a:e;b=F[a+16>>2];if(b){a=b}else{a=F[a+20>>2]}if(a){continue}break}}if(!e|F[4334]-i>>>0<=d>>>0){break l}h=e+i|0;if(h>>>0<=e>>>0){break k}f=F[e+24>>2];b=F[e+12>>2];if((e|0)!=(b|0)){a=F[e+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break c}c=e+20|0;a=F[c>>2];if(!a){a=F[e+16>>2];if(!a){break i}c=e+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[4334];if(c>>>0>=i>>>0){d=F[4337];b=c-i|0;u:{if(b>>>0>=16){F[4334]=b;a=d+i|0;F[4337]=a;F[a+4>>2]=b|1;F[c+d>>2]=b;F[d+4>>2]=i|3;break u}F[4337]=0;F[4334]=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}h=F[4335];if(h>>>0>i>>>0){b=h-i|0;F[4335]=b;c=F[4338];a=c+i|0;F[4338]=a;F[a+4>>2]=b|1;F[c+4>>2]=i|3;a=c+8|0;break a}a=0;j=i+47|0;b=j;if(F[4450]){c=F[4452]}else{F[4453]=-1;F[4454]=-1;F[4451]=4096;F[4452]=4096;F[4450]=m+12&-16^1431655768;F[4455]=0;F[4443]=0;c=4096}g=b+c|0;e=0-c|0;c=g&e;if(c>>>0<=i>>>0){break a}d=F[4442];if(d){b=F[4440];f=b+c|0;if(d>>>0>>0|b>>>0>=f>>>0){break a}}if(G[17772]&4){break f}v:{w:{d=F[4338];if(d){a=17776;while(1){b=F[a>>2];if(d>>>0>2]>>>0?b>>>0<=d>>>0:0){break w}a=F[a+8>>2];if(a){continue}break}}b=kb(0);if((b|0)==-1){break g}f=c;d=F[4451];a=d-1|0;if(a&b){f=(c-b|0)+(a+b&0-d)|0}if(f>>>0<=i>>>0|f>>>0>2147483646){break g}d=F[4442];if(d){a=F[4440];e=a+f|0;if(d>>>0>>0|a>>>0>=e>>>0){break g}}a=kb(f);if((b|0)!=(a|0)){break v}break e}f=e&g-h;if(f>>>0>2147483646){break g}b=kb(f);if((b|0)==(F[a>>2]+F[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|i+48>>>0<=f>>>0)){b=F[4452];b=b+(j-f|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((kb(b)|0)!=-1){f=b+f|0;b=a;break e}kb(0-f|0);break g}b=a;if((a|0)!=-1){break e}break g}V()}e=0;break b}b=0;break c}if((b|0)!=-1){break e}}F[4443]=F[4443]|4}if(c>>>0>2147483646){break d}b=kb(c);a=kb(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}f=a-b|0;if(f>>>0<=i+40>>>0){break d}}a=F[4440]+f|0;F[4440]=a;if(a>>>0>I[4441]){F[4441]=a}x:{y:{z:{g=F[4338];if(g){a=17776;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[4336];if(!(a>>>0<=b>>>0?a:0)){F[4336]=b}a=0;F[4445]=f;F[4444]=b;F[4340]=-1;F[4341]=F[4450];F[4447]=0;while(1){d=a<<3;c=d+17368|0;F[d+17376>>2]=c;F[d+17380>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=f-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[4335]=c;a=a+b|0;F[4338]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[4339]=F[4454];break x}if(F[a+12>>2]&8|b>>>0<=g>>>0|d>>>0>g>>>0){break y}F[a+4>>2]=c+f;a=g+8&7?-8-g&7:0;c=a+g|0;F[4338]=c;b=F[4335]+f|0;a=b-a|0;F[4335]=a;F[c+4>>2]=a|1;F[(b+g|0)+4>>2]=40;F[4339]=F[4454];break x}if(I[4336]>b>>>0){F[4336]=b}c=b+f|0;a=17776;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=17776;while(1){c=F[a>>2];if(c>>>0<=g>>>0){e=c+F[a+4>>2]|0;if(e>>>0>g>>>0){break D}}a=F[a+8>>2];continue}}F[a>>2]=b;F[a+4>>2]=F[a+4>>2]+f;j=(b+8&7?-8-b&7:0)+b|0;F[j+4>>2]=i|3;f=c+(c+8&7?-8-c&7:0)|0;h=i+j|0;c=f-h|0;if((f|0)==(g|0)){F[4338]=h;a=F[4335]+c|0;F[4335]=a;F[h+4>>2]=a|1;break B}if(F[4337]==(f|0)){F[4337]=h;a=F[4334]+c|0;F[4334]=a;F[h+4>>2]=a|1;F[a+h>>2]=a;break B}a=F[f+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=F[f+8>>2];a=a>>>3|0;b=F[f+12>>2];if((b|0)==(d|0)){n=17328,o=F[4332]&Oj(a),F[n>>2]=o;break G}F[d+12>>2]=b;F[b+8>>2]=d;break G}i=F[f+24>>2];b=F[f+12>>2];H:{if((f|0)!=(b|0)){a=F[f+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break H}I:{a=f+20|0;d=F[a>>2];if(d){break I}a=f+16|0;d=F[a>>2];if(d){break I}b=0;break H}while(1){e=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[e>>2]=0}if(!i){break G}d=F[f+28>>2];a=(d<<2)+17632|0;J:{if(F[a>>2]==(f|0)){F[a>>2]=b;if(b){break J}n=17332,o=F[4333]&Oj(d),F[n>>2]=o;break G}F[i+(F[i+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break G}}F[b+24>>2]=i;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 G}F[b+20>>2]=a;F[a+24>>2]=b}f=f+g|0;c=c+g|0}F[f+4>>2]=F[f+4>>2]&-2;F[h+4>>2]=c|1;F[c+h>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+17368|0;c=F[4332];a=1<>2]}F[b+8>>2]=h;F[a+12>>2]=h;F[h+12>>2]=b;F[h+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;e=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|e))|0;a=(a<<1|c>>>a+21&1)+28|0}F[h+28>>2]=a;F[h+16>>2]=0;F[h+20>>2]=0;e=(a<<2)+17632|0;d=F[4333];b=1<>2]=h;F[h+24>>2]=e;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[e>>2];while(1){d=b;if((F[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;e=d+(b&4)|0;b=F[e+16>>2];if(b){continue}break}F[e+16>>2]=h;F[h+24>>2]=d}F[h+12>>2]=h;F[h+8>>2]=h;break B}d=f-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[4335]=c;a=a+b|0;F[4338]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[4339]=F[4454];a=(e+(e-39&7?39-e&7:0)|0)-47|0;c=a>>>0>>0?g:a;F[c+4>>2]=27;a=F[4447];F[c+16>>2]=F[4446];F[c+20>>2]=a;a=F[4445];F[c+8>>2]=F[4444];F[c+12>>2]=a;F[4446]=c+8;F[4445]=f;F[4444]=b;F[4447]=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;e=c-g|0;F[g+4>>2]=e|1;F[c>>2]=e;if(e>>>0<=255){a=e>>>3|0;b=(a<<3)+17368|0;c=F[4332];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(e>>>0<=16777215){a=e>>>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|e>>>a+21&1)+28|0}F[g+28>>2]=a;d=(a<<2)+17632|0;c=F[4333];b=1<>2]=g;F[g+24>>2]=d;break N}a=e<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[d>>2];while(1){c=b;if((e|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]=h;F[d+8>>2]=h;F[h+24>>2]=0;F[h+12>>2]=d;F[h+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[4335];if(a>>>0<=i>>>0){break d}b=a-i|0;F[4335]=b;c=F[4338];a=c+i|0;F[4338]=a;F[a+4>>2]=b|1;F[c+4>>2]=i|3;a=c+8|0;break a}F[4312]=48;a=0;break a}O:{if(!f){break O}c=F[e+28>>2];a=(c<<2)+17632|0;P:{if(F[a>>2]==(e|0)){F[a>>2]=b;if(b){break P}j=Oj(c)&j;F[4333]=j;break O}F[f+(F[f+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break O}}F[b+24>>2]=f;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 O}F[b+20>>2]=a;F[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+i|0;F[e+4>>2]=a|3;a=a+e|0;F[a+4>>2]=F[a+4>>2]|1;break Q}F[e+4>>2]=i|3;F[h+4>>2]=d|1;F[d+h>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+17368|0;c=F[4332];a=1<>2]}F[b+8>>2]=h;F[a+12>>2]=h;F[h+12>>2]=b;F[h+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[h+28>>2]=a;F[h+16>>2]=0;F[h+20>>2]=0;c=(a<<2)+17632|0;S:{b=1<>2]=h;F[h+24>>2]=c;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);i=F[c>>2];while(1){b=i;if((F[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=b+(c&4)|0;i=F[c+16>>2];if(i){continue}break}F[c+16>>2]=h;F[h+24>>2]=b}F[h+12>>2]=h;F[h+8>>2]=h;break Q}a=F[b+8>>2];F[a+12>>2]=h;F[b+8>>2]=h;F[h+24>>2]=0;F[h+12>>2]=b;F[h+8>>2]=a}a=e+8|0;break a}U:{if(!l){break U}c=F[b+28>>2];a=(c<<2)+17632|0;V:{if(F[a>>2]==(b|0)){F[a>>2]=e;if(e){break V}n=17332,o=Oj(c)&h,F[n>>2]=o;break U}F[(F[l+16>>2]==(b|0)?16:20)+l>>2]=e;if(!e){break U}}F[e+24>>2]=l;a=F[b+16>>2];if(a){F[e+16>>2]=a;F[a+24>>2]=e}a=F[b+20>>2];if(!a){break U}F[e+20>>2]=a;F[a+24>>2]=e}W:{if(d>>>0<=15){a=d+i|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]=i|3;F[j+4>>2]=d|1;F[d+j>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+17368|0;e=F[4337];a=1<>2]}F[c+8>>2]=e;F[a+12>>2]=e;F[e+12>>2]=c;F[e+8>>2]=a}F[4337]=j;F[4334]=d}a=b+8|0}ea=m+16|0;return a|0}function df(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;k=ea-48|0;ea=k;a:{if((d|0)!=1){F[a>>2]=0;break a}d=F[b+4>>2];e=F[b+12>>2];F[k+40>>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;f=k+8|0;b:{c:{if((c|0)!=-2){n=F[F[F[d+4>>2]+8>>2]+(e<<2)>>2];if((ga[F[F[d>>2]+8>>2]](d)|0)==1){b=H[d+36>>1];m=(b<<8|b>>>8)&65535;l=ea-32|0;ea=l;h=F[F[F[d+4>>2]+8>>2]+(e<<2)>>2];d:{e:{if((ga[F[F[d>>2]+8>>2]](d)|0)!=1|c-1>>>0>5){break e}i=ga[F[F[d>>2]+36>>2]](d)|0;j=ga[F[F[d>>2]+44>>2]](d,e)|0;if(!(j?i:0)){F[k>>2]=0;break d}e=ga[F[F[d>>2]+40>>2]](d,e)|0;if(e){b=F[d+44>>2];F[l+12>>2]=e;F[l+8>>2]=b;F[l+20>>2]=j;F[l+16>>2]=j+12;g=l+8|0;b=0;f:{g:{h:{switch(c-1|0){case 0:b=sa(60);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break g}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b>>2]=2380;break f;case 1:b=sa(60);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break g}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b>>2]=3144;break f;case 3:b=sa(112);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break g}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=3380;F[b+68>>2]=0;F[b+72>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+84>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+96>>2]=0;F[b+100>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;break f;case 2:b=sa(92);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break g}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=3628;F[b+68>>2]=0;F[b+72>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+84>>2]=0;F[b+88>>2]=m;break f;case 4:b=sa(104);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break g}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;d=F[g+8>>2];c=F[g+12>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=3856;F[b+52>>2]=d;F[b+56>>2]=c;c=F[g+4>>2];F[b+88>>2]=F[g>>2];F[b+92>>2]=c;c=F[g+12>>2];F[b+96>>2]=F[g+8>>2];F[b+100>>2]=c;break f;case 5:break h;default:break f}}b=sa(128);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;i:{j:{c=F[f+28>>2]-F[f+24>>2]|0;if(c){if((c|0)<=-1){break j}d=sa(c);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(c>>2<<2);c=b;e=F[f+24>>2];i=F[f+28>>2]-e|0;if((i|0)>=1){d=ta(d,e,i)+i|0}F[c+36>>2]=d}F[b>>2]=3032;c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;c=b- -64|0;F[c>>2]=0;F[c+4>>2]=0;F[b+60>>2]=4720;F[b>>2]=4092;c=F[g+4>>2];F[b+72>>2]=F[g>>2];F[b+76>>2]=c;c=F[g+12>>2];F[b+80>>2]=F[g+8>>2];F[b+84>>2]=c;F[b+104>>2]=1065353216;F[b+108>>2]=-1;F[b+96>>2]=-1;F[b+100>>2]=-1;F[b+88>>2]=1;F[b+92>>2]=-1;F[b+60>>2]=4328;F[b+112>>2]=0;F[b+116>>2]=0;D[b+117|0]=0;D[b+118|0]=0;D[b+119|0]=0;D[b+120|0]=0;D[b+121|0]=0;D[b+122|0]=0;D[b+123|0]=0;D[b+124|0]=0;break i}va();V()}break f}va();V()}F[k>>2]=b;if(!F[k>>2]){break e}break d}b=F[d+44>>2];F[l+12>>2]=i;F[l+8>>2]=b;F[l+20>>2]=j;F[l+16>>2]=j+12;g=l+8|0;b=0;k:{l:{m:{switch(c-1|0){case 0:b=sa(60);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break l}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b>>2]=4748;break k;case 1:b=sa(60);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break l}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b>>2]=5172;break k;case 3:b=sa(112);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break l}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=5396;F[b+68>>2]=0;F[b+72>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+84>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+96>>2]=0;F[b+100>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;break k;case 2:b=sa(92);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break l}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=5632;F[b+68>>2]=0;F[b+72>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+84>>2]=0;F[b+88>>2]=m;break k;case 4:b=sa(104);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;c=F[f+24>>2];e=F[f+28>>2]-c|0;if(e){if((e|0)<=-1){break l}d=sa(e);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(e>>2<<2);o=b,p=ta(d,c,e)+e|0,F[o+36>>2]=p}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;d=F[g+8>>2];c=F[g+12>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=5848;F[b+52>>2]=d;F[b+56>>2]=c;c=F[g+4>>2];F[b+88>>2]=F[g>>2];F[b+92>>2]=c;c=F[g+12>>2];F[b+96>>2]=F[g+8>>2];F[b+100>>2]=c;break k;case 5:break m;default:break k}}b=sa(128);F[b+4>>2]=h;F[b>>2]=3088;h=F[f+8>>2];j=F[f+12>>2];i=F[f+16>>2];e=F[f+20>>2];d=F[f>>2];c=F[f+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=e;F[b+16>>2]=h;F[b+20>>2]=j;F[b+8>>2]=d;F[b+12>>2]=c;n:{o:{c=F[f+28>>2]-F[f+24>>2]|0;if(c){if((c|0)<=-1){break o}d=sa(c);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(c>>2<<2);c=b;e=F[f+24>>2];i=F[f+28>>2]-e|0;if((i|0)>=1){d=ta(d,e,i)+i|0}F[c+36>>2]=d}F[b>>2]=5116;c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;c=b- -64|0;F[c>>2]=0;F[c+4>>2]=0;F[b+60>>2]=6656;F[b>>2]=6072;c=F[g+4>>2];F[b+72>>2]=F[g>>2];F[b+76>>2]=c;c=F[g+12>>2];F[b+80>>2]=F[g+8>>2];F[b+84>>2]=c;F[b+104>>2]=1065353216;F[b+108>>2]=-1;F[b+96>>2]=-1;F[b+100>>2]=-1;F[b+88>>2]=1;F[b+92>>2]=-1;F[b+60>>2]=6292;F[b+112>>2]=0;F[b+116>>2]=0;D[b+117|0]=0;D[b+118|0]=0;D[b+119|0]=0;D[b+120|0]=0;D[b+121|0]=0;D[b+122|0]=0;D[b+123|0]=0;D[b+124|0]=0;break n}va();V()}break k}va();V()}F[k>>2]=b;if(F[k>>2]){break d}}F[k>>2]=0}ea=l+32|0;if(F[k>>2]){break b}F[k>>2]=0}h=sa(44);F[h+4>>2]=n;F[h>>2]=3088;j=F[f+8>>2];i=F[f+12>>2];e=F[f+16>>2];d=F[f+20>>2];c=F[f>>2];b=F[f+4>>2];F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=e;F[h+28>>2]=d;F[h+16>>2]=j;F[h+20>>2]=i;F[h+8>>2]=c;F[h+12>>2]=b;b=F[f+24>>2];d=F[f+28>>2]-b|0;if(d){if((d|0)<=-1){break c}c=sa(d);F[h+32>>2]=c;F[h+36>>2]=c;F[h+40>>2]=c+(d>>2<<2);o=h,p=ta(c,b,d)+d|0,F[o+36>>2]=p}F[h>>2]=6684}F[k>>2]=h;break b}va();V()}b=F[k+32>>2];if(b){F[k+36>>2]=b;ra(b)}F[a>>2]=F[k>>2]}ea=k+48|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;i=ea-48|0;ea=i;c=sa(8);F[c+4>>2]=b;F[c>>2]=0;b=c+8|0;F[i+40>>2]=b;F[i+36>>2]=b;F[i+32>>2]=c;a:{b:{c:{d:{while(1){b=b-8|0;k=F[b+4>>2];l=F[b>>2];F[i+36>>2]=b;if(l){F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;b=1;c=F[a>>2];g=F[c+16>>2];f=F[c+12>>2];d=F[c+20>>2];e:{if((d|0)>(f|0)?1:(f|0)<=(d|0)?I[c+8>>2]<=g>>>0:0){break e}e=G[g+F[c>>2]|0];f=g+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;Fc(i+16|0,e);if(e){d=F[a>>2];o=Ec(i+16|0);m=F[d+20>>2];g=F[d+16>>2];c=e;j=g+c|0;h=F[d+12>>2];m=c>>>0>j>>>0?m+1|0:m;if((h|0)<(m|0)?1:(h|0)<=(m|0)?j>>>0>I[d+8>>2]:0){break e}ta(o,g+F[d>>2]|0,e);f=F[d+20>>2];e=c+F[d+16>>2]|0;f=e>>>0>>0?f+1|0:f;F[d+16>>2]=e;F[d+20>>2]=f}k=sa(24);b=k;F[b+4>>2]=0;F[b+8>>2]=0;b=b+16|0;F[b>>2]=0;F[b+4>>2]=0;F[k>>2]=k+4;F[k+12>>2]=b;F[i+8>>2]=k;f=ea-32|0;ea=f;p=l+12|0;e=i+16|0;j=qb(p,e);o=l+16|0;f:{if((j|0)!=(o|0)){break f}F[f+16>>2]=e;b=F[p+4>>2];g:{h:{if(b){d=G[e+11|0];c=d<<24>>24<0;l=c?F[e>>2]:e;q=c?F[e+4>>2]:d;c=p+4|0;while(1){d=G[b+27|0];e=d<<24>>24<0;m=e?F[b+20>>2]:d;h=m>>>0>>0;i:{j:{k:{l:{m:{g=h?m:q;n:{if(g){d=b+16|0;e=e?F[d>>2]:d;d=Ga(l,e,g);if(!d){if(m>>>0>q>>>0){break n}break m}if((d|0)>-1){break m}break n}if(m>>>0<=q>>>0){break l}}d=F[b>>2];if(d){break i}break h}d=Ga(e,l,g);if(d){break k}}if(h){break j}break g}if((d|0)>-1){break g}}c=b+4|0;d=F[b+4>>2];if(!d){break g}b=c}c=b;b=d;continue}}b=p+4|0}c=b}e=f;d=F[c>>2];if(d){b=0}else{d=sa(32);Aa(d+16|0,F[f+16>>2]);F[d+8>>2]=b;F[d>>2]=0;F[d+4>>2]=0;F[d+28>>2]=0;F[c>>2]=d;g=F[F[p>>2]>>2];b=d;o:{if(!g){break o}F[p>>2]=g;b=F[c>>2]}Vb(F[p+4>>2],b);F[p+8>>2]=F[p+8>>2]+1;b=1}D[e+28|0]=b;F[f+24>>2]=d;c=F[f+24>>2];b=F[i+8>>2];F[i+8>>2]=0;d=F[c+28>>2];F[c+28>>2]=b;if(!d){break f}Qa(d+12|0,F[d+16>>2]);Pa(d,F[d+4>>2]);ra(d)}ea=f+32|0;b=F[i+8>>2];F[i+8>>2]=0;if(b){Qa(b+12|0,F[b+16>>2]);Pa(b,F[b+4>>2]);ra(b)}b=(j|0)!=(o|0)}if(D[i+27|0]<=-1){ra(F[i+16>>2])}if(b){break b}}if(!k){break b}F[i+16>>2]=0;if(!Cb(1,i+16|0,F[a>>2])){break b}p:{p=F[i+16>>2];if(!p){break p}b=1;while(1){o=0;n=ea-32|0;ea=n;F[n+24>>2]=0;F[n+16>>2]=0;F[n+20>>2]=0;q:{r:{c=F[a>>2];g=F[c+16>>2];f=F[c+12>>2];d=F[c+20>>2];s:{if((d|0)>(f|0)?1:(f|0)<=(d|0)?I[c+8>>2]<=g>>>0:0){break s}e=G[g+F[c>>2]|0];f=d;d=g+1|0;f=d>>>0<1?f+1|0:f;F[c+16>>2]=d;F[c+20>>2]=f;Fc(n+16|0,e);if(e){f=F[a>>2];h=Ec(n+16|0);d=F[f+20>>2];j=F[f+16>>2];c=e;l=j+c|0;m=F[f+12>>2];d=c>>>0>l>>>0?d+1|0:d;if((d|0)>(m|0)?1:(m|0)<=(d|0)?l>>>0>I[f+8>>2]:0){break s}ta(h,j+F[f>>2]|0,e);d=f;f=F[d+20>>2];e=c+F[d+16>>2]|0;F[d+16>>2]=e;F[d+20>>2]=c>>>0>e>>>0?f+1|0:f}F[n+12>>2]=0;if(!Cb(1,n+12|0,F[a>>2])){break s}e=F[n+12>>2];if(!e){break s}F[n+8>>2]=0;F[n>>2]=0;F[n+4>>2]=0;if((e|0)<=-1){break r}d=sa(e);F[n>>2]=d;c=d+e|0;F[n+8>>2]=c;h=ua(d,0,e);F[n+4>>2]=c;f=F[a>>2];m=F[f+20>>2];j=F[f+16>>2];c=e;o=j+c|0;l=F[f+12>>2];m=c>>>0>o>>>0?m+1|0:m;o=(l|0)>(m|0)?1:(l|0)>=(m|0)?I[f+8>>2]>=o>>>0:0;if(o){ta(h,j+F[f>>2]|0,e);d=f;f=F[d+20>>2];e=c+F[d+16>>2]|0;F[d+16>>2]=e;F[d+20>>2]=c>>>0>e>>>0?f+1|0:f;h=ea-48|0;ea=h;q=n+16|0;c=qb(k,q);if((c|0)!=(k+4|0)){f=F[c+4>>2];t:{if(!f){e=F[c+8>>2];if((c|0)==F[e>>2]){break t}f=c+8|0;while(1){d=F[f>>2];f=d+8|0;e=F[d+8>>2];if((d|0)!=F[e>>2]){continue}break}break t}while(1){e=f;f=F[e>>2];if(f){continue}break}}if((c|0)==F[k>>2]){F[k>>2]=e}F[k+8>>2]=F[k+8>>2]-1;f=F[k+4>>2];u:{v:{j=c;e=c;d=F[c>>2];if(d){c=F[j+4>>2];if(!c){break v}while(1){e=c;c=F[c>>2];if(c){continue}break}}d=F[e+4>>2];if(d){break v}d=0;g=1;break u}F[d+8>>2]=F[e+8>>2];g=0}l=F[e+8>>2];c=F[l>>2];w:{if((e|0)==(c|0)){F[l>>2]=d;if((e|0)==(f|0)){c=0;f=d;break w}c=F[l+4>>2];break w}F[l+4>>2]=d}m=!G[e+12|0];if((e|0)!=(j|0)){l=F[j+8>>2];F[e+8>>2]=l;F[l+(((j|0)!=F[F[j+8>>2]>>2])<<2)>>2]=e;l=F[j>>2];F[e>>2]=l;F[l+8>>2]=e;l=F[j+4>>2];F[e+4>>2]=l;if(l){F[l+8>>2]=e}D[e+12|0]=G[j+12|0];f=(f|0)==(j|0)?e:f}x:{if(m|!f){break x}if(g){while(1){d=G[c+12|0];y:{g=F[c+8>>2];if(F[g>>2]!=(c|0)){z:{A:{if(!d){D[c+12|0]=1;D[g+12|0]=0;e=F[g+4>>2];d=F[e>>2];F[g+4>>2]=d;if(d){F[d+8>>2]=g}F[e+8>>2]=F[g+8>>2];d=F[g+8>>2];F[(((g|0)!=F[d>>2])<<2)+d>>2]=e;F[e>>2]=g;F[g+8>>2]=e;d=c;c=F[c>>2];f=(c|0)==(f|0)?d:f;c=F[c+4>>2]}e=F[c>>2];B:{if(!(G[e+12|0]?0:e)){d=F[c+4>>2];if(G[d+12|0]?0:d){break B}D[c+12|0]=0;c=F[c+8>>2];C:{if((f|0)==(c|0)){c=f;break C}if(G[c+12|0]){break y}}D[c+12|0]=1;break x}d=F[c+4>>2];if(!d){break A}}if(G[d+12|0]){break A}e=c;break z}D[e+12|0]=1;D[c+12|0]=0;d=F[e+4>>2];F[c>>2]=d;if(d){F[d+8>>2]=c}F[e+8>>2]=F[c+8>>2];d=F[c+8>>2];F[((F[d>>2]!=(c|0))<<2)+d>>2]=e;F[e+4>>2]=c;F[c+8>>2]=e;d=c}c=e;e=F[e+8>>2];D[c+12|0]=G[e+12|0];D[e+12|0]=1;D[d+12|0]=1;d=F[e+4>>2];c=F[d>>2];F[e+4>>2]=c;if(c){F[c+8>>2]=e}F[d+8>>2]=F[e+8>>2];c=F[e+8>>2];F[(((e|0)!=F[c>>2])<<2)+c>>2]=d;F[d>>2]=e;F[e+8>>2]=d;break x}D:{if(d){d=c;break D}D[c+12|0]=1;D[g+12|0]=0;d=F[c+4>>2];F[g>>2]=d;if(d){F[d+8>>2]=g}F[c+8>>2]=F[g+8>>2];e=F[g+8>>2];E:{if((g|0)==F[e>>2]){F[e>>2]=c;d=F[g>>2];break E}F[e+4>>2]=c}F[c+4>>2]=g;F[g+8>>2]=c;f=(f|0)==(g|0)?c:f}e=F[d>>2];F:{if(!(!e|G[e+12|0])){c=d;break F}c=F[d+4>>2];if(!(G[c+12|0]?0:c)){D[d+12|0]=0;c=F[d+8>>2];if((c|0)!=(f|0)?G[c+12|0]:0){break y}D[c+12|0]=1;break x}if(e){if(!G[e+12|0]){c=d;break F}c=F[d+4>>2]}D[c+12|0]=1;D[d+12|0]=0;e=F[c>>2];F[d+4>>2]=e;if(e){F[e+8>>2]=d}F[c+8>>2]=F[d+8>>2];e=F[d+8>>2];F[((F[e>>2]!=(d|0))<<2)+e>>2]=c;F[c>>2]=d;F[d+8>>2]=c;e=d}f=F[c+8>>2];D[c+12|0]=G[f+12|0];D[f+12|0]=1;D[e+12|0]=1;d=F[f>>2];c=F[d+4>>2];F[f>>2]=c;if(c){F[c+8>>2]=f}F[d+8>>2]=F[f+8>>2];c=F[f+8>>2];F[(((f|0)!=F[c>>2])<<2)+c>>2]=d;F[d+4>>2]=f;F[f+8>>2]=d;break x}d=c;c=F[c+8>>2];c=F[(((d|0)==F[c>>2])<<2)+c>>2];continue}}D[d+12|0]=1}c=F[j+28>>2];if(c){F[j+32>>2]=c;ra(c)}if(D[j+27|0]<=-1){ra(F[j+16>>2])}ra(j)}F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;c=F[n+4>>2]-F[n>>2]|0;jb(h,c);ta(F[h>>2],F[n>>2],c);f=Aa(h+16|0,q);F[h+36>>2]=0;F[h+28>>2]=0;F[h+32>>2]=0;jb(h+28|0,F[h+4>>2]-F[h>>2]|0);c=F[h>>2];ta(F[h+28>>2],c,F[h+4>>2]-c|0);c=F[k+4>>2];G:{H:{if(c){e=G[f+11|0];d=e<<24>>24<0;l=d?F[f>>2]:f;q=d?F[f+4>>2]:e;d=k+4|0;while(1){e=G[c+27|0];f=e<<24>>24<0;m=f?F[c+20>>2]:e;j=m>>>0>>0;I:{J:{K:{L:{M:{g=j?m:q;N:{if(g){e=c+16|0;f=f?F[e>>2]:e;e=Ga(l,f,g);if(!e){if(m>>>0>q>>>0){break N}break M}if((e|0)>-1){break M}break N}if(m>>>0<=q>>>0){break L}}e=F[c>>2];if(e){break I}break H}e=Ga(f,l,g);if(e){break K}}if(j){break J}break G}if((e|0)>-1){break G}}d=c+4|0;e=F[c+4>>2];if(!e){break G}c=d}d=c;c=e;continue}}c=k+4|0}d=c}f=h;e=F[d>>2];if(e){c=0}else{e=sa(40);F[e+24>>2]=F[h+24>>2];g=F[h+20>>2];F[e+16>>2]=F[h+16>>2];F[e+20>>2]=g;F[h+16>>2]=0;F[h+20>>2]=0;F[h+24>>2]=0;F[e+36>>2]=0;g=e+28|0;F[g>>2]=0;F[g+4>>2]=0;jb(g,F[h+32>>2]-F[h+28>>2]|0);j=F[g>>2];g=F[h+28>>2];ta(j,g,F[h+32>>2]-g|0);F[e+8>>2]=c;F[e>>2]=0;F[e+4>>2]=0;F[d>>2]=e;g=F[F[k>>2]>>2];c=e;O:{if(!g){break O}F[k>>2]=g;c=F[d>>2]}Vb(F[k+4>>2],c);F[k+8>>2]=F[k+8>>2]+1;c=1}D[f+44|0]=c;F[h+40>>2]=e;c=F[h+28>>2];if(c){F[h+32>>2]=c;ra(c)}if(D[h+27|0]<=-1){ra(F[h+16>>2])}c=F[h>>2];if(c){F[h+4>>2]=c;ra(c)}ea=h+48|0;d=F[n>>2];if(!d){break s}}F[n+4>>2]=d;ra(d)}if(D[n+27|0]<=-1){ra(F[n+16>>2])}ea=n+32|0;c=o;break q}va();V()}if(!c){break b}if((b|0)==(p|0)){break p}b=b+1|0;continue}}F[i+4>>2]=0;if(!Cb(1,i+4|0,F[a>>2])){break b}j=F[i+4>>2];d=F[a>>2];c=F[d+8>>2];b=F[d+16>>2];e=j>>>0>c-b>>>0;b=F[d+12>>2]-(F[d+20>>2]+(b>>>0>c>>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?e:0){break b}b=0;if(j){while(1){c=F[i+36>>2];d=F[i+40>>2];P:{if(c>>>0>>0){F[c+4>>2]=0;F[c>>2]=k;F[i+36>>2]=c+8;break P}h=F[i+32>>2];o=c-h|0;f=o>>3;g=f+1|0;if(g>>>0>=536870912){break d}e=d-h|0;d=e>>2;e=e>>3>>>0<268435455?d>>>0>>0?g:d:536870911;c=0;Q:{if(!e){break Q}if(e>>>0>=536870912){break c}c=sa(e<<3)}d=c+(f<<3)|0;F[d+4>>2]=0;F[d>>2]=k;if((o|0)>=1){ta(c,h,o)}F[i+40>>2]=c+(e<<3);F[i+36>>2]=d+8;F[i+32>>2]=c;if(!h){break P}ra(h)}b=b+1|0;if((j|0)!=(b|0)){continue}break}}b=F[i+36>>2];k=F[i+32>>2];if((b|0)!=(k|0)){continue}break}a=1;break a}va();V()}wa(14516);V()}k=F[i+32>>2];a=0}if(k){F[i+36>>2]=k;ra(k)}ea=i+48|0;return a}function te(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;f=ea-32|0;ea=f;F[b+32>>2]=d;F[b+40>>2]=c;F[b+4>>2]=e;oc(a,d,f+16|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<=-1){ra(F[j>>2])}d=G[f+23|0];if((ga[F[F[b>>2]+8>>2]](b)|0)!=(d|0)){b=sa(64);F[f>>2]=b;F[f+4>>2]=50;F[f+8>>2]=-2147483584;D[b+50|0]=0;c=G[13665]|G[13666]<<8;D[b+48|0]=c;D[b+49|0]=c>>>8;c=G[13661]|G[13662]<<8|(G[13663]<<16|G[13664]<<24);d=G[13657]|G[13658]<<8|(G[13659]<<16|G[13660]<<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[13653]|G[13654]<<8|(G[13655]<<16|G[13656]<<24);d=G[13649]|G[13650]<<8|(G[13651]<<16|G[13652]<<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[13645]|G[13646]<<8|(G[13647]<<16|G[13648]<<24);d=G[13641]|G[13642]<<8|(G[13643]<<16|G[13644]<<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[13637]|G[13638]<<8|(G[13639]<<16|G[13640]<<24);d=G[13633]|G[13634]<<8|(G[13635]<<16|G[13636]<<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[13629]|G[13630]<<8|(G[13631]<<16|G[13632]<<24);d=G[13625]|G[13626]<<8|(G[13627]<<16|G[13628]<<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[13621]|G[13622]<<8|(G[13623]<<16|G[13624]<<24);d=G[13617]|G[13618]<<8|(G[13619]<<16|G[13620]<<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;F[a>>2]=-1;Aa(j,f);if(D[f+11|0]>-1){break a}ra(F[f>>2]);break a}c=G[f+21|0];D[b+36|0]=c;e=G[f+22|0];D[b+37|0]=e;if((c-1&255)>>>0>=2){b=sa(32);F[f>>2]=b;F[f+4>>2]=22;F[f+8>>2]=-2147483616;D[b+22|0]=0;c=G[13686]|G[13687]<<8|(G[13688]<<16|G[13689]<<24);d=G[13682]|G[13683]<<8|(G[13684]<<16|G[13685]<<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[13680]|G[13681]<<8|(G[13682]<<16|G[13683]<<24);d=G[13676]|G[13677]<<8|(G[13678]<<16|G[13679]<<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[13672]|G[13673]<<8|(G[13674]<<16|G[13675]<<24);d=G[13668]|G[13669]<<8|(G[13670]<<16|G[13671]<<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;F[a>>2]=-5;Aa(j,f);if(D[f+11|0]>-1){break a}ra(F[f>>2]);break a}if(!((c|0)!=2|e>>>0<=(d?2:3)>>>0)){b=sa(32);F[f>>2]=b;F[f+4>>2]=22;F[f+8>>2]=-2147483616;D[b+22|0]=0;c=G[13709]|G[13710]<<8|(G[13711]<<16|G[13712]<<24);d=G[13705]|G[13706]<<8|(G[13707]<<16|G[13708]<<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[13703]|G[13704]<<8|(G[13705]<<16|G[13706]<<24);d=G[13699]|G[13700]<<8|(G[13701]<<16|G[13702]<<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[13695]|G[13696]<<8|(G[13697]<<16|G[13698]<<24);d=G[13691]|G[13692]<<8|(G[13693]<<16|G[13694]<<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;F[a>>2]=-5;Aa(j,f);if(D[f+11|0]>-1){break a}ra(F[f>>2]);break a}c=e|c<<8;E[F[b+32>>2]+38>>1]=c;b:{if((c&65535)>>>0<259|E[f+26>>1]>-1){break b}i=ea-32|0;ea=i;c=sa(36);F[c+4>>2]=0;F[c+8>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;d=c+16|0;F[d>>2]=0;F[d+4>>2]=0;F[c>>2]=c+4;F[c+32>>2]=0;F[c+12>>2]=d;F[i+24>>2]=c;l=i+16|0;F[l>>2]=0;g=F[b+32>>2];e=ea-16|0;ea=e;c:{d:{if(!c){break d}F[l>>2]=g;F[e+12>>2]=0;d=0;if(!Cb(1,e+12|0,g)){break c}e:{n=F[e+12>>2];if(n){while(1){if(!Cb(1,e+8|0,F[l>>2])){break d}d=sa(28);F[d+4>>2]=0;F[d+8>>2]=0;g=d+16|0;F[g>>2]=0;F[g+4>>2]=0;F[d>>2]=d+4;F[d+12>>2]=g;F[d+24>>2]=F[e+8>>2];if(!$d(l,d)){break e}F[e>>2]=d;g=F[e>>2];f:{if(!g){break f}d=F[c+28>>2];if(d>>>0>2]){F[e>>2]=0;F[d>>2]=g;F[c+28>>2]=d+4;break f}d=0;g:{h:{i:{h=F[c+24>>2];m=F[c+28>>2]-h>>2;g=m+1|0;if(g>>>0<1073741824){h=F[c+32>>2]-h|0;k=h>>1;g=h>>2>>>0<536870911?g>>>0>k>>>0?g:k:1073741823;if(g){if(g>>>0>=1073741824){break i}d=sa(g<<2)}k=F[e>>2];F[e>>2]=0;h=(m<<2)+d|0;F[h>>2]=k;m=(g<<2)+d|0;k=h+4|0;d=F[c+28>>2];g=F[c+24>>2];if((d|0)==(g|0)){break h}while(1){d=d-4|0;p=F[d>>2];F[d>>2]=0;h=h-4|0;F[h>>2]=p;if((d|0)!=(g|0)){continue}break}F[c+32>>2]=m;d=F[c+28>>2];F[c+28>>2]=k;g=F[c+24>>2];F[c+24>>2]=h;if((d|0)==(g|0)){break g}while(1){d=d-4|0;h=F[d>>2];F[d>>2]=0;if(h){Qa(h+12|0,F[h+16>>2]);Pa(h,F[h+4>>2]);ra(h)}if((d|0)!=(g|0)){continue}break}break g}va();V()}wa(14584);V()}F[c+32>>2]=m;F[c+28>>2]=k;F[c+24>>2]=h}if(g){ra(g)}}d=F[e>>2];F[e>>2]=0;if(d){Qa(d+12|0,F[d+16>>2]);Pa(d,F[d+4>>2]);ra(d)}o=o+1|0;if((n|0)!=(o|0)){continue}break}}d=$d(l,c);break c}Qa(d+12|0,F[d+16>>2]);Pa(d,F[d+4>>2]);ra(d)}d=0}ea=e+16|0;j:{if(!d){c=sa(32);F[i>>2]=c;F[i+4>>2]=26;F[i+8>>2]=-2147483616;D[c+26|0]=0;d=G[13614]|G[13615]<<8;D[c+24|0]=d;D[c+25|0]=d>>>8;d=G[13610]|G[13611]<<8|(G[13612]<<16|G[13613]<<24);e=G[13606]|G[13607]<<8|(G[13608]<<16|G[13609]<<24);D[c+16|0]=e;D[c+17|0]=e>>>8;D[c+18|0]=e>>>16;D[c+19|0]=e>>>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[13602]|G[13603]<<8|(G[13604]<<16|G[13605]<<24);e=G[13598]|G[13599]<<8|(G[13600]<<16|G[13601]<<24);D[c+8|0]=e;D[c+9|0]=e>>>8;D[c+10|0]=e>>>16;D[c+11|0]=e>>>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[13594]|G[13595]<<8|(G[13596]<<16|G[13597]<<24);e=G[13590]|G[13591]<<8|(G[13592]<<16|G[13593]<<24);D[c|0]=e;D[c+1|0]=e>>>8;D[c+2|0]=e>>>16;D[c+3|0]=e>>>24;D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;F[a>>2]=-1;Aa(a+4|0,i);if(D[i+11|0]>-1){break j}ra(F[i>>2]);break j}d=F[b+4>>2];F[i+24>>2]=0;e=F[d+4>>2];F[d+4>>2]=c;if(e){Vc(e)}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}c=F[i+24>>2];F[i+24>>2]=0;if(c){Vc(c)}ea=i+32|0;if(F[a>>2]){break a}if(D[j+11|0]>-1){break b}ra(F[j>>2])}if(!(ga[F[F[b>>2]+12>>2]](b)|0)){b=sa(48);F[f>>2]=b;F[f+4>>2]=33;F[f+8>>2]=-2147483600;D[b+33|0]=0;D[b+32|0]=G[13746];c=G[13742]|G[13743]<<8|(G[13744]<<16|G[13745]<<24);d=G[13738]|G[13739]<<8|(G[13740]<<16|G[13741]<<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[13734]|G[13735]<<8|(G[13736]<<16|G[13737]<<24);d=G[13730]|G[13731]<<8|(G[13732]<<16|G[13733]<<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[13726]|G[13727]<<8|(G[13728]<<16|G[13729]<<24);d=G[13722]|G[13723]<<8|(G[13724]<<16|G[13725]<<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[13718]|G[13719]<<8|(G[13720]<<16|G[13721]<<24);d=G[13714]|G[13715]<<8|(G[13716]<<16|G[13717]<<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;F[a>>2]=-1;Aa(j,f);if(D[f+11|0]>-1){break a}ra(F[f>>2]);break a}if(!(ga[F[F[b>>2]+20>>2]](b)|0)){b=nc(f,13748);F[a>>2]=-1;Aa(j,b);if(D[b+11|0]>-1){break a}ra(F[b>>2]);break a}if(!(ga[F[F[b>>2]+24>>2]](b)|0)){b=nc(f,13780);F[a>>2]=-1;Aa(j,b);if(D[b+11|0]>-1){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=f+32|0}function zf(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=M(0),s=0,t=0;g=ea-720|0;ea=g;a:{b:{c:{d:{e:{f:{g:{h:{if(H[b+38>>1]>=515){F[g+680>>2]=0;F[g+672>>2]=0;F[g+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,h)|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){c=F[g+672>>2];e=F[g+676>>2]-c>>2;o=D[d+24|0];i:{if(e>>>0>>0){vc(g+672|0,o-e|0);break i}if(e>>>0<=o>>>0){break i}F[g+676>>2]=c+(o<<2)}p=0;d=F[b+20>>2];i=F[b+16>>2];f=o<<2;c=f;n=i+c|0;k=F[b+12>>2];d=c>>>0>n>>>0?d+1|0:d;if((d|0)>(k|0)?1:(k|0)<=(d|0)?n>>>0>I[b+8>>2]:0){break b}ta(F[g+672>>2],i+F[b>>2]|0,f);d=F[b+20>>2];f=c+F[b+16>>2]|0;d=f>>>0>>0?d+1|0:d;e=b;q=f;F[e+16>>2]=f;F[e+20>>2]=d;n=F[e+12>>2];f=n;c=d;e=q+4|0;c=e>>>0<4?c+1|0:c;i=F[b+8>>2];k=e;if((c|0)>(f|0)?1:(c|0)>=(f|0)?i>>>0>>0:0){break b}e=F[b>>2];f=e+q|0;f=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[b+16>>2]=k;F[b+20>>2]=c;if((c|0)>(n|0)?1:(c|0)>=(n|0)?i>>>0<=k>>>0:0){break b}i=G[e+k|0];e=q+5|0;d=e>>>0<5?d+1|0:d;c=b;F[c+16>>2]=e;F[c+20>>2]=d;if(i>>>0>31){break b}r=(z(2,f),A());F[g+20>>2]=-1;F[g+16>>2]=1140;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;e=g+16|0;d=F[g+672>>2];c=i-1|0;if(c>>>0<=29){F[e+4>>2]=i;Ba(e+8|0,d,d+(o<<2)|0);J[e+20>>2]=r}j:{if(c>>>0>=30){break j}if(!Yc(g+16|0,F[F[a+60>>2]+((F[a+40>>2]-F[a+36>>2]|0)/24<<2)>>2])){break j}e=F[a+40>>2];k:{if((e|0)!=F[a+44>>2]){F[e>>2]=1140;c=F[g+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+4>>2]=c;c=F[g+28>>2]-F[g+24>>2]|0;if(c){if((c|0)<=-1){break h}d=sa(c);F[e+8>>2]=d;F[e+12>>2]=d;F[e+16>>2]=d+(c>>2<<2);c=e;f=F[g+24>>2];i=F[g+28>>2]-f|0;if((i|0)>=1){d=ta(d,f,i)+i|0}F[c+12>>2]=d}J[e+20>>2]=J[g+36>>2];F[a+40>>2]=e+24;break k}k=0;l:{m:{n:{o:{l=F[a+40>>2];i=F[a+36>>2];e=(l-i|0)/24|0;f=e+1|0;if(f>>>0<178956971){d=(F[a+44>>2]-i|0)/24|0;c=d<<1;f=d>>>0<89478485?c>>>0>>0?f:c:178956970;if(f){if(f>>>0>=178956971){break o}k=sa(L(f,24))}j=L(e,24)+k|0;F[j>>2]=1140;c=F[g+20>>2];F[j+16>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;F[j+4>>2]=c;c=F[g+24>>2];e=F[g+28>>2]-c|0;if(e){if((e|0)<=-1){break n}d=sa(e);F[j+12>>2]=d;F[j+8>>2]=d;F[j+16>>2]=d+(e>>2<<2);s=j,t=ta(d,c,e)+e|0,F[s+12>>2]=t}f=L(f,24)+k|0;J[j+20>>2]=J[g+36>>2];e=j+24|0;if((i|0)==(l|0)){break m}while(1){j=j-24|0;F[j>>2]=1140;c=F[l-20>>2];F[j+16>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;F[j+4>>2]=c;d=l-16|0;F[j+8>>2]=F[d>>2];F[j+12>>2]=F[l-12>>2];c=l-8|0;F[j+16>>2]=F[c>>2];F[c>>2]=0;F[d>>2]=0;F[d+4>>2]=0;J[j+20>>2]=J[l-4>>2];l=l-24|0;if((i|0)!=(l|0)){continue}break}F[a+44>>2]=f;p=F[a+40>>2];F[a+40>>2]=e;l=F[a+36>>2];F[a+36>>2]=j;if((l|0)==(p|0)){break l}while(1){p=p-24|0;ga[F[F[p>>2]>>2]](p)|0;if((l|0)!=(p|0)){continue}break}break l}va();V()}wa(1756);V()}va();V()}F[a+44>>2]=f;F[a+40>>2]=e;F[a+36>>2]=j}if(l){ra(l)}}p=1}F[g+16>>2]=1140;c=F[g+24>>2];if(c){F[g+28>>2]=c;ra(c)}if(!p){break c}}h=h+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(h|0)){continue}break}break d}l=ga[F[F[a>>2]+24>>2]](a)|0;F[g+712>>2]=0;F[g+704>>2]=0;F[g+708>>2]=0;if(l){if(l>>>0>=214748365){break g}d=L(l,20);c=sa(d);F[g+704>>2]=c;F[g+712>>2]=d+c;f=c;c=L((d-20>>>0)/20|0,20)+20|0;i=ua(f,0,c);F[g+708>>2]=c+i;while(1){c=ga[F[F[a>>2]+20>>2]](a,h)|0;f=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];e=F[f+28>>2];c=e-1|0;p:{if(c>>>0<=10){c=F[(c<<2)+14040>>2];break p}c=-1}d=(c|0)>0?c:0;if(d>>>0>4){break e}n=i+L(h,20)|0;c=D[f+24|0];F[n+16>>2]=c;F[n+12>>2]=d;F[n+8>>2]=e;F[n+4>>2]=j;F[n>>2]=f;j=c+j|0;h=h+1|0;if((l|0)!=(h|0)){continue}break}}c=ga[F[F[a>>2]+20>>2]](a,0)|0;q=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];D[q+84|0]=1;F[q+72>>2]=F[q+68>>2];h=F[b+8>>2];m=F[b+16>>2];e=F[b+12>>2];c=F[b+20>>2];if((c|0)>(e|0)?1:(e|0)<=(c|0)?h>>>0<=m>>>0:0){break e}k=F[b>>2];n=G[k+m|0];f=b;i=m+1|0;d=i>>>0<1?c+1|0:c;o=i;i=d;F[f+16>>2]=o;F[f+20>>2]=d;q:{r:{switch(n|0){case 0:if((e|0)<(i|0)?1:(e|0)<=(i|0)?h>>>0<=o>>>0:0){break e}f=m+2|0;d=f>>>0<2?c+1|0:c;a=b;F[a+16>>2]=f;F[a+20>>2]=d;a=m+6|0;d=a>>>0<6?c+1|0:c;c=a;a=d;if((a|0)>(e|0)?1:(a|0)>=(e|0)?c>>>0>h>>>0:0){break e}d=f+k|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=c;F[b+20>>2]=a;pb(q,d);h=g+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]=d;n=Cc(g+16|0,g+704|0);e=n;l=0;m=ea-32|0;ea=m;F[m+24>>2]=0;F[m+16>>2]=0;F[m+20>>2]=0;a=F[b+12>>2];q=a;d=F[b+20>>2];c=d;k=F[b+16>>2];f=k+4|0;d=f>>>0<4?c+1|0:c;i=F[b+8>>2];o=f;f=d;s:{if((a|0)<(d|0)?1:(d|0)>=(a|0)?i>>>0>>0:0){break s}d=F[b>>2];a=d+k|0;a=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[b+16>>2]=o;F[b+20>>2]=f;t:{u:{switch(a-2|0){case 1:if((f|0)>(q|0)?1:(f|0)>=(q|0)?i>>>0<=o>>>0:0){break s}f=D[d+o|0];d=c;c=k+5|0;d=c>>>0<5?d+1|0:d;a=b;F[a+16>>2]=c;F[a+20>>2]=d;F[h+8>>2]=f;if((f|0)==1){if(Sd(h,b,m+16|0)){break t}break s}Gd(1824,23,F[3852]);break s;default:Gd(1848,24,F[3852]);break s;case 0:break u}}if(!Sd(h,b,m+16|0)){break s}}F[m+8>>2]=F[m+16>>2];F[m>>2]=F[m+20>>2];f=ea-32|0;ea=f;c=F[h>>2];r=J[h+4>>2];b=f+24|0;F[b>>2]=1065353216;a=b;d=-1<=1){J[a>>2]=r/M(c|0)}h=F[m+8>>2];if((h|0)!=F[m>>2]){k=F[e+28>>2];while(1){c=F[h>>2];a=F[h+4>>2];r=J[b>>2];J[f+16>>2]=r*M(F[h+8>>2]-d|0);J[f+12>>2]=r*M(a-d|0);J[f+8>>2]=r*M(c-d|0);c=F[e+16>>2];a=F[c>>2];if(!G[a+84|0]){k=F[F[a+68>>2]+(k<<2)>>2]}i=F[F[a>>2]>>2];a=F[a+40>>2];ta(i+L(a,k)|0,(f+8|0)+(F[c+4>>2]<<2)|0,a);k=F[e+28>>2]+1|0;F[e+28>>2]=k;h=h+12|0;if((h|0)!=F[m>>2]){continue}break}}ea=f+32|0;l=1}a=F[m+16>>2];if(a){F[m+20>>2]=a;ra(a)}ea=m+32|0;Ac(n);if(l){break q}break e;case 1:break r;default:break e}}if((e|0)<(i|0)?1:(e|0)<=(i|0)?h>>>0<=o>>>0:0){break e}n=G[k+o|0];i=m+2|0;d=i>>>0<2?c+1|0:c;F[b+16>>2]=i;F[f+20>>2]=d;if(n>>>0>=7){F[g>>2]=n;Fd(1620,g);break e}d=c;c=m+6|0;d=c>>>0<6?d+1|0:d;f=c;c=d;if((c|0)>(e|0)?1:(c|0)>=(e|0)?f>>>0>h>>>0:0){break e}d=i+k|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;if(l){h=0;while(1){c=ga[F[F[a>>2]+20>>2]](a,h)|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];h=h+1|0;if((l|0)!=(h|0)){continue}break}}d=Cc(g+672|0,g+704|0);v:{w:{switch(n|0){case 1:c=zb(g+16|0,j);a=Dd(c,b,d);Ab(c);if(!a){break f}break v;case 2:c=xb(g+16|0,j);a=Cd(c,b,d);yb(c);if(!a){break f}break v;case 3:c=xb(g+16|0,j);a=Bd(c,b,d);yb(c);if(!a){break f}break v;case 4:c=ab(g+16|0,j);a=Ad(c,b,d);bb(c);if(!a){break f}break v;case 5:c=ab(g+16|0,j);a=zd(c,b,d);bb(c);if(!a){break f}break v;case 6:c=ab(g+16|0,j);a=yd(c,b,d);bb(c);if(a){break v}break f;case 0:break w;default:break f}}c=zb(g+16|0,j);a=Ed(c,b,d);Ab(c);if(!a){break f}}Ac(d)}p=1;break e}va();V()}va();V()}Ac(d)}a=F[g+704>>2];if(!a){break a}F[g+708>>2]=a;ra(a);break a}if(F[a+52>>2]==F[a+48>>2]){p=1;break b}h=0;while(1){if(!xd(1,g+16|0,b)){break c}p=1;d=F[a+48>>2];c=F[g+16>>2];F[d+(h<<2)>>2]=0-(c&1)^c>>>1;h=h+1|0;if(h>>>0>2]-d>>2>>>0){continue}break}break b}p=0}a=F[g+672>>2];if(!a){break a}F[g+676>>2]=a;ra(a)}ea=g+720|0;return p|0}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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=F[b+12>>2];a:{d=F[b+20>>2];f=F[b+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?e>>>0>I[b+8>>2]:0){break a}d=f+F[b>>2]|0;e=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a>>2]=e;d=F[b+20>>2];g=d;f=b;l=F[f+16>>2];i=l+4|0;d=i>>>0<4?d+1|0:d;F[f+16>>2]=i;F[f+20>>2]=d;if(e>>>0>32){break a}f=F[b+12>>2];d=g;g=l+8|0;d=g>>>0<8?d+1|0:d;if((d|0)>(f|0)?1:(d|0)>=(f|0)?g>>>0>I[b+8>>2]: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=b;g=F[d+20>>2];j=F[d+16>>2]+4|0;g=j>>>0<4?g+1|0:g;F[d+16>>2]=j;F[d+20>>2]=g;if(!f){j=1;break a}j=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];j=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]=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){i=F[e+12>>2];d=F[e+24>>2];h=a-1|0;b=d+h|0;c=(b>>>0)/341|0;c=F[i+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;b=F[c+8>>2];g=F[c+4>>2];l=F[c>>2];F[e+28>>2]=h;c=F[e+16>>2];h=c-i|0;if(((h?L(h>>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(l>>>0>r>>>0){break e}h=(g|0)==(F[f+12>>2]-1|0)?0:g+1|0;if(h>>>0>=I[f+12>>2]){break e}k=L(b,12);m=k+F[f+132>>2]|0;i=k+F[f+120>>2]|0;f:{g:{n=h<<2;c=F[f>>2]-F[n+F[m>>2]>>2]|0;if(!c){m=0;if(!l){break g}while(1){g=0;a=F[j+16>>2];h:{if((a|0)==F[j+20>>2]){break h}while(1){d=L(g,20)+a|0;c=F[i>>2]+(F[d+4>>2]<<2)|0;k=F[d>>2];h=F[d+12>>2];i:{if(h>>>0>3){break i}b=F[j+12>>2];if(!F[d+16>>2]){c=b;break i}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[d+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[j+12>>2]}a=F[j+28>>2];a=G[k+84|0]?a:F[F[k+68>>2]+(a<<2)>>2];if(a>>>0>=I[k+80>>2]){break h}b=a;a=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[j+16>>2];if(g>>>0<(F[j+20>>2]-a|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((l|0)!=(m|0)){continue}break}break g}j:{k:{l:{m:{if(l>>>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}a=F[f+120>>2];p=b+1|0;m=L(p,12);d=a+m|0;if((d|0)!=(i|0)){Ba(d,F[i>>2],F[i+4>>2]);a=F[f+120>>2]}a=n+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>2];g=32-c|0;n:{if((a|0)<=(g|0)){g=F[f+28>>2];if((g|0)==F[f+20>>2]){d=0;break n}d=F[g>>2];i=a+c|0;F[f+32>>2]=i;d=d<>>32-a|0;if((i|0)!=32){break n}F[f+32>>2]=0;F[f+28>>2]=g+4;break n}d=F[f+28>>2];i=d+4|0;if((i|0)==F[f+20>>2]){d=0;break n}q=F[d>>2];F[f+28>>2]=i;g=a-g|0;F[f+32>>2]=g;d=F[d+4>>2]>>>32-g|q<>>32-a}a=(l>>>1|0)-d|0;d=l-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}g=F[c>>2];l=F[f+92>>2];i=l+1|0;F[f+92>>2]=i;g=g&-2147483648>>>l;p:{if((i|0)==32){F[f+92>>2]=0;F[f+88>>2]=c+4;if(g){break p}break l}if(!g){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];c=a+k|0;l=F[c>>2];i=l+n|0;F[i>>2]=F[i>>2]+1;Ba(a+m|0,l,F[c+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];l=F[e+16>>2]-c|0;if((a|0)==((l?L(l>>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}i=c;c=(a>>>0)/341|0;a=F[i+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;F[a+8>>2]=b;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]=p;F[a+4>>2]=h;F[a>>2]=g;a=F[e+28>>2]+1|0;F[e+28>>2]=a;break f}n=0;if(!l){break g}while(1){if(a){p=F[i>>2];q=F[m>>2];d=F[f+96>>2];t=F[f+108>>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+q>>2]|0;q:{if(!b){break q}c=c+d|0;h=F[f+52>>2];o=32-h|0;if((o|0)>=(b|0)){k=F[f+48>>2];if((k|0)==F[f+40>>2]){F[c>>2]=0;break q}F[c>>2]=F[k>>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]=k+4;break q}k=F[f+48>>2];s=k+4|0;if((s|0)==F[f+40>>2]){F[c>>2]=0;break q}u=F[k>>2];F[f+48>>2]=s;o=b-o|0;F[f+52>>2]=o;F[c>>2]=F[k+4>>2]>>>32-o|u<>>32-b}b=F[g>>2]<<2;c=b+d|0;F[c>>2]=F[c>>2]|F[b+p>>2];a=a+1|0;if(a>>>0>2]){continue}break}}g=0;a=F[j+16>>2];r:{if((a|0)==F[j+20>>2]){break r}while(1){d=L(g,20)+a|0;c=F[f+96>>2]+(F[d+4>>2]<<2)|0;k=F[d>>2];h=F[d+12>>2];s:{if(h>>>0>3){break s}b=F[j+12>>2];if(!F[d+16>>2]){c=b;break s}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[d+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[j+12>>2]}a=F[j+28>>2];a=G[k+84|0]?a:F[F[k+68>>2]+(a<<2)>>2];if(a>>>0>=I[k+80>>2]){break r}b=a;a=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[j+16>>2];if(g>>>0<(F[j+20>>2]-a|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;n=n+1|0;if((l|0)==(n|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()}return d}return j}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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=F[b+12>>2];a:{e=F[b+20>>2];f=F[b+16>>2];d=f+4|0;e=d>>>0<4?e+1|0:e;if((e|0)>(g|0)?1:(e|0)>=(g|0)?d>>>0>I[b+8>>2]:0){break a}e=f+F[b>>2]|0;d=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[a>>2]=d;e=F[b+20>>2];g=e;l=F[b+16>>2];i=l+4|0;e=i>>>0<4?e+1|0:e;F[b+16>>2]=i;F[b+20>>2]=e;if(d>>>0>32){break a}f=F[b+12>>2];e=g;g=l+8|0;e=g>>>0<8?e+1|0:e;if((e|0)>(f|0)?1:(e|0)>=(f|0)?g>>>0>I[b+8>>2]:0){break a}e=i+F[b>>2]|0;f=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[a+4>>2]=f;g=F[b+20>>2];k=F[b+16>>2]+4|0;g=k>>>0<4?g+1|0:g;F[b+16>>2]=k;F[b+20>>2]=g;if(!f){k=1;break a}k=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];k=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+120>>2];g=F[e>>2];if(g){F[e+4>>2]=g;ra(g);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;h=sa(a);F[d+8>>2]=h;b=a+h|0;F[d+16>>2]=b;ua(h,0,a);F[d+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[d+8>>2];b=F[d+12>>2]}F[a+4>>2]=b;F[a>>2]=h;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}while(1){i=F[d+12>>2];e=F[d+24>>2];h=a-1|0;b=e+h|0;c=(b>>>0)/341|0;b=F[i+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;c=F[b+8>>2];g=F[b+4>>2];l=F[b>>2];F[d+28>>2]=h;b=F[d+16>>2];h=b-i|0;if(((h?L(h>>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(l>>>0>p>>>0){e=0;break e}e=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:{i=h<<2;n=b+F[f+132>>2]|0;g=F[f>>2]-F[i+F[n>>2]>>2]|0;if(!g){if(!l){break g}while(1){g=0;a=F[k+16>>2];h:{if((a|0)==F[k+20>>2]){break h}while(1){i=L(g,20)+a|0;c=F[m>>2]+(F[i+4>>2]<<2)|0;j=F[i>>2];h=F[i+12>>2];i:{if(h>>>0>3){break i}b=F[k+12>>2];if(!F[i+16>>2]){c=b;break i}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[i+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[k+12>>2]}a=F[k+28>>2];a=G[j+84|0]?a:F[F[j+68>>2]+(a<<2)>>2];if(a>>>0>=I[j+80>>2]){break h}b=a;a=F[j+40>>2];ta(F[F[j>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[k+16>>2];if(g>>>0<(F[k+20>>2]-a|0)/20>>>0){continue}break}}F[k+28>>2]=F[k+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;e=e+1|0;if((l|0)!=(e|0)){continue}break}break g}j:{k:{l:{m:{if(l>>>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}e=a;a=b+12|0;Ba(e+a|0,F[m>>2],F[m+4>>2]);a=i+F[a+F[f+120>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>2];j=32-e|0;n:{if((a|0)<=(j|0)){g=F[f+28>>2];if((g|0)==F[f+20>>2]){e=0;break n}j=F[g>>2];m=a+e|0;F[f+32>>2]=m;e=j<>>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]){e=0;break n}n=F[g>>2];F[f+28>>2]=m;j=a-j|0;F[f+32>>2]=j;e=F[g+4>>2]>>>32-j|n<>>32-a}j=c+1|0;a=(l>>>1|0)-e|0;e=l-a|0;o:{if((e|0)==(a|0)){e=a;break o}g=F[f+88>>2];if((g|0)==F[f+80>>2]){break l}l=F[g>>2];m=F[f+92>>2];n=m+1|0;F[f+92>>2]=n;l=l&-2147483648>>>m;p:{if((n|0)==32){F[f+92>>2]=0;F[f+88>>2]=g+4;if(l){break p}break l}if(!l){break l}}}g=e;e=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;l=F[b>>2];i=l+i|0;F[i>>2]=F[i>>2]+1;Ba(a+L(j,12)|0,l,F[b+4>>2]);if(e){a=F[d+28>>2]+F[d+24>>2]|0;b=F[d+12>>2];l=F[d+16>>2]-b|0;if((a|0)==((l?L(l>>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}i=b;b=(a>>>0)/341|0;a=F[i+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=h;F[a>>2]=e;F[d+28>>2]=F[d+28>>2]+1}if(!g){break g}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]=j;F[a+4>>2]=h;F[a>>2]=g;a=F[d+28>>2]+1|0;F[d+28>>2]=a;break f}if(!l){break g}while(1){if(a){r=F[m>>2];s=F[n>>2];g=F[f+96>>2];t=F[f+108>>2];a=0;while(1){h=(a<<2)+t|0;F[g+(F[h>>2]<<2)>>2]=0;c=F[h>>2]<<2;b=F[f>>2]-F[c+s>>2]|0;q:{if(!b){break q}c=c+g|0;i=F[f+52>>2];o=32-i|0;if((o|0)>=(b|0)){j=F[f+48>>2];if((j|0)==F[f+40>>2]){F[c>>2]=0;break q}F[c>>2]=F[j>>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]=j+4;break q}j=F[f+48>>2];q=j+4|0;if((q|0)==F[f+40>>2]){F[c>>2]=0;break q}u=F[j>>2];F[f+48>>2]=q;o=b-o|0;F[f+52>>2]=o;F[c>>2]=F[j+4>>2]>>>32-o|u<>>32-b}b=F[h>>2]<<2;c=b+g|0;F[c>>2]=F[c>>2]|F[b+r>>2];a=a+1|0;if(a>>>0>2]){continue}break}}g=0;a=F[k+16>>2];r:{if((a|0)==F[k+20>>2]){break r}while(1){i=L(g,20)+a|0;c=F[f+96>>2]+(F[i+4>>2]<<2)|0;j=F[i>>2];h=F[i+12>>2];s:{if(h>>>0>3){break s}b=F[k+12>>2];if(!F[i+16>>2]){c=b;break s}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[i+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[k+12>>2]}a=F[k+28>>2];a=G[j+84|0]?a:F[F[j+68>>2]+(a<<2)>>2];if(a>>>0>=I[j+80>>2]){break r}b=a;a=F[j+40>>2];ta(F[F[j>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[k+16>>2];if(g>>>0<(F[k+20>>2]-a|0)/20>>>0){continue}break}}F[k+28>>2]=F[k+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;e=e+1|0;if((l|0)==(e|0)){break g}a=F[f+12>>2];continue}}a=F[d+28>>2]}if(a){continue}break}e=1}F[d+28>>2]=0;h=F[d+16>>2];a=F[d+12>>2];b=h-a>>2;if(b>>>0>=3){while(1){ra(F[a>>2]);a=F[d+12>>2]+4|0;F[d+12>>2]=a;h=F[d+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[d+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[d+16>>2];b=F[d+12>>2];if((a|0)==(b|0)){break u}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()}return e}return k}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;g=F[b+12>>2];a:{i=F[b+20>>2];f=F[b+16>>2];j=f+4|0;i=j>>>0<4?i+1|0:i;if((g|0)<(i|0)?1:(g|0)<=(i|0)?j>>>0>I[b+8>>2]:0){break a}j=f+F[b>>2]|0;l=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[a>>2]=l;g=F[b+20>>2];f=g;k=F[b+16>>2];i=k+4|0;g=i>>>0<4?f+1|0:f;F[b+16>>2]=i;F[b+20>>2]=g;if(l>>>0>32){break a}g=F[b+12>>2];j=k+8|0;f=j>>>0<8?f+1|0:f;if((f|0)>(g|0)?1:(f|0)>=(g|0)?j>>>0>I[b+8>>2]: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;g=F[b+20>>2];j=F[b+16>>2]+4|0;g=j>>>0<4?g+1|0:g;d=b;F[d+16>>2]=j;F[d+20>>2]=g;if(!f){d=1;break a}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}t=F[a+4>>2];j=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}g=F[f+628>>2];a=F[g>>2];if(a){F[g+4>>2]=a;ra(a);F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d=F[f+12>>2];c=F[e+8>>2];b=F[e+12>>2]}F[g+4>>2]=b;F[g>>2]=c;F[g+8>>2]=F[e+16>>2];c=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;c=a+h|0;F[e+16>>2]=c;ua(h,0,a);F[e+12>>2]=c}b=F[f+640>>2];a=F[b>>2];if(a){F[b+4>>2]=a;ra(a);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[e+8>>2];c=F[e+12>>2]}F[b+4>>2]=c;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;a=(b>>>0)/341|0;a=F[F[e+12>>2]+(a<<2)>>2]+L(b-L(a,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=t;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){a=F[e+12>>2];i=F[e+24>>2];g=d-1|0;c=i+g|0;b=(c>>>0)/341|0;b=F[a+(b<<2)>>2]+L(c-L(b,341)|0,12)|0;n=F[b+8>>2];c=F[b+4>>2];m=F[b>>2];F[e+28>>2]=g;b=F[e+16>>2];a=b-a|0;if(((a?L(a>>2,341)-1|0:0)-(d+i|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(m>>>0>t>>>0){break e}h=(c|0)==(F[f+12>>2]-1|0)?0:c+1|0;if(h>>>0>=I[f+12>>2]){break e}o=L(n,12);u=o+F[f+640>>2]|0;r=o+F[f+628>>2]|0;f:{g:{p=h<<2;c=F[f>>2]-F[p+F[u>>2]>>2]|0;if(!c){g=0;if(!m){break g}while(1){a=0;d=F[j+16>>2];h:{if((d|0)==F[j+20>>2]){break h}while(1){k=L(a,20)+d|0;b=F[r>>2]+(F[k+4>>2]<<2)|0;i=F[k>>2];h=F[k+12>>2];i:{if(h>>>0>3){break i}c=F[j+12>>2];if(!F[k+16>>2]){b=c;break i}d=0;while(1){c=ta(c,(d<<2)+b|0,h);h=F[k+12>>2];c=c+h|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[j+12>>2]}d=F[j+28>>2];d=G[i+84|0]?d:F[F[i+68>>2]+(d<<2)>>2];if(d>>>0>=I[i+80>>2]){break h}c=F[i+40>>2];ta(F[F[i>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[j+16>>2];if(a>>>0<(F[j+20>>2]-d|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break g}j:{k:{l:{if(m>>>0<=2){a=F[f+616>>2];F[a>>2]=h;c=1;d=F[f+12>>2];if(d>>>0>1){break l}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];k=n+1|0;l=L(k,12);b=a+l|0;if((b|0)!=(r|0)){Ba(b,F[r>>2],F[r+4>>2]);a=F[f+628>>2]}a=p+F[a+l>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=h;c=c+1|0;d=F[f+12>>2];if(c>>>0>>0){continue}break}break j}m:{n:{a=(m>>>1|0)-c|0;d=m-a|0;o:{if((d|0)==(a|0)){b=a;break o}i=F[f+596>>2];if((i|0)==F[f+588>>2]){break n}g=F[i>>2];c=F[f+600>>2];b=c+1|0;F[f+600>>2]=b;c=g&-2147483648>>>c;p:{if((b|0)==32){F[f+600>>2]=0;F[f+596>>2]=i+4;if(c){break p}break n}if(!c){break n}}b=d}d=a;break m}b=a}i=F[f+640>>2];g=i+o|0;c=F[g>>2];a=c+p|0;F[a>>2]=F[a>>2]+1;Ba(i+l|0,c,F[g+4>>2]);if(d){c=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];g=F[e+16>>2]-a|0;if((c|0)==((g?L(g>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+24>>2]+F[e+28>>2]|0;g=F[e+12>>2]}else{g=a}a=(c>>>0)/341|0;a=F[g+(a<<2)>>2]+L(c-L(a,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=h;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]=k;F[a+4>>2]=h;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}n=0;if(!m){break g}while(1){if(d){k=F[r>>2];i=F[u>>2];h=F[f+604>>2];g=F[f+616>>2];d=0;while(1){o=(d<<2)+g|0;F[h+(F[o>>2]<<2)>>2]=0;a=F[o>>2]<<2;q=F[f>>2]-F[a+i>>2]|0;q:{if(!q){break q}s=a+h|0;p=F[f+560>>2];c=32-p|0;if((c|0)>=(q|0)){b=F[f+556>>2];if((b|0)==F[f+548>>2]){F[s>>2]=0;break q}F[s>>2]=F[b>>2]<

>>32-q;a=q+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break q}F[f+560>>2]=0;F[f+556>>2]=b+4;break q}l=F[f+556>>2];a=l+4|0;if((a|0)==F[f+548>>2]){F[s>>2]=0;break q}b=F[l>>2];F[f+556>>2]=a;a=q-c|0;F[f+560>>2]=a;F[s>>2]=F[l+4>>2]>>>32-a|b<

>>32-q}b=F[o>>2]<<2;a=b+h|0;F[a>>2]=F[a>>2]|F[b+k>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=0;d=F[j+16>>2];r:{if((d|0)==F[j+20>>2]){break r}while(1){i=L(a,20)+d|0;b=F[f+604>>2]+(F[i+4>>2]<<2)|0;g=F[i>>2];h=F[i+12>>2];s:{if(h>>>0>3){break s}c=F[j+12>>2];if(!F[i+16>>2]){b=c;break s}d=0;while(1){c=ta(c,(d<<2)+b|0,h);h=F[i+12>>2];c=c+h|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[j+12>>2]}d=F[j+28>>2];d=G[g+84|0]?d:F[F[g+68>>2]+(d<<2)>>2];if(d>>>0>=I[g+80>>2]){break r}c=F[g+40>>2];ta(F[F[g>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[j+16>>2];if(a>>>0<(F[j+20>>2]-d|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;n=n+1|0;if((m|0)==(n|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;h=F[e+16>>2];d=F[e+12>>2];c=h-d>>2;if(c>>>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];c=h-d>>2;if(c>>>0>2){continue}break}}a=170;t:{switch(c-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break t}}u:{if((d|0)==(h|0)){break u}while(1){ra(F[d>>2]);d=d+4|0;if((h|0)!=(d|0)){continue}break}c=F[e+16>>2];a=F[e+12>>2];if((c|0)==(a|0)){break u}F[e+16>>2]=c+(((c-a|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}return b}return d}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;f=F[b+12>>2];a:{i=F[b+20>>2];j=F[b+16>>2];g=j+4|0;i=g>>>0<4?i+1|0:i;if((f|0)<(i|0)?1:(f|0)<=(i|0)?g>>>0>I[b+8>>2]:0){break a}g=j+F[b>>2]|0;m=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[a>>2]=m;f=F[b+20>>2];j=f;k=F[b+16>>2];i=k+4|0;f=i>>>0<4?f+1|0:f;F[b+16>>2]=i;F[b+20>>2]=f;if(m>>>0>32){break a}f=F[b+12>>2];g=k+8|0;j=g>>>0<8?j+1|0:j;if((f|0)<(j|0)?1:(f|0)<=(j|0)?g>>>0>I[b+8>>2]:0){break a}g=i+F[b>>2]|0;j=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[a+4>>2]=j;f=F[b+20>>2];d=F[b+16>>2]+4|0;f=d>>>0<4?f+1|0:f;F[b+16>>2]=d;F[b+20>>2]=f;if(!j){d=1;break a}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}t=F[a+4>>2];j=c;b=0;c=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;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}g=F[f+628>>2];a=F[g>>2];if(a){F[g+4>>2]=a;ra(a);F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d=F[f+12>>2];c=F[e+12>>2];b=F[e+8>>2]}F[g+4>>2]=c;F[g>>2]=b;F[g+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}c=F[f+640>>2];a=F[c>>2];if(a){F[c+4>>2]=a;ra(a);F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;h=F[e+8>>2];b=F[e+12>>2]}F[c+4>>2]=b;F[c>>2]=h;F[c+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;a=(b>>>0)/341|0;a=F[F[e+12>>2]+(a<<2)>>2]+L(b-L(a,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=t;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){a=F[e+12>>2];i=F[e+24>>2];g=d-1|0;c=i+g|0;b=(c>>>0)/341|0;b=F[a+(b<<2)>>2]+L(c-L(b,341)|0,12)|0;o=F[b+8>>2];k=F[b+4>>2];l=F[b>>2];F[e+28>>2]=g;b=F[e+16>>2];a=b-a|0;if(((a?L(a>>2,341)-1|0:0)-(d+i|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(l>>>0>t>>>0){c=0;break e}c=0;a=F[f+12>>2];h=(k|0)==(a-1|0)?0:k+1|0;if(h>>>0>=a>>>0){break e}a=F[f+628>>2];n=L(o,12);q=a+n|0;f:{g:{m=h<<2;u=n+F[f+640>>2]|0;b=F[f>>2]-F[m+F[u>>2]>>2]|0;if(!b){a=0;if(!l){break g}while(1){g=0;d=F[j+16>>2];h:{if((d|0)==F[j+20>>2]){break h}while(1){k=L(g,20)+d|0;c=F[q>>2]+(F[k+4>>2]<<2)|0;i=F[k>>2];h=F[k+12>>2];i:{if(h>>>0>3){break i}b=F[j+12>>2];if(!F[k+16>>2]){c=b;break i}d=0;while(1){b=ta(b,(d<<2)+c|0,h);h=F[k+12>>2];b=b+h|0;d=d+1|0;if(d>>>0>2]){continue}break}c=F[j+12>>2]}d=F[j+28>>2];d=G[i+84|0]?d:F[F[i+68>>2]+(d<<2)>>2];if(d>>>0>=I[i+80>>2]){break h}b=F[i+40>>2];ta(F[F[i>>2]>>2]+L(b,d)|0,c,b);g=g+1|0;d=F[j+16>>2];if(g>>>0<(F[j+20>>2]-d|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;a=a+1|0;if((l|0)!=(a|0)){continue}break}break g}j:{k:{l:{if(l>>>0<=2){a=F[f+616>>2];F[a>>2]=h;b=1;d=F[f+12>>2];if(d>>>0>1){break l}break j}if(I[f+8>>2]>I[f+4>>2]){break e}c=a;a=n+12|0;Ba(c+a|0,F[q>>2],F[q+4>>2]);a=m+F[a+F[f+628>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=h;b=b+1|0;d=F[f+12>>2];if(b>>>0>>0){continue}break}break j}k=o+1|0;m:{n:{b=(l>>>1|0)-b|0;d=l-b|0;o:{if((d|0)==(b|0)){g=b;break o}i=F[f+596>>2];if((i|0)==F[f+588>>2]){break n}g=F[i>>2];c=F[f+600>>2];a=c+1|0;F[f+600>>2]=a;c=g&-2147483648>>>c;p:{if((a|0)==32){F[f+600>>2]=0;F[f+596>>2]=i+4;if(c){break p}break n}if(!c){break n}}g=d}d=b;break m}g=b}i=F[f+640>>2];c=i+n|0;b=F[c>>2];a=b+m|0;F[a>>2]=F[a>>2]+1;Ba(i+L(k,12)|0,b,F[c+4>>2]);if(d){b=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];c=F[e+16>>2]-a|0;if((b|0)==((c?L(c>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;c=F[e+12>>2]}else{c=a}a=(b>>>0)/341|0;a=F[c+(a<<2)>>2]+L(b-L(a,341)|0,12)|0;F[a+8>>2]=o;F[a+4>>2]=h;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!g){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]=k;F[a+4>>2]=h;F[a>>2]=g;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}a=0;if(!l){break g}while(1){if(d){m=F[q>>2];k=F[u>>2];s=F[f+604>>2];i=F[f+616>>2];d=0;while(1){h=(d<<2)+i|0;F[s+(F[h>>2]<<2)>>2]=0;b=F[h>>2]<<2;p=F[f>>2]-F[b+k>>2]|0;q:{if(!p){break q}r=b+s|0;o=F[f+560>>2];g=32-o|0;if((g|0)>=(p|0)){c=F[f+556>>2];if((c|0)==F[f+548>>2]){F[r>>2]=0;break q}F[r>>2]=F[c>>2]<>>32-p;b=p+F[f+560>>2]|0;F[f+560>>2]=b;if((b|0)!=32){break q}F[f+560>>2]=0;F[f+556>>2]=c+4;break q}n=F[f+556>>2];b=n+4|0;if((b|0)==F[f+548>>2]){F[r>>2]=0;break q}c=F[n>>2];F[f+556>>2]=b;b=p-g|0;F[f+560>>2]=b;F[r>>2]=F[n+4>>2]>>>32-b|c<>>32-p}c=F[h>>2]<<2;b=c+s|0;F[b>>2]=F[b>>2]|F[c+m>>2];d=d+1|0;if(d>>>0>2]){continue}break}}g=0;d=F[j+16>>2];r:{if((d|0)==F[j+20>>2]){break r}while(1){k=L(g,20)+d|0;c=F[f+604>>2]+(F[k+4>>2]<<2)|0;i=F[k>>2];h=F[k+12>>2];s:{if(h>>>0>3){break s}b=F[j+12>>2];if(!F[k+16>>2]){c=b;break s}d=0;while(1){b=ta(b,(d<<2)+c|0,h);h=F[k+12>>2];b=b+h|0;d=d+1|0;if(d>>>0>2]){continue}break}c=F[j+12>>2]}d=F[j+28>>2];d=G[i+84|0]?d:F[F[i+68>>2]+(d<<2)>>2];if(d>>>0>=I[i+80>>2]){break r}b=F[i+40>>2];ta(F[F[i>>2]>>2]+L(b,d)|0,c,b);g=g+1|0;d=F[j+16>>2];if(g>>>0<(F[j+20>>2]-d|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;a=a+1|0;if((l|0)==(a|0)){break g}d=F[f+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;t:{switch(b-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break t}}u:{if((d|0)==(h|0)){break u}while(1){ra(F[d>>2]);d=d+4|0;if((h|0)!=(d|0)){continue}break}b=F[e+16>>2];a=F[e+12>>2];if((b|0)==(a|0)){break u}F[e+16>>2]=b+(((b-a|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}return c}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;g=F[b+12>>2];a:{i=F[b+20>>2];f=F[b+16>>2];j=f+4|0;i=j>>>0<4?i+1|0:i;if((g|0)<(i|0)?1:(g|0)<=(i|0)?j>>>0>I[b+8>>2]:0){break a}j=f+F[b>>2]|0;l=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[a>>2]=l;g=F[b+20>>2];f=g;k=F[b+16>>2];i=k+4|0;g=i>>>0<4?f+1|0:f;F[b+16>>2]=i;F[b+20>>2]=g;if(l>>>0>32){break a}g=F[b+12>>2];j=k+8|0;f=j>>>0<8?f+1|0:f;if((f|0)>(g|0)?1:(f|0)>=(g|0)?j>>>0>I[b+8>>2]: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;g=F[b+20>>2];j=F[b+16>>2]+4|0;g=j>>>0<4?g+1|0:g;d=b;F[d+16>>2]=j;F[d+20>>2]=g;if(!f){d=1;break a}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}u=F[a+4>>2];j=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}g=F[f+628>>2];a=F[g>>2];if(a){F[g+4>>2]=a;ra(a);F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d=F[f+12>>2];c=F[e+8>>2];b=F[e+12>>2]}F[g+4>>2]=b;F[g>>2]=c;F[g+8>>2]=F[e+16>>2];c=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;c=a+h|0;F[e+16>>2]=c;ua(h,0,a);F[e+12>>2]=c}b=F[f+640>>2];a=F[b>>2];if(a){F[b+4>>2]=a;ra(a);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[e+8>>2];c=F[e+12>>2]}F[b+4>>2]=c;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;a=(b>>>0)/341|0;a=F[F[e+12>>2]+(a<<2)>>2]+L(b-L(a,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=u;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){c=F[e+12>>2];i=F[e+24>>2];g=d-1|0;b=i+g|0;a=(b>>>0)/341|0;a=F[c+(a<<2)>>2]+L(b-L(a,341)|0,12)|0;n=F[a+8>>2];m=F[a>>2];F[e+28>>2]=g;b=F[e+16>>2];a=b-c|0;if(((a?L(a>>2,341)-1|0:0)-(d+i|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(m>>>0>u>>>0){break e}a=F[f+628>>2];o=L(n,12);t=o+F[f+640>>2]|0;h=Td(f,m,t);if(h>>>0>=I[f+12>>2]){break e}r=a+o|0;f:{g:{p=h<<2;c=F[f>>2]-F[p+F[t>>2]>>2]|0;if(!c){g=0;if(!m){break g}while(1){a=0;d=F[j+16>>2];h:{if((d|0)==F[j+20>>2]){break h}while(1){k=L(a,20)+d|0;b=F[r>>2]+(F[k+4>>2]<<2)|0;i=F[k>>2];h=F[k+12>>2];i:{if(h>>>0>3){break i}c=F[j+12>>2];if(!F[k+16>>2]){b=c;break i}d=0;while(1){c=ta(c,(d<<2)+b|0,h);h=F[k+12>>2];c=c+h|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[j+12>>2]}d=F[j+28>>2];d=G[i+84|0]?d:F[F[i+68>>2]+(d<<2)>>2];if(d>>>0>=I[i+80>>2]){break h}c=F[i+40>>2];ta(F[F[i>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[j+16>>2];if(a>>>0<(F[j+20>>2]-d|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break g}j:{k:{l:{if(m>>>0<=2){a=F[f+616>>2];F[a>>2]=h;c=1;d=F[f+12>>2];if(d>>>0>1){break l}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];k=n+1|0;l=L(k,12);b=a+l|0;if((b|0)!=(r|0)){Ba(b,F[r>>2],F[r+4>>2]);a=F[f+628>>2]}a=p+F[a+l>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=h;c=c+1|0;d=F[f+12>>2];if(c>>>0>>0){continue}break}break j}m:{n:{a=(m>>>1|0)-c|0;d=m-a|0;o:{if((d|0)==(a|0)){b=a;break o}i=F[f+596>>2];if((i|0)==F[f+588>>2]){break n}g=F[i>>2];c=F[f+600>>2];b=c+1|0;F[f+600>>2]=b;c=g&-2147483648>>>c;p:{if((b|0)==32){F[f+600>>2]=0;F[f+596>>2]=i+4;if(c){break p}break n}if(!c){break n}}b=d}d=a;break m}b=a}i=F[f+640>>2];g=i+o|0;c=F[g>>2];a=c+p|0;F[a>>2]=F[a>>2]+1;Ba(i+l|0,c,F[g+4>>2]);if(d){c=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];g=F[e+16>>2]-a|0;if((c|0)==((g?L(g>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+24>>2]+F[e+28>>2]|0;g=F[e+12>>2]}else{g=a}a=(c>>>0)/341|0;a=F[g+(a<<2)>>2]+L(c-L(a,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=h;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]=k;F[a+4>>2]=h;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}n=0;if(!m){break g}while(1){if(d){k=F[r>>2];i=F[t>>2];h=F[f+604>>2];g=F[f+616>>2];d=0;while(1){o=(d<<2)+g|0;F[h+(F[o>>2]<<2)>>2]=0;a=F[o>>2]<<2;q=F[f>>2]-F[a+i>>2]|0;q:{if(!q){break q}s=a+h|0;p=F[f+560>>2];c=32-p|0;if((c|0)>=(q|0)){b=F[f+556>>2];if((b|0)==F[f+548>>2]){F[s>>2]=0;break q}F[s>>2]=F[b>>2]<

>>32-q;a=q+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break q}F[f+560>>2]=0;F[f+556>>2]=b+4;break q}l=F[f+556>>2];a=l+4|0;if((a|0)==F[f+548>>2]){F[s>>2]=0;break q}b=F[l>>2];F[f+556>>2]=a;a=q-c|0;F[f+560>>2]=a;F[s>>2]=F[l+4>>2]>>>32-a|b<

>>32-q}b=F[o>>2]<<2;a=b+h|0;F[a>>2]=F[a>>2]|F[b+k>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=0;d=F[j+16>>2];r:{if((d|0)==F[j+20>>2]){break r}while(1){i=L(a,20)+d|0;b=F[f+604>>2]+(F[i+4>>2]<<2)|0;g=F[i>>2];h=F[i+12>>2];s:{if(h>>>0>3){break s}c=F[j+12>>2];if(!F[i+16>>2]){b=c;break s}d=0;while(1){c=ta(c,(d<<2)+b|0,h);h=F[i+12>>2];c=c+h|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[j+12>>2]}d=F[j+28>>2];d=G[g+84|0]?d:F[F[g+68>>2]+(d<<2)>>2];if(d>>>0>=I[g+80>>2]){break r}c=F[g+40>>2];ta(F[F[g>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[j+16>>2];if(a>>>0<(F[j+20>>2]-d|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;n=n+1|0;if((m|0)==(n|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;h=F[e+16>>2];d=F[e+12>>2];c=h-d>>2;if(c>>>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];c=h-d>>2;if(c>>>0>2){continue}break}}a=170;t:{switch(c-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break t}}u:{if((d|0)==(h|0)){break u}while(1){ra(F[d>>2]);d=d+4|0;if((h|0)!=(d|0)){continue}break}c=F[e+16>>2];a=F[e+12>>2];if((c|0)==(a|0)){break u}F[e+16>>2]=c+(((c-a|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}return b}return d} +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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=F[b+12>>2];a:{e=F[b+20>>2];f=F[b+16>>2];d=f+4|0;e=d>>>0<4?e+1|0:e;if((e|0)>(g|0)?1:(e|0)>=(g|0)?d>>>0>I[b+8>>2]:0){break a}e=f+F[b>>2]|0;d=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[a>>2]=d;e=F[b+20>>2];g=e;i=F[b+16>>2];l=i+4|0;e=l>>>0<4?e+1|0:e;F[b+16>>2]=l;F[b+20>>2]=e;if(d>>>0>32){break a}f=F[b+12>>2];e=g;g=i+8|0;e=g>>>0<8?e+1|0:e;if((e|0)>(f|0)?1:(e|0)>=(f|0)?g>>>0>I[b+8>>2]:0){break a}e=l+F[b>>2]|0;f=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[a+4>>2]=f;g=F[b+20>>2];j=F[b+16>>2]+4|0;g=j>>>0<4?g+1|0:g;F[b+16>>2]=j;F[b+20>>2]=g;if(!f){j=1;break a}j=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];j=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];g=F[e>>2];if(g){F[e+4>>2]=g;ra(g);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;h=sa(a);F[d+8>>2]=h;b=a+h|0;F[d+16>>2]=b;ua(h,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;h=F[d+8>>2];b=F[d+12>>2]}F[a+4>>2]=b;F[a>>2]=h;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]=q;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){l=F[d+12>>2];e=F[d+24>>2];h=a-1|0;b=e+h|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];g=F[c+4>>2];i=F[c>>2];F[d+28>>2]=h;c=F[d+16>>2];h=c-l|0;if(((h?L(h>>2,341)-1|0:0)-(a+e|0)|0)+1>>>0>=682){ra(F[c-4>>2]);F[d+16>>2]=F[d+16>>2]-4}e=0;if(i>>>0>q>>>0){break e}h=(g|0)==(F[f+12>>2]-1|0)?0:g+1|0;if(h>>>0>=I[f+12>>2]){break e}c=L(b,12);m=c+F[f+128>>2]|0;l=c+F[f+116>>2]|0;f:{k=h<<2;g=F[f>>2]-F[k+F[m>>2]>>2]|0;if(!g){m=0;if(!i){break f}while(1){g=0;a=F[j+16>>2];g:{if((a|0)==F[j+20>>2]){break g}while(1){e=L(g,20)+a|0;c=F[l>>2]+(F[e+4>>2]<<2)|0;k=F[e>>2];h=F[e+12>>2];h:{if(h>>>0>3){break h}b=F[j+12>>2];if(!F[e+16>>2]){c=b;break h}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[e+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[j+12>>2]}a=F[j+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);g=g+1|0;a=F[j+16>>2];if(g>>>0<(F[j+20>>2]-a|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((i|0)!=(m|0)){continue}break}break f}i:{j:{k:{l:{if(i>>>0<=2){c=F[f+104>>2];F[c>>2]=h;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];n=b+1|0;m=L(n,12);e=a+m|0;if((e|0)!=(l|0)){Ba(e,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(i)^31,d+4|0);a=(i>>>1|0)-F[d+4>>2]|0;e=i-a|0;m:{if((e|0)==(a|0)){e=a;break m}g=F[f+84>>2];if((g|0)==F[f+76>>2]){break k}i=F[g>>2];l=F[f+88>>2];p=l+1|0;F[f+88>>2]=p;i=i&-2147483648>>>l;n:{if((p|0)==32){F[f+88>>2]=0;F[f+84>>2]=g+4;if(i){break n}break k}if(!i){break k}}}g=e;e=a;break j}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 i}g=a}a=F[f+128>>2];c=a+c|0;i=F[c>>2];l=i+k|0;F[l>>2]=F[l>>2]+1;Ba(a+m|0,i,F[c+4>>2]);if(e){a=F[d+28>>2]+F[d+24>>2]|0;c=F[d+12>>2];i=F[d+16>>2]-c|0;if((a|0)==((i?L(i>>2,341)-1|0:0)|0)){za(d+8|0);c=F[d+12>>2];a=F[d+24>>2]+F[d+28>>2]|0}i=c;c=(a>>>0)/341|0;a=F[i+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;F[a+8>>2]=b;F[a+4>>2]=h;F[a>>2]=e;F[d+28>>2]=F[d+28>>2]+1}if(!g){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]=n;F[a+4>>2]=h;F[a>>2]=g;F[d+28>>2]=F[d+28>>2]+1;break f}n=0;if(!i){break f}while(1){if(a){p=F[l>>2];t=F[m>>2];e=F[f+92>>2];u=F[f+104>>2];a=0;while(1){g=(a<<2)+u|0;F[e+(F[g>>2]<<2)>>2]=0;c=F[g>>2]<<2;b=F[f>>2]-F[c+t>>2]|0;o:{if(!b){break o}c=c+e|0;h=F[f+48>>2];o=32-h|0;if((o|0)>=(b|0)){k=F[f+44>>2];if((k|0)==F[f+36>>2]){F[c>>2]=0;break o}F[c>>2]=F[k>>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]=k+4;break o}k=F[f+44>>2];r=k+4|0;if((r|0)==F[f+36>>2]){F[c>>2]=0;break o}v=F[k>>2];F[f+44>>2]=r;o=b-o|0;F[f+48>>2]=o;F[c>>2]=F[k+4>>2]>>>32-o|v<>>32-b}b=F[g>>2]<<2;c=b+e|0;F[c>>2]=F[c>>2]|F[b+p>>2];a=a+1|0;if(a>>>0>2]){continue}break}}g=0;a=F[j+16>>2];p:{if((a|0)==F[j+20>>2]){break p}while(1){e=L(g,20)+a|0;c=F[f+92>>2]+(F[e+4>>2]<<2)|0;k=F[e>>2];h=F[e+12>>2];q:{if(h>>>0>3){break q}b=F[j+12>>2];if(!F[e+16>>2]){c=b;break q}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[e+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[j+12>>2]}a=F[j+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);g=g+1|0;a=F[j+16>>2];if(g>>>0<(F[j+20>>2]-a|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;n=n+1|0;if((i|0)==(n|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;h=F[d+16>>2];a=F[d+12>>2];b=h-a>>2;if(b>>>0>=3){while(1){ra(F[a>>2]);a=F[d+12>>2]+4|0;F[d+12>>2]=a;h=F[d+16>>2];b=h-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)==(h|0)){break s}while(1){ra(F[a>>2]);a=a+4|0;if((h|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()}return e}return j}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;g=F[b+12>>2];a:{e=F[b+20>>2];f=F[b+16>>2];d=f+4|0;e=d>>>0<4?e+1|0:e;if((e|0)>(g|0)?1:(e|0)>=(g|0)?d>>>0>I[b+8>>2]:0){break a}e=f+F[b>>2]|0;d=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[a>>2]=d;e=F[b+20>>2];g=e;k=F[b+16>>2];i=k+4|0;e=i>>>0<4?e+1|0:e;F[b+16>>2]=i;F[b+20>>2]=e;if(d>>>0>32){break a}f=F[b+12>>2];e=g;g=k+8|0;e=g>>>0<8?e+1|0:e;if((e|0)>(f|0)?1:(e|0)>=(f|0)?g>>>0>I[b+8>>2]:0){break a}e=i+F[b>>2]|0;f=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[a+4>>2]=f;g=F[b+20>>2];j=F[b+16>>2]+4|0;g=j>>>0<4?g+1|0:g;F[b+16>>2]=j;F[b+20>>2]=g;if(!f){j=1;break a}j=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];j=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];g=F[e>>2];if(g){F[e+4>>2]=g;ra(g);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;h=sa(a);F[d+8>>2]=h;b=a+h|0;F[d+16>>2]=b;ua(h,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;h=F[d+8>>2];b=F[d+12>>2]}F[a+4>>2]=b;F[a>>2]=h;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}r=f+16|0;while(1){i=F[d+12>>2];e=F[d+24>>2];h=a-1|0;b=e+h|0;c=(b>>>0)/341|0;b=F[i+(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[d+28>>2]=h;b=F[d+16>>2];h=b-i|0;if(((h?L(h>>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];h=(g|0)==(a-1|0)?0:g+1|0;if(h>>>0>=a>>>0){break e}a=F[f+116>>2];b=L(c,12);m=a+b|0;f:{i=h<<2;n=b+F[f+128>>2]|0;g=F[f>>2]-F[i+F[n>>2]>>2]|0;if(!g){if(!k){break f}while(1){g=0;a=F[j+16>>2];g:{if((a|0)==F[j+20>>2]){break g}while(1){i=L(g,20)+a|0;c=F[m>>2]+(F[i+4>>2]<<2)|0;l=F[i>>2];h=F[i+12>>2];h:{if(h>>>0>3){break h}b=F[j+12>>2];if(!F[i+16>>2]){c=b;break h}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[i+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[j+12>>2]}a=F[j+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);g=g+1|0;a=F[j+16>>2];if(g>>>0<(F[j+20>>2]-a|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;e=e+1|0;if((k|0)!=(e|0)){continue}break}break f}i:{j:{k:{l:{if(k>>>0<=2){c=F[f+104>>2];F[c>>2]=h;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;Ba(e+a|0,F[m>>2],F[m+4>>2]);a=i+F[a+F[f+116>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=0;qc(r,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}g=F[f+84>>2];if((g|0)==F[f+76>>2]){break k}k=F[g>>2];m=F[f+88>>2];n=m+1|0;F[f+88>>2]=n;k=k&-2147483648>>>m;n:{if((n|0)==32){F[f+88>>2]=0;F[f+84>>2]=g+4;if(k){break n}break k}if(!k){break k}}}g=e;e=a;break j}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 i}g=a}a=F[f+128>>2];b=a+b|0;k=F[b>>2];i=k+i|0;F[i>>2]=F[i>>2]+1;Ba(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}i=b;b=(a>>>0)/341|0;a=F[i+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=h;F[a>>2]=e;F[d+28>>2]=F[d+28>>2]+1}if(!g){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]=h;F[a>>2]=g;F[d+28>>2]=F[d+28>>2]+1;break f}if(!k){break f}while(1){if(a){s=F[m>>2];t=F[n>>2];g=F[f+92>>2];u=F[f+104>>2];a=0;while(1){h=(a<<2)+u|0;F[g+(F[h>>2]<<2)>>2]=0;c=F[h>>2]<<2;b=F[f>>2]-F[c+t>>2]|0;o:{if(!b){break o}c=c+g|0;i=F[f+48>>2];o=32-i|0;if((o|0)>=(b|0)){l=F[f+44>>2];if((l|0)==F[f+36>>2]){F[c>>2]=0;break o}F[c>>2]=F[l>>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]=l+4;break o}l=F[f+44>>2];q=l+4|0;if((q|0)==F[f+36>>2]){F[c>>2]=0;break o}v=F[l>>2];F[f+44>>2]=q;o=b-o|0;F[f+48>>2]=o;F[c>>2]=F[l+4>>2]>>>32-o|v<>>32-b}b=F[h>>2]<<2;c=b+g|0;F[c>>2]=F[c>>2]|F[b+s>>2];a=a+1|0;if(a>>>0>2]){continue}break}}g=0;a=F[j+16>>2];p:{if((a|0)==F[j+20>>2]){break p}while(1){i=L(g,20)+a|0;c=F[f+92>>2]+(F[i+4>>2]<<2)|0;l=F[i>>2];h=F[i+12>>2];q:{if(h>>>0>3){break q}b=F[j+12>>2];if(!F[i+16>>2]){c=b;break q}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[i+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[j+12>>2]}a=F[j+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);g=g+1|0;a=F[j+16>>2];if(g>>>0<(F[j+20>>2]-a|0)/20>>>0){continue}break}}F[j+28>>2]=F[j+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;h=F[d+16>>2];a=F[d+12>>2];b=h-a>>2;if(b>>>0>=3){while(1){ra(F[a>>2]);a=F[d+12>>2]+4|0;F[d+12>>2]=a;h=F[d+16>>2];b=h-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)==(h|0)){break s}while(1){ra(F[a>>2]);a=a+4|0;if((h|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()}return e}return j}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,E=0,G=0,H=0,I=0;g=ea+-64|0;ea=g;F[a+8>>2]=e;f=a+32|0;m=F[f>>2];d=F[a+36>>2]-m>>2;a:{if(d>>>0>>0){Ia(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=m+(e<<2)}F[g+56>>2]=0;F[g+60>>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>>2]=0;f=0;if(e){Oa(g+16|0,e,g);h=F[g+28>>2];f=F[g+32>>2]}F[g>>2]=0;d=f-h>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}F[g+32>>2]=(e<<2)+h;break b}Oa(g+16|12,e-d|0,g)}F[g>>2]=0;f=F[g+40>>2];d=F[g+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[g+44>>2]=f+(e<<2);break c}Oa(g+40|0,e-d|0,g)}F[g>>2]=0;f=F[g+52>>2];d=F[g+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[g+56>>2]=f+(e<<2);break d}Oa(g+52|0,e-d|0,g)}h=0;e:{if(F[a+8>>2]<=0){break e}m=F[g+16>>2];while(1){d=h<<2;f=F[d+m>>2];i=F[a+16>>2];f:{if((f|0)>(i|0)){j=F[a+32>>2];F[d+j>>2]=i;break f}j=F[a+32>>2];d=d+j|0;i=F[a+12>>2];if((i|0)>(f|0)){F[d>>2]=i;break f}F[d>>2]=f}h=h+1|0;d=F[a+8>>2];if((h|0)<(d|0)){continue}break}if((d|0)<1){break e}f=0;while(1){m=f<<2;d=m+c|0;m=F[b+m>>2]+F[j+m>>2]|0;F[d>>2]=m;g:{if((m|0)>F[a+16>>2]){k=m-F[a+20>>2]|0}else{if((m|0)>=F[a+12>>2]){break g}k=m+F[a+20>>2]|0}F[d>>2]=k}f=f+1|0;if((f|0)>2]){continue}break}}C=F[a+52>>2];s=F[a+48>>2];x=sa(16);d=x;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;w=sa(d);F[g>>2]=w;f=d+w|0;F[g+8>>2]=f;ua(w,0,d);F[g+4>>2]=f}o=1;d=F[a+56>>2];A=F[d>>2];d=F[d+4>>2]-A|0;i:{if((d|0)<5){break i}d=d>>>2|0;D=d>>>0>2?d:2;E=d>>>0>1?d:1;m=e&-2;B=e&1;G=e&-4;H=e&3;y=e-1|0;I=e<<2;p=1;while(1){j:{k:{l:{m:{if((p|0)!=(E|0)){k=F[(p<<2)+A>>2];d=(k>>>0)%3|0;n:{o:{if((k|0)==-1){break o}l=k+(d?-1:2)|0;z=l>>>5|0;n=1<>2];j=1;i=0;f=k;p:{while(1){q:{if(F[u+(f>>>3&536870908)>>2]>>>f&1){break q}d=F[F[F[s+64>>2]+12>>2]+(f<<2)>>2];if((d|0)==-1){break q}o=F[C>>2];h=F[s+28>>2];t=F[o+(F[h+(d<<2)>>2]<<2)>>2];if((t|0)>=(p|0)){break q}q=d+1|0;r=F[o+(F[h+(((q>>>0)%3|0?q:d-2|0)<<2)>>2]<<2)>>2];if((r|0)>=(p|0)){break q}d=F[o+(F[h+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(p|0)){break q}r:{if((e|0)<1){break r}o=F[(g+16|0)+L(i,12)>>2];q=L(d,e);r=L(e,r);t=L(e,t);h=0;d=m;if(y){while(1){F[o+(h<<2)>>2]=(F[(h+q<<2)+c>>2]+F[(h+r<<2)+c>>2]|0)-F[(h+t<<2)+c>>2];v=h|1;F[o+(v<<2)>>2]=(F[(q+v<<2)+c>>2]+F[(r+v<<2)+c>>2]|0)-F[(t+v<<2)+c>>2];h=h+2|0;d=d-2|0;if(d){continue}break}}if(!B){break r}F[o+(h<<2)>>2]=(F[(h+q<<2)+c>>2]+F[(h+r<<2)+c>>2]|0)-F[(h+t<<2)+c>>2]}d=4;i=i+1|0;if((i|0)==4){break p}}s:{if(j&1){h=-1;d=f+1|0;d=(d>>>0)%3|0?d:f-2|0;if((d|0)==-1|F[F[s>>2]+(d>>>3&536870908)>>2]>>>d&1){break s}d=F[F[F[s+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break s}f=d+1|0;h=(f>>>0)%3|0?f:d-2|0;break s}h=-1;d=((f>>>0)%3|0?-1:2)+f|0;if((d|0)==-1|F[F[s>>2]+(d>>>3&536870908)>>2]>>>d&1){break s}d=F[F[F[s+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break s}if((d>>>0)%3|0){h=d-1|0;break s}h=d+2|0}t:{if((h|0)==(k|0)){break t}d=(h|0)==-1&j;f=d?-1:h;j=d^j;if(!(!d|(l|0)==-1)){if(n&F[F[s>>2]+(z<<2)>>2]){break t}d=F[F[F[s+64>>2]+12>>2]+(l<<2)>>2];if((d|0)==-1){break t}j=0;f=(d>>>0)%3|0?d-1|0:d+2|0}if((f|0)!=-1){continue}}break}d=i;if((d|0)<1){break o}}r=(e|0)<1;if(!r){ua(F[g>>2],0,I)}f=d-1|0;t=(f<<2)+x|0;f=L(f,12)+a|0;v=f;z=F[f- -64>>2];o=0;q=0;i=0;while(1){f=F[t>>2];F[t>>2]=f+1;if(f>>>0>=z>>>0){break i}u:{if(F[F[v+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break u}i=i+1|0;if(r){break u}k=F[g>>2];l=F[(g+16|0)+L(q,12)>>2];h=0;f=G;if(y>>>0>=3){while(1){j=h<<2;n=j+k|0;F[n>>2]=F[n>>2]+F[j+l>>2];n=j|4;u=n+k|0;F[u>>2]=F[u>>2]+F[l+n>>2];n=j|8;u=n+k|0;F[u>>2]=F[u>>2]+F[l+n>>2];j=j|12;n=j+k|0;F[n>>2]=F[n>>2]+F[j+l>>2];h=h+4|0;f=f-4|0;if(f){continue}break}}j=H;if(!j){break u}while(1){f=h<<2;n=f+k|0;F[n>>2]=F[n>>2]+F[f+l>>2];h=h+1|0;j=j-1|0;if(j){continue}break}}q=q+1|0;if((q|0)!=(d|0)){continue}break}k=L(e,p);d=k;if(!i){break n}if(r){break k}d=F[g>>2];h=0;f=m;if(y){break m}break l}d=L(e,p)}if(F[a+8>>2]<1){break j}k=(L(p-1|0,e)<<2)+c|0;h=0;while(1){f=h<<2;i=F[f+k>>2];l=F[a+16>>2];v:{if((i|0)>(l|0)){j=F[a+32>>2];F[f+j>>2]=l;break v}j=F[a+32>>2];f=f+j|0;l=F[a+12>>2];if((l|0)>(i|0)){F[f>>2]=l;break v}F[f>>2]=i}h=h+1|0;i=F[a+8>>2];if((h|0)<(i|0)){continue}break}f=0;if((i|0)<1){break j}d=d<<2;k=d+c|0;h=b+d|0;while(1){i=f<<2;d=i+k|0;i=F[h+i>>2]+F[i+j>>2]|0;F[d>>2]=i;w:{if((i|0)>F[a+16>>2]){i=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break w}i=i+F[a+20>>2]|0}F[d>>2]=i}f=f+1|0;if((f|0)>2]){continue}break}break j}Ca();V()}while(1){j=h<<2;l=j+d|0;F[l>>2]=F[l>>2]/(i|0);j=d+(j|4)|0;F[j>>2]=F[j>>2]/(i|0);h=h+2|0;f=f-2|0;if(f){continue}break}}if(!B){break k}d=d+(h<<2)|0;F[d>>2]=F[d>>2]/(i|0)}if(F[a+8>>2]<1){break j}h=0;while(1){d=h<<2;f=F[d+w>>2];i=F[a+16>>2];x:{if((f|0)>(i|0)){j=F[a+32>>2];F[d+j>>2]=i;break x}j=F[a+32>>2];d=d+j|0;i=F[a+12>>2];if((i|0)>(f|0)){F[d>>2]=i;break x}F[d>>2]=f}h=h+1|0;d=F[a+8>>2];if((h|0)<(d|0)){continue}break}f=0;if((d|0)<1){break j}d=k<<2;k=d+c|0;h=b+d|0;while(1){i=f<<2;d=i+k|0;i=F[h+i>>2]+F[i+j>>2]|0;F[d>>2]=i;y:{if((i|0)>F[a+16>>2]){i=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break y}i=i+F[a+20>>2]|0}F[d>>2]=i}f=f+1|0;if((f|0)>2]){continue}break}}o=1;p=p+1|0;if((D|0)!=(p|0)){continue}break}}a=F[g>>2];if(a){F[g+4>>2]=a;ra(a)}ra(x);a=F[g+52>>2];if(a){F[g+56>>2]=a;ra(a)}a=F[g+40>>2];if(a){F[g+44>>2]=a;ra(a)}a=F[g+28>>2];if(a){F[g+32>>2]=a;ra(a)}a=F[g+16>>2];if(a){F[g+20>>2]=a;ra(a)}ea=g- -64|0;return o|0}va();V()}function Hc(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;g=ea-80|0;ea=g;F[g+76>>2]=b;u=g+55|0;r=g+56|0;b=0;a:{b:while(1){c:{if((o|0)<0){break c}if((2147483647-o|0)<(b|0)){F[4312]=61;o=-1;break c}o=b+o|0}d:{e:{f:{j=F[g+76>>2];b=j;f=G[b|0];if(f){while(1){g:{f=f&255;h:{if(!f){f=b;break h}if((f|0)!=37){break g}f=b;while(1){if(G[b+1|0]!=37){break h}i=b+2|0;F[g+76>>2]=i;f=f+1|0;h=G[b+2|0];b=i;if((h|0)==37){continue}break}}b=f-j|0;if(a){Bb(a,j,b)}if(b){continue b}i=g;b=F[g+76>>2];i:{if(!(G[b+2|0]!=36|D[F[g+76>>2]+1|0]-48>>>0>=10)){p=D[b+1|0]-48|0;s=1;b=b+3|0;break i}p=-1;b=b+1|0}F[i+76>>2]=b;l=0;h=D[b|0];f=h-32|0;j:{if(f>>>0>31){break j}f=1<>2]=i;h=D[b+1|0];b=h-32|0;if(b>>>0>=32){break k}b=1<>>0>=10){break n}b=F[g+76>>2];if(G[b+2|0]!=36){break n}F[((D[b+1|0]<<2)+e|0)-192>>2]=10;m=F[((D[b+1|0]<<3)+d|0)-384>>2];s=1;b=b+3|0;break m}if(s){break f}s=0;m=0;if(a){b=F[c>>2];F[c>>2]=b+4;m=F[b>>2]}b=F[g+76>>2]+1|0}F[i+76>>2]=b;if((m|0)>-1){break l}m=0-m|0;l=l|8192;break l}m=Qd(g+76|0);if((m|0)<0){break f}b=F[g+76>>2]}k=-1;o:{if(G[b|0]!=46){break o}if(G[b+1|0]==42){p:{if(D[b+2|0]-48>>>0>=10){break p}b=F[g+76>>2];if(G[b+3|0]!=36){break p}F[((D[b+2|0]<<2)+e|0)-192>>2]=10;k=F[((D[b+2|0]<<3)+d|0)-384>>2];b=b+4|0;F[g+76>>2]=b;break o}if(s){break f}if(a){b=F[c>>2];F[c>>2]=b+4;k=F[b>>2]}else{k=0}b=F[g+76>>2]+2|0;F[g+76>>2]=b;break o}F[g+76>>2]=b+1;k=Qd(g+76|0);b=F[g+76>>2]}f=0;while(1){q=f;n=-1;if(D[b|0]-65>>>0>57){break a}h=b+1|0;F[g+76>>2]=h;f=D[b|0];b=h;f=G[(f+L(q,58)|0)+14863|0];if(f-1>>>0<8){continue}break}q:{r:{if((f|0)!=19){if(!f){break a}if((p|0)>=0){F[(p<<2)+e>>2]=f;b=(p<<3)+d|0;f=F[b+4>>2];F[g+64>>2]=F[b>>2];F[g+68>>2]=f;break r}if(!a){break d}Pd(g- -64|0,f,c);h=F[g+76>>2];break q}if((p|0)>-1){break a}}b=0;if(!a){continue b}}i=l&-65537;f=l&8192?i:l;n=0;p=14909;l=r;s:{t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{b=D[h-1|0];b=q?(b&15)==3?b&-33:b:b;switch(b-88|0){case 11:break s;case 9:case 13:case 14:case 15:break t;case 27:break y;case 12:case 17:break B;case 23:break C;case 0:case 32:break D;case 24:break E;case 22:break F;case 29:break G;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 e;default:break H}}I:{switch(b-65|0){case 0:case 4:case 5:case 6:break t;case 2:break w;case 1:case 3:break e;default:break I}}if((b|0)==83){break x}break e}h=F[g+64>>2];i=F[g+68>>2];p=14909;break A}b=0;J:{switch(q&255){case 0:F[F[g+64>>2]>>2]=o;continue b;case 1:F[F[g+64>>2]>>2]=o;continue b;case 2:f=F[g+64>>2];F[f>>2]=o;F[f+4>>2]=o>>31;continue b;case 3:E[F[g+64>>2]>>1]=o;continue b;case 4:D[F[g+64>>2]]=o;continue b;case 6:F[F[g+64>>2]>>2]=o;continue b;case 7:break J;default:continue b}}f=F[g+64>>2];F[f>>2]=o;F[f+4>>2]=o>>31;continue b}k=k>>>0>8?k:8;f=f|8;b=120}j=r;t=b&32;q=F[g+68>>2];i=q;h=F[g+64>>2];if(i|h){while(1){j=j-1|0;D[j|0]=t|G[(h&15)+15392|0];q=i;i=i>>>4|0;h=(q&15)<<28|h>>>4;if(h|i){continue}break}}if(!(f&8)|!(F[g+64>>2]|F[g+68>>2])){break z}p=(b>>>4|0)+14909|0;n=2;break z}b=r;j=F[g+68>>2];i=j;h=F[g+64>>2];if(i|h){while(1){b=b-1|0;D[b|0]=h&7|48;j=i;i=i>>>3|0;h=(j&7)<<29|h>>>3;if(h|i){continue}break}}j=b;if(!(f&8)){break z}b=r-j|0;k=(b|0)<(k|0)?k:b+1|0;break z}b=F[g+68>>2];i=b;h=F[g+64>>2];if((b|0)<-1?1:(b|0)<=-1){i=0-(((h|0)!=0)+i|0)|0;h=0-h|0;F[g+64>>2]=h;F[g+68>>2]=i;n=1;p=14909;break A}if(f&2048){n=1;p=14910;break A}n=f&1;p=n?14911:14909}b=r;K:{if(i>>>0<1){j=h;break K}while(1){j=Mj(h,i,10,0);t=fa;q=t;b=b-1|0;v=b,w=h-Kj(j,q,10,0)|48,D[v|0]=w;t=i>>>0>9;h=j;i=q;if(t){continue}break}}if(j){while(1){b=b-1|0;i=(j>>>0)/10|0;D[b|0]=j-L(i,10)|48;h=j>>>0>9;j=i;if(h){continue}break}}j=b}f=(k|0)>-1?f&-65537:f;b=F[g+64>>2];i=F[g+68>>2];if(!(!!(b|i)|k)){k=0;j=r;break e}b=!(b|i)+(r-j|0)|0;k=(b|0)<(k|0)?k:b;break e}b=F[g+64>>2];j=b?b:14919;f=j;b=k;l=(b|0)!=0;L:{M:{N:{O:{if(!b|!(f&3)){break O}while(1){if(!G[f|0]){break N}f=f+1|0;b=b-1|0;l=(b|0)!=0;if(!b){break O}if(f&3){continue}break}}if(!l){break M}}P:{if(!G[f|0]|b>>>0<4){break P}while(1){h=F[f>>2];if((h^-1)&h-16843009&-2139062144){break P}f=f+4|0;b=b-4|0;if(b>>>0>3){continue}break}}if(!b){break M}while(1){h=f;if(!G[f|0]){break L}f=f+1|0;b=b-1|0;if(b){continue}break}}h=0}l=h?h:j+k|0;f=i;k=h?h-j|0:k;break e}l=F[g+64>>2];if(k){break v}b=0;lb(a,32,m,0,f);break u}F[g+12>>2]=0;F[g+8>>2]=F[g+64>>2];F[g+64>>2]=g+8;k=-1;l=g+8|0}b=0;Q:{while(1){j=F[l>>2];if(!j){break Q}j=Rd(g+4|0,j);i=(j|0)<0;if(!(i|j>>>0>k-b>>>0)){l=l+4|0;b=b+j|0;if(k>>>0>b>>>0){continue}break Q}break}n=-1;if(i){break a}}lb(a,32,m,b,f);if(!b){b=0;break u}l=0;h=F[g+64>>2];while(1){j=F[h>>2];if(!j){break u}j=Rd(g+4|0,j);l=j+l|0;if((l|0)>(b|0)){break u}Bb(a,g+4|0,j);h=h+4|0;if(b>>>0>l>>>0){continue}break}}lb(a,32,m,b,f^8192);b=(b|0)<(m|0)?m:b;continue b}b=ga[0](a,K[g+64>>3],m,k,f,b)|0;continue b}D[g+55|0]=F[g+64>>2];k=1;j=u;f=i;break e}i=b+1|0;F[g+76>>2]=i;f=G[b+1|0];b=i;continue}}n=o;if(a){break a}if(!s){break d}b=1;while(1){a=F[(b<<2)+e>>2];if(a){Pd((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 f}b=b+1|0;if((b|0)!=10){continue}break}break a}n=-1;break a}h=l-j|0;l=(h|0)>(k|0)?h:k;i=l+n|0;b=(i|0)>(m|0)?i:m;lb(a,32,b,i,f);Bb(a,p,n);lb(a,48,b,i,f^65536);lb(a,48,l,h,0);Bb(a,j,h);lb(a,32,b,i,f^8192);continue}break}n=0}ea=g+80|0;return n}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,H=0,I=0;i=ea+-64|0;ea=i;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){Ia(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}F[i+56>>2]=0;F[i+60>>2]=0;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;F[i+24>>2]=0;F[i+28>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;F[i>>2]=0;f=0;if(e){Oa(i+16|0,e,i);j=F[i+28>>2];f=F[i+32>>2]}F[i>>2]=0;d=f-j>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}F[i+32>>2]=(e<<2)+j;break b}Oa(i+16|12,e-d|0,i)}F[i>>2]=0;f=F[i+40>>2];d=F[i+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[i+44>>2]=f+(e<<2);break c}Oa(i+40|0,e-d|0,i)}F[i>>2]=0;f=F[i+52>>2];d=F[i+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[i+56>>2]=f+(e<<2);break d}Oa(i+52|0,e-d|0,i)}j=0;e:{if(F[a+8>>2]<=0){break e}h=F[i+16>>2];while(1){f=j<<2;g=F[f+h>>2];s=F[a+16>>2];f:{if((g|0)>(s|0)){d=F[a+32>>2];F[f+d>>2]=s;break f}d=F[a+32>>2];f=f+d|0;s=F[a+12>>2];if((s|0)>(g|0)){F[f>>2]=s;break f}F[f>>2]=g}j=j+1|0;f=F[a+8>>2];if((j|0)<(f|0)){continue}break}if((f|0)<1){break e}f=0;while(1){h=f<<2;g=h+c|0;h=F[b+h>>2]+F[d+h>>2]|0;F[g>>2]=h;g:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break g}h=h+F[a+20>>2]|0}F[g>>2]=h}f=f+1|0;if((f|0)>2]){continue}break}}C=F[a+52>>2];z=F[a+48>>2];x=sa(16);d=x;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;v=sa(d);F[i>>2]=v;f=d+v|0;F[i+8>>2]=f;ua(v,0,d);F[i+4>>2]=f}p=1;d=F[a+56>>2];A=F[d>>2];d=F[d+4>>2]-A|0;i:{if((d|0)<5){break i}d=d>>>2|0;D=d>>>0>2?d:2;E=d>>>0>1?d:1;s=e&-2;B=e&1;G=e&-4;H=e&3;y=e-1|0;I=e<<2;q=1;while(1){j:{k:{l:{m:{if((q|0)!=(E|0)){h=F[(q<<2)+A>>2];d=(h>>>0)%3|0;n:{o:{if((h|0)==-1){break o}m=F[z+12>>2];w=h+(d?-1:2)|0;o=m+(w<<2)|0;k=1;d=0;f=h;p:{while(1){g=F[m+(f<<2)>>2];q:{if((g|0)==-1){break q}j=F[C>>2];l=F[z>>2];r=F[j+(F[l+(g<<2)>>2]<<2)>>2];n=g+1|0;n=(n>>>0)%3|0?n:g-2|0;p=j-4|0;r:{if((n|0)==-1){break r}p=j+(F[l+(n<<2)>>2]<<2)|0}g=g+((g>>>0)%3|0?-1:2)|0;n=j-4|0;s:{if((g|0)==-1){break s}n=j+(F[l+(g<<2)>>2]<<2)|0}if((q|0)<=(r|0)){break q}g=F[p>>2];if((g|0)>=(q|0)){break q}j=F[n>>2];if((j|0)>=(q|0)){break q}l=F[(i+16|0)+L(d,12)>>2];t:{if((e|0)<1){break t}p=L(e,j);n=L(e,g);r=L(e,r);j=0;g=s;if(y){while(1){F[l+(j<<2)>>2]=(F[(j+p<<2)+c>>2]+F[(j+n<<2)+c>>2]|0)-F[(j+r<<2)+c>>2];t=j|1;F[l+(t<<2)>>2]=(F[(p+t<<2)+c>>2]+F[(n+t<<2)+c>>2]|0)-F[(r+t<<2)+c>>2];j=j+2|0;g=g-2|0;if(g){continue}break}}if(!B){break t}F[l+(j<<2)>>2]=(F[(j+p<<2)+c>>2]+F[(j+n<<2)+c>>2]|0)-F[(j+r<<2)+c>>2]}g=4;d=d+1|0;if((d|0)==4){break p}}u:{if(k&1){l=f+1|0;f=(l>>>0)%3|0?l:f-2|0;g=-1;if((f|0)==-1){break u}f=F[m+(f<<2)>>2];g=-1;if((f|0)==-1){break u}g=f+1|0;g=(g>>>0)%3|0?g:f-2|0;break u}f=((f>>>0)%3|0?-1:2)+f|0;g=-1;if((f|0)==-1){break u}f=F[m+(f<<2)>>2];g=-1;if((f|0)==-1){break u}g=f-1|0;if((f>>>0)%3|0){break u}g=f+2|0}v:{if((g|0)==(h|0)){break v}f=g;g=(g|0)==-1&k;f=g?-1:f;k=g^k;if(!(!g|(w|0)==-1)){f=F[o>>2];if((f|0)==-1){break v}k=0;f=(f>>>0)%3|0?f-1|0:f+2|0}if((f|0)!=-1){continue}}break}g=d;if((d|0)<1){break o}}n=(e|0)<1;if(!n){ua(F[i>>2],0,I)}d=g-1|0;r=(d<<2)+x|0;d=L(d,12)+a|0;t=d;w=F[d- -64>>2];p=0;f=0;k=0;while(1){d=F[r>>2];F[r>>2]=d+1;if(d>>>0>=w>>>0){break i}w:{if(F[F[t+60>>2]+(d>>>3&536870908)>>2]>>>d&1){break w}k=k+1|0;if(n){break w}h=F[i>>2];m=F[(i+16|0)+L(f,12)>>2];j=0;d=G;if(y>>>0>=3){while(1){l=j<<2;o=l+h|0;F[o>>2]=F[o>>2]+F[l+m>>2];o=l|4;u=o+h|0;F[u>>2]=F[u>>2]+F[m+o>>2];o=l|8;u=o+h|0;F[u>>2]=F[u>>2]+F[m+o>>2];l=l|12;o=l+h|0;F[o>>2]=F[o>>2]+F[l+m>>2];j=j+4|0;d=d-4|0;if(d){continue}break}}d=H;if(!d){break w}while(1){l=j<<2;o=l+h|0;F[o>>2]=F[o>>2]+F[l+m>>2];j=j+1|0;d=d-1|0;if(d){continue}break}}f=f+1|0;if((g|0)!=(f|0)){continue}break}h=L(e,q);g=h;if(!k){break n}if(n){break k}d=F[i>>2];j=0;f=s;if(y){break m}break l}g=L(e,q)}if(F[a+8>>2]<1){break j}k=(L(q-1|0,e)<<2)+c|0;j=0;while(1){f=j<<2;h=F[f+k>>2];m=F[a+16>>2];x:{if((h|0)>(m|0)){d=F[a+32>>2];F[f+d>>2]=m;break x}d=F[a+32>>2];f=f+d|0;m=F[a+12>>2];if((m|0)>(h|0)){F[f>>2]=m;break x}F[f>>2]=h}j=j+1|0;h=F[a+8>>2];if((j|0)<(h|0)){continue}break}f=0;if((h|0)<1){break j}g=g<<2;j=g+c|0;k=b+g|0;while(1){h=f<<2;g=h+j|0;h=F[h+k>>2]+F[d+h>>2]|0;F[g>>2]=h;y:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break y}h=h+F[a+20>>2]|0}F[g>>2]=h}f=f+1|0;if((f|0)>2]){continue}break}break j}Ca();V()}while(1){g=j<<2;m=g+d|0;F[m>>2]=F[m>>2]/(k|0);g=d+(g|4)|0;F[g>>2]=F[g>>2]/(k|0);j=j+2|0;f=f-2|0;if(f){continue}break}}if(!B){break k}d=d+(j<<2)|0;F[d>>2]=F[d>>2]/(k|0)}if(F[a+8>>2]<1){break j}j=0;while(1){f=j<<2;g=F[f+v>>2];k=F[a+16>>2];z:{if((g|0)>(k|0)){d=F[a+32>>2];F[f+d>>2]=k;break z}d=F[a+32>>2];f=f+d|0;k=F[a+12>>2];if((k|0)>(g|0)){F[f>>2]=k;break z}F[f>>2]=g}j=j+1|0;g=F[a+8>>2];if((j|0)<(g|0)){continue}break}f=0;if((g|0)<1){break j}g=h<<2;j=g+c|0;k=b+g|0;while(1){h=f<<2;g=h+j|0;h=F[h+k>>2]+F[d+h>>2]|0;F[g>>2]=h;A:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break A}h=h+F[a+20>>2]|0}F[g>>2]=h}f=f+1|0;if((f|0)>2]){continue}break}}p=1;q=q+1|0;if((D|0)!=(q|0)){continue}break}}a=F[i>>2];if(a){F[i+4>>2]=a;ra(a)}ra(x);a=F[i+52>>2];if(a){F[i+56>>2]=a;ra(a)}a=F[i+40>>2];if(a){F[i+44>>2]=a;ra(a)}a=F[i+28>>2];if(a){F[i+32>>2]=a;ra(a)}a=F[i+16>>2];if(a){F[i+20>>2]=a;ra(a)}ea=i- -64|0;return p|0}va();V()}function yf(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=M(0),u=0,v=0,w=0;k=ea-32|0;ea=k;a:{b:{c:{if(!(F[a+60>>2]!=F[a- -64>>2]|F[a+48>>2]!=F[a+52>>2])){e=1;break c}e=1;if((ga[F[F[a>>2]+24>>2]](a)|0)<1){break c}while(1){d:{c=ga[F[F[a>>2]+20>>2]](a,u)|0;e:{f:{g:{g=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];switch(F[g+28>>2]-1|0){case 0:case 2:case 4:break g;case 8:break f;default:break e}}c=D[g+24|0];d=0;F[k+24>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;if(c){if((c|0)<=-1){break a}c=c<<2;b=sa(c);F[k+16>>2]=b;f=b+c|0;F[k+24>>2]=f;ua(b,0,c);F[k+20>>2]=f;d=G[g+24|0]}F[k+8>>2]=0;F[k>>2]=0;F[k+4>>2]=0;if(d&255){c=d<<24>>24;if((c|0)<=-1){break b}c=c<<2;b=sa(c);F[k>>2]=b;f=b+c|0;F[k+8>>2]=f;ua(b,0,c);F[k+4>>2]=f}h:{i:{switch(F[g+28>>2]-1|0){case 4:h=0;e=0;j=0;c=0;i=ea-16|0;ea=i;b=D[g+24|0];F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;j:{k:{if(b){if((b|0)<=-1){break k}f=b<<2;e=sa(f);F[i>>2]=e;F[i+8>>2]=e+f;ua(e,0,f);h=sa(f);ua(h,0,f)}if(!F[g+80>>2]){break j}while(1){s=F[g>>2];d=F[s>>2];f=F[g+40>>2];l=F[g+48>>2]+Kj(f,F[g+44>>2],j,c)|0;l=ta(e,d+l|0,f);m=b<<24>>24;l:{if((m|0)<1){break l}n=F[a+48>>2];d=0;if((b&255)!=1){b=m&-2;while(1){o=d<<2;F[o+h>>2]=F[n+(d+q<<2)>>2]+F[l+o>>2];o=d|1;p=o<<2;F[p+h>>2]=F[n+(o+q<<2)>>2]+F[l+p>>2];d=d+2|0;b=b-2|0;if(b){continue}break}}if(!(m&1)){break l}b=d<<2;F[b+h>>2]=F[n+(d+q<<2)>>2]+F[b+l>>2]}ta(F[s>>2]+L(f,j)|0,h,f);b=j+1|0;c=b>>>0<1?c+1|0:c;j=b;if(!c&I[g+80>>2]<=b>>>0|c){break j}b=G[g+24|0];continue}}va();V()}if(h){ra(h)}if(e){ra(e)}ea=i+16|0;break h;case 2:h=0;e=0;j=0;c=0;i=ea-16|0;ea=i;b=D[g+24|0];F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;m:{n:{if(b){if((b|0)<=-1){break n}f=b<<1;e=sa(f);F[i>>2]=e;F[i+8>>2]=e+f;ua(e,0,f);h=sa(f);ua(h,0,f)}if(!F[g+80>>2]){break m}while(1){s=F[g>>2];d=F[s>>2];f=F[g+40>>2];l=F[g+48>>2]+Kj(f,F[g+44>>2],j,c)|0;l=ta(e,d+l|0,f);m=b<<24>>24;o:{if((m|0)<1){break o}n=F[a+48>>2];d=0;if((b&255)!=1){b=m&-2;while(1){o=d<<1;E[o+h>>1]=H[l+o>>1]+H[n+(d+q<<2)>>1];o=d|1;p=o<<1;E[p+h>>1]=H[l+p>>1]+H[n+(o+q<<2)>>1];d=d+2|0;b=b-2|0;if(b){continue}break}}if(!(m&1)){break o}b=d<<1;E[b+h>>1]=H[b+l>>1]+H[n+(d+q<<2)>>1]}ta(F[s>>2]+L(f,j)|0,h,f);b=j+1|0;c=b>>>0<1?c+1|0:c;j=b;if(!c&I[g+80>>2]<=b>>>0|c){break m}b=G[g+24|0];continue}}va();V()}if(h){ra(h)}if(e){ra(e)}ea=i+16|0;break h;case 0:break i;default:break h}}h=0;d=0;j=0;c=0;f=ea-16|0;ea=f;b=D[g+24|0];F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;p:{q:{if(b){if((b|0)<=-1){break q}d=sa(b);F[f>>2]=d;F[f+8>>2]=b+d;ua(d,0,b);h=sa(b);ua(h,0,b)}if(F[g+80>>2]){while(1){e=F[F[g>>2]>>2];i=F[g+40>>2];b=F[g+48>>2]+Kj(i,F[g+44>>2],j,c)|0;e=ta(d,e+b|0,i);l=D[g+24|0];r:{if((l|0)<1){break r}n=F[a+48>>2];b=0;if((l|0)!=1){i=l&-2;while(1){D[b+h|0]=G[b+e|0]+G[n+(b+q<<2)|0];m=b|1;D[m+h|0]=G[e+m|0]+G[n+(m+q<<2)|0];b=b+2|0;i=i-2|0;if(i){continue}break}}if(!(l&1)){break r}D[b+h|0]=G[b+e|0]+G[n+(b+q<<2)|0]}b=F[g+40>>2];ta(F[F[g>>2]>>2]+L(b,j)|0,h,b);b=j+1|0;c=b>>>0<1?c+1|0:c;j=b;if(!c&I[g+80>>2]>b>>>0){continue}break}}if(h){ra(h)}if(d){ra(d)}ea=f+16|0;break p}va();V()}}q=D[g+24|0]+q|0;c=F[k>>2];if(c){F[k+4>>2]=c;ra(c)}c=F[k+16>>2];if(c){F[k+20>>2]=c;ra(c)}break e}h=F[F[a+60>>2]+(r<<2)>>2];n=F[a+36>>2];b=F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2];j=F[g+56>>2];f=sa(32);F[k+16>>2]=f;F[k+20>>2]=24;F[k+24>>2]=-2147483616;D[f+24|0]=0;d=G[1702]|G[1703]<<8|(G[1704]<<16|G[1705]<<24);c=f;e=G[1698]|G[1699]<<8|(G[1700]<<16|G[1701]<<24);D[c+16|0]=e;D[c+17|0]=e>>>8;D[c+18|0]=e>>>16;D[c+19|0]=e>>>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[1694]|G[1695]<<8|(G[1696]<<16|G[1697]<<24);e=G[1690]|G[1691]<<8|(G[1692]<<16|G[1693]<<24);D[c+8|0]=e;D[c+9|0]=e>>>8;D[c+10|0]=e>>>16;D[c+11|0]=e>>>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[1686]|G[1687]<<8|(G[1688]<<16|G[1689]<<24);e=G[1682]|G[1683]<<8|(G[1684]<<16|G[1685]<<24);D[c|0]=e;D[c+1|0]=e>>>8;D[c+2|0]=e>>>16;D[c+3|0]=e>>>24;D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;c=b+16|0;d=c;e=F[c>>2];s:{if(!e){break s}while(1){i=(j|0)>F[e+16>>2];d=i?d:e;e=F[(i<<2)+e>>2];if(e){continue}break}if((c|0)==(d|0)|(j|0)>2]){break s}e=F[d+24>>2];if(!e){break s}c=d+20|0;while(1){d=G[e+27|0];j=d<<24>>24<0;d=j?F[e+20>>2]:d;i=d>>>0<24;t:{u:{l=i?d:24;v:{if(l){m=e+16|0;j=j?F[m>>2]:m;m=Ga(f,j,l);w:{if(!m){if(d>>>0<=24){break w}break t}if((m|0)<=-1){break t}}d=Ga(j,f,l);if(!d){break v}if((d|0)<=-1){break u}b=c;break s}if(d>>>0>24){break t}}if(i){break u}b=c;break s}e=e+4|0}e=F[e>>2];if(e){continue}break}}b=qe(b,k+16|0);if(D[k+27|0]<=-1){ra(F[k+16>>2])}c=r+1|0;x:{if(b){oe(g,h);break x}m=n+L(r,24)|0;b=F[m+4>>2];j=D[g+24|0];l=j<<2;f=sa((j|0)!=(j&1073741823)?-1:l);F[k+16>>2]=1065353216;t=J[m+20>>2];b=-1<=1){J[k+16>>2]=t/M(b|0)}if((b|0)<=0){break d}y:{if(!F[h+80>>2]){break y}if((j|0)<=0){e=0;d=1;while(1){ta(F[F[g+64>>2]>>2]+e|0,f,l);if(I[h+80>>2]<=d>>>0){break y}e=e+l|0;d=d+1|0;continue}}s=F[F[h>>2]>>2]+F[h+48>>2]|0;b=j&-2;w=j&1;o=0;i=0;e=0;while(1){n=F[m+8>>2];t=J[k+16>>2];d=0;r=b;if((j|0)!=1){while(1){p=d<<2;v=s+(e<<2)|0;J[p+f>>2]=M(t*M(F[v>>2]))+J[n+p>>2];p=p|4;J[p+f>>2]=M(t*M(F[v+4>>2]))+J[n+p>>2];d=d+2|0;e=e+2|0;r=r-2|0;if(r){continue}break}}if(w){r=d<<2;J[r+f>>2]=M(t*M(F[s+(e<<2)>>2]))+J[n+r>>2];e=e+1|0}ta(F[F[g+64>>2]>>2]+i|0,f,l);i=i+l|0;o=o+1|0;if(o>>>0>2]){continue}break}}ra(f)}r=c}e=1;u=u+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(u|0)){continue}break c}break}ra(f);e=0}ea=k+32|0;return e|0}va();V()}va();V()}function og(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;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[11181]|G[11182]<<8|(G[11183]<<16|G[11184]<<24);d=G[11177]|G[11178]<<8|(G[11179]<<16|G[11180]<<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[11173]|G[11174]<<8|(G[11175]<<16|G[11176]<<24);d=G[11169]|G[11170]<<8|(G[11171]<<16|G[11172]<<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[11165]|G[11166]<<8|(G[11167]<<16|G[11168]<<24);d=G[11161]|G[11162]<<8|(G[11163]<<16|G[11164]<<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;g=ea-32|0;ea=g;h=a;b=a+16|0;a=F[b>>2];a:{b:{if(!a){break b}d=F[m+12>>2];c=b;while(1){e=(d|0)>F[a+16>>2];c=e?c:a;a=F[(e<<2)+a>>2];if(a){continue}break}if((b|0)==(c|0)){break b}if((d|0)>=F[c+16>>2]){break a}}q=g+16|0;a=q;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=a+4;a=F[m+12>>2];d=g+8|0;F[d>>2]=0;F[d+4>>2]=0;F[g>>2]=a;F[g+4>>2]=d;c=F[q>>2];w=q+4|0;if((c|0)!=(w|0)){l=g|4;while(1){i=c;v=c+16|0;j=v;s=ea-16|0;ea=s;p=s+12|0;c=s+8|0;c:{d:{e:{f:{g:{h:{e=d;t=l+4|0;i:{if((d|0)==(t|0)){break i}a=G[d+27|0];k=a<<24>>24<0;f=G[j+11|0];x=f<<24>>24;n=(x|0)<0;a=k?F[d+20>>2]:a;f=n?F[j+4>>2]:f;o=a>>>0>>0;r=o?a:f;if(r){n=n?F[j>>2]:j;u=d+16|0;k=k?F[u>>2]:u;u=Ga(n,k,r);if(!u){if(a>>>0>f>>>0){break i}break h}if((u|0)>-1){break h}break i}if(a>>>0<=f>>>0){break g}}f=F[d>>2];c=d;j:{k:{if((e|0)==F[l>>2]){break k}l:{if(f){a=f;while(1){c=a;a=F[c+4>>2];if(a){continue}break}break l}c=e+8|0;if((e|0)==F[F[e+8>>2]>>2]){while(1){a=F[c>>2];c=a+8|0;if((a|0)==F[F[a+8>>2]>>2]){continue}break}}c=F[c>>2]}n=G[j+11|0];a=n<<24>>24<0;o=G[c+27|0];k=o<<24>>24<0;m:{n=a?F[j+4>>2]:n;o=k?F[c+20>>2]:o;r=n>>>0>>0?n:o;if(r){t=c+16|0;a=Ga(k?F[t>>2]:t,a?F[j>>2]:j,r);if(a){break m}}if(n>>>0>o>>>0){break k}break j}if((a|0)>-1){break j}}if(!f){F[p>>2]=e;c=e;break c}F[p>>2]=c;c=c+4|0;break c}c=Ke(l,p,j);break c}a=Ga(k,n,r);if(a){break f}}if(o){break e}break d}if((a|0)>-1){break d}}e=F[d+4>>2];n:{if(e){a=e;while(1){c=a;a=F[c>>2];if(a){continue}break}break n}c=F[d+8>>2];if((d|0)==F[c>>2]){break n}a=d+8|0;while(1){k=F[a>>2];a=k+8|0;c=F[k+8>>2];if((k|0)!=F[c>>2]){continue}break}}o:{p:{if((c|0)==(t|0)){break p}k=G[c+27|0];a=k<<24>>24<0;q:{k=a?F[c+20>>2]:k;n=f>>>0>k>>>0?k:f;if(n){o=c+16|0;a=Ga((x|0)<0?F[j>>2]:j,a?F[o>>2]:o,n);if(a){break q}}if(f>>>0>>0){break p}break o}if((a|0)>-1){break o}}if(!e){F[p>>2]=d;c=d+4|0;break c}F[p>>2]=c;break c}c=Ke(l,p,j);break c}F[p>>2]=d;F[c>>2]=d}if(!F[c>>2]){a=sa(40);Aa(a+16|0,v);Aa(a+28|0,v+12|0);F[a+8>>2]=F[s+12>>2];F[a>>2]=0;F[a+4>>2]=0;F[c>>2]=a;e=F[F[l>>2]>>2];if(e){F[l>>2]=e;a=F[c>>2]}Vb(F[l+4>>2],a);F[l+8>>2]=F[l+8>>2]+1}ea=s+16|0;a=F[i+4>>2];r:{if(!a){c=F[i+8>>2];if((i|0)==F[c>>2]){break r}a=i+8|0;while(1){e=F[a>>2];a=e+8|0;c=F[e+8>>2];if((e|0)!=F[c>>2]){continue}break}break r}while(1){c=a;a=F[c>>2];if(a){continue}break}}if((c|0)!=(w|0)){continue}break}}a=F[b>>2];s:{if(a){b=h+16|0;e=F[g>>2];while(1){c=F[a+16>>2];t:{if((c|0)>(e|0)){c=F[a>>2];if(c){break t}b=a;break s}if((c|0)>=(e|0)){break s}b=a+4|0;c=F[a+4>>2];if(!c){break s}a=b}b=a;a=c;continue}}a=b}c=F[b>>2];if(!c){c=sa(32);F[c+16>>2]=F[g>>2];F[c+20>>2]=F[g+4>>2];e=c+24|0;i=F[g+8>>2];F[e>>2]=i;f=F[g+12>>2];F[c+28>>2]=f;u:{if(!f){F[c+20>>2]=e;break u}F[i+8>>2]=e;F[g+8>>2]=0;F[g+12>>2]=0;F[g+4>>2]=d}F[c+8>>2]=a;F[c>>2]=0;F[c+4>>2]=0;F[b>>2]=c;d=F[F[h+12>>2]>>2];a=c;v:{if(!d){break v}F[h+12>>2]=d;a=F[b>>2]}Vb(F[h+16>>2],a);F[h+20>>2]=F[h+20>>2]+1}Lb(g|4,F[g+8>>2]);Lb(q,F[q+4>>2])}ea=g+32|0;d=ea-48|0;ea=d;e=ea-32|0;ea=e;b=e+21|0;h=e+32|0;w:{if((b|0)==(h|0)){break w}}a=e;i=h-b|0;x:{if(!((i|0)<(1-(I[4032]>1)|0)?(i|0)<=9:0)){D[b|0]=49;F[e+8>>2]=b+1;b=0;break x}F[e+8>>2]=h;b=61}F[a+12>>2]=b;j=ea-16|0;ea=j;f=ea-16|0;ea=f;a=d+8|0;y:{l=F[e+8>>2];i=e+21|0;h=l-i|0;if(h>>>0<=4294967279){z:{if(h>>>0<=10){D[a+11|0]=h;b=a;break z}q=a;if(h>>>0>=11){p=h+16&-16;g=p-1|0;b=(g|0)==11?p:g}else{b=10}g=b+1|0;b=sa(g);F[q>>2]=b;F[a+8>>2]=g|-2147483648;F[a+4>>2]=h}while(1){if((i|0)!=(l|0)){D[b|0]=G[i|0];b=b+1|0;i=i+1|0;continue}break}D[f+15|0]=0;D[b|0]=G[f+15|0];ea=f+16|0;break y}Ma();V()}ea=j+16|0;ea=e+32|0;F[d+32>>2]=m;h=c+20|0;a=F[h+4>>2];A:{B:{if(a){b=G[m+11|0];c=b<<24>>24<0;i=c?F[m>>2]:m;e=c?F[m+4>>2]:b;b=h+4|0;while(1){c=G[a+27|0];f=c<<24>>24<0;c=f?F[a+20>>2]:c;g=c>>>0>>0;C:{D:{E:{F:{G:{j=g?c:e;H:{if(j){l=a+16|0;f=f?F[l>>2]:l;l=Ga(i,f,j);if(!l){if(c>>>0>e>>>0){break H}break G}if((l|0)>-1){break G}break H}if(c>>>0<=e>>>0){break F}}c=F[a>>2];if(c){break C}break B}c=Ga(f,i,j);if(c){break E}}if(g){break D}break A}if((c|0)>-1){break A}}b=a+4|0;c=F[a+4>>2];if(!c){break A}a=b}b=a;a=c;continue}}a=h+4|0}b=a}e=d;c=F[b>>2];if(c){a=0}else{c=sa(40);Aa(c+16|0,F[d+32>>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;i=F[F[h>>2]>>2];a=c;I:{if(!i){break I}F[h>>2]=i;a=F[b>>2]}Vb(F[h+4>>2],a);F[h+8>>2]=F[h+8>>2]+1;a=1}D[e+44|0]=a;F[d+40>>2]=c;a=F[d+40>>2];if(D[a+39|0]<=-1){ra(F[a+28>>2])}b=F[d+12>>2];F[a+28>>2]=F[d+8>>2];F[a+32>>2]=b;F[a+36>>2]=F[d+16>>2];ea=d+48|0;if(D[m+11|0]<=-1){ra(F[m>>2])}ea=m+16|0}function qi(a){a=a|0;var b=0,c=0,d=0,e=0;d=F[a+32>>2];c=F[d+16>>2];e=F[d+12>>2];b=F[d+20>>2];if((b|0)<(e|0)?1:(e|0)>=(b|0)?I[d+8>>2]>c>>>0:0){e=G[c+F[d>>2]|0];c=c+1|0;b=c>>>0<1?b+1|0:b;F[d+16>>2]=c;F[d+20>>2]=b;d=F[a+48>>2];F[a+48>>2]=0;if(d){ga[F[F[d>>2]+4>>2]](d)}a:{b:{c:{switch(e|0){case 0:d=sa(384);F[d>>2]=11468;ua(d+4|0,0,80);c=d;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;b=F[a+48>>2];F[a+48>>2]=c;if(!b){break a}ga[F[F[b>>2]+4>>2]](b);break b;case 1:d=sa(424);F[d>>2]=11520;ua(d+4|0,0,80);c=d;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;b=F[a+48>>2];F[a+48>>2]=c;if(!b){break a}ga[F[F[b>>2]+4>>2]](b);break b;case 2:break c;default:break b}}d=sa(440);F[d>>2]=11568;ua(d+4|0,0,80);c=d;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)}d=F[a+48>>2];if(d){break a}return 0}a=ga[F[F[d>>2]+8>>2]](d,a)|0}else{a=0}return a|0}function ab(a,b){var c=0,d=0,e=0,f=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;c=d;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=c+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;d=a;F[d+528>>2]=0;F[d+532>>2]=0;D[d+533|0]=0;D[d+534|0]=0;D[d+535|0]=0;D[d+536|0]=0;D[d+537|0]=0;D[d+538|0]=0;D[d+539|0]=0;D[d+540|0]=0;F[d+544>>2]=0;F[d+548>>2]=0;F[d+560>>2]=0;F[d+552>>2]=0;F[d+556>>2]=0;F[d+564>>2]=0;F[d+568>>2]=0;F[d+580>>2]=0;F[d+572>>2]=0;F[d+576>>2]=0;F[d+584>>2]=0;F[d+588>>2]=0;F[d+600>>2]=0;F[d+592>>2]=0;F[d+596>>2]=0;F[d+612>>2]=0;F[d+604>>2]=0;F[d+608>>2]=0;a:{if(b){if(b>>>0>=1073741824){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+608>>2]=f}F[a+616>>2]=0;F[a+620>>2]=0;F[a+624>>2]=0;if(b){d=b<<2;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}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(b){d=b<<2;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}c=b<<5|1;wb(a+628|0,c,e);d=F[e>>2];if(d){F[e+4>>2]=d;ra(d)}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(b){b=b<<2;d=sa(b);F[e>>2]=d;f=b+d|0;F[e+8>>2]=f;ua(d,0,b);F[e+4>>2]=f}wb(a+640|0,c,e);b=F[e>>2];if(b){F[e+4>>2]=b;ra(b)}ea=e+16|0;return a}va();V()}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=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,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0,X=0,Y=0,Z=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;h=f>>2;a:{if(h>>>0<=1){Ia(d,2-h|0);break a}if((f|0)==8){break a}F[a+36>>2]=e+8}b:{d=F[a+56>>2];f=F[d+4>>2];d=F[d>>2];e=f-d|0;h=(e|0)<1;if(h){f=0;break b}if((d|0)!=(f|0)){m=a+60|0;U=e>>2;e=L(e>>>2|0,h?e:1);W=(e|0)>1?e:1;f=1;while(1){i=ea-80|0;ea=i;e=-1;h=-1;d=F[(t<<2)+d>>2];c:{if((d|0)==-1){break c}g=F[m+32>>2];j=d+1|0;j=(j>>>0)%3|0?j:d-2|0;if((j|0)!=-1){e=F[F[g>>2]+(j<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1){break c}h=F[F[g>>2]+(d<<2)>>2]}g=F[m+36>>2];d=F[g>>2];d:{g=F[g+4>>2]-d>>2;if(!(g>>>0<=e>>>0|h>>>0>=g>>>0)){e:{f:{g:{h=F[d+(h<<2)>>2];l=F[d+(e<<2)>>2];if((h|0)>=(t|0)|(l|0)>=(t|0)){break g}d=h<<3;I=F[(d|4)+c>>2];e=l<<3;u=F[(e|4)+c>>2];y=F[c+d>>2];z=F[c+e>>2];if(!((y|0)!=(z|0)|(u|0)!=(I|0))){F[m+8>>2]=z;F[m+12>>2]=u;break f}d=F[F[m+4>>2]+(t<<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]}Ua(e,d,D[e+24|0],i+56|0);d=F[F[m+4>>2]+(l<<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]}Ua(e,d,D[e+24|0],i+32|0);d=F[F[m+4>>2]+(h<<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;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ua(e,d,D[e+24|0],i+8|0);K=F[i+44>>2];d=F[i+16>>2];A=F[i+40>>2];e=A;h=F[i+20>>2]-(K+(d>>>0>>0)|0)|0;n=d-e|0;d=Kj(n,h,n,h);j=fa;o=d;M=F[i+36>>2];d=F[i+8>>2];B=F[i+32>>2];e=B;g=F[i+12>>2]-(M+(d>>>0>>0)|0)|0;p=d-e|0;q=Kj(p,g,p,g);e=o+q|0;d=fa+j|0;d=e>>>0>>0?d+1|0:d;o=e;N=F[i+52>>2];e=F[i+24>>2];C=F[i+48>>2];q=C;j=F[i+28>>2]-(N+(e>>>0>>0)|0)|0;v=e-q|0;q=Kj(v,j,v,j);e=o+q|0;d=fa+d|0;x=e;q=e>>>0>>0?d+1|0:d;if(!(e|q)){break g}Q=F[i+64>>2];e=Q;d=A;R=F[i+68>>2];d=Kj(e-d|0,R-((d>>>0>e>>>0)+K|0)|0,n,h);l=fa;o=d;J=F[i+56>>2];e=J;d=B;S=F[i+60>>2];s=Kj(e-d|0,S-((d>>>0>e>>>0)+M|0)|0,p,g);e=o+s|0;d=fa+l|0;d=e>>>0>>0?d+1|0:d;w=e;o=F[i+72>>2];l=o;e=C;T=F[i+76>>2];l=Kj(l-e|0,T-((e>>>0>l>>>0)+N|0)|0,v,j);e=w+l|0;d=fa+d|0;E=e;l=e>>>0>>0?d+1|0:d;d=j;r=d>>31;s=r+v|0;e=d>>31;d=e+d|0;d=s>>>0>>0?d+1|0:d;s=s^r;d=d^e;O=d;r=s;d=h;e=d>>31;w=d>>31;H=w;d=H+n|0;k=e+h|0;k=d>>>0>>0?k+1|0:k;H=d^H;d=e^k;w=d;d=0;X=r;P=g>>31;r=P+p|0;e=g>>31;k=e+g|0;k=r>>>0

>>0?k+1|0:k;r=r^P;e=e^k;k=(w|0)==(e|0)&r>>>0>>0|e>>>0>>0;r=k?H:r;s=s>>>0>r>>>0;e=k?w:e;s=(e|0)<(O|0)?1:(O|0)>=(e|0)?s:0;w=E>>>0>Mj(-1,2147483647,s?X:r,s?O:e)>>>0;e=fa;if((e|0)<(l|0)?1:(e|0)<=(l|0)?w:0){break e}e=Q;n=Lj(Kj(n,h,E,l),fa,x,q);h=n+A|0;d=fa+K|0;d=h>>>0>>0?d+1|0:d;d=R-((e>>>0>>0)+d|0)|0;e=e-h|0;e=Kj(e,d,e,d);n=fa;d=J;J=e;h=Lj(Kj(p,g,E,l),fa,x,q);e=h+B|0;k=fa+M|0;k=e>>>0>>0?k+1|0:k;h=S-((d>>>0>>0)+k|0)|0;d=d-e|0;h=Kj(d,h,d,h);e=J+h|0;d=fa+n|0;g=e;h=e>>>0>>0?d+1|0:d;e=o;o=g;j=Lj(Kj(v,j,E,l),fa,x,q);g=j+C|0;d=fa+N|0;d=g>>>0>>0?d+1|0:d;d=T-((e>>>0>>0)+d|0)|0;e=e-g|0;e=Kj(e,d,e,d);d=o+e|0;k=fa+h|0;g=Kj(d,d>>>0>>0?k+1|0:k,x,q);d=fa;j=d;h:{i:{if(!d&g>>>0<=1){d=j;h=g;if(g-1|0){break h}break i}h=2;d=0;p=g;e=j;while(1){if(!e&p>>>0<8){break i}n=e;e=e>>>2|0;p=(n&3)<<30|p>>>2;d=d<<1|h>>>31;h=h<<1;continue}}while(1){e=Mj(g,j,h,d)+h|0;k=d+fa|0;k=e>>>0>>0?k+1|0:k;h=(k&1)<<31|e>>>1;d=k>>>1|0;e=Kj(h,d,h,d);n=fa;if((j|0)==(n|0)&e>>>0>g>>>0|j>>>0>>0){continue}break}}n=F[m+20>>2];if(n){p=n-1|0;v=F[F[m+16>>2]+(p>>>3&536870908)>>2];F[m+20>>2]=p;e=I;g=u;A=e-g|0;u=g>>31;I=(e>>31)-(u+(e>>>0>>0)|0)|0;e=Kj(E,l,A,I);j=fa;u=Kj(g,u,x,q);g=u+e|0;e=fa+j|0;e=g>>>0>>0?e+1|0:e;o=g;g=y;j=z;B=g-j|0;z=j>>31;u=(g>>31)-(z+(g>>>0>>0)|0)|0;g=Kj(h,d,B,u);y=g;g=v>>>p&1;C=g?0-y|0:y;p=o+C|0;o=e;e=fa;k=o+(g?0-(e+((y|0)!=0)|0)|0:e)|0;Y=m,Z=Lj(p,p>>>0>>0?k+1|0:k,x,q),F[Y+12>>2]=Z;e=Kj(B,u,E,l);p=fa;v=Kj(x,q,j,z);j=v+e|0;e=fa+p|0;e=j>>>0>>0?e+1|0:e;o=j;d=Kj(h,d,A,I);j=g?d:0-d|0;h=o+j|0;o=e;e=fa;d=o+(g?e:0-(((d|0)!=0)+e|0)|0)|0;Y=m,Z=Lj(h,h>>>0>>0?d+1|0:d,x,q),F[Y+8>>2]=Z}d=(n|0)!=0;break e}e=m;if((l|0)<(t|0)){d=l<<1}else{if((t|0)<=0){F[m+8>>2]=0;F[m+12>>2]=0;break f}d=(t<<1)-2|0}d=(d<<2)+c|0;F[e+8>>2]=F[d>>2];F[m+12>>2]=F[d+4>>2]}d=1}ea=i+80|0;break d}Ca();V()}if(!d){break b}j:{if(F[a+8>>2]<1){break j}d=0;while(1){e=d<<2;f=F[(e+a|0)+68>>2];g=F[a+16>>2];k:{if((f|0)>(g|0)){h=F[a+32>>2];F[e+h>>2]=g;break k}h=F[a+32>>2];e=e+h|0;g=F[a+12>>2];if((g|0)>(f|0)){F[e>>2]=g;break k}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)<1){break j}d=t<<3;g=d+c|0;j=b+d|0;while(1){f=e<<2;d=f+g|0;f=F[f+j>>2]+F[f+h>>2]|0;F[d>>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[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}t=t+1|0;f=(U|0)>(t|0);if((t|0)==(W|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>t>>>0){continue}break}}Ca();V()}a=f^1}else{a=0}return a&1}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=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,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0,X=0,Y=0,Z=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){Ia(d,2-g|0);break a}if((f|0)==8){break a}F[a+36>>2]=e+8}b:{d=F[a+56>>2];f=F[d+4>>2];d=F[d>>2];e=f-d|0;g=(e|0)<1;if(g){f=0;break b}if((d|0)!=(f|0)){n=a+60|0;U=e>>2;e=L(e>>>2|0,g?e:1);W=(e|0)>1?e:1;f=1;while(1){i=ea-80|0;ea=i;e=-1;d=F[(s<<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}h=F[n+36>>2];d=F[h>>2];d:{e:{h=F[h+4>>2]-d>>2;j=e<<2;e=F[F[n+32>>2]+28>>2];j=F[j+e>>2];if(h>>>0<=j>>>0){break e}e=F[e+(g<<2)>>2];if(e>>>0>=h>>>0){break e}f:{g:{h:{g=F[d+(e<<2)>>2];m=F[d+(j<<2)>>2];if((g|0)>=(s|0)|(m|0)>=(s|0)){break h}d=g<<3;E=F[(d|4)+c>>2];e=m<<3;t=F[(e|4)+c>>2];w=F[c+d>>2];x=F[c+e>>2];if(!((w|0)!=(x|0)|(t|0)!=(E|0))){F[n+8>>2]=x;F[n+12>>2]=t;break g}d=F[F[n+4>>2]+(s<<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[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ua(e,d,D[e+24|0],i+56|0);d=F[F[n+4>>2]+(m<<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[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ua(e,d,D[e+24|0],i+32|0);d=F[F[n+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;e=F[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ua(e,d,D[e+24|0],i+8|0);I=F[i+44>>2];d=F[i+16>>2];y=F[i+40>>2];e=y;g=F[i+20>>2]-(I+(d>>>0>>0)|0)|0;o=d-e|0;d=Kj(o,g,o,g);j=fa;k=d;J=F[i+36>>2];d=F[i+8>>2];z=F[i+32>>2];e=z;h=F[i+12>>2]-(J+(d>>>0>>0)|0)|0;p=d-e|0;q=Kj(p,h,p,h);e=k+q|0;d=fa+j|0;d=e>>>0>>0?d+1|0:d;k=e;K=F[i+52>>2];e=F[i+24>>2];A=F[i+48>>2];q=A;j=F[i+28>>2]-(K+(e>>>0>>0)|0)|0;u=e-q|0;q=Kj(u,j,u,j);e=k+q|0;d=fa+d|0;v=e;q=e>>>0>>0?d+1|0:d;if(!(e|q)){break h}O=F[i+64>>2];e=O;d=y;P=F[i+68>>2];d=Kj(e-d|0,P-((d>>>0>e>>>0)+I|0)|0,o,g);m=fa;k=d;Q=F[i+56>>2];e=Q;d=z;R=F[i+60>>2];r=Kj(e-d|0,R-((d>>>0>e>>>0)+J|0)|0,p,h);e=k+r|0;d=fa+m|0;d=e>>>0>>0?d+1|0:d;k=e;S=F[i+72>>2];m=S;e=A;T=F[i+76>>2];m=Kj(m-e|0,T-((e>>>0>m>>>0)+K|0)|0,u,j);e=k+m|0;d=fa+d|0;B=e;m=e>>>0>>0?d+1|0:d;d=j;k=d>>31;r=k+u|0;e=d>>31;d=e+d|0;d=r>>>0>>0?d+1|0:d;r=r^k;d=d^e;M=d;k=r;d=g;e=d>>31;H=d>>31;C=H;d=C+o|0;l=e+g|0;l=d>>>0>>0?l+1|0:l;C=d^C;d=e^l;H=d;d=0;X=k;N=h>>31;k=N+p|0;e=h>>31;l=e+h|0;l=k>>>0>>0?l+1|0:l;k=k^N;e=e^l;l=(H|0)==(e|0)&k>>>0>>0|e>>>0>>0;k=l?C:k;r=r>>>0>k>>>0;e=l?H:e;r=(e|0)<(M|0)?1:(M|0)>=(e|0)?r:0;k=B>>>0>Mj(-1,2147483647,r?X:k,r?M:e)>>>0;e=fa;if((e|0)<(m|0)?1:(e|0)<=(m|0)?k:0){break f}e=O;o=Lj(Kj(o,g,B,m),fa,v,q);g=o+y|0;d=fa+I|0;d=g>>>0>>0?d+1|0:d;d=P-((e>>>0>>0)+d|0)|0;e=e-g|0;e=Kj(e,d,e,d);o=fa;d=Q;k=e;g=Lj(Kj(p,h,B,m),fa,v,q);e=g+z|0;l=fa+J|0;l=e>>>0>>0?l+1|0:l;g=R-((d>>>0>>0)+l|0)|0;d=d-e|0;g=Kj(d,g,d,g);e=k+g|0;d=fa+o|0;h=e;g=e>>>0>>0?d+1|0:d;e=S;k=h;j=Lj(Kj(u,j,B,m),fa,v,q);h=j+A|0;d=fa+K|0;d=h>>>0>>0?d+1|0:d;d=T-((e>>>0>>0)+d|0)|0;e=e-h|0;e=Kj(e,d,e,d);d=k+e|0;l=fa+g|0;h=Kj(d,d>>>0>>0?l+1|0:l,v,q);d=fa;j=d;i:{j:{if(!d&h>>>0<=1){d=j;g=h;if(h-1|0){break i}break j}g=2;d=0;p=h;e=j;while(1){if(!e&p>>>0<8){break j}o=e;e=e>>>2|0;p=(o&3)<<30|p>>>2;d=d<<1|g>>>31;g=g<<1;continue}}while(1){e=Mj(h,j,g,d)+g|0;l=d+fa|0;l=e>>>0>>0?l+1|0:l;g=(l&1)<<31|e>>>1;d=l>>>1|0;e=Kj(g,d,g,d);o=fa;if((j|0)==(o|0)&e>>>0>h>>>0|j>>>0>>0){continue}break}}o=F[n+20>>2];if(o){p=o-1|0;u=F[F[n+16>>2]+(p>>>3&536870908)>>2];F[n+20>>2]=p;e=E;h=t;y=e-h|0;t=h>>31;E=(e>>31)-(t+(e>>>0>>0)|0)|0;e=Kj(B,m,y,E);j=fa;t=Kj(h,t,v,q);h=t+e|0;e=fa+j|0;e=h>>>0>>0?e+1|0:e;k=h;h=w;j=x;z=h-j|0;x=j>>31;t=(h>>31)-(x+(h>>>0>>0)|0)|0;h=Kj(g,d,z,t);w=h;h=u>>>p&1;A=h?0-w|0:w;p=k+A|0;k=e;e=fa;l=k+(h?0-(e+((w|0)!=0)|0)|0:e)|0;Y=n,Z=Lj(p,p>>>0>>0?l+1|0:l,v,q),F[Y+12>>2]=Z;e=Kj(z,t,B,m);p=fa;u=Kj(v,q,j,x);j=u+e|0;e=fa+p|0;e=j>>>0>>0?e+1|0:e;k=j;d=Kj(g,d,y,E);j=h?d:0-d|0;g=k+j|0;k=e;e=fa;d=k+(h?e:0-(((d|0)!=0)+e|0)|0)|0;Y=n,Z=Lj(g,g>>>0>>0?d+1|0:d,v,q),F[Y+8>>2]=Z}d=(o|0)!=0;break f}e=n;if((m|0)<(s|0)){d=m<<1}else{if((s|0)<=0){F[n+8>>2]=0;F[n+12>>2]=0;break g}d=(s<<1)-2|0}d=(d<<2)+c|0;F[e+8>>2]=F[d>>2];F[n+12>>2]=F[d+4>>2]}d=1}ea=i+80|0;break d}Ca();V()}if(!d){break b}k:{if(F[a+8>>2]<1){break k}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)){g=F[a+32>>2];F[e+g>>2]=h;break l}g=F[a+32>>2];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)<1){break k}d=s<<3;h=d+c|0;j=b+d|0;while(1){f=e<<2;d=f+h|0;f=F[f+j>>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}}s=s+1|0;f=(U|0)>(s|0);if((s|0)==(W|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>s>>>0){continue}break}}Ca();V()}a=f^1}else{a=0}return a&1}function ld(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;g=ea-112|0;ea=g;l=F[a+4>>2];c=F[l+32>>2];n=F[c+8>>2];h=F[c+16>>2];k=F[c+12>>2];f=k;d=F[c+20>>2];a:{if((f|0)<(d|0)?1:(f|0)<=(d|0)?n>>>0<=h>>>0:0){break a}o=F[c>>2];j=G[o+h|0];e=h+1|0;f=e>>>0<1?d+1|0:d;i=c;F[c+16>>2]=e;F[c+20>>2]=f;if((f|0)>(k|0)?1:(f|0)>=(k|0)?e>>>0>=n>>>0:0){break a}q=G[e+o|0];e=h+2|0;f=e>>>0<2?d+1|0:d;p=e;F[c+16>>2]=e;F[i+20>>2]=f;i=j<<24>>24;b:{if((i|0)>=0){e=F[a+216>>2];if(j>>>0>=(F[a+220>>2]-e|0)/144>>>0){break a}e=e+L(j,144)|0;if(F[e>>2]<=-1){break b}break a}if(F[a+212>>2]>-1){break a}e=a+212|0}F[e>>2]=b;e=0;m=H[l+36>>1];if(((m<<8|m>>>8)&65535)>>>0>=258){m=0;if((f|0)>(k|0)?1:(f|0)>=(k|0)?n>>>0<=p>>>0:0){break a}f=G[o+p|0];e=h+3|0;d=e>>>0<3?d+1|0:d;F[c+16>>2]=e;F[c+20>>2]=d;c=f>>>0>1;if(c){break a}e=c?0:f}c:{d:{e:{if(!q){if((i|0)<=-1){i=a+184|0}else{c=F[a+216>>2]+L(j,144)|0;D[c+100|0]=0;i=c+104|0}m=0;f:{switch(e|0){case 0:break f;case 1:break e;default:break a}}f=ea+-64|0;ea=f;j=F[F[a+4>>2]+44>>2];d=sa(80);F[d>>2]=12784;F[d+4>>2]=0;F[d+76>>2]=0;F[d+72>>2]=i;F[d+68>>2]=j;F[d+8>>2]=12948;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;F[d+32>>2]=0;F[d+36>>2]=0;F[d+40>>2]=0;F[d+44>>2]=0;F[d+48>>2]=0;F[d+52>>2]=0;F[d- -64>>2]=0;h=d+56|0;c=h;F[c>>2]=0;F[c+4>>2]=0;e=F[a+8>>2];F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;k=f+24|0;c=k;F[c>>2]=0;F[c+4>>2]=0;c=f;F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c+12>>2]=0;F[c+56>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c>>2]=12948;F[c+4>>2]=e;l=F[e>>2];n=F[e+4>>2];D[c+63|0]=0;Na(k,(n-l>>2>>>0)/3|0,c+63|0);k=F[c+4>>2];l=F[k+28>>2];k=F[k+24>>2];D[c+63|0]=0;Na(c+36|0,l-k>>2,c+63|0);F[c+20>>2]=d;F[c+16>>2]=j;F[c+12>>2]=i;F[c+8>>2]=e;kd(d+8|0,c);Eb(h,F[c+48>>2],F[c+52>>2]);F[g+48>>2]=d;F[c>>2]=12948;c=F[c+48>>2];if(c){F[f+52>>2]=c;ra(c)}F[f>>2]=12764;c=F[f+36>>2];if(c){ra(c)}c=F[f+24>>2];if(c){ra(c)}ea=f- -64|0;break d}m=0;if((i|0)<0|e){break a}c=F[l+44>>2];d=F[a+216>>2];e=sa(80);F[e+76>>2]=0;F[e+68>>2]=c;F[e+8>>2]=11956;F[e>>2]=13076;F[e+4>>2]=0;d=d+L(j,144)|0;f=d+104|0;F[e+72>>2]=f;F[e- -64>>2]=0;F[e+56>>2]=0;F[e+60>>2]=0;F[e+52>>2]=0;F[e+44>>2]=0;F[e+48>>2]=0;F[e+36>>2]=0;F[e+40>>2]=0;F[e+28>>2]=0;F[e+32>>2]=0;F[e+20>>2]=0;F[e+24>>2]=0;F[e+12>>2]=0;F[e+16>>2]=0;F[g+40>>2]=c;F[g+84>>2]=0;F[g+88>>2]=0;F[g+76>>2]=0;F[g+80>>2]=0;F[g+68>>2]=0;F[g+72>>2]=0;F[g+60>>2]=0;F[g+64>>2]=0;F[g+100>>2]=0;F[g+104>>2]=0;F[g+92>>2]=0;F[g+96>>2]=0;F[g+44>>2]=e;c=F[g+44>>2];F[g+8>>2]=F[g+40>>2];F[g+12>>2]=c;c=d+4|0;F[g+32>>2]=c;F[g+36>>2]=f;F[g+52>>2]=0;F[g+56>>2]=0;F[g+48>>2]=11956;d=F[g+36>>2];F[g>>2]=F[g+32>>2];F[g+4>>2]=d;Fe(g+48|0,c,g);d=e+8|0;c=g+48|0;kd(d,c);if((c|0)!=(d|0)){Eb(e+56|0,F[c+48>>2],F[c+52>>2])}Ee(g+48|0);break c}c=ea-112|0;ea=c;e=F[F[a+4>>2]+44>>2];d=sa(120);F[d>>2]=12316;F[d+4>>2]=0;F[d+116>>2]=0;F[d+112>>2]=i;F[d+108>>2]=e;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;F[d+32>>2]=0;F[d+36>>2]=0;F[d+40>>2]=0;F[d+44>>2]=0;F[d+48>>2]=0;F[d+52>>2]=0;F[d+56>>2]=0;F[d+60>>2]=0;F[d+8>>2]=12528;f=d- -64|0;F[f>>2]=0;F[f+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+88>>2]=0;F[d+104>>2]=0;F[d+96>>2]=0;F[d+100>>2]=0;f=F[a+8>>2];F[c+48>>2]=0;F[c+52>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;j=c+32|0;h=j;F[h>>2]=0;F[h+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;h=c- -64|0;F[h>>2]=0;F[h+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+56>>2]=0;F[c+60>>2]=0;F[c+8>>2]=12528;F[c+96>>2]=0;F[c+100>>2]=0;F[c+12>>2]=f;h=F[f>>2];k=F[f+4>>2];D[c+111|0]=0;Na(j,(k-h>>2>>>0)/3|0,c+111|0);j=F[c+12>>2];h=F[j+28>>2];j=F[j+24>>2];D[c+111|0]=0;Na(c+44|0,h-j>>2,c+111|0);F[c+28>>2]=d;F[c+24>>2]=e;F[c+20>>2]=i;F[c+16>>2]=f;i=d+8|0;f=c+8|0;kd(i,f);g:{if((f|0)==(i|0)){F[d+92>>2]=F[f+84>>2];break g}Eb(d+56|0,F[f+48>>2],F[f+52>>2]);Eb(d+68|0,F[f+60>>2],F[f- -64>>2]);Eb(d+80|0,F[f+72>>2],F[f+76>>2]);F[d+92>>2]=F[f+84>>2];Ba(d+96|0,F[f+88>>2],F[f+92>>2])}F[g+48>>2]=d;F[c+8>>2]=12528;d=F[c+96>>2];if(d){F[c+100>>2]=d;ra(d)}d=F[c+80>>2];if(d){F[c+84>>2]=d;ra(d)}d=F[c+68>>2];if(d){F[c+72>>2]=d;ra(d)}d=F[c+56>>2];if(d){F[c+60>>2]=d;ra(d)}F[c+8>>2]=12764;d=F[c+44>>2];if(d){ra(d)}d=F[c+32>>2];if(d){ra(d)}ea=c+112|0}e=F[g+48>>2];if(!e){break a}}c=sa(64);F[g+24>>2]=e;d=td(c,g+24|0);c=F[g+24>>2];F[g+24>>2]=0;if(c){ga[F[F[c>>2]+4>>2]](c)}a=F[a+4>>2];F[g+16>>2]=d;h:{if((b|0)<0){break h}f=a+8|0;e=F[a+12>>2];i=F[a+8>>2];c=e-i>>2;i:{if((c|0)>(b|0)){break i}d=b+1|0;if(b>>>0>=c>>>0){jd(f,d-c|0);break i}if(c>>>0<=d>>>0){break i}d=i+(d<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=F[e>>2];F[e>>2]=0;if(c){ga[F[F[c>>2]+4>>2]](c)}if((d|0)!=(e|0)){continue}break}}F[a+12>>2]=d}c=F[g+16>>2];a=F[f>>2];F[g+16>>2]=0;d=a+(b<<2)|0;a=F[d>>2];F[d>>2]=c;if(!a){break h}ga[F[F[a>>2]+4>>2]](a)}m=(b^-1)>>>31|0;a=F[g+16>>2];F[g+16>>2]=0;if(!a){break a}ga[F[F[a>>2]+4>>2]](a)}ea=g+112|0;return m|0}function Fh(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=ea-32|0;ea=f;g=F[a+32>>2];c=H[a+36>>1];a:{b:{if(((c<<8|c>>>8)&65535)>>>0<=513){b=F[g+12>>2];d=b;c=F[g+20>>2];e=c;h=F[g+16>>2];i=h+4|0;c=i>>>0<4?c+1|0:c;k=F[g+8>>2];j=i;i=c;if((b|0)<(c|0)?1:(c|0)>=(b|0)?k>>>0>>0:0){break a}o=F[g>>2];c=o+h|0;l=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[g+16>>2]=j;F[g+20>>2]=i;c=d;b=e;d=h+8|0;b=d>>>0<8?b+1|0:b;e=d;d=b;if((b|0)>(c|0)?1:(b|0)>=(c|0)?e>>>0>k>>>0:0){break a}c=j+o|0;o=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[f+24>>2]=o;F[g+16>>2]=e;F[g+20>>2]=d;break b}if(!rb(1,f+28|0,g)){break a}if(!rb(1,f+24|0,F[a+32>>2])){break a}l=F[f+28>>2];o=F[f+24>>2]}if(l>>>0>1431655765){break a}d=F[a+32>>2];c=d;i=F[c+8>>2];b=i;g=F[c+16>>2];j=b-g|0;e=F[c+12>>2];p=b>>>0>>0;b=F[c+20>>2];h=Lj(j,e-(p+b|0)|0,3,0);c=l;if(!fa&h>>>0>>0){break a}c=Kj(c,0,3,0);if(!fa&c>>>0>>0|((b|0)>(e|0)?1:(b|0)>=(e|0)?g>>>0>=i>>>0:0)){break a}i=G[g+F[d>>2]|0];h=g+1|0;c=h>>>0<1?b+1|0:b;F[d+16>>2]=h;F[d+20>>2]=c;c:{if(!i){d=0;b=ea-32|0;ea=b;F[b+24>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;d:{e:{c=L(l,3);if(c){if(c>>>0>=1073741824){break e}e=L(l,12);d=sa(e);F[b+16>>2]=d;F[b+24>>2]=(c<<2)+d;q=b,r=ua(d,0,e)+e|0,F[q+20>>2]=r}c=qd(c,1,F[a+32>>2],d);if(!(!c|!l)){e=1;i=0;while(1){F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;d=(i<<2)+d|0;g=F[d>>2];h=g>>>1|0;g=(g&1?0-h|0:h)+m|0;F[b>>2]=g;h=F[d+4>>2];j=h>>>1|0;g=g+(h&1?0-j|0:j)|0;F[b+4>>2]=g;d=F[d+8>>2];h=d>>>1|0;m=g+(d&1?0-h|0:h)|0;F[b+8>>2]=m;Ub(F[a+44>>2]+96|0,b);if((e|0)!=(l|0)){e=e+1|0;i=i+3|0;d=F[b+16>>2];continue}break}d=F[b+16>>2]}if(d){F[b+20>>2]=d;ra(d)}ea=b+32|0;break d}va();V()}if(!c){break a}break c}f:{if(o>>>0<=255){if(!l){break c}F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;j=F[d+8>>2];e=F[d+12>>2];b=e;if((b|0)<(c|0)?1:(c|0)>=(b|0)?h>>>0>=j>>>0:0){break f}while(1){g=F[d>>2];m=G[g+h|0];b=c;k=h+1|0;b=k>>>0<1?b+1|0:b;i=d;F[d+16>>2]=k;F[d+20>>2]=b;F[f+8>>2]=m;if((b|0)>(e|0)?1:(b|0)>=(e|0)?k>>>0>=j>>>0:0){break f}m=G[g+k|0];b=c;k=h+2|0;b=k>>>0<2?b+1|0:b;F[d+16>>2]=k;F[i+20>>2]=b;F[f+12>>2]=m;if((b|0)>(e|0)?1:(b|0)>=(e|0)?k>>>0>=j>>>0:0){break f}b=G[g+k|0];e=h+3|0;c=e>>>0<3?c+1|0:c;F[d+16>>2]=e;F[d+20>>2]=c;F[f+16>>2]=b;Ub(F[a+44>>2]+96|0,f+8|0);n=n+1|0;if((n|0)==(l|0)){break c}d=F[a+32>>2];b=d;h=F[b+16>>2];c=F[b+20>>2];F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;j=F[b+8>>2];e=F[b+12>>2];b=e;if((b|0)>(c|0)?1:(c|0)<=(b|0)?h>>>0>>0:0){continue}break}break f}if(o>>>0<=65535){if(!l){break c}F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;i=F[d+12>>2];e=g+3|0;b=e>>>0<3?b+1|0:b;k=F[d+8>>2];j=e;e=b;if((b|0)>(i|0)?1:(b|0)>=(i|0)?k>>>0>>0:0){break f}while(1){m=F[d>>2];b=m+h|0;b=G[b|0]|G[b+1|0]<<8;F[d+16>>2]=j;F[d+20>>2]=e;F[f+8>>2]=b;e=i;b=c;g=h+4|0;b=g>>>0<4?b+1|0:b;p=g;g=b;if((b|0)>(e|0)?1:(b|0)>=(e|0)?p>>>0>k>>>0:0){break f}b=m+j|0;b=G[b|0]|G[b+1|0]<<8;F[d+16>>2]=p;F[d+20>>2]=g;F[f+12>>2]=b;b=c;c=h+6|0;b=c>>>0<6?b+1|0:b;e=c;c=b;if((b|0)>(i|0)?1:(b|0)>=(i|0)?e>>>0>k>>>0:0){break f}b=m+p|0;b=G[b|0]|G[b+1|0]<<8;F[d+16>>2]=e;F[d+20>>2]=c;F[f+16>>2]=b;Ub(F[a+44>>2]+96|0,f+8|0);n=n+1|0;if((n|0)==(l|0)){break c}d=F[a+32>>2];b=d;h=F[b+16>>2];c=F[b+20>>2];F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;g=F[b+12>>2];i=g;k=F[b+8>>2];b=c;e=h+2|0;b=e>>>0<2?b+1|0:b;j=e;e=b;if((b|0)<(g|0)?1:(b|0)<=(g|0)?k>>>0>=j>>>0:0){continue}break}break f}g:{if(I[F[a+44>>2]+80>>2]>2097151){break g}e=H[a+36>>1];if(((e<<8|e>>>8)&65535)>>>0<514){break g}if(!l){break c}F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;if(!rb(1,f+4|0,d)){break f}while(1){F[f+8>>2]=F[f+4>>2];if(!rb(1,f+4|0,F[a+32>>2])){break f}F[f+12>>2]=F[f+4>>2];if(!rb(1,f+4|0,F[a+32>>2])){break f}F[f+16>>2]=F[f+4>>2];Ub(F[a+44>>2]+96|0,f+8|0);n=n+1|0;if((n|0)==(l|0)){break c}c=F[a+32>>2];F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;if(rb(1,f+4|0,c)){continue}break}break f}if(!l){break c}F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;i=F[d+12>>2];e=g+5|0;b=e>>>0<5?b+1|0:b;k=F[d+8>>2];j=e;e=b;if((b|0)>(i|0)?1:(b|0)>=(i|0)?k>>>0>>0:0){break f}while(1){m=F[d>>2];b=m+h|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[d+16>>2]=j;F[d+20>>2]=e;F[f+8>>2]=b;e=i;b=c;g=h+8|0;b=g>>>0<8?b+1|0:b;p=g;g=b;if((b|0)>(e|0)?1:(b|0)>=(e|0)?p>>>0>k>>>0:0){break f}b=m+j|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[d+16>>2]=p;F[d+20>>2]=g;F[f+12>>2]=b;b=h+12|0;c=b>>>0<12?c+1|0:c;e=b;b=c;if((b|0)>(i|0)?1:(b|0)>=(i|0)?e>>>0>k>>>0:0){break f}c=m+p|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[d+16>>2]=e;F[d+20>>2]=b;F[f+16>>2]=c;Ub(F[a+44>>2]+96|0,f+8|0);n=n+1|0;if((n|0)==(l|0)){break c}d=F[a+32>>2];b=d;h=F[b+16>>2];c=F[b+20>>2];F[f+16>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;g=F[b+12>>2];i=g;k=F[b+8>>2];b=c;e=h+4|0;b=e>>>0<4?b+1|0:b;j=e;e=b;if((b|0)<(g|0)?1:(b|0)<=(g|0)?k>>>0>=j>>>0:0){continue}break}}n=0;break a}F[F[a+4>>2]+80>>2]=o;n=1}ea=f+32|0;return n|0}function Ti(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=M(0),i=0,j=M(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;if(F[c>>2]==F[c+4>>2]){f=F[d+80>>2];z=ea-16|0;ea=z;c=F[a+4>>2];q=F[d+48>>2];d=F[F[d>>2]>>2];l=D[b+24|0];r=z+8|0;F[r>>2]=1065353216;J[r>>2]=M(-1<>2];m=sa((l|0)!=(l&1073741823)?-1:l<<2);a:{if(!f){break a}s=F[b>>2];v=F[b+48>>2];k=F[b+68>>2];c=G[b+84|0];n=F[b+44>>2];o=F[b+40>>2];t=o;if((l|0)>=1){y=d+q|0;q=F[a+8>>2];if(!c){b=l&-2;w=l&1;c=0;while(1){a=F[s>>2];d=Kj(o,n,F[k+(p<<2)>>2],0)+v|0;g=ta(m,a+d|0,t);h=J[r>>2];d=0;a=b;if((l|0)!=1){while(1){e=y+(c<<2)|0;i=e;u=d<<2;j=M(R(M(M(h*M(J[u+g>>2]-J[q+u>>2]))+M(.5))));b:{if(M(N(j))>2]=x;u=u|4;j=M(R(M(M(h*M(J[u+g>>2]-J[q+u>>2]))+M(.5))));c:{if(M(N(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(w){e=y+(c<<2)|0;a=d<<2;h=M(R(M(M(h*M(J[a+g>>2]-J[a+q>>2]))+M(.5))));d:{if(M(N(h))>2]=a;c=c+1|0}p=p+1|0;if((f|0)!=(p|0)){continue}break}break a}b=l&-2;w=l&1;c=0;while(1){a=F[s>>2];d=Kj(o,n,g,e)+v|0;p=ta(m,a+d|0,t);h=J[r>>2];d=0;a=b;if((l|0)!=1){while(1){k=y+(c<<2)|0;i=k;u=d<<2;j=M(R(M(M(h*M(J[u+p>>2]-J[q+u>>2]))+M(.5))));e:{if(M(N(j))>2]=x;u=u|4;j=M(R(M(M(h*M(J[u+p>>2]-J[q+u>>2]))+M(.5))));f:{if(M(N(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(w){k=y+(c<<2)|0;a=d<<2;h=M(R(M(M(h*M(J[a+p>>2]-J[a+q>>2]))+M(.5))));g:{if(M(N(h))>2]=a;c=c+1|0}a=g+1|0;e=a>>>0<1?e+1|0:e;g=a;if((f|0)!=(a|0)|e){continue}break}break a}if(!c){a=0;if((f|0)!=1){c=f&-2;while(1){g=F[s>>2];e=a<<2;b=v;d=Kj(o,n,F[e+k>>2],0)+b|0;g=ta(m,g+d|0,t);i=F[s>>2];d=Kj(o,n,F[k+(e|4)>>2],0)+b|0;ta(g,i+d|0,t);a=a+2|0;c=c-2|0;if(c){continue}break}}if(!(f&1)){break a}b=F[s>>2];a=Kj(o,n,F[k+(a<<2)>>2],0)+v|0;ta(m,b+a|0,t);break a}a=f;r=a&1;if((a|0)!=1){a=a&-2;b=0;while(1){f=F[s>>2];c=v;d=Kj(o,n,g,e)+c|0;f=ta(m,f+d|0,t);k=F[s>>2];d=Kj(o,n,g|1,e)+c|0;ta(f,k+d|0,t);c=g+2|0;e=c>>>0<2?e+1|0:e;g=c;c=b-(a>>>0<2)|0;a=a-2|0;b=c;if(a|c){continue}break}}if(!r){break a}b=F[s>>2];a=Kj(o,n,g,e)+v|0;ta(m,b+a|0,t)}ra(m);ea=z+16|0;return 1}z=ea-16|0;ea=z;v=F[a+4>>2];m=F[d+48>>2];d=F[F[d>>2]>>2];r=D[b+24|0];e=z+8|0;F[e>>2]=1065353216;J[e>>2]=M(-1<>2];t=sa((r|0)!=(r&1073741823)?-1:r<<2);k=F[c>>2];c=F[c+4>>2]-k|0;h:{if(!c){break h}l=F[b>>2];v=F[b+48>>2];q=F[b+68>>2];f=G[b+84|0];s=F[b+44>>2];n=F[b+40>>2];o=n;i:{if((r|0)>=1){y=d+m|0;b=c>>31;d=(b+c^b)>>>2|0;b=(c|0)>-1?c:-1;b=L(d,(b|0)<1?b:1);u=b>>>0>1?b:1;g=F[a+8>>2];if(!f){break i}b=r&-2;w=r&1;c=0;m=0;while(1){a=F[l>>2];d=Kj(n,s,F[k+(m<<2)>>2],0)+v|0;q=ta(t,a+d|0,o);h=J[e>>2];d=0;a=b;if((r|0)!=1){while(1){f=y+(c<<2)|0;i=f;p=d<<2;j=M(R(M(M(h*M(J[p+q>>2]-J[g+p>>2]))+M(.5))));j:{if(M(N(j))>2]=x;p=p|4;j=M(R(M(M(h*M(J[p+q>>2]-J[g+p>>2]))+M(.5))));k:{if(M(N(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(w){f=y+(c<<2)|0;a=d<<2;h=M(R(M(M(h*M(J[a+q>>2]-J[a+g>>2]))+M(.5))));l:{if(M(N(h))>2]=a;c=c+1|0}m=m+1|0;if((u|0)!=(m|0)){continue}break}break h}a=c>>31;b=(a+c^a)>>>2|0;a=(c|0)>-1?c:-1;b=L(b,(a|0)<1?a:1);d=b>>>0>1?b:1;if(f){a=0;if(b>>>0>=2){c=d&-2;while(1){g=F[l>>2];f=a<<2;b=v;e=Kj(n,s,F[f+k>>2],0)+b|0;g=ta(t,g+e|0,o);i=F[l>>2];e=Kj(n,s,F[k+(f|4)>>2],0)+b|0;ta(g,i+e|0,o);a=a+2|0;c=c-2|0;if(c){continue}break}}if(!(d&1)){break h}b=F[l>>2];a=Kj(n,s,F[k+(a<<2)>>2],0)+v|0;ta(t,b+a|0,o);break h}a=0;if(b>>>0>=2){c=d&-2;while(1){g=F[l>>2];f=a<<2;b=v;e=Kj(n,s,F[q+(F[f+k>>2]<<2)>>2],0)+b|0;g=ta(t,g+e|0,o);i=F[l>>2];e=Kj(n,s,F[q+(F[k+(f|4)>>2]<<2)>>2],0)+b|0;ta(g,i+e|0,o);a=a+2|0;c=c-2|0;if(c){continue}break}}if(!(d&1)){break h}b=F[l>>2];a=Kj(n,s,F[q+(F[k+(a<<2)>>2]<<2)>>2],0)+v|0;ta(t,b+a|0,o);break h}b=r&-2;A=r&1;c=0;m=0;while(1){a=F[l>>2];d=Kj(n,s,F[q+(F[k+(m<<2)>>2]<<2)>>2],0)+v|0;p=ta(t,a+d|0,o);h=J[e>>2];d=0;a=b;if((r|0)!=1){while(1){f=y+(c<<2)|0;i=f;w=d<<2;j=M(R(M(M(h*M(J[w+p>>2]-J[g+w>>2]))+M(.5))));m:{if(M(N(j))>2]=x;w=w|4;j=M(R(M(M(h*M(J[w+p>>2]-J[g+w>>2]))+M(.5))));n:{if(M(N(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(A){f=y+(c<<2)|0;a=d<<2;h=M(R(M(M(h*M(J[a+p>>2]-J[a+g>>2]))+M(.5))));o:{if(M(N(h))>2]=a;c=c+1|0}m=m+1|0;if((u|0)!=(m|0)){continue}break}}ra(t);ea=z+16|0;return 1}function Od(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=ea-16|0;ea=e;F[e+12>>2]=a;a:{if(a>>>0<=211){a=F[Nd(15424,15616,e+12|0)>>2];break a}if(a>>>0>=4294967292){Gc();V()}f=(a>>>0)/210|0;d=L(f,210);F[e+8>>2]=a-d;g=Nd(15616,15808,e+8|0)-15616>>2;b:{while(1){a=F[(g<<2)+15616>>2]+d|0;d=5;b=h;c:{d:{while(1){h=b;if((d|0)==47){d=211;while(1){b=(a>>>0)/(d>>>0)|0;if(b>>>0>>0){break c}if((L(b,d)|0)==(a|0)){break d}b=d+10|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+12|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+16|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+18|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+22|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+28|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+30|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+36|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+40|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+42|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+46|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+52|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+58|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+60|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+66|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+70|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+72|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+78|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+82|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+88|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+96|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+100|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+102|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+106|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+108|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+112|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+120|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+126|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+130|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+136|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+138|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+142|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+148|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+150|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+156|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+162|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+166|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+168|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+172|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+178|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+180|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+186|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+190|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+192|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+196|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+198|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+208|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}d=d+210|0;if((L(b,c)|0)!=(a|0)){continue}break}break d}b=F[(d<<2)+15424>>2];c=(a>>>0)/(b>>>0)|0;i=L(b,c);c=b>>>0>c>>>0;if(!c){b=c?a:h;d=d+1|0;if((a|0)!=(i|0)){continue}}break}if((a|0)!=(i|0)|c){break b}}b=g+1|0;a=(b|0)==48;g=a?0:b;f=a+f|0;d=L(f,210);continue}break}F[e+12>>2]=a;break a}F[e+12>>2]=a;a=c?a:h}ea=e+16|0;return a}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=0,q=0;l=ea-16|0;ea=l;a:{b:{c:{d:{if(G[F[a+4>>2]+36|0]<=1){m=-1;c=F[b+20>>2];h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;e=d;d=c;f=F[b+12>>2];if((c|0)>(f|0)?1:(c|0)>=(f|0)?e>>>0>I[b+8>>2]:0){break c}c=h+F[b>>2]|0;j=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[l+12>>2]=j;F[b+16>>2]=e;F[b+20>>2]=d;break d}m=-1;if(!Ea(1,l+12|0,b)){break c}j=F[l+12>>2]}e:{f:{g:{h:{i:{j:{if(!j){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){h=0;k:{l:{while(1){if(!Ea(1,l+8|0,b)){break c}c=F[l+8>>2];if(!Ea(1,l+8|0,b)){break c}g=c+g|0;c=F[l+8>>2];if(g>>>0>>0){break c}n=g-c|0;i=F[a+40>>2];m:{if((i|0)!=F[a+44>>2]){F[i+4>>2]=g;F[i>>2]=n;F[a+40>>2]=i+12;break m}d=F[a+36>>2];e=i-d|0;f=(e|0)/12|0;i=f+1|0;if(i>>>0>=357913942){break l}k=f<<1;k=f>>>0<178956970?i>>>0>k>>>0?i:k:357913941;c=0;n:{if(!k){break n}if(k>>>0>=357913942){break k}c=sa(L(k,12))}f=c+L(f,12)|0;F[f+4>>2]=g;F[f>>2]=n;n=f+L((e|0)/-12|0,12)|0;i=f+12|0;if((e|0)>=1){ta(n,d,e)}F[a+44>>2]=c+L(k,12);F[a+40>>2]=i;F[a+36>>2]=n;if(!d){break m}ra(d)}h=h+1|0;if((j|0)!=(h|0)){continue}break}g=0;Fb(b,0,0);d=j>>>0>1?j:1;while(1){c=G[b+36|0];h=H[F[a+4>>2]+36>>1];o:{if(((h<<8|h>>>8)&65535)>>>0<=513){if(!c){break o}i=0;c=F[b+32>>2];j=c>>>3|0;e=F[b+24>>2];h=j+e|0;f=F[b+28>>2];p:{if(h>>>0>=f>>>0){h=c;break p}i=G[h|0];h=c+1|0;F[b+32>>2]=h;j=h>>>3|0;i=i>>>(c&7)&1}if(f>>>0<=e+j>>>0){break o}F[b+32>>2]=h+1;break o}if(!c){break o}i=0;c=F[b+32>>2];h=F[b+24>>2]+(c>>>3|0)|0;if(h>>>0>=I[b+28>>2]){break o}h=G[h|0];F[b+32>>2]=c+1;i=h>>>(c&7)&1}c=F[a+36>>2]+L(g,12)|0;D[c+8|0]=G[c+8|0]&254|i&1;g=g+1|0;if((d|0)!=(g|0)){continue}break}D[b+36|0]=0;c=F[b+20>>2];d=0;g=F[b+32>>2]+7|0;d=g>>>0<7?1:d;e=d>>>3|0;g=(d&7)<<29|g>>>3;d=g+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}h=0;while(1){e=F[b+12>>2];g=e;c=F[b+20>>2];d=c;k=F[b+16>>2];f=k+4|0;c=f>>>0<4?c+1|0:c;n=F[b+8>>2];o=f;f=c;if((c|0)>(e|0)?1:(c|0)>=(e|0)?n>>>0>>0:0){break c}p=F[b>>2];c=p+k|0;q=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=o;F[b+20>>2]=f;e=g;c=d;f=k+8|0;c=f>>>0<8?c+1|0:c;if((c|0)>(e|0)?1:(c|0)>=(e|0)?f>>>0>n>>>0:0){break c}e=o+p|0;o=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=c;if((c|0)>(g|0)?1:(c|0)>=(g|0)?f>>>0>=n>>>0:0){break c}g=G[f+p|0];e=k+9|0;d=e>>>0<9?d+1|0:d;c=b;F[c+16>>2]=e;F[c+20>>2]=d;i=g&1|i&-2;c=F[a+40>>2];q:{if((c|0)!=F[a+44>>2]){D[c+8|0]=i;F[c+4>>2]=o;F[c>>2]=q;F[a+40>>2]=c+12;break q}g=F[a+36>>2];e=c-g|0;d=(e|0)/12|0;f=d+1|0;if(f>>>0>=357913942){break i}k=d<<1;f=d>>>0<178956970?f>>>0>k>>>0?f:k:357913941;c=0;r:{if(!f){break r}if(f>>>0>=357913942){break a}c=sa(L(f,12))}d=c+L(d,12)|0;D[d+8|0]=i;F[d+4>>2]=o;F[d>>2]=q;k=d+L((e|0)/-12|0,12)|0;if((e|0)>=1){ta(k,g,e)}F[a+44>>2]=c+L(f,12);F[a+40>>2]=d+12;F[a+36>>2]=k;if(!g){break q}ra(g)}h=h+1|0;if((j|0)!=(h|0)){continue}break}}F[l+8>>2]=0;c=H[F[a+4>>2]+36>>1];c=(c<<8|c>>>8)&65535;s:{if(c>>>0<=511){c=F[b+20>>2];h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;g=d;d=c;e=F[b+12>>2];if((c|0)>(e|0)?1:(c|0)>=(e|0)?g>>>0>I[b+8>>2]:0){break c}c=h+F[b>>2]|0;m=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;break s}if((c|0)!=512){break e}if(!Ea(1,l+8|0,b)){break c}m=F[l+8>>2]}if(!m){break e}c=H[F[a+4>>2]+36>>1];if(((c<<8|c>>>8)&65535)>>>0<258){break f}i=0;g=0;while(1){if(!Ea(1,l+4|0,b)){break g}g=F[l+4>>2]+g|0;c=F[a+52>>2];t:{if((c|0)!=F[a+56>>2]){F[c>>2]=g;F[a+52>>2]=c+4;break t}d=F[a+48>>2];h=c-d|0;f=h>>2;e=f+1|0;if(e>>>0>=1073741824){break h}j=h>>1;e=f>>>0<536870911?e>>>0>j>>>0?e:j:1073741823;c=0;u:{if(!e){break u}if(e>>>0>=1073741824){break a}c=sa(e<<2)}f=c+(f<<2)|0;F[f>>2]=g;if((h|0)>=1){ta(c,d,h)}F[a+56>>2]=c+(e<<2);F[a+52>>2]=f+4;F[a+48>>2]=c;if(!d){break t}ra(d)}i=i+1|0;if((m|0)!=(i|0)){continue}break}break e}va();V()}va();V()}m=-1;break c}j=0;while(1){c=F[b+20>>2];h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;g=d;d=c;e=F[b+12>>2];if((c|0)>(e|0)?1:(c|0)>=(e|0)?g>>>0>I[b+8>>2]:0){m=-1;break c}c=h+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=F[a+52>>2];v:{if((c|0)!=F[a+56>>2]){F[c>>2]=e;F[a+52>>2]=c+4;break v}d=F[a+48>>2];h=c-d|0;f=h>>2;g=f+1|0;if(g>>>0>=1073741824){break b}i=h>>1;g=f>>>0<536870911?g>>>0>i>>>0?g:i:1073741823;c=0;w:{if(!g){break w}if(g>>>0>=1073741824){break a}c=sa(g<<2)}f=c+(f<<2)|0;F[f>>2]=e;if((h|0)>=1){ta(c,d,h)}F[a+56>>2]=c+(g<<2);F[a+52>>2]=f+4;F[a+48>>2]=c;if(!d){break v}ra(d)}j=j+1|0;if((j|0)!=(m|0)){continue}break}}m=F[b+16>>2]}ea=l+16|0;return m}va();V()}wa(12220);V()}function kc(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:d:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break d}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break e}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break f}b=F[a+48>>2]+Kj(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>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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break g}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break h}b=F[a+48>>2]+Kj(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>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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break i}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break j}b=F[a+48>>2]+Kj(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];g=F[f>>2];h=g+128|0;e=h>>>0<128?e+1|0:e;if(!e&h>>>0>255|e){break a}D[b+d|0]=g;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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break k}b=F[a+48>>2]+Kj(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];g=F[f>>2];if(!e&g>>>0>127|e){break a}D[b+d|0]=g;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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break l}b=F[a+48>>2]+Kj(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){g=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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break n}b=F[a+48>>2]+Kj(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){g=b+d|0;j=K[f>>3];o:{if(N(j)<2147483648){e=~~j;break o}e=-2147483648}D[g|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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break p}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0)}k=1}return k}function jc(a,b,c,d){var e=0,f=0,g=0,h=M(0),i=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)<1){break d}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break e}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break f}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break g}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break h}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break i}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break j}b=F[a+48>>2]+Kj(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];g=F[f>>2];if(!e&g>>>0>255|e){break a}D[b+d|0]=g;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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break k}b=F[a+48>>2]+Kj(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];g=F[f>>2];if(!e&g>>>0>255|e){break a}D[b+d|0]=g;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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break l}b=F[a+48>>2]+Kj(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){g=b+d|0;h=J[f>>2];m:{if(h=M(0)){e=~~h>>>0;break m}e=0}D[g|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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break n}b=F[a+48>>2]+Kj(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){g=b+d|0;i=K[f>>3];o:{if(i<4294967296&i>=0){e=~~i>>>0;break o}e=0}D[g|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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0);break b;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break p}b=F[a+48>>2]+Kj(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}if((c|0)<=(e|0)){break b}ua(d+e|0,0,c-e|0)}j=1}return j}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;a:{b:{c:{d:{e:{if(F[a+92>>2]==F[a+88>>2]){break e}d=F[a+52>>2];f:{if((d|0)!=F[a+56>>2]){F[d>>2]=b;F[a+52>>2]=d+4;break f}h=F[a+48>>2];g=d-h|0;e=g>>2;c=e+1|0;if(c>>>0>=1073741824){break b}f=g>>1;c=e>>>0<536870911?c>>>0>f>>>0?c:f:1073741823;d=0;g:{if(!c){break g}if(c>>>0>=1073741824){break a}d=sa(c<<2)}f=d+(e<<2)|0;F[f>>2]=b;if((g|0)>=1){ta(d,h,g)}F[a+56>>2]=d+(c<<2);F[a+52>>2]=f+4;F[a+48>>2]=d;if(!h){break f}ra(h)}F[a+84>>2]=0;f=-1;d=-1;h:{if((b|0)==-1){break h}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]}c=((b>>>0)%3|0?-1:2)+b|0;if((c|0)==-1){break h}d=F[F[e>>2]+(c<<2)>>2]}c=F[a+36>>2];h=c+(f>>>3&536870908)|0;g=F[h>>2];e=1<>2]=e|g;h=a+8|0;if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b-2|0}else{c=-1}Wa(h,f,c);c=F[a+36>>2]}e=(d>>>3&536870908)+c|0;c=F[e>>2];f=1<>2]=c|f;c=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}Wa(c,d,f)}f=-1;f=(b|0)!=-1?F[F[F[a+4>>2]>>2]+(b<<2)>>2]:f;e=F[a+36>>2]+(f>>>3&536870908)|0;c=F[e>>2];d=1<>2]=c|d;Wa(a+8|0,f,b)}c=F[a+84>>2];if((c|0)>2){break e}while(1){f=L(c,12)+a|0;b=F[f+52>>2];if((b|0)==F[f+48>>2]){c=c+1|0;if((c|0)!=3){continue}break e}d=b-4|0;b=F[d>>2];F[f+52>>2]=d;F[a+84>>2]=c;if((b|0)==-1){break e}f=F[a+24>>2];d=(b>>>0)/3|0;j:{if(F[f+(d>>>3&268435452)>>2]>>>d&1){break j}k:{while(1){k=(b>>>0)/3|0;d=(k>>>3&268435452)+f|0;F[d>>2]=F[d>>2]|1<>2]>>2]+(b<<2)>>2]:f;e=F[a+36>>2]+(f>>>3&536870908)|0;c=F[e>>2];d=1<>2]=c|d;h=F[(F[F[a+16>>2]+96>>2]+L(k,12)|0)+((b>>>0)%3<<2)>>2];l=F[F[a+20>>2]+4>>2];d=F[l+4>>2];r:{if((d|0)!=F[l+8>>2]){F[d>>2]=h;F[l+4>>2]=d+4;break r}i=F[l>>2];j=d-i|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break q}c=j>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;d=0;s:{if(!e){break s}if(e>>>0>=1073741824){break a}d=sa(e<<2)}c=d+(g<<2)|0;F[c>>2]=h;if((j|0)>=1){ta(d,i,j)}F[l+8>>2]=d+(e<<2);F[l+4>>2]=c+4;F[l>>2]=d;if(!i){break r}ra(i)}i=F[a+12>>2];d=F[i+4>>2];t:{if((d|0)!=F[i+8>>2]){F[d>>2]=b;F[i+4>>2]=d+4;break t}j=F[i>>2];h=d-j|0;g=h>>2;e=g+1|0;if(e>>>0>=1073741824){break p}c=h>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;d=0;u:{if(!e){break u}if(e>>>0>=1073741824){break a}d=sa(e<<2)}c=d+(g<<2)|0;F[c>>2]=b;if((h|0)>=1){ta(d,j,h)}F[i+8>>2]=d+(e<<2);F[i+4>>2]=c+4;F[i>>2]=d;if(!j){break t}ra(j)}d=F[a+12>>2];F[F[d+12>>2]+(f<<2)>>2]=F[d+24>>2];F[d+24>>2]=F[d+24>>2]+1}if((b|0)==-1){break k}h=F[a+4>>2];d=-1;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]}b=(b-L(k,3)|0?-1:2)+b|0;if((b|0)!=-1){d=F[F[h+12>>2]+(b<<2)>>2]}g=(d|0)==-1;e=(d>>>0)/3|0;c=(f>>>0)/3|0;b=(f|0)==-1;if(!b){b=b?-1:c;b=F[F[a+24>>2]+(b>>>3&536870908)>>2]&1<>2]+(b>>>3&536870908)>>2]>>>b&1){break v}b=0;c=F[F[h>>2]+(d<<2)>>2];if(!(F[F[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){b=F[a+88>>2]+(c<<2)|0;c=F[b>>2];F[b>>2]=c+1;b=(c|0)<1?2:1}if(!(!l|F[a+84>>2]<(b|0))){b=d;f=F[a+24>>2];continue}m=L(b,12)+a|0;j=m;c=F[j+52>>2];w:{if((c|0)!=F[j+56>>2]){F[c>>2]=d;F[j+52>>2]=c+4;break w}k=F[m+48>>2];i=c-k|0;h=i>>2;g=h+1|0;if(g>>>0>=1073741824){break d}e=i>>1;g=h>>>0<536870911?e>>>0>>0?g:e:1073741823;c=0;x:{if(!g){break x}if(g>>>0>=1073741824){break a}c=sa(g<<2)}e=c+(h<<2)|0;F[e>>2]=d;if((i|0)>=1){ta(c,k,i)}F[m+48>>2]=c;F[j+52>>2]=e+4;F[m+56>>2]=c+(g<<2);if(!k){break w}ra(k)}if(F[a+84>>2]<=(b|0)){break v}F[a+84>>2]=b}if(l){break k}b=-1;if((f|0)==-1){break l}}b=F[F[F[a+4>>2]>>2]+(f<<2)>>2]}d=0;if(!(F[F[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=F[a+88>>2]+(b<<2)|0;d=F[b>>2];F[b>>2]=d+1;d=(d|0)<1?2:1}if(F[a+84>>2]>=(d|0)){b=f;f=F[a+24>>2];continue}break}k=L(d,12)+a|0;h=k;b=F[h+52>>2];y:{if((b|0)!=F[h+56>>2]){F[b>>2]=f;F[h+52>>2]=b+4;break y}i=F[k+48>>2];j=b-i|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break c}c=j>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;b=0;z:{if(!e){break z}if(e>>>0>=1073741824){break a}b=sa(e<<2)}c=b+(g<<2)|0;F[c>>2]=f;if((j|0)>=1){ta(b,i,j)}F[k+48>>2]=b;F[h+52>>2]=c+4;F[k+56>>2]=b+(e<<2);if(!i){break y}ra(i)}c=F[a+84>>2];if((c|0)<=(d|0)){break j}F[a+84>>2]=d;c=d;break j}c=F[a+84>>2]}if((c|0)<3){continue}break}}return 1}va();V()}va();V()}va();V()}wa(12220);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,n=0,o=0,p=0;d=ea-48|0;ea=d;c=F[F[a+4>>2]+44>>2];g=F[a+8>>2];e=F[g>>2];g=F[g+4>>2];F[d+40>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;g=(g-e>>2>>>0)/3|0;j=F[c+96>>2];e=(F[c+100>>2]-j|0)/12|0;a:{if(g>>>0>e>>>0){ad(c+96|0,g-e|0,d+32|0);break a}if(e>>>0<=g>>>0){break a}F[c+100>>2]=j+L(g,12)}b:{if(F[a+216>>2]==F[a+220>>2]){k=F[a+4>>2];f=F[k+44>>2];h=F[f+100>>2];if((h|0)!=F[f+96>>2]){c=0;while(1){g=-1;i=0;e=-1;c:{d:{e:{j=L(c,3);if((j|0)==-1){break e}l=-1;e=F[F[F[a+8>>2]>>2]+(j<<2)>>2];i=j+1|0;if((i|0)!=-1){break e}j=0;break d}l=F[F[F[a+8>>2]>>2]+(i<<2)>>2];j=j+2|0;if((j|0)==-1){break c}}g=F[F[F[a+8>>2]>>2]+(j<<2)>>2]}j=c+1|0;i=F[f+96>>2];h=(h-i|0)/12|0;if(h>>>0<=c>>>0){F[d+40>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;ad(f+96|0,j-h|0,d+32|0);i=F[f+96>>2];k=F[a+4>>2]}c=L(c,12)+i|0;F[c+8>>2]=g;F[c+4>>2]=l;F[c>>2]=e;c=j;f=F[k+44>>2];h=F[f+100>>2];if(c>>>0<(h-F[f+96>>2]|0)/12>>>0){continue}break}}F[F[k+4>>2]+80>>2]=b;c=1;break b}j=0;F[d+24>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;k=F[a+8>>2];b=F[k>>2];c=F[k+4>>2];F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;f:{g:{h:{i:{j:{k:{l:{b=c-b|0;if(b){if((b|0)<=-1){break l}c=sa(b);F[d>>2]=c;F[d+8>>2]=c+(b>>2<<2);o=d,p=ua(c,0,b)+b|0,F[o+4>>2]=p}c=F[k+24>>2];if((F[k+28>>2]-c|0)<=0){break g}while(1){g=F[(j<<2)+c>>2];m:{if((g|0)==-1){break m}n:{if(F[F[a+120>>2]+(j>>>3&536870908)>>2]>>>j&1){break n}l=F[a+216>>2];b=F[a+220>>2]-l|0;if(!b){break n}f=((g>>>0)%3|0?-1:2)+g|0;b=(b|0)/144|0;m=b>>>0>1?b:1;i=0;while(1){n=g<<2;h=l+L(i,144)|0;b=F[n+F[F[h+68>>2]>>2]>>2];o:{if(!(F[F[h+16>>2]+(b>>>3&536870908)>>2]>>>b&1)){break o}b=g;c=-1;p:{if((f|0)==-1){break p}e=F[F[k+12>>2]+(f<<2)>>2];c=-1;if((e|0)==-1){break p}c=e-1|0;if((e>>>0)%3|0){break p}c=e+2|0}if((b|0)==(c|0)){break o}h=F[h+32>>2];n=F[h+n>>2];while(1){b=0;if((c|0)==-1){break f}if(F[h+(c<<2)>>2]!=(n|0)){g=c;break n}e=g;c=((c>>>0)%3|0?-1:2)+c|0;b=-1;q:{if((c|0)==-1){break q}c=F[F[k+12>>2]+(c<<2)>>2];b=-1;if((c|0)==-1){break q}b=c-1|0;if((c>>>0)%3|0){break q}b=c+2|0}c=b;if((e|0)!=(c|0)){continue}break}}i=i+1|0;if((m|0)!=(i|0)){continue}break}}b=F[d+20>>2];c=F[d+16>>2];f=b-c|0;i=f>>2;F[F[d>>2]+(g<<2)>>2]=i;h=F[d+24>>2];r:{if(h>>>0>b>>>0){F[b>>2]=g;F[d+20>>2]=b+4;break r}e=i+1|0;if(e>>>0>=1073741824){break k}h=h-c|0;l=h>>1;e=h>>2>>>0<536870911?e>>>0>l>>>0?e:l:1073741823;b=0;s:{if(!e){break s}if(e>>>0>=1073741824){break j}b=sa(e<<2)}i=b+(i<<2)|0;F[i>>2]=g;if((f|0)>=1){ta(b,c,f)}F[d+24>>2]=b+(e<<2);F[d+20>>2]=i+4;F[d+16>>2]=b;if(!c){break r}ra(c);k=F[a+8>>2]}if((g|0)==-1){break m}b=((g>>>0)%3|0?-1:2)+g|0;if((b|0)==-1){break m}b=F[F[k+12>>2]+(b<<2)>>2];if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}e=g;if((e|0)==(c|0)){break m}while(1){b=c;t:{u:{f=F[a+216>>2];c=F[a+220>>2]-f|0;if(!c){break u}c=(c|0)/144|0;i=c>>>0>1?c:1;c=0;while(1){h=F[(f+L(c,144)|0)+32>>2];l=b<<2;if(F[h+l>>2]==F[h+(e<<2)>>2]){c=c+1|0;if((i|0)!=(c|0)){continue}break u}break}c=F[d+20>>2];e=F[d+16>>2];i=c-e|0;h=i>>2;F[l+F[d>>2]>>2]=h;l=F[d+24>>2];if(l>>>0>c>>>0){F[c>>2]=b;F[d+20>>2]=c+4;break t}f=h+1|0;if(f>>>0>=1073741824){break i}l=l-e|0;m=l>>1;f=l>>2>>>0<536870911?f>>>0>m>>>0?f:m:1073741823;c=0;v:{if(!f){break v}if(f>>>0>=1073741824){break h}c=sa(f<<2)}h=c+(h<<2)|0;F[h>>2]=b;if((i|0)>=1){ta(c,e,i)}F[d+24>>2]=c+(f<<2);F[d+20>>2]=h+4;F[d+16>>2]=c;if(!e){break t}ra(e);k=F[a+8>>2];break t}c=F[d>>2];F[c+(b<<2)>>2]=F[c+(e<<2)>>2]}if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}c=F[F[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break m}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}e=b;if((c|0)!=(g|0)){continue}break}}j=j+1|0;c=F[k+24>>2];if((j|0)>2]-c>>2){continue}break}break g}va();V()}va();V()}wa(12220);V()}va();V()}wa(12220);V()}j=F[a+4>>2];f=F[j+44>>2];e=F[f+100>>2];if((e|0)!=F[f+96>>2]){c=0;while(1){b=c+1|0;k=L(c,12);g=k+F[d>>2]|0;i=F[g+8>>2];h=F[g+4>>2];g=F[g>>2];l=c;c=F[f+96>>2];e=(e-c|0)/12|0;if(l>>>0>=e>>>0){F[d+40>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;ad(f+96|0,b-e|0,d+32|0);j=F[a+4>>2];c=F[f+96>>2]}c=c+k|0;F[c+8>>2]=i;F[c+4>>2]=h;F[c>>2]=g;c=b;f=F[j+44>>2];e=F[f+100>>2];if(c>>>0<(e-F[f+96>>2]|0)/12>>>0){continue}break}}F[F[j+4>>2]+80>>2]=F[d+20>>2]-F[d+16>>2]>>2;b=1}c=b;a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}a=F[d+16>>2];if(!a){break b}F[d+20>>2]=a;ra(a)}ea=d+48|0;return c}function Ua(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=0,l=0;a:{b:{c:{if(!d){break c}d:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;f=D[b|0];F[e>>2]=f;F[e+4>>2]=f>>31;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 a;case 1:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=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 a;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;f=E[b>>1];F[e>>2]=f;F[e+4>>2]=f>>31;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 a;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;F[e>>2]=H[b>>1];F[e+4>>2]=0;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 a;case 4:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;f=F[b>>2];F[e>>2]=f;F[e+4>>2]=f>>31;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 a;case 5:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=0;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 a;case 6:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}f=F[b+4>>2];e=(g<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=f;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 a;case 7:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=F[b>>2];f=F[b+4>>2];k=f;if((f|0)<0){break b}f=(g<<3)+d|0;F[f>>2]=e;F[f+4>>2]=k;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 a;case 8:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break b}e=(g<<3)+d|0;h=e;i=J[b>>2];e:{if(M(N(i))=M(1)?i>M(0)?~~M(P(M(R(M(i*M(2.3283064365386963e-10)))),M(4294967296)))>>>0:~~M(S(M(M(i-M(~~i>>>0>>>0))*M(2.3283064365386963e-10))))>>>0:0;l=~~i>>>0;break e}f=-2147483648;l=0}F[h>>2]=l;F[e+4>>2]=f;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 a;case 9:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break b}e=(g<<3)+d|0;h=e;j=K[b>>3];f:{if(N(j)<0x8000000000000000){f=N(j)>=1?j>0?~~P(R(j*2.3283064365386963e-10),4294967295)>>>0:~~S((j-+(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;l=~~j>>>0;break f}f=-2147483648;l=0}F[h>>2]=l;F[e+4>>2]=f;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 a;case 10:break d;default:break c}}e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=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}ua((e<<3)+d|0,0,c-e<<3)}return}return}ua((e<<3)+d|0,0,c-e<<3)}function Xa(a,b,c,d){var e=0,f=0,g=0,h=M(0),i=0;a:{b:{c:{if(!d){break c}d:{switch(F[a+28>>2]-1|0){case 0:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(D[b|0]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h/M(127)}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 a;case 1:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(G[b|0]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h/M(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}}if((c|0)<=(e|0)){break c}break a;case 2:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(E[b>>1]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h/M(32767)}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 a;case 3:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(H[b>>1]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h/M(65535)}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 a;case 4:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(F[b>>2]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h*M(4.656612873077393e-10)}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 a;case 5:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(I[b>>2]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h*M(2.3283064365386963e-10)}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 a;case 6:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(+I[b>>2]+ +F[b+4>>2]*4294967296);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h*M(1.0842021724855044e-19)}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 a;case 7:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(+I[b>>2]+ +I[b+4>>2]*4294967296);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h*M(5.421010862427522e-20)}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 a;case 8:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}J[(g<<2)+d>>2]=J[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 a;case 9:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}J[(g<<2)+d>>2]=K[b>>3];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 a;case 10:break d;default:break c}}i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[f+4>>2]<=b>>>0){break b}J[(g<<2)+d>>2]=G[b|0]?M(1):M(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}ua((e<<2)+d|0,0,c-e<<2)}return i}return 0}ua((e<<2)+d|0,0,c-e<<2);return 1}function Ob(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;d=F[a+16>>2];D[f+92|0]=1;F[f+88>>2]=b;F[f+84>>2]=b;F[f+80>>2]=d;i=F[a+20>>2];e=F[i>>2];a:{b:{d=F[F[d+28>>2]+(b<<2)>>2];if(d>>>0>2]-e>>2>>>0){e=F[F[a+8>>2]+(F[e+(d<<2)>>2]<<2)>>2];d=F[a+4>>2];if(!G[d+84|0]){e=F[F[d+68>>2]+(e<<2)>>2]}F[f+72>>2]=0;F[f+76>>2]=0;i=f- -64|0;F[i>>2]=0;F[i+4>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;Ua(d,e,D[d+24|0],f+56|0);d=b+1|0;e=(d>>>0)%3|0;if(b>>>0<=d>>>0){i=e?d:b-2|0;o=((b>>>0)%3|0?-1:2)+b|0;while(1){e=i;d=o;c:{if(!F[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break c}d=b+2|0}g=F[a+20>>2];b=F[g>>2];e=F[F[F[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=F[g+4>>2]-b>>2>>>0){break b}e=F[F[a+8>>2]+(F[b+(e<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<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;Ua(b,e,D[b+24|0],f+32|0);e=F[a+20>>2];b=F[e>>2];d=F[F[F[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=F[e+4>>2]-b>>2>>>0){break a}e=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<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;Ua(b,e,D[b+24|0],f+8|0);d=F[f+8>>2];b=F[f+56>>2];g=d-b|0;l=F[f+60>>2];e=F[f+12>>2]-(l+(b>>>0>d>>>0)|0)|0;h=F[f+40>>2];d=F[f+64>>2];v=h-d|0;t=F[f+68>>2];h=F[f+44>>2]-(t+(h>>>0>>0)|0)|0;p=Kj(g,e,v,h);u=k-p|0;j=j-(fa+(k>>>0

>>0)|0)|0;m=u;k=F[f+16>>2];p=k-d|0;t=F[f+20>>2]-((d>>>0>k>>>0)+t|0)|0;k=F[f+32>>2];u=k-b|0;l=F[f+36>>2]-((b>>>0>k>>>0)+l|0)|0;d=Kj(p,t,u,l);k=m+d|0;b=fa+j|0;b=d>>>0>k>>>0?b+1|0:b;j=b;x=q;m=g;b=F[f+48>>2];d=F[f+72>>2];g=b-d|0;q=F[f+76>>2];w=F[f+52>>2]-(q+(b>>>0>>0)|0)|0;m=Kj(m,e,g,w);e=x+m|0;b=fa+n|0;b=e>>>0>>0?b+1|0:b;n=F[f+24>>2];m=n-d|0;d=F[f+28>>2]-((d>>>0>n>>>0)+q|0)|0;n=Kj(m,d,u,l);q=e-n|0;n=b-(fa+(e>>>0>>0)|0)|0;b=Kj(p,t,g,w);e=r-b|0;b=s-(fa+(b>>>0>r>>>0)|0)|0;s=Kj(m,d,v,h);r=s+e|0;b=fa+b|0;b=r>>>0>>0?b+1|0:b;s=b;b=F[f+88>>2];d=F[f+80>>2];d:{if(G[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}e=b+1|0;b=(e>>>0)%3|0?e:b-2|0;if((b|0)==-1|F[F[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=F[F[F[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}F[f+88>>2]=-1;break f}e=b+1|0;b=(e>>>0)%3|0?e:b-2|0;F[f+88>>2]=b;if((b|0)!=-1){break e}}b=-1;e=F[f+84>>2];i:{if((e|0)==-1){break i}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1|F[F[d>>2]+(e>>>3&536870908)>>2]>>>e&1){break i}d=F[F[F[d+64>>2]+12>>2]+(e<<2)>>2];if((d|0)==-1){break i}if((d>>>0)%3|0){b=d-1|0;break i}b=d+2|0}D[f+92|0]=0;F[f+88>>2]=b;break d}if((b|0)!=F[f+84>>2]){break d}F[f+88>>2]=-1;break d}e=-1;j:{if((b|0)==-1){break j}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)==-1|F[F[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break j}b=F[F[F[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break j}if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0}F[f+88>>2]=e}b=F[f+88>>2];if((b|0)!=-1){continue}break}}d=s;o=d>>31;g=o;e=g+r|0;d=d>>31;b=s+d|0;l=e^g;g=d^(e>>>0>>0?b+1|0:b);d=n;b=d>>31;i=d>>31;d=i+q|0;e=b;b=n+b|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^e;h=b;p=d^-1;e=b^2147483647;k:{if(!F[a+28>>2]){if((e|0)==(g|0)&l>>>0>p>>>0|e>>>0>>0){break k}b=g+h|0;a=d+l|0;b=a>>>0>>0?b+1|0:b;i=a;a=b;b=j;l=b>>31;h=l;o=h+k|0;e=b>>31;b=e+b|0;b=h>>>0>o>>>0?b+1|0:b;g=h^o;o=g+i|0;d=b^e;b=o;d=d^2147483647;a=(d|0)==(a|0)&(g^-1)>>>0>>0|a>>>0>d>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break k}b=(a|0)/536870912|0;a=b;b=b>>31;k=Lj(k,j,a,b);q=Lj(q,n,a,b);r=Lj(r,s,a,b);break k}m=k;i=j;b=3;a=-1;l:{if((e|0)==(g|0)&l>>>0>p>>>0|e>>>0>>0){break l}b=g+h|0;a=d+l|0;b=a>>>0>>0?b+1|0:b;d=a;g=b;e=b;a=j;b=a>>31;h=a>>31;j=h+k|0;o=a;a=b;b=o+b|0;b=j>>>0>>0?b+1|0:b;j=j^h;h=a^b;p=h;b=3;h=h^2147483647;a=-1;if((h|0)==(e|0)&(j^-1)>>>0>>0|e>>>0>h>>>0){break l}b=g+p|0;a=d+j|0;b=a>>>0>>0?b+1|0:b;j=a;a=b;if(!b&j>>>0<536870913){break k}b=a>>>29|0;a=(a&536870911)<<3|j>>>29}k=Lj(m,i,a,b);q=Lj(q,n,a,b);r=Lj(r,s,a,b)}F[c+8>>2]=k;F[c+4>>2]=q;F[c>>2]=r;ea=f+96|0;return}Ca();V()}Ca();V()}Ca();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;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:{b:{d=H[b+38>>1];if(!d){break b}c:{if(d>>>0<=511){h=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];l=g+4|0;d=l>>>0<4?d+1|0:d;if((d|0)>(h|0)?1:(d|0)>=(h|0)?l>>>0>I[b+8>>2]:0){break b}d=g+F[b>>2]|0;j=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[f+12>>2]=j;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;break c}if(!ib(1,f+12|0,b)){break b}j=F[f+12>>2]}h=F[f>>2];d=F[f+4>>2]-h>>2;d:{if(d>>>0>>0){Ja(f,j-d|0);j=F[f+12>>2];break d}if(d>>>0<=j>>>0){break d}F[f+4>>2]=h+(j<<2)}if(!j){e=1;break b}o=F[b+8>>2];m=F[b+12>>2];while(1){g=F[b+16>>2];d=F[b+20>>2];if((d|0)>(m|0)?1:(d|0)>=(m|0)?g>>>0>=o>>>0:0){break b}p=F[b>>2];n=G[p+g|0];g=g+1|0;d=g>>>0<1?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;h=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}}d=h+k|0;l=0;if(d>>>0>=j>>>0){break a}ua(F[f>>2]+(k<<2)|0,0,(n&252)+4|0);k=d;break e}while(1){l=0;if((d|0)>(m|0)?1:(d|0)>=(m|0)?g>>>0>=o>>>0:0){break a}j=G[g+p|0];g=g+1|0;d=g>>>0<1?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;h=j<<(i<<3|6)|h;i=i+1|0;if((q|0)!=(i|0)){continue}break}}F[F[f>>2]+(k<<2)>>2]=h}k=k+1|0;j=F[f+12>>2];if(k>>>0>>0){continue}break}l=f+16|0;g=F[f>>2];d=F[f+16>>2];e=F[f+20>>2]-d|0;h=e>>2;i:{if(h>>>0<=1048575){Ja(l,1048576-h|0);break i}if((e|0)==4194304){break i}F[f+20>>2]=d+4194304}j:{d=f+28|0;k=F[d>>2];e=F[f+32>>2]-k>>3;if(e>>>0>>0){sb(d,j-e|0);k=F[d>>2];break j}if(e>>>0>j>>>0){F[f+32>>2]=(j<<3)+k}if(j){break j}l=0;break a}d=F[g>>2];h=0;F[k+4>>2]=0;F[k>>2]=d;e=F[g>>2];d=1;k:{if(e>>>0>1048576){break k}i=0;l:{while(1){d=e;m:{if(h>>>0>=d>>>0){break m}n=d+(h^-1)|0;m=F[l>>2];e=d-h&7;if(e){while(1){F[m+(h<<2)>>2]=i;h=h+1|0;e=e-1|0;if(e){continue}break}}if(n>>>0<=6){break m}while(1){e=m+(h<<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;h=h+8|0;if((d|0)!=(h|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){e=g+(i<<2)|0;h=F[e>>2];m=(i<<3)+k|0;F[m+4>>2]=d;F[m>>2]=h;h=d;e=d+F[e>>2]|0;if(e>>>0>1048576){break l}continue}break}e=d}d=i>>>0>>0}l=!d&(e|0)==1048576;break a}l=e}n:{if(!l|(F[f+12>>2]?0:a)){break n}o:{if(H[b+38>>1]<=511){i=F[b+12>>2];g=i;d=F[b+20>>2];l=F[b+16>>2];e=l+8|0;d=e>>>0<8?d+1|0:d;k=F[b+8>>2];h=d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?k>>>0>>0:0){break n}d=l+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]=e;F[b+20>>2]=h;break o}if(!cb(1,f+56|0,b)){break n}e=F[b+16>>2];h=F[b+20>>2];k=F[b+8>>2];i=F[b+12>>2];g=F[f+56>>2];d=F[f+60>>2]}j=k-e|0;k=i-(h+(e>>>0>k>>>0)|0)|0;if((k|0)==(d|0)&g>>>0>j>>>0|d>>>0>k>>>0){break n}d=d+h|0;i=e+g|0;F[b+16>>2]=i;F[b+20>>2]=e>>>0>i>>>0?d+1|0:d;if((g|0)<1){break n}h=e+F[b>>2]|0;F[f+40>>2]=h;i=f;p:{q:{r:{s:{t:{b=g-1|0;e=h+b|0;switch((G[e|0]>>>6|0)-1|0){case 2:break r;case 1:break s;case 0:break t;default:break q}}if((g|0)<2){break n}b=g-2|0;F[f+44>>2]=b;e=(h+g|0)-2|0;d=G[e+1|0]<<8&16128|G[e|0];break p}if((g|0)<3){break n}b=g-3|0;F[f+44>>2]=b;e=(h+g|0)-3|0;d=G[e+2|0]<<16&4128768|G[e+1|0]<<8|G[e|0];break p}b=g-4|0;F[f+44>>2]=b;e=(h+g|0)-4|0;d=G[e+2|0]<<16|G[e+3|0]<<24&1056964608|G[e+1|0]<<8|G[e|0];break p}F[f+44>>2]=b;d=G[e|0]&63}d=d+4194304|0;F[i+48>>2]=d;if(d>>>0>1073741823){break n}if(!a){r=1;break n}k=F[f+28>>2];e=0;g=F[f+16>>2];while(1){u:{if(d>>>0>4194303){break u}while(1){if((b|0)<1){break u}b=b-1|0;F[f+44>>2]=b;d=G[b+h|0]|d<<8;F[f+48>>2]=d;if(d>>>0<4194304){continue}break}}l=d&1048575;i=F[g+(l<<2)>>2];j=k+(i<<3)|0;d=(L(F[j>>2],d>>>20|0)+l|0)-F[j+4>>2]|0;F[f+48>>2]=d;F[(e<<2)+c>>2]=i;r=1;e=e+1|0;if((e|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 ic(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=M(0),l=0;a:{b:{c:{if(!d){break 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)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=E[b>>1];if((e|0)<0){break c}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 a;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b>>2];if(e+32768>>>0>65535){break b}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 a;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b>>2];if(e>>>0>32767){break b}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 a;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b+4>>2];i=F[b>>2];j=i+32768|0;e=j>>>0<32768?e+1|0:e;if(!e&j>>>0>65535|e){break b}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 a;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>32767|e){break b}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 a;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}i=(g<<1)+d|0;k=J[b>>2];e:{if(M(N(k))>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 a;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}i=(g<<1)+d|0;l=K[b>>3];f:{if(N(l)<2147483648){e=~~l;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 a;case 10:break d;default:break c}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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}ua((e<<1)+d|0,0,c-e<<1)}return h}return 0}ua((e<<1)+d|0,0,c-e<<1);return 1}function hc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{c:{if(!d){break c}d:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=D[b|0];if((e|0)<0){break c}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 a;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=E[b>>1];if((e|0)<0){break c}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 a;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b>>2];if(e>>>0>65535){break b}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 a;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b>>2];if(e>>>0>65535){break b}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 a;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break b}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 a;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break b}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 a;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 10:break d;default:break c}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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}ua((e<<1)+d|0,0,c-e<<1)}return h}return 0}ua((e<<1)+d|0,0,c-e<<1);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:{c:{if(!d){break 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)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 5:h=D[a+24|0];if((((c|0)<(h|0)?c:h)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;e=F[e+4>>2];while(1){if(b>>>0>=e>>>0){break b}h=0;f=F[b>>2];if((f|0)<0){break c}F[(g<<2)+d>>2]=f;b=b+4|0;g=g+1|0;h=D[a+24|0];if((g|0)<(((c|0)<(h|0)?c:h)|0)){continue}break}}if((c|0)<=(h|0)){return 1}ua((h<<2)+d|0,0,c-h<<2);return 1;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b+4>>2];i=F[b>>2];if(i- -2147483648>>>0<2147483648?e+1|0:e){break b}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 a;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>2147483647|e){break b}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 a;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 10:break d;default:break c}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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}ua((e<<2)+d|0,0,c-e<<2)}return h}return 0}ua((e<<2)+d|0,0,c-e<<2);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,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;f=a+32|0;j=F[f>>2];d=F[a+36>>2]-j>>2;a:{if(d>>>0>>0){Ia(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=j+(e<<2)}d=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(d),0,d);q=ua(sa(d),0,d);k=F[a+8>>2];b:{if((k|0)<1){break b}while(1){d=g<<2;f=F[d+m>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){j=F[a+32>>2];F[d+j>>2]=h;break c}j=F[a+32>>2];d=d+j|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}g=g+1|0;k=F[a+8>>2];if((g|0)<(k|0)){continue}break}if((k|0)<1){break b}d=0;while(1){h=d<<2;f=h+c|0;h=F[b+h>>2]+F[h+j>>2]|0;F[f>>2]=h;d:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}h=h+F[a+20>>2]|0}F[f>>2]=h}d=d+1|0;k=F[a+8>>2];if((d|0)<(k|0)){continue}break}}d=F[a+56>>2];v=F[d>>2];d=F[d+4>>2]-v|0;if((d|0)>=5){x=F[a+52>>2];r=F[a+48>>2];d=d>>>2|0;y=d>>>0>2?d:2;z=d>>>0>1?d:1;f=e&-2;w=e&1;A=e&-4;B=e&3;u=e-1|0;C=e<<2;p=1;while(1){e:{f:{g:{h:{if((p|0)!=(z|0)){i=F[(p<<2)+v>>2];s=(e|0)<1;if(!s){ua(m,0,C)}if((i|0)==-1){j=L(e,p);break f}D=F[r>>2];n=0;h=i;while(1){i:{if(F[D+(h>>>3&536870908)>>2]>>>h&1){break i}d=F[F[F[r+64>>2]+12>>2]+(h<<2)>>2];if((d|0)==-1){break i}g=F[x>>2];j=F[r+28>>2];o=F[g+(F[j+(d<<2)>>2]<<2)>>2];if((o|0)>=(p|0)){break i}l=d+1|0;l=F[g+(F[j+(((l>>>0)%3|0?l:d-2|0)<<2)>>2]<<2)>>2];if((l|0)>=(p|0)){break i}d=F[g+(F[j+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(p|0)){break i}j:{if(s){break j}j=L(d,e);l=L(e,l);o=L(e,o);g=0;d=f;if(u){while(1){F[(g<<2)+q>>2]=(F[(g+j<<2)+c>>2]+F[(g+l<<2)+c>>2]|0)-F[(g+o<<2)+c>>2];t=g|1;F[(t<<2)+q>>2]=(F[(j+t<<2)+c>>2]+F[(l+t<<2)+c>>2]|0)-F[(o+t<<2)+c>>2];g=g+2|0;d=d-2|0;if(d){continue}break}}if(w){F[(g<<2)+q>>2]=(F[(g+j<<2)+c>>2]+F[(g+l<<2)+c>>2]|0)-F[(g+o<<2)+c>>2]}if(s){break j}g=0;j=A;if(u>>>0>2){while(1){d=g<<2;l=d+m|0;F[l>>2]=F[l>>2]+F[d+q>>2];l=d|4;o=l+m|0;F[o>>2]=F[o>>2]+F[l+q>>2];l=d|8;o=l+m|0;F[o>>2]=F[o>>2]+F[l+q>>2];d=d|12;l=d+m|0;F[l>>2]=F[l>>2]+F[d+q>>2];g=g+4|0;j=j-4|0;if(j){continue}break}}d=B;if(!d){break j}while(1){j=g<<2;l=j+m|0;F[l>>2]=F[l>>2]+F[j+q>>2];g=g+1|0;d=d-1|0;if(d){continue}break}}n=n+1|0}g=-1;d=((h>>>0)%3|0?-1:2)+h|0;k:{if((d|0)==-1|F[F[r>>2]+(d>>>3&536870908)>>2]>>>d&1){break k}d=F[F[F[r+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break k}if((d>>>0)%3|0){g=d-1|0;break k}g=d+2|0}h=(g|0)==(i|0)?-1:g;if((h|0)!=-1){continue}break}j=L(e,p);if(!n){break f}if(s){break g}g=0;d=f;if(!u){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;d=d-2|0;if(d){continue}break}break h}Ca();V()}if(!w){break g}d=(g<<2)+m|0;F[d>>2]=F[d>>2]/(n|0)}if((k|0)<1){break e}h=j<<2;g=0;while(1){d=g<<2;i=F[d+m>>2];k=F[a+16>>2];l:{if((i|0)>(k|0)){j=F[a+32>>2];F[d+j>>2]=k;break l}j=F[a+32>>2];d=d+j|0;k=F[a+12>>2];if((k|0)>(i|0)){F[d>>2]=k;break l}F[d>>2]=i}g=g+1|0;k=F[a+8>>2];if((g|0)<(k|0)){continue}break}d=0;if((k|0)<1){break e}g=c+h|0;n=b+h|0;while(1){i=d<<2;h=i+g|0;i=F[i+n>>2]+F[i+j>>2]|0;F[h>>2]=i;m:{if((i|0)>F[a+16>>2]){i=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break m}i=i+F[a+20>>2]|0}F[h>>2]=i}d=d+1|0;k=F[a+8>>2];if((d|0)<(k|0)){continue}break}break e}if((k|0)<1){break e}h=j<<2;n=(L(p-1|0,e)<<2)+c|0;g=0;while(1){d=g<<2;i=F[d+n>>2];k=F[a+16>>2];n:{if((i|0)>(k|0)){j=F[a+32>>2];F[d+j>>2]=k;break n}j=F[a+32>>2];d=d+j|0;k=F[a+12>>2];if((k|0)>(i|0)){F[d>>2]=k;break n}F[d>>2]=i}g=g+1|0;k=F[a+8>>2];if((g|0)<(k|0)){continue}break}d=0;if((k|0)<1){break e}g=c+h|0;n=b+h|0;while(1){i=d<<2;h=i+g|0;i=F[i+n>>2]+F[i+j>>2]|0;F[h>>2]=i;o:{if((i|0)>F[a+16>>2]){i=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break o}i=i+F[a+20>>2]|0}F[h>>2]=i}d=d+1|0;k=F[a+8>>2];if((d|0)<(k|0)){continue}break}}p=p+1|0;if((y|0)!=(p|0)){continue}break}}ra(q);ra(m);return 1}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,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;f=a+32|0;i=F[f>>2];d=F[a+36>>2]-i>>2;a:{if(d>>>0>>0){Ia(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=i+(e<<2)}d=(e&1073741823)!=(e|0)?-1:e<<2;o=ua(sa(d),0,d);r=ua(sa(d),0,d);l=F[a+8>>2];b:{if((l|0)<1){break b}while(1){d=g<<2;f=F[d+o>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){i=F[a+32>>2];F[d+i>>2]=h;break c}i=F[a+32>>2];d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}g=g+1|0;l=F[a+8>>2];if((g|0)<(l|0)){continue}break}if((l|0)<1){break b}d=0;while(1){h=d<<2;f=h+c|0;h=F[b+h>>2]+F[h+i>>2]|0;F[f>>2]=h;d:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}h=h+F[a+20>>2]|0}F[f>>2]=h}d=d+1|0;l=F[a+8>>2];if((d|0)<(l|0)){continue}break}}d=F[a+56>>2];u=F[d>>2];d=F[d+4>>2]-u|0;if((d|0)>=5){y=F[a+52>>2];v=F[a+48>>2];d=d>>>2|0;z=d>>>0>2?d:2;A=d>>>0>1?d:1;f=e&-2;w=e&1;B=e&-4;C=e&3;t=e-1|0;D=e<<2;q=1;while(1){e:{f:{g:{h:{if((q|0)!=(A|0)){h=F[(q<<2)+u>>2];s=(e|0)<1;if(!s){ua(o,0,D)}if((h|0)==-1){i=L(e,q);break f}x=F[v+12>>2];m=0;i=h;while(1){d=F[(i<<2)+x>>2];i:{if((d|0)==-1){break i}g=F[y>>2];j=F[v>>2];p=F[g+(F[j+(d<<2)>>2]<<2)>>2];n=d+1|0;n=(n>>>0)%3|0?n:d-2|0;k=g-4|0;j:{if((n|0)==-1){break j}k=g+(F[j+(n<<2)>>2]<<2)|0}d=d+((d>>>0)%3|0?-1:2)|0;n=g-4|0;k:{if((d|0)==-1){break k}n=g+(F[j+(d<<2)>>2]<<2)|0}if((q|0)<=(p|0)){break i}d=F[k>>2];if((d|0)>=(q|0)){break i}g=F[n>>2];if((g|0)>=(q|0)){break i}l:{if(s){break l}j=L(e,g);k=L(d,e);p=L(e,p);g=0;d=f;if(t){while(1){F[(g<<2)+r>>2]=(F[(g+j<<2)+c>>2]+F[(g+k<<2)+c>>2]|0)-F[(g+p<<2)+c>>2];n=g|1;F[(n<<2)+r>>2]=(F[(j+n<<2)+c>>2]+F[(k+n<<2)+c>>2]|0)-F[(p+n<<2)+c>>2];g=g+2|0;d=d-2|0;if(d){continue}break}}if(w){F[(g<<2)+r>>2]=(F[(g+j<<2)+c>>2]+F[(g+k<<2)+c>>2]|0)-F[(g+p<<2)+c>>2]}if(s){break l}g=0;d=B;if(t>>>0>2){while(1){j=g<<2;k=j+o|0;F[k>>2]=F[k>>2]+F[j+r>>2];k=j|4;p=k+o|0;F[p>>2]=F[p>>2]+F[k+r>>2];k=j|8;p=k+o|0;F[p>>2]=F[p>>2]+F[k+r>>2];j=j|12;k=j+o|0;F[k>>2]=F[k>>2]+F[j+r>>2];g=g+4|0;d=d-4|0;if(d){continue}break}}d=C;if(!d){break l}while(1){j=g<<2;k=j+o|0;F[k>>2]=F[k>>2]+F[j+r>>2];g=g+1|0;d=d-1|0;if(d){continue}break}}m=m+1|0}i=((i>>>0)%3|0?-1:2)+i|0;d=-1;m:{if((i|0)==-1){break m}i=F[(i<<2)+x>>2];d=-1;if((i|0)==-1){break m}d=i-1|0;if((i>>>0)%3|0){break m}d=i+2|0}i=(d|0)==(h|0)?-1:d;if((i|0)!=-1){continue}break}i=L(e,q);if(!m){break f}if(s){break g}g=0;d=f;if(!t){break h}while(1){h=g<<2;j=h+o|0;F[j>>2]=F[j>>2]/(m|0);h=(h|4)+o|0;F[h>>2]=F[h>>2]/(m|0);g=g+2|0;d=d-2|0;if(d){continue}break}break h}Ca();V()}if(!w){break g}d=(g<<2)+o|0;F[d>>2]=F[d>>2]/(m|0)}if((l|0)<1){break e}h=i<<2;g=0;while(1){d=g<<2;l=F[d+o>>2];m=F[a+16>>2];n:{if((l|0)>(m|0)){i=F[a+32>>2];F[d+i>>2]=m;break n}i=F[a+32>>2];d=d+i|0;m=F[a+12>>2];if((m|0)>(l|0)){F[d>>2]=m;break n}F[d>>2]=l}g=g+1|0;l=F[a+8>>2];if((g|0)<(l|0)){continue}break}d=0;if((l|0)<1){break e}m=c+h|0;j=b+h|0;while(1){g=d<<2;h=g+m|0;g=F[g+j>>2]+F[g+i>>2]|0;F[h>>2]=g;o:{if((g|0)>F[a+16>>2]){k=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break o}k=g+F[a+20>>2]|0}F[h>>2]=k}d=d+1|0;l=F[a+8>>2];if((d|0)<(l|0)){continue}break}break e}if((l|0)<1){break e}h=i<<2;m=(L(q-1|0,e)<<2)+c|0;g=0;while(1){d=g<<2;l=F[d+m>>2];j=F[a+16>>2];p:{if((l|0)>(j|0)){i=F[a+32>>2];F[d+i>>2]=j;break p}i=F[a+32>>2];d=d+i|0;j=F[a+12>>2];if((j|0)>(l|0)){F[d>>2]=j;break p}F[d>>2]=l}g=g+1|0;l=F[a+8>>2];if((g|0)<(l|0)){continue}break}d=0;if((l|0)<1){break e}m=c+h|0;j=b+h|0;while(1){g=d<<2;h=g+m|0;g=F[g+j>>2]+F[g+i>>2]|0;F[h>>2]=g;q:{if((g|0)>F[a+16>>2]){k=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break q}k=g+F[a+20>>2]|0}F[h>>2]=k}d=d+1|0;l=F[a+8>>2];if((d|0)<(l|0)){continue}break}}q=q+1|0;if((z|0)!=(q|0)){continue}break}}ra(r);ra(o);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:{c:{if(!d){break 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)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b>>2];if(F[b+4>>2]){break b}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 a;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}e=F[b>>2];if(F[b+4>>2]){break b}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 a;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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 a;case 10:break d;default:break c}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Kj(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 b}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}ua((e<<2)+d|0,0,c-e<<2)}return h}return 0}ua((e<<2)+d|0,0,c-e<<2);return 1}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,i=0,j=0,k=0,l=0;e=ea-32|0;ea=e;a:{b:{switch(d-2|0){case 0:d=F[b+4>>2];f=F[b+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;b=0;c:{if((c|0)==-2){break c}l=F[F[F[d+4>>2]+8>>2]+(f<<2)>>2];if((ga[F[F[d>>2]+8>>2]](d)|0)==1){k=F[F[F[d+4>>2]+8>>2]+(f<<2)>>2];d:{e:{if((ga[F[F[d>>2]+8>>2]](d)|0)!=1|c-1>>>0>5){break e}j=ga[F[F[d>>2]+36>>2]](d)|0;g=ga[F[F[d>>2]+44>>2]](d,f)|0;if(!j|!g){break e}i=g+12|0;f=ga[F[F[d>>2]+40>>2]](d,f)|0;d=F[d+44>>2];if(f){if((c|0)!=6){break e}b=sa(112);F[b+4>>2]=k;c=F[e+12>>2];F[b+8>>2]=F[e+8>>2];F[b+12>>2]=c;c=F[e+20>>2];F[b+16>>2]=F[e+16>>2];F[b+20>>2]=c;F[b+24>>2]=F[e+24>>2];F[b+40>>2]=g;F[b+36>>2]=i;F[b+32>>2]=f;F[b+28>>2]=d;F[b+68>>2]=g;F[b- -64>>2]=i;F[b+60>>2]=f;F[b+56>>2]=d;F[b+48>>2]=0;F[b+52>>2]=0;F[b>>2]=6960;F[b+88>>2]=1065353216;F[b+92>>2]=-1;F[b+80>>2]=-1;F[b+84>>2]=-1;F[b+72>>2]=1;F[b+76>>2]=-1;F[b+44>>2]=7484;c=b+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;F[e>>2]=b;break d}if((c|0)!=6){break e}h=sa(112);F[h+4>>2]=k;b=F[e+12>>2];F[h+8>>2]=F[e+8>>2];F[h+12>>2]=b;c=F[e+20>>2];b=h;F[b+16>>2]=F[e+16>>2];F[b+20>>2]=c;F[b+24>>2]=F[e+24>>2];F[b+40>>2]=g;F[b+36>>2]=i;F[b+32>>2]=j;F[b+28>>2]=d;F[b+68>>2]=g;F[b- -64>>2]=i;F[b+60>>2]=j;F[b+56>>2]=d;F[b+48>>2]=0;F[b+52>>2]=0;F[b>>2]=7896;F[b+88>>2]=1065353216;F[b+92>>2]=-1;F[b+80>>2]=-1;F[b+84>>2]=-1;F[b+72>>2]=1;F[b+76>>2]=-1;F[b+44>>2]=8288;b=b+96|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[e>>2]=h}b=F[e>>2];if(b){break c}F[e>>2]=0}b=sa(28);F[b+4>>2]=l;c=F[e+12>>2];F[b+8>>2]=F[e+8>>2];F[b+12>>2]=c;c=F[e+20>>2];F[b+16>>2]=F[e+16>>2];F[b+20>>2]=c;F[b+24>>2]=F[e+24>>2];F[b>>2]=8676}F[a>>2]=b;break a;case 1:d=F[b+4>>2];f=F[b+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;b=0;f:{if((c|0)==-2){break f}l=F[F[F[d+4>>2]+8>>2]+(f<<2)>>2];if((ga[F[F[d>>2]+8>>2]](d)|0)==1){k=F[F[F[d+4>>2]+8>>2]+(f<<2)>>2];g:{h:{if((ga[F[F[d>>2]+8>>2]](d)|0)!=1|c-1>>>0>5){break h}j=ga[F[F[d>>2]+36>>2]](d)|0;g=ga[F[F[d>>2]+44>>2]](d,f)|0;if(!j|!g){break h}i=g+12|0;f=ga[F[F[d>>2]+40>>2]](d,f)|0;d=F[d+44>>2];if(f){if((c|0)!=6){break h}b=sa(112);F[b+4>>2]=k;c=F[e+12>>2];F[b+8>>2]=F[e+8>>2];F[b+12>>2]=c;c=F[e+20>>2];F[b+16>>2]=F[e+16>>2];F[b+20>>2]=c;F[b+24>>2]=F[e+24>>2];F[b+40>>2]=g;F[b+36>>2]=i;F[b+32>>2]=f;F[b+28>>2]=d;F[b+68>>2]=g;F[b- -64>>2]=i;F[b+60>>2]=f;F[b+56>>2]=d;F[b+48>>2]=0;F[b+52>>2]=0;F[b>>2]=8844;F[b+88>>2]=1065353216;F[b+92>>2]=-1;F[b+80>>2]=-1;F[b+84>>2]=-1;F[b+72>>2]=1;F[b+76>>2]=-1;F[b+44>>2]=9408;c=b+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;F[e>>2]=b;break g}if((c|0)!=6){break h}h=sa(112);F[h+4>>2]=k;b=F[e+12>>2];F[h+8>>2]=F[e+8>>2];F[h+12>>2]=b;c=F[e+20>>2];b=h;F[b+16>>2]=F[e+16>>2];F[b+20>>2]=c;F[b+24>>2]=F[e+24>>2];F[b+40>>2]=g;F[b+36>>2]=i;F[b+32>>2]=j;F[b+28>>2]=d;F[b+68>>2]=g;F[b- -64>>2]=i;F[b+60>>2]=j;F[b+56>>2]=d;F[b+48>>2]=0;F[b+52>>2]=0;F[b>>2]=9848;F[b+88>>2]=1065353216;F[b+92>>2]=-1;F[b+80>>2]=-1;F[b+84>>2]=-1;F[b+72>>2]=1;F[b+76>>2]=-1;F[b+44>>2]=10268;b=b+96|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[e>>2]=h}b=F[e>>2];if(b){break f}F[e>>2]=0}b=sa(28);F[b+4>>2]=l;c=F[e+12>>2];F[b+8>>2]=F[e+8>>2];F[b+12>>2]=c;c=F[e+20>>2];F[b+16>>2]=F[e+16>>2];F[b+20>>2]=c;F[b+24>>2]=F[e+24>>2];F[b>>2]=10680}F[a>>2]=b;break a;default:break b}}F[a>>2]=0}ea=e+32|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=M(0),l=0,m=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=M(0),B=M(0),C=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){Ia(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;i=(d|0)<1;if(i){break b}if((f|0)!=(g|0)){d=L(d>>>2|0,i?d:1);C=(d|0)>1?d:1;i=0;while(1){d=F[(i<<2)+f>>2];k=M(0);g=ea-48|0;ea=g;f=-1;h=-1;c:{if((d|0)==-1){break c}j=F[a+48>>2];l=d+1|0;l=(l>>>0)%3|0?l:d-2|0;if((l|0)!=-1){f=F[F[j>>2]+(l<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1){break c}h=F[F[j>>2]+(d<<2)>>2]}d=F[a+52>>2];j=F[d>>2];d:{d=F[d+4>>2]-j>>2;if(!(d>>>0<=f>>>0|d>>>0<=h>>>0)){d=F[j+(f<<2)>>2];j=F[j+(h<<2)>>2];e:{if(!((j|0)>=(i|0)|(d|0)>=(i|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;s=M(F[f+4>>2]);u=M(F[h>>2]);x=M(F[f>>2]);if(!(u!=x|m!=s)){d=F[a+68>>2];f=d;if(M(N(m))>2]=h;if(M(N(u))>2]=~~u;break e}F[d>>2]=-2147483648;break e}h=F[F[a+64>>2]+(i<<2)>>2];F[g+40>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;f=F[a+60>>2];if(!G[f+84|0]){h=F[F[f+68>>2]+(h<<2)>>2]}Xa(f,h,D[f+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]}Xa(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]}Xa(d,f,D[d+24|0],g);v=J[g+40>>2];w=J[g+36>>2];o=J[g+32>>2];z=J[g+16>>2];n=M(J[g>>2]-z);A=J[g+20>>2];p=M(J[g+4>>2]-A);B=J[g+24>>2];q=M(J[g+8>>2]-B);y=M(M(M(M(n*n)+M(0))+M(p*p))+M(q*q));f:{if(!(y>M(0))){r=M(0);if(F[a+88>>2]>257){break f}}o=M(o-z);w=M(w-A);v=M(v-B);k=M(M(M(M(M(n*o)+M(0))+M(p*w))+M(q*v))/y);q=M(v-M(q*k));p=M(w-M(p*k));n=M(o-M(n*k));r=M(U(M(M(M(q*q)+M(M(p*p)+M(M(n*n)+M(0))))/y)))}o=r;d=F[a+80>>2]-1|0;f=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;n=M(m-s);r=M(M(n*k)+s);s=M(u-x);m=M(s*o);d=f>>>d&1;m=M(r+(d?m:M(-m)));r=M(M(s*k)+x);k=M(n*o);k=M(r+(d?M(-k):k));g:{if(k!=k){f=F[a+68>>2];F[f>>2]=-2147483648;break g}f=F[a+68>>2];d=f;t=R(+k+.5);h:{if(N(t)<2147483648){h=~~t;break h}h=-2147483648}F[d>>2]=h}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)<(i|0)){h=F[a+72>>2];d=L(d,h);break j}if((i|0)<=0){if(F[a+72>>2]<1){break e}d=F[a+68>>2];f=0;while(1){F[d+(f<<2)>>2]=0;f=f+1|0;if((f|0)>2]){continue}break}break e}h=F[a+72>>2];d=L(h,i-1|0)}if((h|0)<1){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 d}Ca();V()}k:{if(F[a+8>>2]<1){break k}j=F[a+68>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];l=F[a+16>>2];l:{if((g|0)>(l|0)){h=F[a+32>>2];F[d+h>>2]=l;break l}h=F[a+32>>2];d=d+h|0;l=F[a+12>>2];if((l|0)>(g|0)){F[d>>2]=l;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)<1){break k}f=L(e,i)<<2;j=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+j|0;g=F[g+l>>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}}i=i+1|0;if((C|0)==(i|0)){break b}d=F[a+56>>2];f=F[d>>2];if(F[d+4>>2]-f>>2>>>0>i>>>0){continue}break}}Ca();V()}return 1}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=M(0),k=0,l=0,m=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=M(0),B=M(0),C=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){Ia(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;i=(d|0)<1;if(i){break b}if((f|0)!=(g|0)){d=L(d>>>2|0,i?d:1);C=(d|0)>1?d:1;i=0;while(1){h=F[(i<<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)>=(i|0)|(d|0)>=(i|0))){f=F[a+72>>2];h=(L(f,k)<<2)+c|0;m=M(F[h+4>>2]);f=(L(d,f)<<2)+c|0;s=M(F[f+4>>2]);u=M(F[h>>2]);x=M(F[f>>2]);if(!(u!=x|m!=s)){d=F[a+68>>2];f=d;if(M(N(m))>2]=h;if(M(N(u))>2]=~~u;break f}F[d>>2]=-2147483648;break f}f=F[F[a+64>>2]+(i<<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]}Xa(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]}Xa(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]}Xa(d,f,D[d+24|0],g);v=J[g+40>>2];w=J[g+36>>2];o=J[g+32>>2];z=J[g+16>>2];n=M(J[g>>2]-z);A=J[g+20>>2];p=M(J[g+4>>2]-A);B=J[g+24>>2];q=M(J[g+8>>2]-B);y=M(M(M(M(n*n)+M(0))+M(p*p))+M(q*q));g:{if(!(y>M(0))){r=M(0);if(F[a+88>>2]>257){break g}}o=M(o-z);w=M(w-A);v=M(v-B);j=M(M(M(M(M(n*o)+M(0))+M(p*w))+M(q*v))/y);q=M(v-M(q*j));p=M(w-M(p*j));n=M(o-M(n*j));r=M(U(M(M(M(q*q)+M(M(p*p)+M(M(n*n)+M(0))))/y)))}o=r;d=F[a+80>>2]-1|0;f=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;n=M(m-s);r=M(M(n*j)+s);s=M(u-x);m=M(s*o);d=f>>>d&1;m=M(r+(d?m:M(-m)));r=M(M(s*j)+x);j=M(n*o);j=M(r+(d?M(-j):j));h:{if(j!=j){f=F[a+68>>2];F[f>>2]=-2147483648;break h}f=F[a+68>>2];d=f;t=R(+j+.5);i:{if(N(t)<2147483648){h=~~t;break i}h=-2147483648}F[d>>2]=h}t=R(+m+.5);j:{if(N(t)<2147483648){d=~~t;break j}d=-2147483648}F[f+4>>2]=m!=m?-2147483648:d;break f}k:{if((d|0)<(i|0)){f=F[a+72>>2];d=L(d,f);break k}if((i|0)<=0){if(F[a+72>>2]<1){break f}d=F[a+68>>2];f=0;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,i-1|0)}if((f|0)<1){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}Ca();V()}l:{if(F[a+8>>2]<1){break l}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)){h=F[a+32>>2];F[d+h>>2]=l;break m}h=F[a+32>>2];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)<1){break l}f=L(e,i)<<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}}i=i+1|0;if((C|0)==(i|0)){break b}d=F[a+56>>2];f=F[d>>2];if(F[d+4>>2]-f>>2>>>0>i>>>0){continue}break}}Ca();V()}return 1}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[6781]|H[6782]<<16;g=H[6779]|H[6780]<<16;E[e+38>>1]=g;E[e+40>>1]=g>>>16;E[e+42>>1]=d;E[e+44>>1]=d>>>16;d=F[3389];F[e+32>>2]=F[3388];F[e+36>>2]=d;d=F[3387];F[e+24>>2]=F[3386];F[e+28>>2]=d;d=F[3385];F[e+16>>2]=F[3384];F[e+20>>2]=d;g=F[b+12>>2];d=F[b+20>>2];a:{f=F[b+16>>2];h=f+5|0;d=h>>>0<5?d+1|0:d;b:{if((d|0)>(g|0)?1:(d|0)>=(g|0)?h>>>0>I[b+8>>2]: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;Aa(a+4|0,e);if(D[e+11|0]>-1){break b}ra(F[e>>2]);break b}d=f+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);D[c|0]=g;D[c+1|0]=g>>>8;D[c+2|0]=g>>>16;D[c+3|0]=g>>>24;D[c+4|0]=G[d+4|0];g=b;d=F[b+20>>2];f=F[b+16>>2]+5|0;d=f>>>0<5?d+1|0:d;h=f;f=d;F[b+16>>2]=h;F[b+20>>2]=d;if(Ga(c,13566,5)){b=sa(32);F[e>>2]=b;F[e+4>>2]=17;F[e+8>>2]=-2147483616;D[b+17|0]=0;D[b+16|0]=G[13588];c=G[13584]|G[13585]<<8|(G[13586]<<16|G[13587]<<24);d=G[13580]|G[13581]<<8|(G[13582]<<16|G[13583]<<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[13576]|G[13577]<<8|(G[13578]<<16|G[13579]<<24);d=G[13572]|G[13573]<<8|(G[13574]<<16|G[13575]<<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;F[a>>2]=-1;Aa(a+4|0,e);if(D[e+11|0]>-1){break b}ra(F[e>>2]);break b}d=F[b+12>>2];if((d|0)<(f|0)?1:(d|0)<=(f|0)?I[b+8>>2]<=h>>>0: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;Aa(a+4|0,e);if(D[e+11|0]>-1){break b}ra(F[e>>2]);break b}D[c+5|0]=G[h+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f>>>0<1?d+1|0:d;F[b+16>>2]=f;F[g+20>>2]=d;g=F[b+12>>2];if((d|0)>(g|0)?1:(g|0)<=(d|0)?I[b+8>>2]<=f>>>0: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;Aa(a+4|0,e);if(D[e+11|0]>-1){break b}ra(F[e>>2]);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>>>0<1?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((d|0)>(g|0)?1:(g|0)<=(d|0)?I[b+8>>2]<=f>>>0: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;Aa(a+4|0,e);if(D[e+11|0]>-1){break b}ra(F[e>>2]);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>>>0<1?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((d|0)>(g|0)?1:(g|0)<=(d|0)?I[b+8>>2]<=f>>>0:0){b=nc(e,e+16|0);F[a>>2]=-2;Aa(a+4|0,b);if(D[b+11|0]>-1){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];h=i+1|0;d=h>>>0<1?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;g=F[b+12>>2];d=f;f=i+3|0;d=f>>>0<3?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?f>>>0>I[b+8>>2]:0){b=nc(e,e+16|0);F[a>>2]=-2;Aa(a+4|0,b);if(D[b+11|0]>-1){break b}ra(F[b>>2]);break b}f=c;c=h+F[b>>2]|0;E[f+10>>1]=G[c|0]|G[c+1|0]<<8;c=b;d=F[b+20>>2];b=F[b+16>>2]+2|0;d=b>>>0<2?d+1|0:d;F[c+16>>2]=b;F[c+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 Gf(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;e=F[b+16>>2];c=F[b+20>>2];h=F[b+12>>2];if((c|0)>(h|0)?1:(c|0)>=(h|0)?e>>>0>=I[b+8>>2]:0){break d}p=G[e+F[b>>2]|0];e=e+1|0;c=e>>>0<1?c+1|0:c;d=b;F[d+16>>2]=e;F[d+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);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)>=1){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];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],n,6,0,c,c>>31);e=sa(96);c=mc(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]<1){break f}while(1){c=F[a+52>>2];j=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;c=k>>2;g=c+1|0;if(g>>>0>=1073741824){break b}n=c<<2;j=j-h|0;c=j>>1;g=j>>2>>>0<536870911?c>>>0>>0?g:c:1073741823;c=0;j:{if(!g){break j}if(g>>>0>=1073741824){break a}c=sa(g<<2)}j=n+c|0;F[j>>2]=0;if((k|0)>=1){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>>2>>>0<536870911?c>>>0>g>>>0?c:g:1073741823;if(e){if(e>>>0>=1073741824){break m}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 l}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 k}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){Ha(c)}if((d|0)!=(e|0)){continue}break}break k}va();V()}wa(1756);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}Ha(c)}h=F[e+28>>2];c=h-1|0;n:{if(c>>>0<=10){d=F[(c<<2)+14040>>2];break n}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=Cc(f+656|0,f+688|0);o:{p:{q:{switch(p|0){case 0:c=zb(f,i);b=Ed(c,b,a);Ab(c);if(b){break p}break o;case 1:c=zb(f,i);b=Dd(c,b,a);Ab(c);if(b){break p}break o;case 2:c=xb(f,i);b=Cd(c,b,a);yb(c);if(b){break p}break o;case 3:c=xb(f,i);b=Bd(c,b,a);yb(c);if(b){break p}break o;case 4:c=ab(f,i);b=Ad(c,b,a);bb(c);if(b){break p}break o;case 5:c=ab(f,i);b=zd(c,b,a);bb(c);if(b){break p}break o;case 6:break q;default:break o}}c=ab(f,i);b=yd(c,b,a);bb(c);if(!b){break o}}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(1756);V()}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;d=F[a+16>>2];D[f+92|0]=1;F[f+88>>2]=b;F[f+84>>2]=b;F[f+80>>2]=d;e=-1;e=(b|0)!=-1?F[F[d>>2]+(b<<2)>>2]:e;i=F[a+20>>2];d=F[i>>2];a:{b:{if(F[i+4>>2]-d>>2>>>0>e>>>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;i=f- -64|0;F[i>>2]=0;F[i+4>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;Ua(e,d,D[e+24|0],f+56|0);d=b+1|0;e=(d>>>0)%3|0;if(b>>>0<=d>>>0){i=e?d:b-2|0;p=((b>>>0)%3|0?-1:2)+b|0;while(1){e=i;d=p;c:{if(!F[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break c}d=b+2|0}b=-1;b=(e|0)!=-1?F[F[F[a+16>>2]>>2]+(e<<2)>>2]:b;j=F[a+20>>2];e=F[j>>2];if(F[j+4>>2]-e>>2>>>0<=b>>>0){break b}e=F[F[a+8>>2]+(F[e+(b<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<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;Ua(b,e,D[b+24|0],f+32|0);b=-1;b=(d|0)!=-1?F[F[F[a+16>>2]>>2]+(d<<2)>>2]:b;e=F[a+20>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=b>>>0){break a}e=F[F[a+8>>2]+(F[d+(b<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<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;Ua(b,e,D[b+24|0],f+8|0);d=F[f+8>>2];b=F[f+56>>2];j=d-b|0;g=F[f+60>>2];e=F[f+12>>2]-(g+(b>>>0>d>>>0)|0)|0;m=F[f+40>>2];d=F[f+64>>2];t=m-d|0;u=F[f+68>>2];m=F[f+44>>2]-(u+(m>>>0>>0)|0)|0;l=Kj(j,e,t,m);v=k-l|0;h=h-(fa+(k>>>0>>0)|0)|0;s=v;k=F[f+16>>2];l=k-d|0;u=F[f+20>>2]-((d>>>0>k>>>0)+u|0)|0;k=F[f+32>>2];v=k-b|0;g=F[f+36>>2]-((b>>>0>k>>>0)+g|0)|0;d=Kj(l,u,v,g);k=s+d|0;b=fa+h|0;b=d>>>0>k>>>0?b+1|0:b;h=b;s=j;b=F[f+48>>2];d=F[f+72>>2];j=b-d|0;w=F[f+76>>2];x=F[f+52>>2]-(w+(b>>>0>>0)|0)|0;e=Kj(s,e,j,x)+n|0;b=q+fa|0;b=e>>>0>>0?b+1|0:b;n=F[f+24>>2];s=n-d|0;d=F[f+28>>2]-((d>>>0>n>>>0)+w|0)|0;q=Kj(s,d,v,g);n=e-q|0;q=b-(fa+(e>>>0>>0)|0)|0;b=Kj(j,x,l,u);e=o-b|0;b=r-(fa+(b>>>0>o>>>0)|0)|0;r=Kj(s,d,t,m);o=r+e|0;b=fa+b|0;b=o>>>0>>0?b+1|0:b;r=b;tb(f+80|0);b=F[f+88>>2];if((b|0)!=-1){continue}break}}d=r;b=d>>31;i=d>>31;d=i+o|0;e=b;b=r+b|0;b=d>>>0>>0?b+1|0:b;d=d^i;j=b^e;e=q;g=e>>31;i=g+n|0;e=e>>31;b=q+e|0;b=i>>>0>>0?b+1|0:b;m=g^i;b=b^e;l=b;t=m^-1;g=b^2147483647;d:{if(!F[a+28>>2]){if((j|0)==(g|0)&d>>>0>t>>>0|j>>>0>g>>>0){break d}b=j+l|0;a=d+m|0;b=a>>>0>>0?b+1|0:b;i=a;a=b;b=h;g=b>>31;p=g+k|0;e=b>>31;b=e+b|0;b=g>>>0>p>>>0?b+1|0:b;j=g^p;g=j;p=g+i|0;d=b^e;b=p;d=d^2147483647;a=(d|0)==(a|0)&(g^-1)>>>0>>0|a>>>0>d>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;k=Lj(k,h,a,b);n=Lj(n,q,a,b);o=Lj(o,r,a,b);break d}i=k;p=h;e=-1;b=3;e:{if((j|0)==(g|0)&d>>>0>t>>>0|j>>>0>g>>>0){break e}b=j+l|0;a=d+m|0;b=a>>>0>>0?b+1|0:b;j=b;d=b;l=h>>31;e=l+k|0;b=h;h=h>>31;b=b+h|0;m=e^l;h=h^(e>>>0>>0?b+1|0:b);l=h;e=-1;h=h^2147483647;b=3;if((h|0)==(d|0)&(m^-1)>>>0>>0|d>>>0>h>>>0){break e}b=j+l|0;h=a+m|0;b=h>>>0>>0?b+1|0:b;a=b;if(!b&h>>>0<536870913){break d}e=(a&536870911)<<3|h>>>29;b=a>>>29|0}k=Lj(i,p,e,b);n=Lj(n,q,e,b);o=Lj(o,r,e,b)}F[c+8>>2]=k;F[c+4>>2]=n;F[c>>2]=o;ea=f+96|0;return}Ca();V()}Ca();V()}Ca();V()}function hd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=F[a+4>>2];e=F[a>>2];d=(f-e|0)/144|0;if(d>>>0>>0){e=a;c=b-d|0;h=F[a+8>>2];a=F[a+4>>2];a:{if(c>>>0<=(h-a|0)/144>>>0){if(c){b=L(c,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[e+4>>2]=a;break a}b:{c:{d:{b=a;a=F[e>>2];f=(b-a|0)/144|0;g=f+c|0;if(g>>>0<29826162){b=(h-a|0)/144|0;a=b<<1;g=b>>>0<14913080?a>>>0>>0?g:a:29826161;d=0;e:{if(!g){break e}if(g>>>0>=29826162){break d}d=sa(L(g,144))}b=d+L(f,144)|0;h=b+L(c,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=d+L(g,144)|0;a=F[e+4>>2];g=F[e>>2];if((a|0)==(g|0)){break c}while(1){b=b-144|0;a=a-144|0;c=a;F[b>>2]=F[c>>2];F[b+4>>2]=F[c+4>>2];F[b+8>>2]=F[c+8>>2];F[b+12>>2]=F[c+12>>2];F[c+12>>2]=0;F[c+4>>2]=0;F[c+8>>2]=0;F[b+16>>2]=F[c+16>>2];F[b+20>>2]=F[c+20>>2];F[b+24>>2]=F[c+24>>2];F[c+24>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;d=G[c+28|0];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;D[b+28|0]=d;F[b+32>>2]=F[c+32>>2];F[b+36>>2]=F[c+36>>2];F[b+40>>2]=F[c+40>>2];F[c+40>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[b+52>>2]=0;F[b+44>>2]=0;F[b+48>>2]=0;F[b+44>>2]=F[c+44>>2];F[b+48>>2]=F[c+48>>2];F[b+52>>2]=F[c+52>>2];F[c+52>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;d=b- -64|0;F[d>>2]=0;F[b+56>>2]=0;F[b+60>>2]=0;F[b+56>>2]=F[c+56>>2];F[b+60>>2]=F[c+60>>2];i=d;d=c- -64|0;F[i>>2]=F[d>>2];F[d>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[b+68>>2]=F[c+68>>2];d=F[c+72>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+72>>2]=d;F[b+76>>2]=F[c+76>>2];F[b+80>>2]=F[c+80>>2];F[b+84>>2]=F[c+84>>2];F[c+84>>2]=0;F[c+76>>2]=0;F[c+80>>2]=0;F[b+96>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+88>>2]=F[c+88>>2];F[b+92>>2]=F[c+92>>2];F[b+96>>2]=F[c+96>>2];F[c+96>>2]=0;F[c+88>>2]=0;F[c+92>>2]=0;d=G[c+100|0];F[b+112>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;D[b+100|0]=d;F[b+104>>2]=F[c+104>>2];F[b+108>>2]=F[c+108>>2];F[b+112>>2]=F[c+112>>2];F[c+112>>2]=0;F[c+104>>2]=0;F[c+108>>2]=0;F[b+124>>2]=0;F[b+116>>2]=0;F[b+120>>2]=0;F[b+116>>2]=F[c+116>>2];F[b+120>>2]=F[c+120>>2];F[b+124>>2]=F[c+124>>2];F[c+124>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;d=F[c+128>>2];F[b+140>>2]=0;F[b+132>>2]=0;F[b+136>>2]=0;F[b+128>>2]=d;F[b+132>>2]=F[c+132>>2];F[b+136>>2]=F[c+136>>2];F[b+140>>2]=F[c+140>>2];F[c+140>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;if((c|0)!=(g|0)){continue}break}F[e+8>>2]=f;a=F[e+4>>2];F[e+4>>2]=h;g=F[e>>2];F[e>>2]=b;if((a|0)==(g|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)}Hb(a-140|0);b=a-144|0;a=b;if((b|0)!=(g|0)){continue}break}break b}va();V()}wa(12220);V()}F[e+8>>2]=f;F[e+4>>2]=h;F[e>>2]=b}if(g){ra(g)}}return}if(b>>>0>>0){e=e+L(b,144)|0;if((e|0)!=(f|0)){while(1){b=F[f-12>>2];if(b){F[f-8>>2]=b;ra(b)}b=F[f-28>>2];if(b){F[f-24>>2]=b;ra(b)}b=F[f-40>>2];if(b){F[f-36>>2]=b;ra(b)}Hb(f-140|0);b=f-144|0;f=b;if((b|0)!=(e|0)){continue}break}}F[a+4>>2]=e}}function Me(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;f=ea-80|0;ea=f;e=c;h=F[e+36>>2];F[f+72>>2]=F[e+32>>2];F[f+76>>2]=h;j=F[e+28>>2];h=f- -64|0;F[h>>2]=F[e+24>>2];F[h+4>>2]=j;h=F[e+20>>2];F[f+56>>2]=F[e+16>>2];F[f+60>>2]=h;h=F[e+12>>2];F[f+48>>2]=F[e+8>>2];F[f+52>>2]=h;h=F[e+4>>2];F[f+40>>2]=F[e>>2];F[f+44>>2]=h;oc(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<=-1){ra(F[j>>2])}if(G[f+31|0]){b=sa(32);F[f>>2]=b;F[f+4>>2]=27;F[f+8>>2]=-2147483616;D[b+27|0]=0;c=G[11135]|G[11136]<<8|(G[11137]<<16|G[11138]<<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[11132]|G[11133]<<8|(G[11134]<<16|G[11135]<<24);d=G[11128]|G[11129]<<8|(G[11130]<<16|G[11131]<<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[11124]|G[11125]<<8|(G[11126]<<16|G[11127]<<24);d=G[11120]|G[11121]<<8|(G[11122]<<16|G[11123]<<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[11116]|G[11117]<<8|(G[11118]<<16|G[11119]<<24);d=G[11112]|G[11113]<<8|(G[11114]<<16|G[11115]<<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;F[a>>2]=-1;Aa(j,f);if(D[f+11|0]>-1){break a}ra(F[f>>2]);break a}h=ea-32|0;ea=h;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=Wc(e);F[e>>2]=13952;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=Wc(e);F[e>>2]=13860;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}}e=sa(32);F[h>>2]=e;F[h+4>>2]=28;F[h+8>>2]=-2147483616;D[e+28|0]=0;g=G[11080]|G[11081]<<8|(G[11082]<<16|G[11083]<<24);D[e+24|0]=g;D[e+25|0]=g>>>8;D[e+26|0]=g>>>16;D[e+27|0]=g>>>24;g=G[11076]|G[11077]<<8|(G[11078]<<16|G[11079]<<24);i=G[11072]|G[11073]<<8|(G[11074]<<16|G[11075]<<24);D[e+16|0]=i;D[e+17|0]=i>>>8;D[e+18|0]=i>>>16;D[e+19|0]=i>>>24;D[e+20|0]=g;D[e+21|0]=g>>>8;D[e+22|0]=g>>>16;D[e+23|0]=g>>>24;g=G[11068]|G[11069]<<8|(G[11070]<<16|G[11071]<<24);i=G[11064]|G[11065]<<8|(G[11066]<<16|G[11067]<<24);D[e+8|0]=i;D[e+9|0]=i>>>8;D[e+10|0]=i>>>16;D[e+11|0]=i>>>24;D[e+12|0]=g;D[e+13|0]=g>>>8;D[e+14|0]=g>>>16;D[e+15|0]=g>>>24;g=G[11060]|G[11061]<<8|(G[11062]<<16|G[11063]<<24);i=G[11056]|G[11057]<<8|(G[11058]<<16|G[11059]<<24);D[e|0]=i;D[e+1|0]=i>>>8;D[e+2|0]=i>>>16;D[e+3|0]=i>>>24;D[e+4|0]=g;D[e+5|0]=g>>>8;D[e+6|0]=g>>>16;D[e+7|0]=g>>>24;F[h+16>>2]=-1;e=Aa(h+16|4,h);F[f>>2]=F[h+16>>2];Aa(f+4|0,e);F[f+16>>2]=0;if(D[e+11|0]<=-1){ra(F[e>>2])}if(D[h+11|0]>-1){break b}ra(F[h>>2])}ea=h+32|0;e=F[f>>2];d:{if(e){F[a>>2]=e;Aa(j,f|4);break d}e=F[f+16>>2];F[f+16>>2]=0;te(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<=-1){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]>-1){break a}ra(F[f+4>>2])}ea=f+80|0}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;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}f=c+(b<<2)|0;e=F[f>>2];h=F[e+60>>2];g=F[e+56>>2];c=f+4|0;b:{if((c|0)!=(d|0)){while(1){i=F[c>>2];F[c>>2]=0;F[f>>2]=i;if(e){Ha(e)}f=f+4|0;c=c+4|0;if((c|0)!=(d|0)){e=F[f>>2];continue}break}d=F[a+12>>2];if((f|0)==(d|0)){break b}}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){Ha(c)}if((d|0)!=(f|0)){continue}break}}F[a+12>>2]=f;e=F[a+4>>2];c:{if(!e|(h|0)<0){break c}d=F[e+24>>2];c=F[e+28>>2];if((d|0)==(c|0)){break c}while(1){if((h|0)==F[F[d>>2]+24>>2]){f=d+4|0;h=F[e+28>>2];d:{if((f|0)!=(h|0)){while(1){i=F[f>>2];F[f>>2]=0;c=F[d>>2];F[d>>2]=i;if(c){Qa(c+12|0,F[c+16>>2]);Pa(c,F[c+4>>2]);ra(c)}d=d+4|0;f=f+4|0;if((h|0)!=(f|0)){continue}break}f=F[e+28>>2];if((f|0)==(d|0)){break d}}while(1){f=f-4|0;c=F[f>>2];F[f>>2]=0;if(c){Qa(c+12|0,F[c+16>>2]);Pa(c,F[c+4>>2]);ra(c)}if((d|0)!=(f|0)){continue}break}}F[e+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{f=L(g,12)+a|0;d=F[f+20>>2];c=F[f+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}e=d+4|0;c=c-e|0;if(c){Sa(d,e,c)}F[f+24>>2]=d+c}f=F[a+20>>2];d=F[a+24>>2]-f|0;g:{if(!d){break g}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=L(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=F[g>>2];if((i|0)>(b|0)){F[g>>2]=i-1}e=f+(e|4)|0;g=F[e>>2];if((g|0)>(b|0)){F[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break g}d=f+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break g}F[d>>2]=c-1}f=F[a+32>>2];d=F[a+36>>2]-f|0;h:{if(!d){break h}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=L(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=F[g>>2];if((i|0)>(b|0)){F[g>>2]=i-1}e=f+(e|4)|0;g=F[e>>2];if((g|0)>(b|0)){F[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break h}d=f+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break h}F[d>>2]=c-1}f=F[a+44>>2];d=F[a+48>>2]-f|0;i:{if(!d){break i}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=L(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=F[g>>2];if((i|0)>(b|0)){F[g>>2]=i-1}e=f+(e|4)|0;g=F[e>>2];if((g|0)>(b|0)){F[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break i}d=f+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break i}F[d>>2]=c-1}f=F[a+56>>2];d=F[a+60>>2]-f|0;j:{if(!d){break j}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=L(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=F[g>>2];if((i|0)>(b|0)){F[g>>2]=i-1}e=f+(e|4)|0;g=F[e>>2];if((g|0)>(b|0)){F[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break j}d=f+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break j}F[d>>2]=c-1}f=F[a+68>>2];a=F[a+72>>2]-f|0;if(!a){break a}d=a>>31;c=(d+a^d)>>>2|0;a=(a|0)>-1?a:-1;a=L(c,(a|0)<1?a:1);c=a>>>0>1?a:1;e=c&1;d=0;if(a>>>0>=2){c=c&-2;while(1){a=d<<2;h=a+f|0;g=F[h>>2];if((g|0)>(b|0)){F[h>>2]=g-1}a=f+(a|4)|0;h=F[a>>2];if((h|0)>(b|0)){F[a>>2]=h-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!e){break a}c=b;a=f+(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=17328,j=F[4332]&Oj(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)+17632|0;e:{if(F[c>>2]==(d|0)){F[c>>2]=b;if(b){break e}i=17332,j=F[4333]&Oj(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[4334]=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[4338]==(f|0)){F[4338]=d;a=F[4335]+a|0;F[4335]=a;F[d+4>>2]=a|1;if(F[4337]!=(d|0)){break a}F[4334]=0;F[4337]=0;return}if(F[4337]==(f|0)){F[4337]=d;a=F[4334]+a|0;F[4334]=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=17328,j=F[4332]&Oj(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)+17632|0;j:{if(F[c>>2]==(f|0)){F[c>>2]=b;if(b){break j}i=17332,j=F[4333]&Oj(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[4337]!=(d|0)){break f}F[4334]=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)+17368|0;c=F[4332];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)+17632|0;l:{m:{c=F[4333];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[4340]-1|0;F[4340]=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,t=0,u=0;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){Ia(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}r=F[a+52>>2];o=F[a+48>>2];g=0;d=(e&1073741823)!=(e|0)?-1:e<<2;n=ua(sa(d),0,d);h=F[a+8>>2];b:{if((h|0)<1){break b}while(1){d=g<<2;f=F[d+n>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){i=F[a+32>>2];F[d+i>>2]=h;break c}i=F[a+32>>2];d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}if((h|0)<1){break b}d=0;while(1){g=d<<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}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}}d=F[a+56>>2];p=F[d>>2];d=F[d+4>>2]-p|0;if((d|0)>=5){d=d>>>2|0;s=d>>>0>2?d:2;t=d>>>0>1?d:1;f=e&-2;u=e&1;m=1;while(1){e:{f:{if((m|0)!=(t|0)){q=L(e,m);d=F[(m<<2)+p>>2];if((d|0)==-1){break f}d=F[F[o+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}g=F[r>>2];i=F[o>>2];l=F[g+(F[i+(d<<2)>>2]<<2)>>2];j=d+1|0;j=(j>>>0)%3|0?j:d-2|0;k=g-4|0;g:{if((j|0)==-1){break g}k=g+(F[i+(j<<2)>>2]<<2)|0}d=d+((d>>>0)%3|0?-1:2)|0;j=g-4|0;h:{if((d|0)==-1){break h}j=g+(F[i+(d<<2)>>2]<<2)|0}if((l|0)>=(m|0)){break f}d=F[k>>2];if((d|0)>=(m|0)){break f}g=F[j>>2];if((g|0)>=(m|0)){break f}i:{if((e|0)<1){break i}i=L(e,g);k=L(d,e);l=L(e,l);g=0;d=f;if((e|0)!=1){while(1){F[(g<<2)+n>>2]=(F[(g+i<<2)+c>>2]+F[(g+k<<2)+c>>2]|0)-F[(g+l<<2)+c>>2];j=g|1;F[(j<<2)+n>>2]=(F[(i+j<<2)+c>>2]+F[(k+j<<2)+c>>2]|0)-F[(l+j<<2)+c>>2];g=g+2|0;d=d-2|0;if(d){continue}break}}if(!u){break i}F[(g<<2)+n>>2]=(F[(g+i<<2)+c>>2]+F[(g+k<<2)+c>>2]|0)-F[(g+l<<2)+c>>2]}if((h|0)<1){break e}g=0;while(1){d=g<<2;h=F[d+n>>2];k=F[a+16>>2];j:{if((h|0)>(k|0)){i=F[a+32>>2];F[d+i>>2]=k;break j}i=F[a+32>>2];d=d+i|0;k=F[a+12>>2];if((k|0)>(h|0)){F[d>>2]=k;break j}F[d>>2]=h}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}g=q<<2;k=g+c|0;l=b+g|0;while(1){h=d<<2;g=h+k|0;h=F[h+l>>2]+F[h+i>>2]|0;F[g>>2]=h;k:{if((h|0)>F[a+16>>2]){j=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break k}j=h+F[a+20>>2]|0}F[g>>2]=j}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}break e}Ca();V()}if((h|0)<1){break e}k=(L(m-1|0,e)<<2)+c|0;g=0;while(1){d=g<<2;h=F[d+k>>2];l=F[a+16>>2];l:{if((h|0)>(l|0)){i=F[a+32>>2];F[d+i>>2]=l;break l}i=F[a+32>>2];d=d+i|0;l=F[a+12>>2];if((l|0)>(h|0)){F[d>>2]=l;break l}F[d>>2]=h}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}g=q<<2;k=g+c|0;l=b+g|0;while(1){h=d<<2;g=h+k|0;h=F[h+l>>2]+F[h+i>>2]|0;F[g>>2]=h;m:{if((h|0)>F[a+16>>2]){j=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break m}j=h+F[a+20>>2]|0}F[g>>2]=j}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}}m=m+1|0;if((s|0)!=(m|0)){continue}break}}ra(n);return 1}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;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;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ia(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}r=F[a+52>>2];o=F[a+48>>2];g=0;d=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(d),0,d);h=F[a+8>>2];b:{if((h|0)<1){break b}while(1){d=g<<2;f=F[d+m>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){i=F[a+32>>2];F[d+i>>2]=h;break c}i=F[a+32>>2];d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}if((h|0)<1){break b}d=0;while(1){g=d<<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}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}}d=F[a+56>>2];p=F[d>>2];d=F[d+4>>2]-p|0;if((d|0)>=5){d=d>>>2|0;s=d>>>0>2?d:2;t=d>>>0>1?d:1;f=e&-2;u=e&1;l=1;while(1){e:{f:{if((l|0)!=(t|0)){q=L(e,l);d=F[(l<<2)+p>>2];if((d|0)==-1|F[F[o>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}d=F[F[F[o+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}i=F[r>>2];g=F[o+28>>2];k=F[i+(F[g+(d<<2)>>2]<<2)>>2];if((k|0)>=(l|0)){break f}j=d+1|0;j=F[i+(F[g+(((j>>>0)%3|0?j:d-2|0)<<2)>>2]<<2)>>2];if((j|0)>=(l|0)){break f}d=F[i+(F[g+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(l|0)){break f}g:{if((e|0)<1){break g}i=L(d,e);j=L(e,j);k=L(e,k);g=0;d=f;if((e|0)!=1){while(1){F[(g<<2)+m>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+k<<2)+c>>2];n=g|1;F[(n<<2)+m>>2]=(F[(i+n<<2)+c>>2]+F[(j+n<<2)+c>>2]|0)-F[(k+n<<2)+c>>2];g=g+2|0;d=d-2|0;if(d){continue}break}}if(!u){break g}F[(g<<2)+m>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+k<<2)+c>>2]}if((h|0)<1){break e}g=0;while(1){d=g<<2;h=F[d+m>>2];j=F[a+16>>2];h:{if((h|0)>(j|0)){i=F[a+32>>2];F[d+i>>2]=j;break h}i=F[a+32>>2];d=d+i|0;j=F[a+12>>2];if((j|0)>(h|0)){F[d>>2]=j;break h}F[d>>2]=h}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}g=q<<2;j=g+c|0;k=b+g|0;while(1){h=d<<2;g=h+j|0;h=F[h+k>>2]+F[h+i>>2]|0;F[g>>2]=h;i:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break i}h=h+F[a+20>>2]|0}F[g>>2]=h}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}break e}Ca();V()}if((h|0)<1){break e}j=(L(l-1|0,e)<<2)+c|0;g=0;while(1){d=g<<2;h=F[d+j>>2];k=F[a+16>>2];j:{if((h|0)>(k|0)){i=F[a+32>>2];F[d+i>>2]=k;break j}i=F[a+32>>2];d=d+i|0;k=F[a+12>>2];if((k|0)>(h|0)){F[d>>2]=k;break j}F[d>>2]=h}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}g=q<<2;j=g+c|0;k=b+g|0;while(1){h=d<<2;g=h+j|0;h=F[h+k>>2]+F[h+i>>2]|0;F[g>>2]=h;k:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break k}h=h+F[a+20>>2]|0}F[g>>2]=h}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}}l=l+1|0;if((s|0)!=(l|0)){continue}break}}ra(m);return 1}function Jc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;F[a+56>>2]=F[a+52>>2];F[a+44>>2]=F[a+40>>2];a:{b:{c:{b=F[a+64>>2];d=F[b+24>>2];if((d|0)!=F[b+28>>2]){b=0;while(1){e=b;i=F[(k<<2)+d>>2];d:{if((i|0)==-1){break d}b=F[a+56>>2];e:{if((b|0)!=F[a+60>>2]){F[b>>2]=e;F[a+56>>2]=b+4;break e}h=F[a+52>>2];f=b-h|0;g=f>>2;d=g+1|0;if(d>>>0>=1073741824){break c}c=f>>1;d=g>>>0<536870911?d>>>0>c>>>0?d:c:1073741823;b=0;f:{if(!d){break f}if(d>>>0>=1073741824){break a}b=sa(d<<2)}c=b+(g<<2)|0;F[c>>2]=e;if((f|0)>=1){ta(b,h,f)}F[a+60>>2]=b+(d<<2);F[a+56>>2]=c+4;F[a+52>>2]=b;if(!h){break e}ra(h)}g:{if(!(F[F[a+12>>2]+(k>>>3&536870908)>>2]>>>k&1)){break g}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1|F[F[a>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}c=F[F[F[a+64>>2]+12>>2]+(b<<2)>>2];if((c|0)==-1){break g}b=c+1|0;d=(b>>>0)%3|0?b:c-2|0;if((d|0)==-1){break g}while(1){i=d;b=d+1|0;b=(b>>>0)%3|0?b:d-2|0;if((b|0)==-1|F[F[a>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}c=F[F[F[a+64>>2]+12>>2]+(b<<2)>>2];if((c|0)==-1){break g}b=c+1|0;d=(b>>>0)%3|0?b:c-2|0;if((d|0)!=-1){continue}break}}F[F[a+28>>2]+(i<<2)>>2]=e;b=F[a+44>>2];h:{if((b|0)!=F[a+48>>2]){F[b>>2]=i;F[a+44>>2]=b+4;break h}h=F[a+40>>2];f=b-h|0;g=f>>2;d=g+1|0;if(d>>>0>=1073741824){break b}c=f>>1;d=g>>>0<536870911?d>>>0>c>>>0?d:c:1073741823;b=0;i:{if(!d){break i}if(d>>>0>=1073741824){break a}b=sa(d<<2)}c=b+(g<<2)|0;F[c>>2]=i;if((f|0)>=1){ta(b,h,f)}F[a+48>>2]=b+(d<<2);F[a+44>>2]=c+4;F[a+40>>2]=b;if(!h){break h}ra(h)}b=e+1|0;c=((i>>>0)%3|0?-1:2)+i|0;if((c|0)==-1){break d}c=F[F[F[a+64>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}d=c+((c>>>0)%3|0?-1:2)|0;if((d|0)==-1|(d|0)==(i|0)){break d}while(1){c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if(F[F[a>>2]+(c>>>3&536870908)>>2]>>>c&1){e=F[a+56>>2];j:{if((e|0)!=F[a+60>>2]){F[e>>2]=b;F[a+56>>2]=e+4;break j}j=F[a+52>>2];h=e-j|0;f=h>>2;g=f+1|0;if(g>>>0>=1073741824){break c}c=h>>1;g=f>>>0<536870911?c>>>0>>0?g:c:1073741823;e=0;k:{if(!g){break k}if(g>>>0>=1073741824){break a}e=sa(g<<2)}c=e+(f<<2)|0;F[c>>2]=b;if((h|0)>=1){ta(e,j,h)}F[a+60>>2]=e+(g<<2);F[a+56>>2]=c+4;F[a+52>>2]=e;if(!j){break j}ra(j)}c=b+1|0;e=F[a+44>>2];l:{if((e|0)!=F[a+48>>2]){F[e>>2]=d;F[a+44>>2]=e+4;break l}l=F[a+40>>2];j=e-l|0;h=j>>2;f=h+1|0;if(f>>>0>=1073741824){break b}g=j>>1;f=h>>>0<536870911?f>>>0>g>>>0?f:g:1073741823;e=0;m:{if(!f){break m}if(f>>>0>=1073741824){break a}e=sa(f<<2)}g=e+(h<<2)|0;F[g>>2]=d;if((j|0)>=1){ta(e,l,j)}F[a+48>>2]=e+(f<<2);F[a+44>>2]=g+4;F[a+40>>2]=e;if(!l){break l}ra(l)}e=b;b=c}F[F[a+28>>2]+(d<<2)>>2]=e;c=((d>>>0)%3|0?-1:2)+d|0;if((c|0)==-1){break d}c=F[F[F[a+64>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}d=c+((c>>>0)%3|0?-1:2)|0;if((d|0)==-1){break d}if((d|0)!=(i|0)){continue}break}}e=F[a+64>>2];d=F[e+24>>2];k=k+1|0;if(k>>>0>2]-d>>2>>>0){continue}break}}return}va();V()}va();V()}wa(14380);V()}function we(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}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}f=sa(4);F[f>>2]=b;e=f+4|0;F[a+56>>2]=e;F[a+52>>2]=e;F[a+48>>2]=f;if(!c){break a}ra(c)}e=F[F[a+4>>2]+28>>2];c=b+1|0;f=(c>>>0)%3|0?c:b-2|0;c=F[e+(f<<2)>>2];if((c|0)==-1){return 0}h=(b-L(d,3)|0?-1:2)+b|0;d=F[e+(h<<2)>>2];if((d|0)==-1){return 0}b=F[a+36>>2];e=b+(c>>>3&536870908)|0;g=F[e>>2];i=1<>2]=g|i;Wa(a+8|0,c,f);b=F[a+36>>2]}b=(d>>>3&536870908)+b|0;c=F[b>>2];f=1<>2]=c|f;Wa(a+8|0,d,h)}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}f=F[a+24>>2]+(d>>>3&268435452)|0;e=F[f>>2];d=1<>2]=d|e;f=F[a+4>>2];c=F[F[f+28>>2]+(b<<2)>>2];if((c|0)==-1){return 0}while(1){d=b;d:{e=F[a+36>>2]+(c>>>3&536870908)|0;h=F[e>>2];g=1<>2]+(c<<2)>>2];if((b|0)!=-1){f:{i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|F[F[f>>2]+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[F[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}F[e>>2]=h|g;Wa(k,c,d);c=b+1|0;if((((c>>>0)%3|0?c:b-2|0)|0)==-1){break e}b=-1;f=F[a+4>>2];g:{if((d|0)==-1){break g}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1|F[F[f>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=F[F[F[f+64>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];i=c>>>5|0;e=F[d+(i<<2)>>2];break d}}F[e>>2]=h|g;Wa(k,c,d)}h:{i:{if((d|0)==-1){break i}f=F[a+4>>2];b=-1;e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;c=-1;j:{if((e|0)==-1){break j}c=-1;if(F[F[f>>2]+(e>>>3&536870908)>>2]>>>e&1){break j}c=F[F[F[f+64>>2]+12>>2]+(e<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if(!((d|0)==-1|F[F[f>>2]+(d>>>3&536870908)>>2]>>>d&1)){b=F[F[F[f+64>>2]+12>>2]+(d<<2)>>2]}j=(b|0)==-1;h=j?-1:(b>>>0)/3|0;e=(c>>>0)/3|0;g=(c|0)==-1;if(!g){d=F[a+24>>2];g=g?-1:e;i=g>>>5|0;e=F[d+(i<<2)>>2];g=1<>2];i=h>>>5|0;e=F[d+(i<<2)>>2];if(!(g&e)){break d}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break b}if(j){b=c;break d}if(F[(h>>>3&536870908)+d>>2]>>>h&1){b=c;break d}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 c}k:{b=d;d=F[a+48>>2];f=b-d|0;h=f>>2;e=h+1|0;if(e>>>0<1073741824){g=f>>1;e=h>>>0<536870911?e>>>0>g>>>0?e:g:1073741823;b=0;l:{if(!e){break l}if(e>>>0>=1073741824){break k}b=sa(e<<2)}h=b+(h<<2)|0;F[h>>2]=c;c=h+4|0;if((f|0)>=1){ta(b,d,f)}F[a+56>>2]=b+(e<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!d){break b}ra(d);c=F[a+52>>2];break b}va();V()}wa(12220);V()}F[(i<<2)+d>>2]=e|g;c=F[F[f+28>>2]+(b<<2)>>2];if((c|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}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,n=0,o=0,p=0,q=0;l=L(b,12)+a|0;k=l;F[k+12>>2]=F[k+8>>2];j=(c|0)==-1?-1:(c>>>0)/3|0;n=1;g=c;a:{b:{c:{while(1){d:{if(o){if((g|0)==-1){break d}if((ae(a,((g>>>0)%3|0?-1:2)+g|0)|0)==-1){break a}c=g+1|0;c=(c>>>0)%3|0?c:g-2|0;if((c|0)==-1){break a}d=c+1|0;c=(d>>>0)%3|0?d:c-2|0;if((c|0)==-1){break a}c=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break a}d=c+1|0;c=(d>>>0)%3|0?d:c-2|0;if((c|0)==-1){break a}j=(c>>>0)/3|0}e:{d=F[a+56>>2]+(j>>>3&536870908)|0;e=F[d>>2];h=1<>2]=e|h;d=F[k+12>>2];f:{if((d|0)!=F[l+16>>2]){F[d>>2]=j;F[k+12>>2]=d+4;break f}i=F[l+8>>2];e=d-i|0;m=e>>2;h=m+1|0;if(h>>>0>=1073741824){break c}d=e>>1;h=m>>>0<536870911?d>>>0>>0?h:d:1073741823;d=0;g:{if(!h){break g}if(h>>>0>=1073741824){break b}d=sa(h<<2)}m=d+(m<<2)|0;F[m>>2]=j;if((e|0)>=1){ta(d,i,e)}F[l+8>>2]=d;F[k+12>>2]=m+4;F[l+16>>2]=d+(h<<2);if(!i){break f}ra(i)}i=f+1|0;d=c;h:{i:{if(!f){break i}if(i&1){if((c|0)==-1){c=-1;break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;break i}g=o?c:g;if((c|0)==-1){c=-1;break h}d=c-1|0;if((c>>>0)%3|0){break i}d=c+2|0}c=-1;f=d;if((d|0)==-1){break h}c=F[F[F[a+4>>2]+12>>2]+(f<<2)>>2];e=f+1|0;e=(e>>>0)%3|0?e:f-2|0;d=-1;j:{if((e|0)<0){break j}d=(e>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2]}k:{if((c|0)==-1){d=(d|0)==-1;e=1;break k}h=((c>>>0)%3|0?-1:2)+c|0;e=(d|0)==-1;l:{if((h|0)<=-1){break l}e=(h>>>0)/3|0;e=(d|0)==F[(F[F[a>>2]+96>>2]+L(e,12)|0)+(h-L(e,3)<<2)>>2]}d=e;e=0}if(!d){c=-1;break h}m:{n:{d=f+((f>>>0)%3|0?-1:2)|0;o:{p:{if((d|0)>=0){f=(d>>>0)/3|0;f=F[(F[F[a>>2]+96>>2]+L(f,12)|0)+(d-L(f,3)<<2)>>2];if(!e){break p}d=(f|0)!=-1;break o}f=-1;if(e){break n}}e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;d=(f|0)!=-1;if((e|0)<=-1){break o}d=(e>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2]!=(f|0)}if(d){c=-1;break h}if((c|0)!=-1){break m}c=-1;break h}if((c|0)!=-1){break m}c=-1;break h}f=i;j=(c>>>0)/3|0;d=F[a+56>>2]+(j>>>3&268435452)|0;e=F[d>>2];h=1<>2]-4|0;d=F[c>>2];f=F[a+56>>2]+(d>>>3&536870908)|0;i=F[f>>2];p=f,q=Oj(d)&i,F[p>>2]=q;F[k+12>>2]=c;break a}o=1;d=n;n=0;if(d){continue}break a}break}g=-1;ae(a,-1);break a}va();V()}wa(14448);V()}F[((b<<2)+a|0)+44>>2]=g;d=F[l+8>>2];b=F[k+12>>2]-d|0;q:{if(!b){break q}c=b>>31;c=(c+b^c)>>>2|0;b=(b|0)>-1?b:-1;b=L(c,(b|0)<1?b:1);g=b>>>0>1?b:1;f=g&1;a=F[a+56>>2];c=0;if(b>>>0>=2){j=g&-2;while(1){b=c<<2;g=F[b+d>>2];i=a+(g>>>3&536870908)|0;n=F[i>>2];p=i,q=Oj(g)&n,F[p>>2]=q;b=F[d+(b|4)>>2];g=a+(b>>>3&536870908)|0;i=F[g>>2];p=g,q=Oj(b)&i,F[p>>2]=q;c=c+2|0;j=j-2|0;if(j){continue}break}}if(!f){break q}b=F[d+(c<<2)>>2];a=a+(b>>>3&536870908)|0;c=F[a>>2];p=a,q=Oj(b)&c,F[p>>2]=q}}function Le(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;f=ea-80|0;ea=f;e=c;g=F[e+36>>2];F[f+72>>2]=F[e+32>>2];F[f+76>>2]=g;j=F[e+28>>2];g=f- -64|0;F[g>>2]=F[e+24>>2];F[g+4>>2]=j;g=F[e+20>>2];F[f+56>>2]=F[e+16>>2];F[f+60>>2]=g;g=F[e+12>>2];F[f+48>>2]=F[e+8>>2];F[f+52>>2]=g;g=F[e+4>>2];F[f+40>>2]=F[e>>2];F[f+44>>2]=g;oc(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<=-1){ra(F[j>>2])}if(G[f+31|0]!=1){b=sa(32);F[f>>2]=b;F[f+4>>2]=20;F[f+8>>2]=-2147483616;D[b+20|0]=0;c=G[11156]|G[11157]<<8|(G[11158]<<16|G[11159]<<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[11152]|G[11153]<<8|(G[11154]<<16|G[11155]<<24);d=G[11148]|G[11149]<<8|(G[11150]<<16|G[11151]<<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[11144]|G[11145]<<8|(G[11146]<<16|G[11147]<<24);d=G[11140]|G[11141]<<8|(G[11142]<<16|G[11143]<<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;F[a>>2]=-1;Aa(j,f);if(D[f+11|0]>-1){break a}ra(F[f>>2]);break a}g=ea-32|0;ea=g;b:{c:{switch(G[f+32|0]){case 0:e=sa(48);Ge(e);F[e>>2]=13256;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]=11360;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}}e=sa(32);F[g>>2]=e;F[g+4>>2]=28;F[g+8>>2]=-2147483616;D[e+28|0]=0;h=G[11080]|G[11081]<<8|(G[11082]<<16|G[11083]<<24);D[e+24|0]=h;D[e+25|0]=h>>>8;D[e+26|0]=h>>>16;D[e+27|0]=h>>>24;h=G[11076]|G[11077]<<8|(G[11078]<<16|G[11079]<<24);i=G[11072]|G[11073]<<8|(G[11074]<<16|G[11075]<<24);D[e+16|0]=i;D[e+17|0]=i>>>8;D[e+18|0]=i>>>16;D[e+19|0]=i>>>24;D[e+20|0]=h;D[e+21|0]=h>>>8;D[e+22|0]=h>>>16;D[e+23|0]=h>>>24;h=G[11068]|G[11069]<<8|(G[11070]<<16|G[11071]<<24);i=G[11064]|G[11065]<<8|(G[11066]<<16|G[11067]<<24);D[e+8|0]=i;D[e+9|0]=i>>>8;D[e+10|0]=i>>>16;D[e+11|0]=i>>>24;D[e+12|0]=h;D[e+13|0]=h>>>8;D[e+14|0]=h>>>16;D[e+15|0]=h>>>24;h=G[11060]|G[11061]<<8|(G[11062]<<16|G[11063]<<24);i=G[11056]|G[11057]<<8|(G[11058]<<16|G[11059]<<24);D[e|0]=i;D[e+1|0]=i>>>8;D[e+2|0]=i>>>16;D[e+3|0]=i>>>24;D[e+4|0]=h;D[e+5|0]=h>>>8;D[e+6|0]=h>>>16;D[e+7|0]=h>>>24;F[g+16>>2]=-1;e=Aa(g+16|4,g);F[f>>2]=F[g+16>>2];Aa(f+4|0,e);F[f+16>>2]=0;if(D[e+11|0]<=-1){ra(F[e>>2])}if(D[g+11|0]>-1){break b}ra(F[g>>2])}ea=g+32|0;e=F[f>>2];d:{if(e){F[a>>2]=e;Aa(j,f|4);break d}e=F[f+16>>2];F[f+16>>2]=0;F[e+44>>2]=d;te(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<=-1){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]>-1){break a}ra(F[f+4>>2])}ea=f+80|0}function xe(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=F[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b-2|0;if((f|0)!=-1){c=F[F[e>>2]+(f<<2)>>2]}h=(b-L(d,3)|0?-1:2)+b|0;if((h|0)==-1){return 0}if((c|0)==-1){return 0}d=F[F[e>>2]+(h<<2)>>2];if((d|0)==-1){return 0}b=F[a+36>>2];e=b+(c>>>3&536870908)|0;g=F[e>>2];i=1<>2]=g|i;Wa(a+8|0,c,f);b=F[a+36>>2]}b=(d>>>3&536870908)+b|0;c=F[b>>2];e=1<>2]=c|e;Wa(a+8|0,d,h)}d=F[a+52>>2];if((d|0)==F[a+48>>2]){return 1}j=a+8|0;while(1){d=d-4|0;b=F[d>>2];c=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=F[a+24>>2]+(c>>>3&268435452)|0;f=F[e>>2];c=1<>2]=c|f;while(1){d=F[a+4>>2];c=F[F[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}d:{e=F[a+36>>2]+(c>>>3&536870908)|0;f=F[e>>2];h=1<>2]+(c<<2)>>2];if((g|0)!=-1){i=g+1|0;g=(i>>>0)%3|0?i:g-2|0;if((g|0)!=-1){d=F[F[d+12>>2]+(g<<2)>>2];if((d|0)!=-1){F[e>>2]=f|h;Wa(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break e}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];i=c>>>5|0;f=F[e+(i<<2)>>2];break d}}}F[e>>2]=f|h;Wa(j,c,b)}d=-1;e=F[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b-2|0;if((f|0)!=-1){c=F[F[e+12>>2]+(f<<2)>>2]}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)!=-1){d=F[F[e+12>>2]+(b<<2)>>2]}b=(d|0)==-1;h=b?-1:(d>>>0)/3|0;f=(c>>>0)/3|0;f:{g=(c|0)==-1;if(!g){e=F[a+24>>2];g=g?-1:f;i=g>>>5|0;f=F[e+(i<<2)>>2];g=1<>2];i=h>>>5|0;f=F[e+(i<<2)>>2];if(!(g&f)){break d}}d=F[a+52>>2]-4|0;F[a+52>>2]=d;break b}if(b){b=c;break d}if(F[(h>>>3&536870908)+e>>2]>>>h&1){b=c;break d}b=F[a+52>>2];F[b-4>>2]=d;if((b|0)!=F[a+56>>2]){F[b>>2]=c;d=b+4|0;break c}g:{e=F[a+48>>2];f=b-e|0;d=f>>2;h=d+1|0;if(h>>>0<1073741824){g=f>>1;h=d>>>0<536870911?h>>>0>g>>>0?h:g:1073741823;b=0;h:{if(!h){break h}if(h>>>0>=1073741824){break g}b=sa(h<<2)}d=b+(d<<2)|0;F[d>>2]=c;d=d+4|0;if((f|0)>=1){ta(b,e,f)}F[a+56>>2]=b+(h<<2);F[a+52>>2]=d;F[a+48>>2]=b;if(!e){break b}ra(e);d=F[a+52>>2];break b}va();V()}wa(12220);V()}F[(i<<2)+e>>2]=f|g;if((b|0)!=-1){continue}break}return 0}F[a+52>>2]=d}if(F[a+48>>2]!=(d|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,m=0;i=ea-32|0;ea=i;a:{if(H[b+38>>1]<=513){g=F[b+16>>2];c=F[b+20>>2];d=F[b+12>>2];if((c|0)>(d|0)?1:(c|0)>=(d|0)?g>>>0>=I[b+8>>2]:0){break a}d=G[g+F[b>>2]|0];g=g+1|0;c=g>>>0<1?c+1|0:c;F[b+16>>2]=g;F[b+20>>2]=c;if(d){break a}}b:{if(!Rb(1,i+28|0,b)){break b}c:{e=F[i+28>>2];if(e){Qb(a+60|0,e);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){g=1<>2]+(f>>>3&536870908)|0;j=d;if(h){d=g|F[d>>2]}else{d=F[d>>2]&(g^-1)}F[j>>2]=d;f=f+1|0;if((e|0)!=(f|0)){continue}break}}if(!Rb(1,i+28|0,b)){break b}e=F[i+28>>2];if(e){f=0;Qb(a+72|0,e);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){g=1<>2]+(f>>>3&536870908)|0;j=d;if(h){d=g|F[d>>2]}else{d=F[d>>2]&(g^-1)}F[j>>2]=d;f=f+1|0;if((e|0)!=(f|0)){continue}break}}if(!Rb(1,i+28|0,b)){break b}e=F[i+28>>2];if(e){f=0;Qb(a+84|0,e);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){g=1<>2]+(f>>>3&536870908)|0;j=d;if(h){d=g|F[d>>2]}else{d=F[d>>2]&(g^-1)}F[j>>2]=d;f=f+1|0;if((e|0)!=(f|0)){continue}break}}if(!Rb(1,i+28|0,b)){break b}e=F[i+28>>2];if(e){f=0;Qb(a+96|0,e);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){g=1<>2]+(f>>>3&536870908)|0;j=d;if(h){d=g|F[d>>2]}else{d=F[d>>2]&(g^-1)}F[j>>2]=d;f=f+1|0;if((e|0)!=(f|0)){continue}break}}f=0;e=F[b+12>>2];g=e;c=F[b+20>>2];d=c;k=F[b+16>>2];h=k+4|0;c=h>>>0<4?c+1|0:c;l=F[b+8>>2];j=h;h=c;if((c|0)>(e|0)?1:(c|0)>=(e|0)?l>>>0>>0:0){break a}m=F[b>>2];c=m+k|0;e=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=j;F[b+20>>2]=h;c=d;d=k+8|0;c=d>>>0<8?c+1|0:c;h=d;d=c;if((c|0)>(g|0)?1:(c|0)>=(g|0)?h>>>0>l>>>0:0){break a}c=j+m|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=h;F[b+20>>2]=d;if((c|0)<(e|0)){break a}F[a+16>>2]=c;F[a+12>>2]=e;b=e;e=(c>>31)-((b>>>0>c>>>0)+(b>>31)|0)|0;b=c-b|0;if(!e&b>>>0>2147483646|e){break a}f=1;b=b+1|0;F[a+20>>2]=b;c=(b|0)/2|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}}f=0}ea=i+32|0;return f|0}function ke(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;f=ea-96|0;ea=f;a:{b:{if(G[F[a+28>>2]+36|0]<=1){c=F[b+20>>2];e=F[b+16>>2];d=e+4|0;c=d>>>0<4?c+1|0:c;i=d;d=c;g=F[b+12>>2];if((c|0)>(g|0)?1:(c|0)>=(g|0)?i>>>0>I[b+8>>2]:0){break a}c=e+F[b>>2]|0;j=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=d;break b}if(!Rc(1,f+92|0,b)){break a}j=F[f+92>>2]}if(!j){break a}c=F[b+8>>2];d=F[b+16>>2];d=Kj(c-d|0,F[b+12>>2]-(F[b+20>>2]+(d>>>0>c>>>0)|0)|0,5,0)>>>0>>0;c=fa;if((c|0)<0?1:(c|0)<=0?d:0){break a}d=F[a+4>>2];c=F[a+8>>2]-d>>2;c:{if(c>>>0>>0){Ia(a+4|0,j-c|0);break c}if(c>>>0<=j>>>0){break c}F[a+8>>2]=d+(j<<2)}t=j>>>0>1?j:1;r=a+16|0;m=F[a+32>>2];s=1;while(1){d:{o=F[b+8>>2];k=F[b+16>>2];h=F[b+12>>2];d=h;c=F[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?o>>>0<=k>>>0:0){break d}p=F[b>>2];i=G[p+k|0];g=k+1|0;d=g>>>0<1?c+1|0:c;F[b+16>>2]=g;F[b+20>>2]=d;if((d|0)>(h|0)?1:(d|0)>=(h|0)?g>>>0>=o>>>0:0){break d}e=G[g+p|0];l=k+2|0;d=l>>>0<2?c+1|0:c;g=b;F[b+16>>2]=l;F[b+20>>2]=d;if((d|0)>(h|0)?1:(d|0)>=(h|0)?l>>>0>=o>>>0:0){break d}l=G[l+p|0];q=k+3|0;d=q>>>0<3?c+1|0:c;F[b+16>>2]=q;F[g+20>>2]=d;if((d|0)>(h|0)?1:(d|0)>=(h|0)?q>>>0>=o>>>0:0){break d}h=G[q+p|0];d=c;c=k+4|0;d=c>>>0<4?d+1|0:d;F[b+16>>2]=c;F[g+20>>2]=d;if(!l|(i>>>0>4|(e-1&255)>>>0>10)){break d}g=Gb(f+24|0);k=g;o=l<<24>>24;c=e;e=c;h=(h|0)!=0;d=c-1|0;e:{if(d>>>0<=10){c=F[(d<<2)+14040>>2];break e}c=-1}c=L(c,l);pc(k,i,o,e,h,c,c>>31);c=H[F[a+28>>2]+36>>1];f:{if(((c<<8|c>>>8)&65535)>>>0<=258){d=F[b+20>>2];e=F[b+16>>2];c=e+2|0;d=c>>>0<2?d+1|0:d;i=c;c=d;h=F[b+12>>2];if((c|0)>(h|0)?1:(c|0)>=(h|0)?i>>>0>I[b+8>>2]:0){break d}d=e+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8;F[b+16>>2]=i;F[b+20>>2]=c;F[f+20>>2]=d;break f}if(!Rc(1,f+20|0,b)){break d}d=F[f+20>>2]}F[f+84>>2]=d;c=sa(96);mc(c,g);F[f+16>>2]=c;c=ea-16|0;ea=c;e=F[m+12>>2];i=F[m+8>>2];g=F[f+16>>2];F[f+16>>2]=0;F[c+8>>2]=g;ga[F[F[m>>2]+8>>2]](m,e-i>>2,c+8|0);e=F[c+8>>2];F[c+8>>2]=0;if(e){Ha(e)}ea=c+16|0;c=(F[m+12>>2]-F[m+8>>2]>>2)-1|0;e=F[f+16>>2];F[f+16>>2]=0;if(e){Ha(e)}i=c<<2;F[F[i+F[m+8>>2]>>2]+60>>2]=d;F[F[a+4>>2]+(n<<2)>>2]=c;d=F[a+16>>2];e=F[a+20>>2]-d>>2;g:{if((e|0)>(c|0)){break g}F[f+12>>2]=-1;c=c+1|0;if(c>>>0>e>>>0){Oa(r,c-e|0,f+12|0);d=F[r>>2];break g}if(c>>>0>=e>>>0){break g}F[a+20>>2]=(c<<2)+d}F[d+i>>2]=n;n=n+1|0;s=n>>>0>>0;if((n|0)!=(t|0)){continue}}break}n=!s}ea=f+96|0;return n&1}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,j=0,k=0,l=0,m=0,n=0,o=0;a:{o=ga[F[F[a>>2]+44>>2]](a)|0;if((o|0)<1){break a}j=F[b+4>>2]-F[b>>2]>>2;e=ea-80|0;ea=e;d=Gb(e+16|0);f=L(F[3514],o);pc(d,F[F[a+8>>2]+56>>2],o<<24>>24,5,0,f,f>>31);f=sa(96);d=mc(f,d);F[e+8>>2]=f;D[d+84|0]=1;F[d+72>>2]=F[d+68>>2];pb(d,j);F[e+8>>2]=0;d=F[a+16>>2];F[a+16>>2]=f;b:{if(!d){break b}Ha(d);d=F[e+8>>2];F[e+8>>2]=0;if(!d){break b}Ha(d)}ea=e+80|0;d=F[a+16>>2];if(!F[d+80>>2]){break a}f=F[F[d>>2]>>2];if(!f){break a}m=F[c+8>>2];k=F[c+16>>2];h=F[c+12>>2];i=h;e=F[c+20>>2];if((i|0)<(e|0)?1:(i|0)<=(e|0)?m>>>0<=k>>>0:0){break a}i=L(j,o);l=f+F[d+48>>2]|0;n=F[c>>2];j=G[n+k|0];d=e;f=k+1|0;d=f>>>0<1?d+1|0:d;g=f;f=d;F[c+16>>2]=g;F[c+20>>2]=d;c:{d:{e:{if(j){if(qd(i,o,c,l)){break e}break a}if((f|0)>(h|0)?1:(f|0)>=(h|0)?g>>>0>=m>>>0:0){break a}j=G[g+n|0];f=k+2|0;e=f>>>0<2?e+1|0:e;d=c;F[d+16>>2]=f;F[d+20>>2]=e;e=F[F[a+16>>2]+64>>2];e=F[e+4>>2]-F[e>>2]|0;f:{if((j|0)==F[3514]){j=i<<2;if(j>>>0>e>>>0){break a}d=F[c+20>>2];g=F[c+16>>2];e=j;k=g+e|0;f=F[c+12>>2];d=e>>>0>k>>>0?d+1|0:d;if((d|0)<(f|0)?1:(f|0)>=(d|0)?k>>>0<=I[c+8>>2]:0){break f}break a}if(e>>>0>>0){break a}k=F[c+12>>2];d=F[c+20>>2];h=F[c+8>>2];f=h;m=F[c+16>>2];g=m;e=j;n=f-g>>>0>>0;f=k-(d+(f>>>0>>0)|0)|0;g=fa;if((f|0)<(g|0)?1:(f|0)<=(g|0)?n:0){break a}f=1;if(!i){break d}g=0;f=h;h=e+m|0;d=e>>>0>h>>>0?d+1|0:d;if((d|0)>(k|0)?1:(d|0)>=(k|0)?f>>>0>>0:0){break c}h=0;while(1){ta(l+(h<<2)|0,m+F[c>>2]|0,j);d=F[c+20>>2];m=e+F[c+16>>2]|0;d=m>>>0>>0?d+1|0:d;F[c+16>>2]=m;F[c+20>>2]=d;h=h+1|0;if((i|0)==(h|0)){break e}n=e+m|0;k=F[c+12>>2];d=e>>>0>n>>>0?d+1|0:d;if((d|0)<(k|0)?1:(k|0)>=(d|0)?n>>>0<=I[c+8>>2]:0){continue}break}break c}ta(l,g+F[c>>2]|0,j);d=c;f=e+F[d+16>>2]|0;e=F[d+20>>2];F[d+16>>2]=f;F[d+20>>2]=f>>>0>>0?e+1|0:e}f=1;if(!i){break d}e=F[a+20>>2];if(e){f=0;if(ga[F[F[e>>2]+32>>2]](e)|0){break d}}g=0;g:{if((i|0)<1){break g}if((i|0)!=1){h=i&-2;while(1){e=g<<2;d=F[e+l>>2];F[e+l>>2]=0-(d&1)^d>>>1;d=e|4;e=F[d+l>>2];F[d+l>>2]=0-(e&1)^e>>>1;g=g+2|0;h=h-2|0;if(h){continue}break}}if(!(i&1)){break g}d=g<<2;e=F[d+l>>2];F[d+l>>2]=0-(e&1)^e>>>1}f=0}e=F[a+20>>2];h:{if(!e){break h}if(!(ga[F[F[e>>2]+40>>2]](e,c)|0)){break a}if(f){break h}g=0;a=F[a+20>>2];if(!(ga[F[F[a>>2]+44>>2]](a,l,l,i,o,F[b>>2])|0)){break c}}g=1}return g|0}return 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;h=ea-32|0;ea=h;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;f=f-d|0;i=(f|0)<1;if(!i){a:{d=F[e>>2];b:{if((d|0)==F[e+4>>2]){e=F[h+8>>2];break b}n=a+112|0;o=a+60|0;e=L(f>>>2|0,i?f:1);p=(e|0)>1?e:1;while(1){Ob(o,F[(k<<2)+d>>2],h+16|0);e=F[h+20>>2];d=e>>31;f=F[h+16>>2];i=f>>31;g=F[h+24>>2];j=g>>31;j=j^g+j;i=j+((d^d+e)+(i^f+i)|0)|0;d=0;d=i>>>0>>0?1:d;j=i;c:{if(!(d|i)){F[h+16>>2]=F[a+108>>2];break c}i=F[a+108>>2];m=i>>31;e=Lj(Kj(i,m,e,e>>31),fa,j,d);F[h+20>>2]=e;l=e;e=e>>31;e=l+e^e;d=Lj(Kj(i,m,f,f>>31),fa,j,d);F[h+16>>2]=d;f=d;d=d>>31;d=f+d^d;if((g|0)>=0){F[h+24>>2]=i-(d+e|0);break c}F[h+24>>2]=e+(d-i|0)}d=Fa(n);f=F[h+16>>2];if(d){F[h+24>>2]=0-F[h+24>>2];F[h+20>>2]=0-F[h+20>>2];f=0-f|0;F[h+16>>2]=f}e=F[h+20>>2];d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=F[h+24>>2];d=f>>31;d=d^d+f;break e}f=F[h+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<=-1){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}f:{if(!(d|f)){f=F[a+100>>2];e=f;break f}i=F[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(i|0)){e=f;break f}e=0;if(f|i){break i}f=0;break f}if(!((d|0)!=(i|0)|f)){f=d;e=d;break f}if((d|0)!=(i|0)){break g}g=F[a+108>>2];break h}g=F[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(i){break g}}i=d;if((f|0)>=(g|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(i|0)){break j}e=F[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}F[h+12>>2]=f;k:{if(F[a+8>>2]<1){break k}f=0;d=e;while(1){g=F[a+16>>2];l:{if((g|0)<(d|0)){i=F[a+32>>2];F[i+(f<<2)>>2]=g;break l}i=F[a+32>>2];g=i+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[g>>2]=j;break l}F[g>>2]=d}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){d=F[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=k<<3;j=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+j|0;g=F[g+l>>2]+F[i+g>>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}}k=k+1|0;if((p|0)==(k|0)){break a}f=F[a+56>>2];d=F[f>>2];if(F[f+4>>2]-d>>2>>>0>k>>>0){continue}break}}F[h+8>>2]=e;Ca();V()}F[h+8>>2]=e}ea=h+32|0;return 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;h=ea-32|0;ea=h;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;f=f-d|0;i=(f|0)<1;if(!i){a:{d=F[e>>2];b:{if((d|0)==F[e+4>>2]){e=F[h+8>>2];break b}n=a+112|0;o=a+60|0;e=L(f>>>2|0,i?f:1);p=(e|0)>1?e:1;while(1){Mb(o,F[(k<<2)+d>>2],h+16|0);e=F[h+20>>2];d=e>>31;f=F[h+16>>2];i=f>>31;g=F[h+24>>2];j=g>>31;j=j^g+j;i=j+((d^d+e)+(i^f+i)|0)|0;d=0;d=i>>>0>>0?1:d;j=i;c:{if(!(d|i)){F[h+16>>2]=F[a+108>>2];break c}i=F[a+108>>2];m=i>>31;e=Lj(Kj(i,m,e,e>>31),fa,j,d);F[h+20>>2]=e;l=e;e=e>>31;e=l+e^e;d=Lj(Kj(i,m,f,f>>31),fa,j,d);F[h+16>>2]=d;f=d;d=d>>31;d=f+d^d;if((g|0)>=0){F[h+24>>2]=i-(d+e|0);break c}F[h+24>>2]=e+(d-i|0)}d=Fa(n);f=F[h+16>>2];if(d){F[h+24>>2]=0-F[h+24>>2];F[h+20>>2]=0-F[h+20>>2];f=0-f|0;F[h+16>>2]=f}e=F[h+20>>2];d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=F[h+24>>2];d=f>>31;d=d^d+f;break e}f=F[h+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<=-1){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}f:{if(!(d|f)){f=F[a+100>>2];e=f;break f}i=F[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(i|0)){e=f;break f}e=0;if(f|i){break i}f=0;break f}if(!((d|0)!=(i|0)|f)){f=d;e=d;break f}if((d|0)!=(i|0)){break g}g=F[a+108>>2];break h}g=F[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(i){break g}}i=d;if((f|0)>=(g|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(i|0)){break j}e=F[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}F[h+12>>2]=f;k:{if(F[a+8>>2]<1){break k}f=0;d=e;while(1){g=F[a+16>>2];l:{if((g|0)<(d|0)){i=F[a+32>>2];F[i+(f<<2)>>2]=g;break l}i=F[a+32>>2];g=i+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[g>>2]=j;break l}F[g>>2]=d}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){d=F[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=k<<3;j=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+j|0;g=F[g+l>>2]+F[i+g>>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}}k=k+1|0;if((p|0)==(k|0)){break a}f=F[a+56>>2];d=F[f>>2];if(F[f+4>>2]-d>>2>>>0>k>>>0){continue}break}}F[h+8>>2]=e;Ca();V()}F[h+8>>2]=e}ea=h+32|0;return 1}function pd(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;a:{d=H[b+38>>1];if(!d){break a}b:{if(d>>>0<=511){c=F[b+12>>2];d=F[b+20>>2];f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;if((c|0)<(d|0)?1:(c|0)<=(d|0)?g>>>0>I[b+8>>2]:0){break a}d=f+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+12>>2]=g;c=F[b+20>>2];f=F[b+16>>2]+4|0;c=f>>>0<4?c+1|0:c;F[b+16>>2]=f;F[b+20>>2]=c;break b}if(!ib(1,a+12|0,b)){break a}g=F[a+12>>2]}c=F[a>>2];d=F[a+4>>2]-c>>2;c:{if(d>>>0>>0){Ja(a,g-d|0);g=F[a+12>>2];break c}if(d>>>0<=g>>>0){break c}F[a+4>>2]=c+(g<<2)}if(!g){n=1;break a}k=F[b+8>>2];i=F[b+12>>2];f=0;while(1){e=F[b+16>>2];d=F[b+20>>2];c=d;if((c|0)>(i|0)?1:(c|0)>=(i|0)?e>>>0>=k>>>0:0){break a}l=F[b>>2];j=G[l+e|0];e=e+1|0;d=e>>>0<1?d+1|0:d;h=e;F[b+16>>2]=e;F[b+20>>2]=d;c=j>>>2|0;e=0;d:{e:{f:{g:{m=j&3;switch(m|0){case 3:break g;case 0:break e;default:break f}}d=c+f|0;if(d>>>0>=g>>>0){return 0}ua(F[a>>2]+(f<<2)|0,0,(j&252)+4|0);f=d;break d}while(1){if((d|0)>(i|0)?1:(d|0)>=(i|0)?h>>>0>=k>>>0:0){return 0}j=G[h+l|0];h=h+1|0;d=h>>>0<1?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;c=j<<(e<<3|6)|c;e=e+1|0;if((m|0)!=(e|0)){continue}break}}F[F[a>>2]+(f<<2)>>2]=c}g=F[a+12>>2];f=f+1|0;if(g>>>0>f>>>0){continue}break}i=a+16|0;d=F[a>>2];b=F[a+16>>2];c=F[a+20>>2]-b|0;f=c>>2;h:{if(f>>>0<=4095){Ja(i,4096-f|0);break h}if((c|0)==16384){break h}F[a+20>>2]=b+16384}i:{b=a+28|0;f=F[b>>2];c=F[a+32>>2]-f>>3;if(c>>>0>>0){sb(b,g-c|0);f=F[b>>2];break i}if(c>>>0>g>>>0){F[a+32>>2]=(g<<3)+f}if(g){break i}return 0}a=F[d>>2];c=0;F[f+4>>2]=0;F[f>>2]=a;b=F[d>>2];a=1;j:{if(b>>>0>4096){break j}e=0;k:{while(1){a=b;l:{if(b>>>0<=c>>>0){break l}j=a+(c^-1)|0;h=F[i>>2];b=a-c&7;if(b){while(1){F[h+(c<<2)>>2]=e;c=c+1|0;b=b-1|0;if(b){continue}break}}if(j>>>0<=6){break l}while(1){b=h+(c<<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;c=c+8|0;if((a|0)!=(c|0)){continue}break}}e=e+1|0;if((e|0)!=(g|0)){b=d+(e<<2)|0;c=F[b>>2];h=(e<<3)+f|0;F[h+4>>2]=a;F[h>>2]=c;c=a;b=c+F[b>>2]|0;if(b>>>0>4096){break k}continue}break}b=a}a=e>>>0>>0}return!a&(b|0)==4096}return n}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,q=0;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-2>>>0<=28){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;h=(f|0)<1;if(h){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=L(f>>>2|0,h?f:1);p=(e|0)>1?e:1;while(1){Ob(o,F[(k<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;j=F[g+16>>2];i=j>>31;i=i^j+i;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;e=Lj(Kj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=e;q=e;e=e>>31;e=q+e^e;d=Lj(Kj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=d;f=d;d=d>>31;d=f+d^d;if((j|0)>=0){F[g+16>>2]=i-(d+e|0);break b}F[g+16>>2]=e+(d-i|0)}d=Fa(n);f=F[g+8>>2];if(d){F[g+16>>2]=0-F[g+16>>2];F[g+12>>2]=0-F[g+12>>2];f=0-f|0;F[g+8>>2]=f}e=F[g+12>>2];c:{if((f|0)>=0){d=F[a+92>>2];f=d+F[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=F[g+16>>2];d=f>>31;d=d^d+f;break d}f=F[g+16>>2];d=f>>31;d=F[a+84>>2]-(d^d+f)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=e;e=e>>31;f=F[a+84>>2]-(f+e^e)|0}e:{if(!(d|f)){f=F[a+84>>2];e=f;break e}h=F[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=F[a+92>>2];break g}j=F[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((f|0)>=(j|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=F[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=F[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=k<<3;h=d+b|0;j=F[h+4>>2];h=F[h>>2];F[g+36>>2]=f;F[g+32>>2]=e;F[g+24>>2]=h;F[g+28>>2]=j;rc(g+40|0,m,g+32|0,g+24|0);d=c+d|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];k=k+1|0;if((p|0)==(k|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}Ca();V()}ea=g+48|0;return 1}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,q=0;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-2>>>0<=28){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;h=(f|0)<1;if(h){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=L(f>>>2|0,h?f:1);p=(e|0)>1?e:1;while(1){Mb(o,F[(k<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;j=F[g+16>>2];i=j>>31;i=i^j+i;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;e=Lj(Kj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=e;q=e;e=e>>31;e=q+e^e;d=Lj(Kj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=d;f=d;d=d>>31;d=f+d^d;if((j|0)>=0){F[g+16>>2]=i-(d+e|0);break b}F[g+16>>2]=e+(d-i|0)}d=Fa(n);f=F[g+8>>2];if(d){F[g+16>>2]=0-F[g+16>>2];F[g+12>>2]=0-F[g+12>>2];f=0-f|0;F[g+8>>2]=f}e=F[g+12>>2];c:{if((f|0)>=0){d=F[a+92>>2];f=d+F[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=F[g+16>>2];d=f>>31;d=d^d+f;break d}f=F[g+16>>2];d=f>>31;d=F[a+84>>2]-(d^d+f)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=e;e=e>>31;f=F[a+84>>2]-(f+e^e)|0}e:{if(!(d|f)){f=F[a+84>>2];e=f;break e}h=F[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=F[a+92>>2];break g}j=F[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((f|0)>=(j|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=F[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=F[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=k<<3;h=d+b|0;j=F[h+4>>2];h=F[h>>2];F[g+36>>2]=f;F[g+32>>2]=e;F[g+24>>2]=h;F[g+28>>2]=j;rc(g+40|0,m,g+32|0,g+24|0);d=c+d|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];k=k+1|0;if((p|0)==(k|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}Ca();V()}ea=g+48|0;return 1}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;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-2>>>0<=28){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;h=(f|0)<1;if(h){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=L(f>>>2|0,h?f:1);p=(e|0)>1?e:1;while(1){Ob(o,F[(k<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;j=F[g+16>>2];i=j>>31;i=i^j+i;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;e=Lj(Kj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=e;q=e;e=e>>31;e=q+e^e;d=Lj(Kj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=d;f=d;d=d>>31;d=f+d^d;if((j|0)>=0){F[g+16>>2]=i-(d+e|0);break b}F[g+16>>2]=e+(d-i|0)}d=Fa(n);f=F[g+8>>2];if(d){F[g+16>>2]=0-F[g+16>>2];F[g+12>>2]=0-F[g+12>>2];f=0-f|0;F[g+8>>2]=f}e=F[g+12>>2];c:{if((f|0)>=0){d=F[a+92>>2];f=d+F[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=F[g+16>>2];d=f>>31;d=d^d+f;break d}f=F[g+16>>2];d=f>>31;d=F[a+84>>2]-(d^d+f)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=e;e=e>>31;f=F[a+84>>2]-(f+e^e)|0}e:{if(!(d|f)){f=F[a+84>>2];e=f;break e}h=F[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=F[a+92>>2];break g}j=F[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((f|0)>=(j|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=F[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=F[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=k<<3;h=d+b|0;j=F[h+4>>2];F[g+40>>2]=F[h>>2];F[g+44>>2]=j;F[g+28>>2]=f;F[g+24>>2]=e;sc(g+32|0,m,g+24|0,g+40|0);d=c+d|0;F[d>>2]=F[g+32>>2];F[d+4>>2]=F[g+36>>2];k=k+1|0;if((p|0)==(k|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}Ca();V()}ea=g+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,q=0;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-2>>>0<=28){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;h=(f|0)<1;if(h){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=L(f>>>2|0,h?f:1);p=(e|0)>1?e:1;while(1){Mb(o,F[(k<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;j=F[g+16>>2];i=j>>31;i=i^j+i;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;e=Lj(Kj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=e;q=e;e=e>>31;e=q+e^e;d=Lj(Kj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=d;f=d;d=d>>31;d=f+d^d;if((j|0)>=0){F[g+16>>2]=i-(d+e|0);break b}F[g+16>>2]=e+(d-i|0)}d=Fa(n);f=F[g+8>>2];if(d){F[g+16>>2]=0-F[g+16>>2];F[g+12>>2]=0-F[g+12>>2];f=0-f|0;F[g+8>>2]=f}e=F[g+12>>2];c:{if((f|0)>=0){d=F[a+92>>2];f=d+F[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=F[g+16>>2];d=f>>31;d=d^d+f;break d}f=F[g+16>>2];d=f>>31;d=F[a+84>>2]-(d^d+f)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=e;e=e>>31;f=F[a+84>>2]-(f+e^e)|0}e:{if(!(d|f)){f=F[a+84>>2];e=f;break e}h=F[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=F[a+92>>2];break g}j=F[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((f|0)>=(j|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=F[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=F[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=k<<3;h=d+b|0;j=F[h+4>>2];F[g+40>>2]=F[h>>2];F[g+44>>2]=j;F[g+28>>2]=f;F[g+24>>2]=e;sc(g+32|0,m,g+24|0,g+40|0);d=c+d|0;F[d>>2]=F[g+32>>2];F[d+4>>2]=F[g+36>>2];k=k+1|0;if((p|0)==(k|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}Ca();V()}ea=g+48|0;return 1}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,m=0,n=0;a:{b:{c:{d:{e:{f:{g:{h:{h=F[a+8>>2];switch(F[h+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}}d=D[h+24|0];f=sa((d|0)>-1?d:-1);e=F[a+16>>2];i=0;i:{if(!F[e+80>>2]){break i}i=F[F[e>>2]>>2]+F[e+48>>2]|0}j:{if(!b){break j}if((d|0)>=1){m=d&-4;h=d&3;n=d-1>>>0<3;while(1){c=0;e=m;if(!n){while(1){j=i+(g<<2)|0;D[c+f|0]=F[j>>2];D[f+(c|1)|0]=F[j+4>>2];D[f+(c|2)|0]=F[j+8>>2];D[f+(c|3)|0]=F[j+12>>2];c=c+4|0;g=g+4|0;e=e-4|0;if(e){continue}break}}e=h;if(e){while(1){D[c+f|0]=F[i+(g<<2)>>2];c=c+1|0;g=g+1|0;e=e-1|0;if(e){continue}break}}ta(F[F[F[a+8>>2]+64>>2]>>2]+k|0,f,d);k=d+k|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break j}ta(F[F[h+64>>2]>>2],f,d);if((b|0)==1){break j}h=b-1|0;e=h&1;k:{if((b|0)==2){break k}g=h&-2;c=d;while(1){ta(F[F[F[a+8>>2]+64>>2]>>2]+c|0,f,d);c=c+d|0;ta(c+F[F[F[a+8>>2]+64>>2]>>2]|0,f,d);g=g-2|0;if(!g){break k}c=c+d|0;continue}}if(!e){break j}ta(F[F[F[a+8>>2]+64>>2]>>2]+(c+d|0)|0,f,d)}ra(f);break b}d=D[h+24|0];f=sa((d|0)>-1?d:-1);e=F[a+16>>2];i=0;l:{if(!F[e+80>>2]){break l}i=F[F[e>>2]>>2]+F[e+48>>2]|0}m:{if(!b){break m}if((d|0)>=1){m=d&-4;h=d&3;n=d-1>>>0<3;while(1){c=0;e=m;if(!n){while(1){j=i+(g<<2)|0;D[c+f|0]=F[j>>2];D[f+(c|1)|0]=F[j+4>>2];D[f+(c|2)|0]=F[j+8>>2];D[f+(c|3)|0]=F[j+12>>2];c=c+4|0;g=g+4|0;e=e-4|0;if(e){continue}break}}e=h;if(e){while(1){D[c+f|0]=F[i+(g<<2)>>2];c=c+1|0;g=g+1|0;e=e-1|0;if(e){continue}break}}ta(F[F[F[a+8>>2]+64>>2]>>2]+k|0,f,d);k=d+k|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break m}ta(F[F[h+64>>2]>>2],f,d);if((b|0)==1){break m}h=b-1|0;e=h&1;n:{if((b|0)==2){break n}g=h&-2;c=d;while(1){ta(F[F[F[a+8>>2]+64>>2]>>2]+c|0,f,d);c=c+d|0;ta(c+F[F[F[a+8>>2]+64>>2]>>2]|0,f,d);g=g-2|0;if(!g){break n}c=c+d|0;continue}}if(!e){break m}ta(F[F[F[a+8>>2]+64>>2]>>2]+(c+d|0)|0,f,d)}ra(f);break b}bf(a,b);break b}bf(a,b);break b}af(a,b);break b}af(a,b)}c=1}return c|0}function lf(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;f=ea-16|0;ea=f;l=1;m=ga[F[F[a>>2]+24>>2]](a)|0;a:{if((m|0)<1){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}o=h<<2;e=F[o+F[a+36>>2]>>2];b=F[e+8>>2];p=ub(e);if(!p){break c}e=F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2];g=F[b+56>>2];i=sa(32);F[f>>2]=i;F[f+4>>2]=24;F[f+8>>2]=-2147483616;D[i+24|0]=0;c=G[2120]|G[2121]<<8|(G[2122]<<16|G[2123]<<24);b=i;d=G[2116]|G[2117]<<8|(G[2118]<<16|G[2119]<<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[2112]|G[2113]<<8|(G[2114]<<16|G[2115]<<24);d=G[2108]|G[2109]<<8|(G[2110]<<16|G[2111]<<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[2104]|G[2105]<<8|(G[2106]<<16|G[2107]<<24);d=G[2100]|G[2101]<<8|(G[2102]<<16|G[2103]<<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=e+16|0;b=d;c=F[b>>2];d:{if(!c){break d}while(1){j=(g|0)>F[c+16>>2];b=j?b:c;c=F[(j<<2)+c>>2];if(c){continue}break}if((b|0)==(d|0)|(g|0)>2]){break d}c=F[b+24>>2];if(!c){break d}b=b+20|0;while(1){d=G[c+27|0];g=d<<24>>24<0;d=g?F[c+20>>2]:d;j=d>>>0<24;e:{f:{n=j?d:24;g:{if(n){k=c+16|0;g=g?F[k>>2]:k;k=Ga(i,g,n);h:{if(!k){if(d>>>0<=24){break h}break e}if((k|0)<=-1){break e}}d=Ga(g,i,n);if(!d){break g}if((d|0)<=-1){break f}e=b;break d}if(d>>>0>24){break e}}if(j){break f}e=b;break d}c=c+4|0}c=F[c>>2];if(c){continue}break}}e=qe(e,f);if(D[f+11|0]<=-1){ra(F[f>>2])}if(!e){break c}oe(F[F[F[a+36>>2]+o>>2]+8>>2],p);break b}e=F[F[a+36>>2]+(h<<2)>>2];if(!(ga[F[F[e>>2]+24>>2]](e,q)|0)){break a}}h=h+1|0;l=(m|0)>(h|0);if((h|0)!=(m|0)){continue}break}}ea=f+16|0;return(l^-1)&1}function pf(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=ea-16|0;ea=j;if(ke(a,b)){k=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(k>>>0>c>>>0){e=k-c|0;f=F[a+44>>2];d=F[a+40>>2];if(e>>>0<=f-d>>2>>>0){c=a;if(e){f=d;d=e<<2;d=ua(f,0,d)+d|0}F[c+40>>2]=d;break a}b:{c:{d:{c=F[a+36>>2];i=d-c>>2;g=i+e|0;if(g>>>0<1073741824){f=f-c|0;l=f>>1;g=f>>2>>>0<536870911?g>>>0>l>>>0?g:l:1073741823;if(g){if(g>>>0>=1073741824){break d}h=sa(g<<2)}f=(i<<2)+h|0;i=e<<2;e=ua(f,0,i);i=e+i|0;g=(g<<2)+h|0;if((c|0)==(d|0)){break c}while(1){d=d-4|0;e=F[d>>2];F[d>>2]=0;f=f-4|0;F[f>>2]=e;if((c|0)!=(d|0)){continue}break}F[a+44>>2]=g;g=F[a+40>>2];F[a+40>>2]=i;d=F[a+36>>2];F[a+36>>2]=f;if((d|0)==(g|0)){break b}while(1){g=g-4|0;c=F[g>>2];F[g>>2]=0;if(c){ga[F[F[c>>2]+4>>2]](c)}if((d|0)!=(g|0)){continue}break}break b}va();V()}wa(2188);V()}F[a+44>>2]=g;F[a+40>>2]=i;F[a+36>>2]=e}if(d){ra(d)}break a}if(c>>>0<=k>>>0){break a}e=e+(k<<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}e:{if((k|0)<1){g=0;break e}g=1;f=F[b+16>>2];c=F[b+20>>2];e=F[b+12>>2];if((c|0)>(e|0)?1:(c|0)>=(e|0)?f>>>0>=I[b+8>>2]:0){break e}d=0;while(1){h=G[f+F[b>>2]|0];f=f+1|0;c=f>>>0<1?c+1|0:c;e=b;F[e+16>>2]=f;F[e+20>>2]=c;ga[F[F[a>>2]+48>>2]](j+8|0,a,h);c=F[a+36>>2];e=F[j+8>>2];F[j+8>>2]=0;f=d<<2;h=f+c|0;c=F[h>>2];F[h>>2]=e;if(c){ga[F[F[c>>2]+4>>2]](c)}c=F[j+8>>2];F[j+8>>2]=0;if(c){ga[F[F[c>>2]+4>>2]](c)}c=F[f+F[a+36>>2]>>2];if(!c){break e}if(!(n=c,o=ga[F[F[a>>2]+28>>2]](a)|0,p=ga[F[F[a>>2]+20>>2]](a,d)|0,m=F[F[c>>2]+8>>2],ga[m](n|0,o|0,p|0)|0)){break e}d=d+1|0;g=(k|0)>(d|0);if((d|0)==(k|0)){break e}f=F[b+16>>2];c=F[b+20>>2];h=F[b+12>>2];if((c|0)<(h|0)?1:(c|0)<=(h|0)?f>>>0>2]:0){continue}break}}d=!g}ea=j+16|0;return d&1}function De(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(Fb(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(Fb(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(!Ce(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 ed(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=ea-16|0;ea=i;F[i>>2]=b;f=-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){f=b-1|0;break a}f=b+2|0}F[i+8>>2]=f;n=(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}}f=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break f}while(1){g=L(f,144)+c|0;k=g;c=F[g+136>>2];d=F[g+140>>2];h:{if(c>>>0>>0){F[c>>2]=b;F[k+136>>2]=c+4;break h}h=F[g+132>>2];j=c-h|0;c=j>>2;e=c+1|0;if(e>>>0>=1073741824){break e}l=c<<2;d=d-h|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;i:{if(!e){break i}if(e>>>0>=1073741824){break d}c=sa(e<<2)}d=l+c|0;F[d>>2]=b;if((j|0)>=1){ta(c,h,j)}F[g+132>>2]=c;F[k+136>>2]=d+4;F[g+140>>2]=c+(e<<2);if(!h){break h}ra(h)}f=f+1|0;c=F[a+216>>2];if(f>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0>>0){break f}f=0;if(F[a+220>>2]==F[a+216>>2]){break f}while(1){j:{if(!Fa(F[a+368>>2]+(f<<4)|0)){break j}g=F[a+216>>2]+L(f,144)|0;k=g;c=F[g+136>>2];d=F[g+140>>2];if(c>>>0>>0){F[c>>2]=b;F[k+136>>2]=c+4;break j}h=F[g+132>>2];j=c-h|0;c=j>>2;e=c+1|0;if(e>>>0>=1073741824){break c}l=c<<2;d=d-h|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;k:{if(!e){break k}if(e>>>0>=1073741824){break b}c=sa(e<<2)}d=l+c|0;F[d>>2]=b;if((j|0)>=1){ta(c,h,j)}F[g+132>>2]=c;F[k+136>>2]=d+4;F[g+140>>2]=c+(e<<2);if(!h){break j}ra(h)}f=f+1|0;if(f>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break}}m=m+1|0;if((m|0)!=3){b=F[(m<<2)+i>>2];continue}break}ea=i+16|0;return 1}va();V()}wa(12220);V()}va();V()}wa(12220);V()}function bd(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=M(0),l=0;h=F[c>>2];l=a;a:{b:{f=F[b+4>>2];if(!f){break b}g=Nj(f);c:{if(g>>>0>=2){e=h;e=f>>>0<=e>>>0?(e>>>0)%(f>>>0)|0:e;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)!=(h|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if((h|0)!=F[c+8>>2]){continue}break}b=0;break a}e=h&f-1;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}j=F[c+4>>2];if((g&j)!=(e|0)?(h|0)!=(j|0):0){break b}if((h|0)!=F[c+8>>2]){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]=h;F[c>>2]=0;k=M(F[b+12>>2]+1>>>0);i=J[b+16>>2];d:{if(f?!(k>M(i*M(f>>>0))):0){break d}g=(f-1&f)!=0|f>>>0<3|f<<1;i=M(S(M(k/i)));e:{if(i=M(0)){e=~~i>>>0;break e}e=0}e=e>>>0>g>>>0?e:g;g=2;f:{if((e|0)==1){break f}d=e;g=d;if(!(d&d-1)){break f}g=Od(e)}d=g;e=F[b+4>>2];g:{if(d>>>0>e>>>0){ve(b,d);break g}h:{if(d>>>0>=e>>>0){break h}j=e>>>0<3;i=M(S(M(M(I[b+12>>2])/J[b+16>>2])));i:{if(i=M(0)){g=~~i>>>0;break i}g=0}f=e;j:{k:{if(j){break k}if(Nj(e)>>>0>1){break k}e=g>>>0<2?g:1<<32-O(g-1|0);break j}e=Od(g)}d=d>>>0>>0?e:d;if(f>>>0<=d>>>0){break h}ve(b,d)}}f=F[b+4>>2];if(!(f&f-1)){e=h&f-1;break d}if(f>>>0>h>>>0){e=h;break d}e=(h>>>0)%(f>>>0)|0}h=F[b>>2]+(e<<2)|0;d=F[h>>2];l:{if(!d){F[c>>2]=F[b+8>>2];F[b+8>>2]=c;F[h>>2]=b+8;d=F[c>>2];if(!d){break l}d=F[d+4>>2];h=f-1|0;m:{if(!(h&f)){d=d&h;break m}if(d>>>0>>0){break m}d=(d>>>0)%(f>>>0)|0}F[F[b>>2]+(d<<2)>>2]=c;break l}F[c>>2]=F[d>>2];F[d>>2]=c}F[b+12>>2]=F[b+12>>2]+1;b=1}D[l+4|0]=b;F[a>>2]=c}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,i=0,j=0,k=0,l=0,m=0,n=0;a=0;f=ea-16|0;ea=f;k=F[b+80>>2];n=G[c+24|0];h=n<<24>>24;e=L(k,h);a:{b:{c:{b=F[c+28>>2];d:{if(!(!G[c+84|0]|((b|0)!=2?(b|0)!=1:0))){b=F[c+48>>2];c=F[F[c>>2]>>2];F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;if(e){if((e|0)<=-1){break c}a=sa(e);g=ta(a,b+c|0,e)+e|0}b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d+8>>2]=g;F[d+4>>2]=g;F[d>>2]=a;a=1;break d}F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;if(h){if((h|0)<=-1){break c}a=sa(h);F[f>>2]=a;b=a+h|0;F[f+8>>2]=b;ua(a,0,h);F[f+4>>2]=b}b=F[d+4>>2];g=F[d>>2];j=b-g|0;e:{if(j>>>0>>0){l=e-j|0;m=F[d+8>>2];if(l>>>0<=m-b>>>0){e=d;if(l){b=ua(b,0,l)+l|0}F[e+4>>2]=b;break e}if((e|0)<=-1){break b}b=m-g|0;m=b<<1;b=b>>>0<1073741823?e>>>0>m>>>0?e:m:2147483647;if(b){i=sa(b)}ua(i+j|0,0,l);if((j|0)>=1){ta(i,g,j)}F[d+8>>2]=b+i;F[d+4>>2]=e+i;F[d>>2]=i;if(!g){break e}ra(g);break e}if(e>>>0>=j>>>0){break e}F[d+4>>2]=e+g}f:{if(!k){i=0;break f}i=1;if((h|0)<1){b=0;while(1){e=c;if(!kc(e,G[e+84|0]?b:F[F[e+68>>2]+(b<<2)>>2],D[e+24|0],a)){break f}b=b+1|0;i=k>>>0>b>>>0;if((b|0)!=(k|0)){continue}break}break f}a=h-1|0;h=a&-2;j=a&1;b=0;e=0;while(1){a=F[f>>2];if(kc(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],a)){D[F[d>>2]+b|0]=G[a|0];g=1;b=b+1|0;a=h;g:{h:{switch(n-1|0){default:while(1){D[F[d>>2]+b|0]=G[F[f>>2]+g|0];D[(F[d>>2]+b|0)+1|0]=G[(F[f>>2]+g|0)+1|0];g=g+2|0;b=b+2|0;a=a-2|0;if(a){continue}break};break;case 0:break g;case 1:break h}}if(!j){break g}D[F[d>>2]+b|0]=G[F[f>>2]+g|0];b=b+1|0}e=e+1|0;i=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}}break}a=F[f>>2]}if(a){ra(a)}a=i^1}ea=f+16|0;a=a&1;break a}va();V()}va();V()}return a|0}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,i=0,j=0,k=0,l=0,m=0,n=0;a=0;f=ea-16|0;ea=f;k=F[b+80>>2];n=G[c+24|0];h=n<<24>>24;e=L(k,h);a:{b:{c:{b=F[c+28>>2];d:{if(!(!G[c+84|0]|((b|0)!=2?(b|0)!=1:0))){b=F[c+48>>2];c=F[F[c>>2]>>2];F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;if(e){if((e|0)<=-1){break c}a=sa(e);g=ta(a,b+c|0,e)+e|0}b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d+8>>2]=g;F[d+4>>2]=g;F[d>>2]=a;a=1;break d}F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;if(h){if((h|0)<=-1){break c}a=sa(h);F[f>>2]=a;b=a+h|0;F[f+8>>2]=b;ua(a,0,h);F[f+4>>2]=b}b=F[d+4>>2];g=F[d>>2];j=b-g|0;e:{if(j>>>0>>0){l=e-j|0;m=F[d+8>>2];if(l>>>0<=m-b>>>0){e=d;if(l){b=ua(b,0,l)+l|0}F[e+4>>2]=b;break e}if((e|0)<=-1){break b}b=m-g|0;m=b<<1;b=b>>>0<1073741823?e>>>0>m>>>0?e:m:2147483647;if(b){i=sa(b)}ua(i+j|0,0,l);if((j|0)>=1){ta(i,g,j)}F[d+8>>2]=b+i;F[d+4>>2]=e+i;F[d>>2]=i;if(!g){break e}ra(g);break e}if(e>>>0>=j>>>0){break e}F[d+4>>2]=e+g}f:{if(!k){i=0;break f}i=1;if((h|0)<1){b=0;while(1){e=c;if(!jc(e,G[e+84|0]?b:F[F[e+68>>2]+(b<<2)>>2],D[e+24|0],a)){break f}b=b+1|0;i=k>>>0>b>>>0;if((b|0)!=(k|0)){continue}break}break f}a=h-1|0;h=a&-2;j=a&1;b=0;e=0;while(1){a=F[f>>2];if(jc(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],a)){D[F[d>>2]+b|0]=G[a|0];g=1;b=b+1|0;a=h;g:{h:{switch(n-1|0){default:while(1){D[F[d>>2]+b|0]=G[F[f>>2]+g|0];D[(F[d>>2]+b|0)+1|0]=G[(F[f>>2]+g|0)+1|0];g=g+2|0;b=b+2|0;a=a-2|0;if(a){continue}break};break;case 0:break g;case 1:break h}}if(!j){break g}D[F[d>>2]+b|0]=G[F[f>>2]+g|0];b=b+1|0}e=e+1|0;i=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}}break}a=F[f>>2]}if(a){ra(a)}a=i^1}ea=f+16|0;a=a&1;break a}va();V()}va();V()}return a|0}function ng(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;a=ea-96|0;ea=a;c=F[b+36>>2];F[a+88>>2]=F[b+32>>2];F[a+92>>2]=c;c=F[b+28>>2];F[a+80>>2]=F[b+24>>2];F[a+84>>2]=c;c=F[b+20>>2];F[a+72>>2]=F[b+16>>2];F[a+76>>2]=c;d=F[b+12>>2];c=a- -64|0;F[c>>2]=F[b+8>>2];F[c+4>>2]=d;c=F[b+4>>2];F[a+56>>2]=F[b>>2];F[a+60>>2]=c;oc(a+24|0,a+56|0,a+40|0);b=F[a+24>>2];a:{if(b){F[e>>2]=b;Aa(e+4|0,a+24|4);if(D[a+39|0]>-1){break a}ra(F[a+28>>2]);break a}if(D[a+39|0]<=-1){ra(F[a+28>>2])}b=G[a+47|0];if(b>>>0>=2){b=sa(32);F[a+8>>2]=b;F[a+12>>2]=26;F[a+16>>2]=-2147483616;D[b+26|0]=0;c=G[11109]|G[11110]<<8;D[b+24|0]=c;D[b+25|0]=c>>>8;c=G[11105]|G[11106]<<8|(G[11107]<<16|G[11108]<<24);d=G[11101]|G[11102]<<8|(G[11103]<<16|G[11104]<<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[11097]|G[11098]<<8|(G[11099]<<16|G[11100]<<24);d=G[11093]|G[11094]<<8|(G[11095]<<16|G[11096]<<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[11089]|G[11090]<<8|(G[11091]<<16|G[11092]<<24);d=G[11085]|G[11086]<<8|(G[11087]<<16|G[11088]<<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;F[a+24>>2]=-1;b=Aa(a+24|4,a+8|0);F[e>>2]=F[a+24>>2];Aa(e+4|0,b);if(D[b+11|0]<=-1){ra(F[b>>2])}if(D[a+19|0]>-1){break a}ra(F[a+8>>2]);break a}F[e>>2]=0;F[e+4>>2]=0;F[e+16>>2]=b;F[e+8>>2]=0;F[e+12>>2]=0}ea=a+96|0;a=F[f+24>>2];if(D[f+23|0]<=-1){ra(F[f+12>>2])}ea=f+32|0;return a|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;f=F[a+12>>2];d=F[a+8>>2];e=f-d>>2;a:{if((e|0)>(b|0)){break a}i=b+1|0;if(i>>>0>e>>>0){e=i-e|0;g=F[a+16>>2];d=F[a+12>>2];if(e>>>0<=g-d>>2>>>0){f=a;if(e){j=d;d=e<<2;d=ua(j,0,d)+d|0}F[f+12>>2]=d;break a}b:{c:{d:{i=F[a+8>>2];h=d-i>>2;f=h+e|0;if(f>>>0<1073741824){g=g-i|0;k=g>>1;g=g>>2>>>0<536870911?f>>>0>k>>>0?f:k:1073741823;if(g){if(g>>>0>=1073741824){break d}j=sa(g<<2)}f=(h<<2)+j|0;h=e<<2;e=ua(f,0,h);h=e+h|0;g=(g<<2)+j|0;if((d|0)==(i|0)){break c}while(1){d=d-4|0;e=F[d>>2];F[d>>2]=0;f=f-4|0;F[f>>2]=e;if((d|0)!=(i|0)){continue}break}F[a+16>>2]=g;e=F[a+12>>2];F[a+12>>2]=h;d=F[a+8>>2];F[a+8>>2]=f;if((d|0)==(e|0)){break b}while(1){e=e-4|0;f=F[e>>2];F[e>>2]=0;if(f){Ha(f)}if((d|0)!=(e|0)){continue}break}break b}va();V()}wa(14712);V()}F[a+16>>2]=g;F[a+12>>2]=h;F[a+8>>2]=e}if(d){ra(d)}break a}if(e>>>0<=i>>>0){break a}d=d+(i<<2)|0;if((d|0)!=(f|0)){while(1){f=f-4|0;e=F[f>>2];F[f>>2]=0;if(e){Ha(e)}if((d|0)!=(f|0)){continue}break}}F[a+12>>2]=d}e:{f:{d=F[F[c>>2]+56>>2];g:{if((d|0)>4){break g}f=L(d,12)+a|0;j=f;d=F[f+24>>2];if((d|0)!=F[f+28>>2]){F[d>>2]=b;F[j+24>>2]=d+4;break g}e=F[f+20>>2];i=d-e|0;h=i>>2;g=h+1|0;if(g>>>0>=1073741824){break f}k=i>>1;g=h>>>0<536870911?g>>>0>k>>>0?g:k:1073741823;d=0;h:{if(!g){break h}if(g>>>0>=1073741824){break e}d=sa(g<<2)}h=d+(h<<2)|0;F[h>>2]=b;if((i|0)>=1){ta(d,e,i)}F[f+20>>2]=d;F[j+24>>2]=h+4;F[f+28>>2]=d+(g<<2);if(!e){break g}ra(e)}d=F[c>>2];F[d+60>>2]=b;a=F[a+8>>2];F[c>>2]=0;b=a+(b<<2)|0;a=F[b>>2];F[b>>2]=d;if(a){Ha(a)}return}va();V()}wa(14712);V()}function rc(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;l=F[b+16>>2];h=F[c+4>>2]-l|0;e=F[c>>2]-l|0;F[c>>2]=e;F[c+4>>2]=h;k=F[b+16>>2];f=h>>31;g=f+h^f;f=e>>31;m=(k|0)>=(g+(f+e^f)|0);a:{if(m){g=h;break a}b:{c:{if((e|0)>=0){j=1;i=1;if((h|0)>-1){break b}g=1;j=-1;i=-1;if((e|0)>=1){break c}break b}g=-1;j=-1;i=-1;if((h|0)<1){break b}}j=(h|0)<1?-1:1;i=g}n=L(j,k);k=L(i,k);e=(e<<1)-k|0;f=(L(i,j)|0)>-1;g=(n+(f?0-e|0:e)|0)/2|0;F[c+4>>2]=g;e=(h<<1)-n|0;e=((f?0-e|0:e)+k|0)/2|0;F[c>>2]=e}d:{e:{f:{g:{h:{if(!e){if(g){break h}j=1;g=0;f=0;i=0;break d}j=1;f=(e|0)<0&(g|0)<1;i:{if((e|0)>=1){i=(g|0)>-1?2:1;if(!f){break i}f=e;break d}i=(g|0)>0?3:0;if(!f){break i}f=e;break d}h=i-1|0;i=0;f=e;j:{switch(h|0){case 1:break j;case 0:break f;case 2:break g;default:break e}}g=0-g|0;f=0-e|0;i=2;break e}if((g|0)<1){break f}}f=0-g|0;i=3;g=e;break e}i=1;f=g;g=0-e|0}e=c;F[e>>2]=f;F[e+4>>2]=g;j=0}c=F[d+4>>2]+g|0;e=F[d>>2]+f|0;h=F[b+16>>2];k:{if((e|0)>(h|0)){e=e-F[b+4>>2]|0;break k}if((0-h|0)<=(e|0)){break k}e=F[b+4>>2]+e|0}l:{if((c|0)>(h|0)){c=c-F[b+4>>2]|0;break l}if((0-h|0)<=(c|0)){break l}c=F[b+4>>2]+c|0}m:{if(j){b=c;break m}b=c;n:{switch((4-i&3)-1|0){case 0:b=0-e|0;e=c;break m;case 1:b=0-c|0;e=0-e|0;break m;case 2:break n;default:break m}}b=e;e=0-c|0}o:{if(m){c=b;break o}p:{q:{if((e|0)>=0){c=1;f=1;if((b|0)>-1){break p}d=1;c=-1;f=-1;if((e|0)>=1){break q}break p}d=-1;c=-1;f=-1;if((b|0)<1){break p}}c=(b|0)<1?-1:1;f=d}g=L(f,h);d=(e<<1)-g|0;F[a>>2]=d;e=(L(c,f)|0)>-1;f=e?0-d|0:d;d=L(c,h);c=(f+d|0)/2|0;b=(b<<1)-d|0;e=(g+(e?0-b|0:b)|0)/2|0}b=a;F[b>>2]=e+l;F[b+4>>2]=c+l}function fd(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;f=-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){f=b-1|0;break a}f=b+2|0}F[i+8>>2]=f;b:{c:{while(1){d:{if(!((b|0)==-1|F[F[F[a+8>>2]+12>>2]+(b<<2)>>2]==-1)){f=0;if(F[a+220>>2]==F[a+216>>2]){break d}e:{while(1){f:{g:{if(!Fa(F[a+368>>2]+(f<<4)|0)){break g}g=F[a+216>>2]+L(f,144)|0;k=g;c=F[g+136>>2];d=F[g+140>>2];if(c>>>0>>0){F[c>>2]=b;F[k+136>>2]=c+4;break g}h=F[g+132>>2];j=c-h|0;c=j>>2;e=c+1|0;if(e>>>0>=1073741824){break f}l=c<<2;d=d-h|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;h:{if(!e){break h}if(e>>>0>=1073741824){break e}c=sa(e<<2)}d=l+c|0;F[d>>2]=b;if((j|0)>=1){ta(c,h,j)}F[g+132>>2]=c;F[k+136>>2]=d+4;F[g+140>>2]=c+(e<<2);if(!h){break g}ra(h)}f=f+1|0;if(f>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break d}break}va();V()}wa(12220);V()}f=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break d}while(1){g=L(f,144)+c|0;k=g;c=F[g+136>>2];d=F[g+140>>2];i:{if(c>>>0>>0){F[c>>2]=b;F[k+136>>2]=c+4;break i}h=F[g+132>>2];j=c-h|0;c=j>>2;e=c+1|0;if(e>>>0>=1073741824){break c}l=c<<2;d=d-h|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;j:{if(!e){break j}if(e>>>0>=1073741824){break b}c=sa(e<<2)}d=l+c|0;F[d>>2]=b;if((j|0)>=1){ta(c,h,j)}F[g+132>>2]=c;F[k+136>>2]=d+4;F[g+140>>2]=c+(e<<2);if(!h){break i}ra(h)}f=f+1|0;c=F[a+216>>2];if(f>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}m=m+1|0;if((m|0)!=3){b=F[(m<<2)+i>>2];continue}break}ea=i+16|0;return 1}va();V()}wa(12220);V()}function ad(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];h=F[a+4>>2];if((f-h|0)/12>>>0>=b>>>0){a:{if(!b){break a}g=L(b,12);d=h;f=L(b,12)-12|0;b=((f>>>0)/12|0)+1&3;if(b){while(1){e=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=e;F[d+8>>2]=F[c+8>>2];d=d+12|0;b=b-1|0;if(b){continue}break}}h=g+h|0;if(f>>>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((h|0)!=(d|0)){continue}break}}F[a+4>>2]=h;return}b:{e=F[a>>2];i=(h-e|0)/12|0;g=i+b|0;if(g>>>0<357913942){f=(f-e|0)/12|0;e=f<<1;e=f>>>0<178956970?e>>>0>>0?g:e:357913941;d=0;c:{if(!e){break c}if(e>>>0>=357913942){break b}d=sa(L(e,12))}f=d;g=L(i,12)+d|0;d=g;i=L(b,12);j=i-12|0;b=((j>>>0)/12|0)+1&3;if(b){d=g;while(1){k=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=k;F[d+8>>2]=F[c+8>>2];d=d+12|0;b=b-1|0;if(b){continue}break}}i=g+i|0;if(j>>>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((i|0)!=(d|0)){continue}break}}b=F[a>>2];c=h-b|0;d=g+L((c|0)/-12|0,12)|0;if((c|0)>=1){ta(d,b,c)}F[a+8>>2]=L(e,12)+f;F[a+4>>2]=i;F[a>>2]=d;if(b){ra(b)}return}va();V()}wa(12220);V()}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,j=0,k=0,l=0;i=c;a:{c=a;if(F[a+12>>2]==(b|0)){break a}a=b;b=F[c+4>>2];d=F[c>>2];if((b|0)!=(d|0)){while(1){e=b-12|0;if(D[b-1|0]<=-1){ra(F[e>>2])}b=e;if((b|0)!=(d|0)){continue}break}}F[c+12>>2]=a;F[c+4>>2]=d;b=F[a>>2];j=a+4|0;if((b|0)==(j|0)){break a}while(1){e=b+16|0;b:{if(F[c+8>>2]!=(d|0)){k=c,l=Aa(d,e)+12|0,F[k+4>>2]=l;break b}c:{d:{e:{f=F[c>>2];g=(F[c+4>>2]-f|0)/12|0;d=g+1|0;if(d>>>0<357913942){f=(F[c+8>>2]-f|0)/12|0;h=f<<1;d=f>>>0<178956970?d>>>0>h>>>0?d:h:357913941;a=0;f:{if(!d){break f}if(d>>>0>=357913942){break e}a=sa(L(d,12))}f=a+L(d,12)|0;d=Aa(a+L(g,12)|0,e);g=d+12|0;a=F[c+4>>2];e=F[c>>2];if((a|0)==(e|0)){break d}while(1){a=a-12|0;h=F[a+4>>2];d=d-12|0;F[d>>2]=F[a>>2];F[d+4>>2]=h;F[d+8>>2]=F[a+8>>2];F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;if((a|0)!=(e|0)){continue}break}F[c+8>>2]=f;a=F[c+4>>2];F[c+4>>2]=g;e=F[c>>2];F[c>>2]=d;if((a|0)==(e|0)){break c}while(1){d=a-12|0;if(D[a-1|0]<=-1){ra(F[d>>2])}a=d;if((e|0)!=(d|0)){continue}break}break c}va();V()}wa(14112);V()}F[c+8>>2]=f;F[c+4>>2]=g;F[c>>2]=d}if(e){ra(e)}}d=F[b+4>>2];g:{if(!d){a=F[b+8>>2];if(F[a>>2]==(b|0)){break g}b=b+8|0;while(1){d=F[b>>2];b=d+8|0;a=F[d+8>>2];if((d|0)!=F[a>>2]){continue}break}break g}while(1){a=d;d=F[d>>2];if(d){continue}break}}if((a|0)==(j|0)){break a}d=F[c+4>>2];b=a;continue}}d=0;h:{if((i|0)<0){break h}a=F[c>>2];if((F[c+4>>2]-a|0)/12>>>0<=i>>>0){break h}d=a+L(i,12)|0;if(D[d+11|0]>-1){break h}d=F[d>>2]}return d|0}function oe(a,b){var c=0,d=0,e=0,f=0,g=0;if(!F[a+64>>2]){d=sa(32);c=d;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;e=F[a+64>>2];F[a+64>>2]=c;if(e){c=F[e>>2];if(c){F[e+4>>2]=c;ra(c)}ra(e);d=F[a+64>>2]}F[a>>2]=d;c=F[d+20>>2];F[a+8>>2]=F[d+16>>2];F[a+12>>2]=c;c=F[d+24>>2];d=F[d+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]=c;F[a+20>>2]=d}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];se(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)){Eb(a+68|0,F[b+68>>2],F[b+72>>2])}e=F[b+88>>2];if(e){b=sa(40);c=F[e>>2];F[b+16>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b>>2]=c;d=F[e+12>>2]-F[e+8>>2]|0;if(d){if((d|0)<=-1){break a}c=sa(d);F[b+8>>2]=c;F[b+12>>2]=c;F[b+16>>2]=c+d;d=b;g=F[e+8>>2];f=F[e+12>>2]-g|0;if((f|0)>=1){c=ta(c,g,f)+f|0}F[d+12>>2]=c}c=F[e+36>>2];F[b+32>>2]=F[e+32>>2];F[b+36>>2]=c;c=F[e+28>>2];F[b+24>>2]=F[e+24>>2];F[b+28>>2]=c;c=F[a+88>>2];F[a+88>>2]=b;if(!c){break c}a=F[c+8>>2];if(a){F[c+12>>2]=a;ra(a)}ra(c);return}b=F[a+88>>2];F[a+88>>2]=0;if(!b){break c}a=F[b+8>>2];if(a){F[b+12>>2]=a;ra(a)}ra(b)}return}va();V()}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,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=d;d=0;g=ea-16|0;ea=g;i=F[b+80>>2];e=D[c+24|0];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;a:{b:{if(e){if((e|0)<=-1){break b}a=e<<2;d=sa(a);F[g>>2]=d;b=a+d|0;F[g+8>>2]=b;h=a-4|0;f=(h>>>2|0)+1&7;c:{if(!f){a=d;break c}a=d;while(1){F[a>>2]=-1073741824;a=a+4|0;f=f-1|0;if(f){continue}break}}if(h>>>0>=28){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((b|0)!=(a|0)){continue}break}}F[g+4>>2]=b}a=L(e,i);h=F[j>>2];b=F[j+4>>2]-h>>2;d:{if(a>>>0>b>>>0){vc(j,a-b|0);break d}if(a>>>0>=b>>>0){break d}F[j+4>>2]=h+(a<<2)}e:{if(!i){b=0;break e}b=1;if((e|0)<1){a=0;while(1){e=c;if(!Xa(e,G[e+84|0]?a:F[F[e+68>>2]+(a<<2)>>2],D[e+24|0],d)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}h=e&-4;o=e&3;f=0;p=e-1>>>0<3;e=0;while(1){if(Xa(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],d)){n=F[j>>2];a=0;k=F[g>>2];b=h;if(!p){while(1){l=(f<<2)+n|0;m=a<<2;J[l>>2]=J[m+k>>2];J[l+4>>2]=J[(m|4)+k>>2];J[l+8>>2]=J[(m|8)+k>>2];J[l+12>>2]=J[(m|12)+k>>2];a=a+4|0;f=f+4|0;b=b-4|0;if(b){continue}break}}b=o;if(b){while(1){J[(f<<2)+n>>2]=J[(a<<2)+k>>2];a=a+1|0;f=f+1|0;b=b-1|0;if(b){continue}break}}e=e+1|0;b=i>>>0>e>>>0;if((e|0)!=(i|0)){continue}}break}d=F[g>>2]}if(d){ra(d)}ea=g+16|0;a=(b^-1)&1;break a}va();V()}return a|0}function _c(a,b){var c=0,d=0,e=0,f=0,g=0;c=-1;e=-1;a:{if((b|0)==-1){break a}e=b+1|0;c=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break a}e=b+2|0}b:{c:{d:{e:{f:{g:{d=F[a+184>>2];switch(d|0){case 7:break d;case 3:break e;case 5:break f;case 0:case 1:break g;default:break b}}f=F[a+148>>2];g=-1;d=1;g=((c|0)!=-1?F[F[f>>2]+(c<<2)>>2]:g)<<2;c=F[a+156>>2];g=g+c|0;F[g>>2]=F[g>>2]+1;if((e|0)==-1){c=c-4|0;break c}c=c+(F[F[f>>2]+(e<<2)>>2]<<2)|0;break c}g=F[a+148>>2];f=F[a+156>>2];d=f+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[d>>2]=F[d>>2]+1;c=(c|0)==-1?f-4|0:f+(F[F[g>>2]+(c<<2)>>2]<<2)|0;F[c>>2]=F[c>>2]+1;if((e|0)==-1){c=f-4|0;d=2;break c}d=2;c=f+(F[F[g>>2]+(e<<2)>>2]<<2)|0;break c}f=F[a+148>>2];d=F[a+156>>2];g=d+(((b|0)!=-1?F[F[f>>2]+(b<<2)>>2]:-1)<<2)|0;F[g>>2]=F[g>>2]+1;c=(c|0)==-1?d-4|0:d+(F[F[f>>2]+(c<<2)>>2]<<2)|0;F[c>>2]=F[c>>2]+2;if((e|0)==-1){c=d-4|0;d=1;break c}c=d+(F[F[f>>2]+(e<<2)>>2]<<2)|0;d=1;break c}g=F[a+148>>2];f=F[a+156>>2];d=f+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[d>>2]=F[d>>2]+2;d=2;c=(c|0)==-1?f-4|0:f+(F[F[g>>2]+(c<<2)>>2]<<2)|0;F[c>>2]=F[c>>2]+2;if((e|0)==-1){c=f-4|0;break c}c=f+(F[F[g>>2]+(e<<2)>>2]<<2)|0}F[c>>2]=F[c>>2]+d;d=F[a+184>>2]}h:{switch(d|0){case 0:case 5:c=F[a+156>>2];e=-1;i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;e=-1;if((b|0)==-1){break i}e=F[F[F[a+148>>2]>>2]+(b<<2)>>2]}if(F[c+(e<<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,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;j=ea-32|0;ea=j;F[j+28>>2]=0;a:{b:{if(H[b+38>>1]<=513){c=F[b+20>>2];g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;e=d;d=c;f=F[b+12>>2];if((c|0)>(f|0)?1:(c|0)>=(f|0)?e>>>0>I[b+8>>2]:0){break a}c=g+F[b>>2]|0;g=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(!Rb(1,j+28|0,b)){break a}g=F[j+28>>2]}if(!g){break a}Qb(a+76|0,g);c=j+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^k;i=f|F[d>>2];d:{if(!(e&1)){break d}i=F[d>>2]&(f^-1)}f=i;e=e^1;F[d>>2]=f;h=h+1|0;if((h|0)!=(g|0)){continue}break}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;k=F[b+16>>2];f=k+4|0;c=f>>>0<4?c+1|0:c;l=F[b+8>>2];i=f;f=c;if((c|0)>(d|0)?1:(c|0)>=(d|0)?l>>>0>>0:0){break c}m=F[b>>2];c=m+k|0;d=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=f;c=e;e=k+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if((c|0)>(g|0)?1:(c|0)>=(g|0)?f>>>0>l>>>0:0){break c}c=i+m|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=d;d=(c>>31)-((b>>>0>c>>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d){break c}h=1;b=b+1|0;F[a+20>>2]=b;c=(b|0)/2|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break c}F[a+24>>2]=c-1}}ea=j+32|0;return h|0}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,p=0;F[a+8>>2]=e;g=a+32|0;h=F[g>>2];f=F[a+36>>2]-h>>2;a:{if(f>>>0>>0){Ia(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}F[a+36>>2]=h+(e<<2)}h=0;f=(e&1073741823)!=(e|0)?-1:e<<2;n=ua(sa(f),0,f);g=F[a+8>>2];b:{if((g|0)<1){break b}while(1){f=h<<2;g=F[f+n>>2];i=F[a+16>>2];c:{if((g|0)>(i|0)){j=F[a+32>>2];F[f+j>>2]=i;break c}j=F[a+32>>2];f=f+j|0;i=F[a+12>>2];if((i|0)>(g|0)){F[f>>2]=i;break c}F[f>>2]=g}g=F[a+8>>2];h=h+1|0;if((g|0)>(h|0)){continue}break}if((g|0)<1){break b}h=0;while(1){g=h<<2;f=g+c|0;g=F[b+g>>2]+F[g+j>>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}g=F[a+8>>2];h=h+1|0;if((g|0)>(h|0)){continue}break}}if((d|0)>(e|0)){p=0-e<<2;f=e;while(1){e:{if((g|0)<1){break e}l=f<<2;o=l+c|0;m=o+p|0;h=0;while(1){g=h<<2;i=F[g+m>>2];k=F[a+16>>2];f:{if((i|0)>(k|0)){j=F[a+32>>2];F[g+j>>2]=k;break f}j=F[a+32>>2];g=g+j|0;k=F[a+12>>2];if((k|0)>(i|0)){F[g>>2]=k;break f}F[g>>2]=i}g=F[a+8>>2];h=h+1|0;if((g|0)>(h|0)){continue}break}h=0;if((g|0)<1){break e}l=b+l|0;while(1){i=h<<2;g=i+o|0;i=F[i+l>>2]+F[i+j>>2]|0;F[g>>2]=i;g:{if((i|0)>F[a+16>>2]){m=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break g}m=i+F[a+20>>2]|0}F[g>>2]=m}g=F[a+8>>2];h=h+1|0;if((g|0)>(h|0)){continue}break}}f=e+f|0;if((f|0)<(d|0)){continue}break}}ra(n);return 1}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,l=0,m=0,n=0,o=0,p=0;a=0;g=ea-16|0;ea=g;k=F[b+80>>2];b=D[c+24|0];e=L(k,b);a:{b:{f=F[c+28>>2];if(!(!G[c+84|0]|((f|0)!=6?(f|0)!=5:0))){f=F[c+48>>2];h=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;b=0;c=e<<2;if(c){if((c|0)<=-1){break b}i=sa(c);a=ta(i,f+h|0,c);b=a+c|0;a=a+(c>>2<<2)|0}c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}F[d+8>>2]=a;F[d+4>>2]=b;F[d>>2]=i;e=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<=-1){break b}f=b<<2;j=sa(f);F[g>>2]=j;h=f+j|0;F[g+8>>2]=h;ua(j,0,f);F[g+4>>2]=h}h=F[d>>2];f=F[d+4>>2]-h>>2;c:{if(f>>>0>>0){Ja(d,e-f|0);break c}if(e>>>0>=f>>>0){break c}F[d+4>>2]=h+(e<<2)}d:{if(!k){break d}a=1;if((b|0)<1){e=0;while(1){if(!fc(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],j)){break d}e=e+1|0;a=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}break}break d}f=b&-4;h=b&3;p=b-1>>>0<3;while(1){if(fc(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],j)){o=F[d>>2];e=0;l=F[g>>2];a=f;if(!p){while(1){b=(m<<2)+o|0;n=e<<2;F[b>>2]=F[n+l>>2];F[b+4>>2]=F[(n|4)+l>>2];F[b+8>>2]=F[(n|8)+l>>2];F[b+12>>2]=F[(n|12)+l>>2];e=e+4|0;m=m+4|0;a=a-4|0;if(a){continue}break}}b=h;if(b){while(1){F[(m<<2)+o>>2]=F[(e<<2)+l>>2];e=e+1|0;m=m+1|0;b=b-1|0;if(b){continue}break}}i=i+1|0;a=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}}break}j=F[g>>2]}if(j){ra(j)}e=a^1;break a}va();V()}ea=g+16|0;return e&1}function ge(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;a=0;g=ea-16|0;ea=g;k=F[b+80>>2];b=D[c+24|0];e=L(k,b);a:{b:{f=F[c+28>>2];if(!(!G[c+84|0]|((f|0)!=6?(f|0)!=5:0))){f=F[c+48>>2];h=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;b=0;c=e<<2;if(c){if((c|0)<=-1){break b}i=sa(c);a=ta(i,f+h|0,c);b=a+c|0;a=a+(c>>2<<2)|0}c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}F[d+8>>2]=a;F[d+4>>2]=b;F[d>>2]=i;e=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<=-1){break b}f=b<<2;j=sa(f);F[g>>2]=j;h=f+j|0;F[g+8>>2]=h;ua(j,0,f);F[g+4>>2]=h}h=F[d>>2];f=F[d+4>>2]-h>>2;c:{if(f>>>0>>0){Ia(d,e-f|0);break c}if(e>>>0>=f>>>0){break c}F[d+4>>2]=h+(e<<2)}d:{if(!k){break d}a=1;if((b|0)<1){e=0;while(1){if(!gc(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],j)){break d}e=e+1|0;a=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}break}break d}f=b&-4;h=b&3;p=b-1>>>0<3;while(1){if(gc(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],j)){o=F[d>>2];e=0;l=F[g>>2];a=f;if(!p){while(1){b=(m<<2)+o|0;n=e<<2;F[b>>2]=F[n+l>>2];F[b+4>>2]=F[(n|4)+l>>2];F[b+8>>2]=F[(n|8)+l>>2];F[b+12>>2]=F[(n|12)+l>>2];e=e+4|0;m=m+4|0;a=a-4|0;if(a){continue}break}}b=h;if(b){while(1){F[(m<<2)+o>>2]=F[(e<<2)+l>>2];e=e+1|0;m=m+1|0;b=b-1|0;if(b){continue}break}}i=i+1|0;a=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}}break}j=F[g>>2]}if(j){ra(j)}e=a^1;break a}va();V()}ea=g+16|0;return e&1}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;a=0;g=ea-16|0;ea=g;k=F[b+80>>2];b=D[c+24|0];e=L(k,b);a:{b:{f=F[c+28>>2];if(!(!G[c+84|0]|((f|0)!=4?(f|0)!=3:0))){f=F[c+48>>2];h=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;b=0;c=e<<1;if(c){if((c|0)<=-1){break b}i=sa(c);a=ta(i,f+h|0,c);b=a+c|0;a=a+(c>>1<<1)|0}c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}F[d+8>>2]=a;F[d+4>>2]=b;F[d>>2]=i;e=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<=-1){break b}f=b<<1;j=sa(f);F[g>>2]=j;h=f+j|0;F[g+8>>2]=h;ua(j,0,f);F[g+4>>2]=h}h=F[d>>2];f=F[d+4>>2]-h>>1;c:{if(f>>>0>>0){pe(d,e-f|0);break c}if(e>>>0>=f>>>0){break c}F[d+4>>2]=h+(e<<1)}d:{if(!k){break d}a=1;if((b|0)<1){e=0;while(1){if(!ic(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],j)){break d}e=e+1|0;a=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}break}break d}f=b&-4;h=b&3;p=b-1>>>0<3;while(1){if(ic(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],j)){o=F[d>>2];e=0;l=F[g>>2];a=f;if(!p){while(1){b=(m<<1)+o|0;n=e<<1;E[b>>1]=H[n+l>>1];E[b+2>>1]=H[(n|2)+l>>1];E[b+4>>1]=H[(n|4)+l>>1];E[b+6>>1]=H[(n|6)+l>>1];e=e+4|0;m=m+4|0;a=a-4|0;if(a){continue}break}}b=h;if(b){while(1){E[(m<<1)+o>>1]=H[(e<<1)+l>>1];e=e+1|0;m=m+1|0;b=b-1|0;if(b){continue}break}}i=i+1|0;a=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}}break}j=F[g>>2]}if(j){ra(j)}e=a^1;break a}va();V()}ea=g+16|0;return e&1}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;a=0;g=ea-16|0;ea=g;k=F[b+80>>2];b=D[c+24|0];e=L(k,b);a:{b:{f=F[c+28>>2];if(!(!G[c+84|0]|((f|0)!=4?(f|0)!=3:0))){f=F[c+48>>2];h=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;b=0;c=e<<1;if(c){if((c|0)<=-1){break b}i=sa(c);a=ta(i,f+h|0,c);b=a+c|0;a=a+(c>>1<<1)|0}c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}F[d+8>>2]=a;F[d+4>>2]=b;F[d>>2]=i;e=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<=-1){break b}f=b<<1;j=sa(f);F[g>>2]=j;h=f+j|0;F[g+8>>2]=h;ua(j,0,f);F[g+4>>2]=h}h=F[d>>2];f=F[d+4>>2]-h>>1;c:{if(f>>>0>>0){pe(d,e-f|0);break c}if(e>>>0>=f>>>0){break c}F[d+4>>2]=h+(e<<1)}d:{if(!k){break d}a=1;if((b|0)<1){e=0;while(1){if(!hc(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],j)){break d}e=e+1|0;a=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}break}break d}f=b&-4;h=b&3;p=b-1>>>0<3;while(1){if(hc(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],j)){o=F[d>>2];e=0;l=F[g>>2];a=f;if(!p){while(1){b=(m<<1)+o|0;n=e<<1;E[b>>1]=H[n+l>>1];E[b+2>>1]=H[(n|2)+l>>1];E[b+4>>1]=H[(n|4)+l>>1];E[b+6>>1]=H[(n|6)+l>>1];e=e+4|0;m=m+4|0;a=a-4|0;if(a){continue}break}}b=h;if(b){while(1){E[(m<<1)+o>>1]=H[(e<<1)+l>>1];e=e+1|0;m=m+1|0;b=b-1|0;if(b){continue}break}}i=i+1|0;a=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}}break}j=F[g>>2]}if(j){ra(j)}e=a^1;break a}va();V()}ea=g+16|0;return e&1}function ze(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;F[a>>2]=11568;e=a+232|0;b=F[e+196>>2];if(b){F[e+200>>2]=b;ra(b)}d=F[e+184>>2];if(d){b=F[e+188>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b-12|0;f=F[c>>2];if(f){F[b-8>>2]=f;ra(f)}b=c;if((d|0)!=(b|0)){continue}break}c=F[e+184>>2]}F[e+188>>2]=d;ra(c)}b=F[e+156>>2];if(b){F[e+160>>2]=b;ra(b)}d=F[e+136>>2];F[e+136>>2]=0;if(d){c=d-4|0;b=F[c>>2];if(b){b=d+(b<<4)|0;while(1){b=b-16|0;if((d|0)!=(b|0)){continue}break}}ra(c)}d=F[a+216>>2];if(d){b=F[a+220>>2];c=d;b:{if((d|0)==(b|0)){break b}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)}Hb(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}c=F[a+216>>2]}F[a+220>>2]=d;ra(c)}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){d=F[b>>2];ra(b);b=d;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){Za(b)}return a|0}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,m=0;k=ea-16|0;ea=k;c=F[b+20>>2];g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;e=d;d=c;f=F[b+12>>2];a:{if((c|0)>(f|0)?1:(c|0)>=(f|0)?e>>>0>I[b+8>>2]:0){break a}c=g+F[b>>2]|0;g=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((g|0)<0){break a}Qb(a+76|0,g);c=k;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((g|0)>0){e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^j;i=f|F[d>>2];c:{if(!(e&1)){break c}i=F[d>>2]&(f^-1)}f=i;e=e^1;F[d>>2]=f;h=h+1|0;if((g|0)!=(h|0)){continue}break}}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;j=F[b+16>>2];f=j+4|0;c=f>>>0<4?c+1|0:c;l=F[b+8>>2];i=f;f=c;if((c|0)>(d|0)?1:(c|0)>=(d|0)?l>>>0>>0:0){break b}m=F[b>>2];c=m+j|0;d=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=f;c=e;e=j+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if((c|0)>(g|0)?1:(c|0)>=(g|0)?f>>>0>l>>>0:0){break b}c=i+m|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=d;d=(c>>31)-((b>>>0>c>>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d){break b}h=1;b=b+1|0;F[a+20>>2]=b;c=(b|0)/2|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break b}F[a+24>>2]=c-1}}ea=k+16|0;return h|0}function Zc(a,b){var c=0,d=0,e=0,f=0,g=0;g=-1;e=-1;a:{if((b|0)==-1){break a}e=b+1|0;g=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break a}e=b+2|0}b:{c:{d:{switch(F[a+168>>2]){case 0:case 1:d=F[a+148>>2];f=1;c=F[a+156>>2];b=c+(((g|0)!=-1?F[F[d>>2]+(g<<2)>>2]:-1)<<2)|0;F[b>>2]=F[b>>2]+1;b=c-4|0;if((e|0)==-1){break c}b=c+(F[F[d>>2]+(e<<2)>>2]<<2)|0;break c;case 5:d=F[a+148>>2];f=-1;c=F[a+156>>2];b=c+(((b|0)!=-1?F[F[d>>2]+(b<<2)>>2]:f)<<2)|0;F[b>>2]=F[b>>2]+1;b=(g|0)==-1?c-4|0:c+(F[F[d>>2]+(g<<2)>>2]<<2)|0;F[b>>2]=F[b>>2]+1;if((e|0)==-1){f=2;b=c-4|0;break c}f=2;b=c+(F[F[d>>2]+(e<<2)>>2]<<2)|0;break c;case 3:d=F[a+148>>2];f=-1;c=F[a+156>>2];b=c+(((b|0)!=-1?F[F[d>>2]+(b<<2)>>2]:f)<<2)|0;F[b>>2]=F[b>>2]+1;b=(g|0)==-1?c-4|0:c+(F[F[d>>2]+(g<<2)>>2]<<2)|0;F[b>>2]=F[b>>2]+2;if((e|0)==-1){f=1;b=c-4|0;break c}f=1;b=c+(F[F[d>>2]+(e<<2)>>2]<<2)|0;break c;case 7:break d;default:break b}}d=F[a+148>>2];f=-1;c=F[a+156>>2];b=c+(((b|0)!=-1?F[F[d>>2]+(b<<2)>>2]:f)<<2)|0;F[b>>2]=F[b>>2]+2;f=2;b=(g|0)==-1?c-4|0:c+(F[F[d>>2]+(g<<2)>>2]<<2)|0;F[b>>2]=F[b>>2]+2;b=c-4|0;if((e|0)==-1){break c}b=c+(F[F[d>>2]+(e<<2)>>2]<<2)|0}F[b>>2]=F[b>>2]+f}d=-1;c=F[a+176>>2];e=c;b=a;d=F[F[b+156>>2]+(((g|0)!=-1?F[F[F[b+148>>2]>>2]+(g<<2)>>2]:d)<<2)>>2];if((d|0)>=(c|0)){a=F[a+180>>2];e=(a|0)<(d|0)?a:d}F[b+172>>2]=e-c}function ve(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=sa(b<<2);c=F[a>>2];F[a>>2]=d;if(c){ra(c)}F[a+4>>2]=b;d=b>>>0>1?b:1;f=d&3;c=0;if(d-1>>>0>=3){d=d&-4;while(1){e=c<<2;F[e+F[a>>2]>>2]=0;F[F[a>>2]+(e|4)>>2]=0;F[F[a>>2]+(e|8)>>2]=0;F[F[a>>2]+(e|12)>>2]=0;c=c+4|0;d=d-4|0;if(d){continue}break}}if(f){while(1){F[F[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}d=F[a+8>>2];if(!d){break b}c=a+8|0;g=F[d+4>>2];e=Nj(b);c:{if(e>>>0<=1){g=b-1&g;break c}if(b>>>0>g>>>0){break c}g=(g>>>0)%(b>>>0)|0}F[F[a>>2]+(g<<2)>>2]=c;c=F[d>>2];if(!c){break b}if(e>>>0<=1){h=b-1|0;while(1){b=h&F[c+4>>2];d:{if((b|0)==(g|0)){d=c;break d}e=c;f=b<<2;i=f+F[a>>2]|0;if(F[i>>2]){while(1){b=e;e=F[b>>2];if(F[c+8>>2]==F[e+8>>2]?e:0){continue}break}F[d>>2]=e;F[b>>2]=F[F[f+F[a>>2]>>2]>>2];F[F[f+F[a>>2]>>2]>>2]=c;break d}F[i>>2]=d;d=c;g=b}c=F[d>>2];if(c){continue}break}break b}while(1){f=F[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|0)){d=c;break e}e=c;h=f<<2;i=h+F[a>>2]|0;if(!F[i>>2]){F[i>>2]=d;d=c;g=f;break e}while(1){f=e;e=F[e>>2];if(F[c+8>>2]==F[e+8>>2]?e:0){continue}break}F[d>>2]=e;F[f>>2]=F[F[h+F[a>>2]>>2]>>2];F[F[h+F[a>>2]>>2]>>2]=c}c=F[d>>2];if(c){continue}break}break b}b=F[a>>2];F[a>>2]=0;if(b){ra(b)}F[a+4>>2]=0}return}wa(12220);V()}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;h=ea-16|0;ea=h;d=F[c>>2];F[c>>2]=0;F[h+8>>2]=d;Vd(a,b,h+8|0);c=F[h+8>>2];F[h+8>>2]=0;if(c){Ha(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){f=b-d|0;e=F[a+92>>2];c=F[a+88>>2];if(f>>>0<=e-c>>2>>>0){b:{if(!f){break b}b=c;d=(f<<2)-4|0;e=(d>>>2|0)+1&7;if(e){while(1){F[b>>2]=1;b=b+4|0;e=e-1|0;if(e){continue}break}}c=(f<<2)+c|0;if(d>>>0<28){break b}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 a}c:{i=F[a+84>>2];j=c-i|0;d=j>>2;b=d+f|0;if(b>>>0<1073741824){e=e-i|0;g=e>>1;g=e>>2>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;c=0;d:{if(!g){break d}if(g>>>0>=1073741824){break c}c=sa(g<<2)}d=c+(d<<2)|0;b=d;f=f<<2;k=f-4|0;e=(k>>>2|0)+1&7;if(e){b=d;while(1){F[b>>2]=1;b=b+4|0;e=e-1|0;if(e){continue}break}}d=d+f|0;if(k>>>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((d|0)!=(b|0)){continue}break}}if((j|0)>=1){ta(c,i,j)}F[a+92>>2]=(g<<2)+c;F[a+88>>2]=d;F[a+84>>2]=c;if(i){ra(i)}break a}va();V()}wa(14308);V()}if(b>>>0>=d>>>0){break a}F[a+88>>2]=c+(b<<2)}ea=h+16|0}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;a:{b=F[a+32>>2];f=F[b+16>>2];h=F[b+12>>2];d=F[b+20>>2];e=0;b:{if((d|0)>(h|0)?1:(h|0)<=(d|0)?I[b+8>>2]<=f>>>0:0){break b}g=G[f+F[b>>2]|0];e=f+1|0;d=e>>>0<1?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;c:{if(!g){break c}while(1){if(ga[F[F[a>>2]+16>>2]](a,c)|0){c=c+1|0;if((g|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(!g){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((g|0)!=(c|0)){continue}break}if(!g){break d}h=a+20|0;while(1){c=0;e=i<<2;b=F[e+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]+e>>2];k=ga[F[F[b>>2]+20>>2]](b,c)|0;j=F[a+20>>2];f=F[a+24>>2]-j>>2;e:{if(k>>>0>>0){break e}b=k+1|0;if(b>>>0>f>>>0){Ia(h,b-f|0);j=F[h>>2];break e}if(b>>>0>=f>>>0){break e}F[a+24>>2]=(b<<2)+j}F[(k<<2)+j>>2]=i;c=c+1|0;if((d|0)!=(c|0)){continue}break}}i=i+1|0;if((g|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 Lc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=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}j=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;i=i-1|0;if(i){continue}break}}if(j>>>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;f=(g>>>2|0)+1&7;if(f){while(1){F[d>>2]=c;d=d+4|0;f=f-1|0;if(f){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 Ie(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=ea-16|0;ea=h;a:{b:{if(H[b+38>>1]<=511){f=F[b+12>>2];i=f;c=F[b+20>>2];d=F[b+16>>2];e=d+8|0;c=e>>>0<8?c+1|0:c;g=F[b+8>>2];if((c|0)>(f|0)?1:(c|0)>=(f|0)?g>>>0>>0:0){break a}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);j=G[d+4|0]|G[d+5|0]<<8|(G[d+6|0]<<16|G[d+7|0]<<24);F[b+16>>2]=e;F[b+20>>2]=c;break b}if(!cb(1,h+8|0,b)){break a}e=F[b+16>>2];c=F[b+20>>2];g=F[b+8>>2];i=F[b+12>>2];f=F[h+8>>2];j=F[h+12>>2]}d=e;k=g-d|0;g=i-(c+(d>>>0>g>>>0)|0)|0;if((g|0)==(j|0)&f>>>0>k>>>0|g>>>0>>0){break a}c=c+j|0;i=e+f|0;F[b+16>>2]=i;F[b+20>>2]=d>>>0>i>>>0?c+1|0:c;c=f;if((c|0)<1){break a}e=e+F[b>>2]|0;F[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c-1|0;g=e+f|0;switch((G[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}F[a+44>>2]=f;a=G[g|0]&63;break c}if((c|0)<2){break a}F[a+44>>2]=c-2;a=(c+e|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break c}if((c|0)<3){break a}F[a+44>>2]=c-3;a=(c+e|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break c}F[a+44>>2]=c-4;a=(c+e|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+16384|0;F[b+48>>2]=a;l=a>>>0<4194304}ea=h+16|0;return l}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;j=ea-16|0;ea=j;e=F[b+16>>2];c=F[b+20>>2];d=F[b+12>>2];a:{if((c|0)>(d|0)?1:(c|0)>=(d|0)?e>>>0>=I[b+8>>2]:0){break a}D[a+12|0]=G[e+F[b>>2]|0];c=F[b+20>>2];e=c;g=F[b+16>>2];h=g+1|0;c=h>>>0<1?c+1|0:c;f=h;F[b+16>>2]=f;F[b+20>>2]=c;b:{if(H[b+38>>1]<=513){i=F[b+12>>2];d=e;c=g+5|0;d=c>>>0<5?d+1|0:d;h=F[b+8>>2];g=c;c=d;if((c|0)>(i|0)?1:(c|0)>=(i|0)?h>>>0>>0:0){break a}d=f+F[b>>2]|0;f=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(!Ne(1,j+12|0,b)){break a}g=F[b+16>>2];c=F[b+20>>2];h=F[b+8>>2];i=F[b+12>>2];f=F[j+12>>2]}d=f;e=i-(c+(g>>>0>h>>>0)|0)|0;if(((e|0)<0?1:(e|0)<=0?d>>>0>h-g>>>0:0)|(d|0)<1){break a}e=g+F[b>>2]|0;F[a>>2]=e;i=f-1|0;k=i+e|0;h=G[k|0]>>>6|0;if((h|0)==3){break a}l=a;c:{d:{switch(h-1|0){default:F[a+4>>2]=i;a=G[k|0]&63;break c;case 0:if((f|0)<2){break a}F[a+4>>2]=f-2;a=(f+e|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break c;case 1:break d}}if((f|0)<3){break a}F[a+4>>2]=f-3;a=(f+e|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0]}a=a+4096|0;F[l+8>>2]=a;if(a>>>0>1048575){break a}a=d+g|0;c=a>>>0>>0?c+1|0:c;F[b+16>>2]=a;F[b+20>>2]=c;m=1}ea=j+16|0;return m}function Ae(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11520;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){c=d-4|0;b=F[c>>2];if(b){b=(b<<4)+d|0;while(1){b=b-16|0;if((d|0)!=(b|0)){continue}break}}ra(c)}d=F[a+216>>2];if(d){c=d;b=F[a+220>>2];e=c;a:{if((c|0)==(b|0)){break a}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)}Hb(b-140|0);c=b-144|0;b=c;if((b|0)!=(d|0)){continue}break}e=F[a+216>>2]}c=e;F[a+220>>2]=d;ra(c)}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){d=F[b>>2];ra(b);b=d;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){Za(b)}return a|0}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|0)<1){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 Yb(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}f=b<<2;d=e;g=(b<<2)-4|0;b=(g>>>2|0)+1&7;if(b){while(1){F[d>>2]=F[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}e=e+f|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];j=e-g|0;i=j>>2;d=i+b|0;if(d>>>0<1073741824){f=f-g|0;h=f>>1;h=f>>2>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;e=0;c:{if(!h){break c}if(h>>>0>=1073741824){break b}e=sa(h<<2)}f=e+(i<<2)|0;d=f;i=b<<2;k=i-4|0;b=(k>>>2|0)+1&7;if(b){d=f;while(1){F[d>>2]=F[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}b=f+i|0;if(k>>>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((j|0)>=1){ta(e,g,j)}F[a+8>>2]=e+(h<<2);F[a+4>>2]=b;F[a>>2]=e;if(g){ra(g)}return}va();V()}wa(1972);V()}function Oa(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}f=b<<2;d=e;g=(b<<2)-4|0;b=(g>>>2|0)+1&7;if(b){while(1){F[d>>2]=F[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}e=e+f|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];j=e-g|0;i=j>>2;d=i+b|0;if(d>>>0<1073741824){f=f-g|0;h=f>>1;h=f>>2>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;e=0;c:{if(!h){break c}if(h>>>0>=1073741824){break b}e=sa(h<<2)}f=e+(i<<2)|0;d=f;i=b<<2;k=i-4|0;b=(k>>>2|0)+1&7;if(b){d=f;while(1){F[d>>2]=F[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}b=f+i|0;if(k>>>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((j|0)>=1){ta(e,g,j)}F[a+8>>2]=e+(h<<2);F[a+4>>2]=b;F[a>>2]=e;if(g){ra(g)}return}va();V()}wa(1496);V()}function ce(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=F[a+8>>2];d=F[a+4>>2];if(e-d>>2>>>0>=b>>>0){a:{if(!b){break a}e=b<<2;c=d;f=(b<<2)-4|0;b=(f>>>2|0)+1&7;if(b){while(1){F[c>>2]=F[3546];c=c+4|0;b=b-1|0;if(b){continue}break}}d=d+e|0;if(f>>>0<28){break a}while(1){F[c>>2]=F[3546];F[c+4>>2]=F[3546];F[c+8>>2]=F[3546];F[c+12>>2]=F[3546];F[c+16>>2]=F[3546];F[c+20>>2]=F[3546];F[c+24>>2]=F[3546];F[c+28>>2]=F[3546];c=c+32|0;if((d|0)!=(c|0)){continue}break}}F[a+4>>2]=d;return}b:{f=F[a>>2];i=d-f|0;h=i>>2;c=h+b|0;if(c>>>0<1073741824){e=e-f|0;g=e>>1;g=e>>2>>>0<536870911?c>>>0>g>>>0?c:g:1073741823;d=0;c:{if(!g){break c}if(g>>>0>=1073741824){break b}d=sa(g<<2)}e=d+(h<<2)|0;c=e;h=b<<2;j=h-4|0;b=(j>>>2|0)+1&7;if(b){c=e;while(1){F[c>>2]=F[3546];c=c+4|0;b=b-1|0;if(b){continue}break}}b=e+h|0;if(j>>>0>=28){while(1){F[c>>2]=F[3546];F[c+4>>2]=F[3546];F[c+8>>2]=F[3546];F[c+12>>2]=F[3546];F[c+16>>2]=F[3546];F[c+20>>2]=F[3546];F[c+24>>2]=F[3546];F[c+28>>2]=F[3546];c=c+32|0;if((b|0)!=(c|0)){continue}break}}if((i|0)>=1){ta(d,f,i)}F[a+8>>2]=d+(g<<2);F[a+4>>2]=b;F[a>>2]=d;if(f){ra(f)}return}va();V()}wa(14188);V()}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;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{f=b;if(f){e=c;if(!e){break k}g=d;if(!d){break j}e=O(g)-O(f)|0;if(e>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(c>>>0)|0;fa=0;break a}e=d;if(!a){break h}if(!e){break g}if(e-1&e){break g}a=f>>>Pj(e)|0;fa=0;break a}if(!(e-1&e)){break f}f=(O(e)+33|0)-O(f)|0;h=0-f|0;break d}f=e+1|0;h=63-e|0;break d}a=(f>>>0)/(e>>>0)|0;fa=0;break a}e=O(e)-O(f)|0;if(e>>>0<31){break e}break c}if((e|0)==1){break b}d=Pj(e);c=d&31;if((d&63)>>>0>=32){g=0;a=b>>>c|0}else{g=b>>>c|0;a=((1<>>c}fa=g;break a}f=e+1|0;h=63-e|0}e=b;g=f&63;i=g&31;if(g>>>0>=32){g=0;i=e>>>i|0}else{g=e>>>i|0;i=((1<>>i}h=h&63;e=h&31;if(h>>>0>=32){b=a<>>32-e|b<>>31;k=j;g=g<<1|i>>>31;j=h-(g+(e>>>0>>0)|0)|0;l=j>>31;m=c&l;i=k-m|0;g=g-((j>>31&d)+(k>>>0>>0)|0)|0;b=b<<1|a>>>31;a=n|a<<1;j=l&1;n=j;f=f-1|0;if(f){continue}break}}fa=b<<1|a>>>31;a=j|a<<1;break a}a=0;b=0}fa=b}return a}function Be(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11468;d=F[a+368>>2];F[a+368>>2]=0;if(d){c=d-4|0;b=F[c>>2];if(b){b=(b<<4)+d|0;while(1){b=b-16|0;if((d|0)!=(b|0)){continue}break}}ra(c)}d=F[a+216>>2];if(d){c=d;b=F[a+220>>2];e=c;a:{if((c|0)==(b|0)){break a}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)}Hb(b-140|0);c=b-144|0;b=c;if((b|0)!=(d|0)){continue}break}e=F[a+216>>2]}c=e;F[a+220>>2]=d;ra(c)}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){d=F[b>>2];ra(b);b=d;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){Za(b)}return a|0}function xb(a,b){var c=0,d=0,e=0,f=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;a:{if(b){if(b>>>0>=1073741824){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+96>>2]=f}F[a+104>>2]=0;F[a+108>>2]=0;F[a+112>>2]=0;if(b){c=b<<2;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}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(b){c=b<<2;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}e=b<<5|1;wb(a+116|0,e,d);c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(b){b=b<<2;c=sa(b);F[d>>2]=c;f=b+c|0;F[d+8>>2]=f;ua(c,0,b);F[d+4>>2]=f}wb(a+128|0,e,d);b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}ea=d+16|0;return a}va();V()}function qj(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;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);e=a+8|0;d=D[b+24|0];f=F[a+8>>2];g=F[a+12>>2]-f>>2;a:{if(d>>>0>g>>>0){vc(e,d-g|0);d=D[b+24|0];break a}if(d>>>0>=g>>>0){break a}F[a+12>>2]=f+(d<<2)}j=1;g=F[c+8>>2];b:{if((d|0)<1){b=4;break b}f=d&3;e=F[e>>2];c:{if(d-1>>>0<3){b=4;d=0;break c}i=d&-4;d=0;b=4;while(1){h=d<<2;c=b+g|0;J[h+e>>2]=(z(2,G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24)),A());J[e+(h|4)>>2]=(z(2,G[c+4|0]|G[c+5|0]<<8|(G[c+6|0]<<16|G[c+7|0]<<24)),A());J[e+(h|8)>>2]=(z(2,G[c+8|0]|G[c+9|0]<<8|(G[c+10|0]<<16|G[c+11|0]<<24)),A());J[e+(h|12)>>2]=(z(2,G[c+12|0]|G[c+13|0]<<8|(G[c+14|0]<<16|G[c+15|0]<<24)),A());d=d+4|0;b=b+16|0;i=i-4|0;if(i){continue}break}}if(!f){break b}while(1){c=b+g|0;J[e+(d<<2)>>2]=(z(2,G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24)),A());d=d+1|0;b=b+4|0;f=f-1|0;if(f){continue}break}}c=a;a=b+g|0;J[c+20>>2]=(z(2,G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)),A())}return j|0}function Vb(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];if((d|0)==(e|0)){e=F[c+4>>2];if(!(!e|G[e+12|0])){break b}c:{if(F[d>>2]==(b|0)){b=d;break c}b=F[d+4>>2];e=F[b>>2];F[d+4>>2]=e;a=b;if(e){F[e+8>>2]=d;c=F[d+8>>2]}F[a+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;F[c+8>>2]=a;return}if(!(G[e+12|0]|!e)){break b}d:{if(F[d>>2]!=(b|0)){b=d;break d}e=F[b+4>>2];F[d>>2]=e;a=b;if(e){F[e+8>>2]=d;c=F[d+8>>2]}F[a+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;F[c+8>>2]=a;break a}D[d+12|0]=1;D[c+12|0]=(a|0)==(c|0);D[e+12|0]=1;b=c;if((b|0)!=(a|0)){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;g=i;e=F[c>>2]-k|0;F[c>>2]=e;F[c+4>>2]=g;g=F[b+16>>2];f=i>>31;h=f+i^f;f=e>>31;l=(g|0)>=(h+(f+e^f)|0);a:{if(l){f=i;break a}b:{c:{if((e|0)>=0){f=1;h=1;if((i|0)>-1){break b}j=1;f=-1;h=-1;if((e|0)>=1){break c}break b}j=-1;f=-1;h=-1;if((i|0)<1){break b}}f=(i|0)<1?-1:1;h=j}j=L(g,h);e=(e<<1)-j|0;h=(L(f,h)|0)>-1;g=L(f,g);f=((h?0-e|0:e)+g|0)/2|0;F[c+4>>2]=f;m=c;c=(i<<1)-g|0;e=(j+(h?0-c|0:c)|0)/2|0;F[m>>2]=e;g=F[b+16>>2]}c=F[d+4>>2]+f|0;e=F[d>>2]+e|0;d:{if((g|0)<(e|0)){e=e-F[b+4>>2]|0;break d}if((0-g|0)<=(e|0)){break d}e=F[b+4>>2]+e|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((e|0)>=0){b=1;f=1;if((c|0)>-1){break g}d=1;b=-1;f=-1;if((e|0)>=1){break h}break g}d=-1;b=-1;f=-1;if((c|0)<1){break g}}b=(c|0)<1?-1:1;f=d}i=L(f,g);d=(e<<1)-i|0;F[a>>2]=d;j=0-d|0;h=d;d=(L(b,f)|0)>-1;b=L(b,g);g=((d?j:h)+b|0)/2|0;b=(c<<1)-b|0;e=(i+(d?0-b|0:b)|0)/2|0}F[a>>2]=e+k;F[a+4>>2]=g+k}function fe(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;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}i=h;f=m>>31;n=f+m^f;g=R(k*l+.5);c:{if(N(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;i=i-(n+(f+b^b)|0)|0;b=(i|0)<0?0:i;e=e?0-b|0:b;f=f+(i>>31&((f|0)>0?i:0-i|0))|0;d:{if((m|0)>=0){b=f+h|0;e=e+h|0;break d}b=(f|0)>=0?F[a+8>>2]-b|0:b;if((e|0)<=-1){e=f>>31;e=e+f^e;break d}e=f>>31;e=F[a+8>>2]-(e+f^e)|0}e:{if(!(b|e)){e=F[a+8>>2];a=e;break e}f=F[a+8>>2];f:{g:{h:{i:{if(!b){if((e|0)==(f|0)){a=e;break e}a=0;if(e|f){break i}e=0;break e}if((b|0)!=(f|0)|e){break h}e=b;a=b;break e}if((e|0)>(h|0)){e=(h<<1)-e|0;break e}if(f){break f}break g}if((b|0)!=(f|0)){break f}}f=b;if((e|0)>=(h|0)){break f}e=(h<<1)-e|0;a=b;break e}if(!((e|0)!=(f|0)|(b|0)>=(h|0))){a=(h<<1)-b|0;break e}if(e){a=b;break e}e=0;if((b|0)<=(h|0)){a=b;break e}a=(h<<1)-b|0}F[c>>2]=a;F[d>>2]=e}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;Zb(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;Zb(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;Zb(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;vd(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;vd(a,b+8|0);c=F[a+4>>2];F[b+8>>2]=F[c>>2];F[a+4>>2]=c+4;Zb(a,b+8|0);break a}wa(1756);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 Fc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=a;e=F[a+4>>2];a:{if(G[a+11|0]>>>7|0){break a}e=G[d+11|0]}if(e>>>0>>0){i=ea-16|0;ea=i;h=b-e|0;if(h){e=G[d+11|0]>>>7|0?(F[d+8>>2]&2147483647)-1|0:10;if(G[d+11|0]>>>7|0){b=F[a+4>>2]}else{b=G[a+11|0]}j=b+h|0;if(e-b>>>0>>0){b:{g=ea-16|0;ea=g;c=j-e|0;if(c>>>0<=-17-e>>>0){if(G[a+11|0]>>>7|0){d=F[a>>2]}else{d=a}c:{if(e>>>0<2147483623){F[g+8>>2]=e<<1;F[g+12>>2]=c+e;c=ea-16|0;ea=c;ea=c+16|0;c=g+8|0;f=g+12|0;c=F[(I[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=sa(f);if(b){ac(c,d,b)}if((e|0)!=10){ra(d)}F[a>>2]=c;F[a+8>>2]=f|-2147483648;ea=g+16|0;break b}Ma();V()}}d=b;if(G[a+11|0]>>>7|0){b=F[a>>2]}else{b=a}d=d+b|0;if(h){ua(d,0,h)}d:{if(G[a+11|0]>>>7|0){F[a+4>>2]=j;break d}D[a+11|0]=j}D[i+15|0]=0;D[b+j|0]=G[i+15|0]}ea=i+16|0;return}a=ea-16|0;ea=a;e:{if(G[d+11|0]>>>7|0){e=F[d>>2];D[a+15|0]=0;D[b+e|0]=G[a+15|0];F[d+4>>2]=b;break e}D[a+14|0]=0;D[b+d|0]=G[a+14|0];D[d+11|0]=b}ea=a+16|0}function zb(a,b){var c=0,d=0,e=0,f=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;a:{if(b){if(b>>>0>=1073741824){break a}d=b<<2;e=sa(d);F[a+96>>2]=e;f=d+e|0;F[a+104>>2]=f;ua(e,0,d);F[a+100>>2]=f}F[a+108>>2]=0;F[a+112>>2]=0;F[a+116>>2]=0;if(b){d=b<<2;e=sa(d);F[a+108>>2]=e;f=d+e|0;F[a+116>>2]=f;ua(e,0,d);F[a+112>>2]=f}F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;if(b){d=b<<2;e=sa(d);F[c>>2]=e;f=d+e|0;F[c+8>>2]=f;ua(e,0,d);F[c+4>>2]=f}e=b<<5|1;wb(a+120|0,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}va();V()}function Wa(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];f=F[F[a+12>>2]+4>>2];d=F[f+4>>2];a:{if((d|0)!=F[f+8>>2]){F[d>>2]=g;F[f+4>>2]=d+4;break a}b:{h=F[f>>2];i=d-h|0;j=i>>2;e=j+1|0;if(e>>>0<1073741824){d=i>>1;e=j>>>0<536870911?d>>>0>>0?e:d:1073741823;d=0;c:{if(!e){break c}if(e>>>0>=1073741824){break b}d=sa(e<<2)}j=d+(j<<2)|0;F[j>>2]=g;if((i|0)>=1){ta(d,h,i)}F[f+8>>2]=d+(e<<2);F[f+4>>2]=j+4;F[f>>2]=d;if(h){ra(h)}break a}va();V()}wa(12220);V()}f=F[a+4>>2];d=F[f+4>>2];d:{e:{f:{if((d|0)!=F[f+8>>2]){F[d>>2]=c;F[f+4>>2]=d+4;break f}h=F[f>>2];i=d-h|0;g=i>>2;e=g+1|0;if(e>>>0>=1073741824){break e}j=i>>1;e=g>>>0<536870911?e>>>0>j>>>0?e:j:1073741823;d=0;g:{if(!e){break g}if(e>>>0>=1073741824){break d}d=sa(e<<2)}g=d+(g<<2)|0;F[g>>2]=c;if((i|0)>=1){ta(d,h,i)}F[f+8>>2]=d+(e<<2);F[f+4>>2]=g+4;F[f>>2]=d;if(!h){break f}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(12220);V()}function Pe(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=M(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=ea-16|0;ea=m;if(F[c+28>>2]==9){g=F[a+4>>2];h=D[c+24|0];e=h<<2;f=sa((h&1073741823)!=(h|0)?-1:e);n=m+8|0;F[n>>2]=1065353216;j=n;k=J[a+20>>2];g=-1<=1){J[j>>2]=k/M(g|0)}p=(g|0)>0;a:{if(!p){break a}l=F[c+80>>2];if(!l){break a}if((h|0)<=0){if((l|0)!=1){b=l&-2;while(1){ta(F[F[c+64>>2]>>2]+d|0,f,e);a=d+e|0;ta(a+F[F[c+64>>2]>>2]|0,f,e);d=a+e|0;b=b-2|0;if(b){continue}break}}if(!(l&1)){break a}ta(F[F[c+64>>2]>>2]+d|0,f,e);break a}q=F[F[b>>2]>>2]+F[b+48>>2]|0;g=h&-2;u=h&1;while(1){o=F[a+8>>2];k=J[n>>2];b=0;j=g;if((h|0)!=1){while(1){i=b<<2;r=(d<<2)+q|0;J[i+f>>2]=M(k*M(F[r>>2]))+J[i+o>>2];i=i|4;J[i+f>>2]=M(k*M(F[r+4>>2]))+J[i+o>>2];b=b+2|0;d=d+2|0;j=j-2|0;if(j){continue}break}}if(u){b=b<<2;J[b+f>>2]=M(k*M(F[(d<<2)+q>>2]))+J[b+o>>2];d=d+1|0}ta(F[F[c+64>>2]>>2]+s|0,f,e);s=e+s|0;t=t+1|0;if((t|0)!=(l|0)){continue}break}}ra(f)}ea=m+16|0;return p|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;i=F[b+12>>2];e=i;d=F[b+20>>2];f=d;a:{j=F[b+16>>2];c=j+4|0;d=c>>>0<4?d+1|0:d;k=F[b+8>>2];g=c;c=d;if((c|0)>(e|0)?1:(c|0)>=(e|0)?k>>>0>>0:0){break a}l=F[b>>2];d=j+l|0;e=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=i;d=f;h=j+8|0;d=h>>>0<8?d+1|0:d;if((d|0)>(c|0)?1:(d|0)>=(c|0)?h>>>0>k>>>0:0){break a}c=g+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]=h;F[b+20>>2]=d;if((c|0)<(e|0)){break a}F[a+16>>2]=c;F[a+12>>2]=e;g=e;e=(c>>31)-((e>>31)+(e>>>0>c>>>0)|0)|0;c=c-g|0;if(!e&c>>>0>2147483646|e){break a}e=c+1|0;F[a+20>>2]=e;c=(e|0)/2|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(!(e&1)){F[a+24>>2]=c-1}if(H[b+38>>1]<=513){if((d|0)>(i|0)?1:(d|0)>=(i|0)?h>>>0>=k>>>0:0){break a}c=G[h+l|0];d=f;f=j+9|0;d=f>>>0<9?d+1|0:d;e=b;F[e+16>>2]=f;F[e+20>>2]=d;d=0;b:{switch(c|0){case 1:d=1;break;case 0:break b;default:break a}}F[a+88>>2]=d}return xa(a+112|0,b)|0}return 0}function Eh(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;h=F[d+80>>2];e=ea-48|0;ea=e;a=F[a+4>>2];a:{if(a-2>>>0>28){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);f=F[c>>2];if((f|0)!=F[c+4>>2]){a=0;d=0;while(1){g=F[(d<<2)+f>>2];h=e+36|0;l=F[F[b>>2]>>2];m=F[b+48>>2];f=F[b+44>>2];k=F[b+40>>2];j=k;if(!G[b+84|0]){g=F[F[b+68>>2]+(g<<2)>>2]}g=Kj(j,f,g,0)+m|0;ta(h,g+l|0,k);fe(e+16|0,e+36|0,e+12|0,e+8|0);f=a<<2;F[f+i>>2]=F[e+12>>2];F[(f|4)+i>>2]=F[e+8>>2];g=1;a=a+2|0;d=d+1|0;f=F[c>>2];if(d>>>0>2]-f>>2>>>0){continue}break}break a}if(!h){g=1;break a}d=0;a=0;while(1){c=F[F[b>>2]>>2];j=F[b+40>>2];f=F[b+48>>2]+Kj(j,F[b+44>>2],G[b+84|0]?a:F[F[b+68>>2]+(a<<2)>>2],0)|0;ta(e+36|0,c+f|0,j);fe(e+16|0,e+36|0,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;g=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}ea=e+48|0;return g|0}function $b(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((a|0)!=(b|0)){if(G[b+11|0]>>>7|0){h=F[b>>2]}else{h=b}i=h;j=ea-16|0;ea=j;if(G[b+11|0]>>>7|0){d=F[b+4>>2]}else{d=G[b+11|0]}e=G[a+11|0]>>>7|0?(F[a+8>>2]&2147483647)-1|0:10;a:{if(d>>>0<=e>>>0){if(G[a+11|0]>>>7|0){b=F[a>>2]}else{b=a}e=b;if(d){Sa(e,i,d)}D[j+15|0]=0;D[b+d|0]=G[j+15|0];b:{if(G[a+11|0]>>>7|0){F[a+4>>2]=d;break b}D[a+11|0]=d}break a}if(G[a+11|0]>>>7|0){h=F[a+4>>2]}else{h=G[a+11|0]}k=h;f=ea-16|0;ea=f;c:{c=d-e|0;if(c>>>0<=(e^-1)-17>>>0){if(G[a+11|0]>>>7|0){b=F[a>>2]}else{b=a}d:{if(e>>>0<2147483623){F[f+8>>2]=e<<1;F[f+12>>2]=c+e;c=ea-16|0;ea=c;ea=c+16|0;c=f+8|0;g=f+12|0;c=F[(I[g>>2]>2]?c:g)>>2];if(c>>>0>=11){g=c+16&-16;c=g-1|0;c=(c|0)==11?g:c}else{c=10}break d}c=-18}g=c+1|0;c=sa(g);if(d){ac(c,i,d)}i=k-h|0;if(i){ac(c+d|0,b+h|0,i)}if((e|0)!=10){ra(b)}F[a>>2]=c;F[a+8>>2]=g|-2147483648;b=a;a=d+i|0;F[b+4>>2]=a;D[f+7|0]=0;D[a+c|0]=G[f+7|0];ea=f+16|0;break c}Ma();V()}}ea=j+16|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;i=F[a+8>>2];c=D[i+24|0];e=c<<2;f=sa((c|0)!=(c&1073741823)?-1:e);h=F[a+16>>2];d=0;a:{if(!F[h+80>>2]){break a}d=F[F[h>>2]>>2]+F[h+48>>2]|0}h=d;b:{if(!b){break b}if((c|0)>=1){i=c&-4;n=c&3;o=c-1>>>0<3;while(1){c=0;d=i;if(!o){while(1){j=c<<2;k=(g<<2)+h|0;F[j+f>>2]=F[k>>2];F[(j|4)+f>>2]=F[k+4>>2];F[(j|8)+f>>2]=F[k+8>>2];F[(j|12)+f>>2]=F[k+12>>2];c=c+4|0;g=g+4|0;d=d-4|0;if(d){continue}break}}d=n;if(d){while(1){F[(c<<2)+f>>2]=F[(g<<2)+h>>2];c=c+1|0;g=g+1|0;d=d-1|0;if(d){continue}break}}ta(F[F[F[a+8>>2]+64>>2]>>2]+l|0,f,e);l=e+l|0;m=m+1|0;if((m|0)!=(b|0)){continue}break}break b}ta(F[F[i+64>>2]>>2],f,e);if((b|0)==1){break b}d=b-1|0;h=d&1;c=0;c:{if((b|0)==2){break c}g=d&-2;c=e;while(1){ta(F[F[F[a+8>>2]+64>>2]>>2]+c|0,f,e);c=c+e|0;ta(c+F[F[F[a+8>>2]+64>>2]>>2]|0,f,e);g=g-2|0;if(!g){break c}c=c+e|0;continue}}if(!h){break b}ta(F[F[F[a+8>>2]+64>>2]>>2]+(c+e|0)|0,f,e)}ra(f)}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;i=F[a+8>>2];c=D[i+24|0];d=c+c|0;f=sa(c>>>0>d>>>0?-1:d);e=F[a+16>>2];h=0;a:{if(!F[e+80>>2]){break a}h=F[F[e>>2]>>2]+F[e+48>>2]|0}b:{if(!b){break b}e=c<<1;if((c|0)>=1){i=c&-4;n=c&3;o=c-1>>>0<3;while(1){c=0;d=i;if(!o){while(1){j=c<<1;k=(g<<2)+h|0;E[j+f>>1]=F[k>>2];E[(j|2)+f>>1]=F[k+4>>2];E[(j|4)+f>>1]=F[k+8>>2];E[(j|6)+f>>1]=F[k+12>>2];c=c+4|0;g=g+4|0;d=d-4|0;if(d){continue}break}}d=n;if(d){while(1){E[(c<<1)+f>>1]=F[(g<<2)+h>>2];c=c+1|0;g=g+1|0;d=d-1|0;if(d){continue}break}}ta(F[F[F[a+8>>2]+64>>2]>>2]+l|0,f,e);l=e+l|0;m=m+1|0;if((m|0)!=(b|0)){continue}break}break b}ta(F[F[i+64>>2]>>2],f,e);if((b|0)==1){break b}d=b-1|0;h=d&1;c=0;c:{if((b|0)==2){break c}g=d&-2;c=e;while(1){ta(F[F[F[a+8>>2]+64>>2]>>2]+c|0,f,e);c=c+e|0;ta(c+F[F[F[a+8>>2]+64>>2]>>2]|0,f,e);g=g-2|0;if(!g){break c}c=c+e|0;continue}}if(!h){break b}ta(F[F[F[a+8>>2]+64>>2]>>2]+(c+e|0)|0,f,e)}ra(f)}function Je(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;f=F[a+12>>2];h=F[a+8>>2];d=f-h>>2;b=D[b+24|0];a:{if(d>>>0>>0){vc(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];g=F[c+16>>2];e=f-h|0;f=e;d=e;j=g+d|0;k=F[c+12>>2];i=d>>>0>j>>>0?i+1|0:i;b:{if((i|0)>(k|0)?1:(k|0)<=(i|0)?j>>>0>I[c+8>>2]:0){break b}ta(h,g+F[c>>2]|0,e);d=F[c+20>>2];g=f+F[c+16>>2]|0;d=g>>>0>>0?d+1|0:d;F[c+16>>2]=g;F[c+20>>2]=d;e=F[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>I[c+8>>2]: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);e=F[c+20>>2];f=e;j=F[c+16>>2];g=j+4|0;e=g>>>0<4?e+1|0:e;d=c;F[d+16>>2]=g;F[d+20>>2]=e;d=F[d+12>>2];if((d|0)<(e|0)?1:(e|0)>=(d|0)?g>>>0>=I[c+8>>2]:0){break b}e=G[g+F[c>>2]|0];d=f;f=j+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 Vh(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){Yb(b+68|0,e-d|0,12516);c=F[a+108>>2];e=F[c+80>>2];break a}if(d>>>0<=e>>>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){c:{if((c|0)==1431655765){break c}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break c}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break c}j=F[F[a+112>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break c}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break c}i=F[f+4>>2];if(i>>>0>=e>>>0){break c}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break c}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break c}f=F[f+8>>2];if(f>>>0>=e>>>0){break c}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break c}F[h+(f<<2)>>2]=d;d=1;c=c+1|0;if((m|0)!=(c|0)){continue}break b}break}d=0}return d|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;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){Yb(b+68|0,e-d|0,12516);c=F[a+68>>2];e=F[c+80>>2];break a}if(d>>>0<=e>>>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){c:{if((c|0)==1431655765){break c}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break c}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break c}j=F[F[a+72>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break c}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break c}i=F[f+4>>2];if(i>>>0>=e>>>0){break c}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break c}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break c}f=F[f+8>>2];if(f>>>0>=e>>>0){break c}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break c}F[h+(f<<2)>>2]=d;d=1;c=c+1|0;if((m|0)!=(c|0)){continue}break b}break}d=0}return d|0}function Qb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=ea-16|0;ea=e;a:{c=F[a+4>>2];b:{if(c>>>0>>0){f=b-c|0;d=F[a+8>>2];g=d<<5;c:{if(!(f>>>0>g>>>0|c>>>0>g-f>>>0)){F[a+4>>2]=b;d=c&31;b=F[a>>2]+(c>>>3&536870908)|0;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if((b|0)<=-1){break a}c=e;if(g>>>0<=1073741822){g=b+31&-32;b=d<<6;b=b>>>0>>0?g:b}else{b=2147483647}db(c,b);d=F[a+4>>2];F[e+4>>2]=d+f;h=F[a>>2];b=F[e>>2];d:{if((d|0)<1){d=0;break d}c=d>>>5|0;g=c<<2;b=Sa(b,h,g)+g|0;d=d-(c<<5)|0;e:{if((d|0)<1){d=0;break e}c=-1>>>32-d|0;F[b>>2]=F[b>>2]&(c^-1)|c&F[g+h>>2]}h=F[a>>2]}F[a>>2]=F[e>>2];F[e>>2]=h;c=F[a+4>>2];F[a+4>>2]=F[e+4>>2];F[e+4>>2]=c;c=F[a+8>>2];F[a+8>>2]=F[e+8>>2];F[e+8>>2]=c;if(!h){break c}ra(h)}if(!f){break b}if(d){c=32-d|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=e+16|0;return}va();V()}function Uh(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)<=-1){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)>=1){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){Oa(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=ye(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>>>0)/3|0;if(a>>>0<1){break d}b=0;while(1){d=ye(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(12220);V()}function Kc(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);Lc(a+28|0,F[b+4>>2]-F[b>>2]>>2,14376);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)<=-1){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)>=1){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)<=-1){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)>=1){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(14380);V()}wa(14380);V()}function Hh(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){Yb(b+68|0,e-d|0,12516);c=F[a+68>>2];e=F[c+80>>2];break a}if(d>>>0<=e>>>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){c:{d=(L(c,3)<<2)+m|0;g=F[d>>2];if((g|0)==-1){break c}h=L(c,12)+k|0;i=F[h>>2];if(i>>>0>=e>>>0){break c}f=g<<2;g=F[F[a+72>>2]+12>>2];f=F[f+g>>2];if(f>>>0>=e>>>0){break c}j=i<<2;i=F[b+68>>2];F[j+i>>2]=f;f=F[d+4>>2];if((f|0)==-1){break c}j=F[h+4>>2];if(j>>>0>=e>>>0){break c}f=F[g+(f<<2)>>2];if(f>>>0>=e>>>0){break c}F[i+(j<<2)>>2]=f;d=F[d+8>>2];if((d|0)==-1){break c}h=F[h+8>>2];if(h>>>0>=e>>>0){break c}d=F[g+(d<<2)>>2];if(d>>>0>=e>>>0){break c}F[i+(h<<2)>>2]=d;d=1;c=c+1|0;if((l|0)!=(c|0)){continue}break b}break}d=0}return d|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 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;a:{g=F[a+8>>2];b:{if((g|0)<0){break b}e=F[a+4>>2];c=F[e>>2];f=F[e+4>>2]-c>>2;c:{if(f>>>0>>0){d:{c=g-f|0;h=F[e+8>>2];b=F[e+4>>2];if(c>>>0<=h-b>>2>>>0){if(c){d=b;b=c<<2;b=ua(d,0,b)+b|0}F[e+4>>2]=b;break d}e:{f=F[e>>2];i=b-f|0;j=i>>2;d=c+j|0;if(d>>>0<1073741824){b=0;h=h-f|0;k=h>>1;d=h>>2>>>0<536870911?d>>>0>k>>>0?d:k:1073741823;if(d){if(d>>>0>=1073741824){break e}b=sa(d<<2)}c=c<<2;c=ua((j<<2)+b|0,0,c)+c|0;if((i|0)>=1){ta(b,f,i)}F[e+8>>2]=(d<<2)+b;F[e+4>>2]=c;F[e>>2]=b;if(f){ra(f)}break d}va();V()}wa(13352);V()}d=F[a+8>>2];break c}b=g;d=b;if(b>>>0>=f>>>0){break c}F[e+4>>2]=c+(g<<2);d=g}b=d;if((b|0)<1){break b}a=F[a+4>>2];e=F[a>>2];a=F[a+4>>2]-e|0;c=(a|0)>-1?a:-1;d=a;a=a>>31;c=L((c|0)<1?c:1,(d+a^a)>>>2|0);a=0;while(1){if((a|0)==(c|0)){break a}F[e+(a<<2)>>2]=a;a=a+1|0;if((b|0)!=(a|0)){continue}break}}return(g^-1)>>>31|0}Ca();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,i=0,j=0,k=0,l=0,m=0;f=ea-16|0;ea=f;j=F[c+8>>2];g=F[c+16>>2];h=F[c+12>>2];d=h;e=F[c+20>>2];a:{if((d|0)<(e|0)?1:(d|0)<=(e|0)?j>>>0<=g>>>0:0){break a}k=F[c>>2];l=D[k+g|0];d=e;i=g+1|0;d=i>>>0<1?d+1|0:d;F[c+16>>2]=i;F[c+20>>2]=d;b:{if((l|0)==-2){break b}if((d|0)>(h|0)?1:(d|0)>=(h|0)?i>>>0>=j>>>0:0){break a}h=D[i+k|0];g=g+2|0;e=g>>>0<2?e+1|0:e;d=c;F[d+16>>2]=g;F[d+20>>2]=e;if((h+1&255)>>>0>4){break a}ga[F[F[a>>2]+40>>2]](f+8|0,a,l,h);e=F[f+8>>2];F[f+8>>2]=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[f+8>>2];F[f+8>>2]=0;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}}m=1}ea=f+16|0;return m|0}function Hd(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-2>>>0>28){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(k*M(F[a>>2]))+M(-1));f=M(M(k*M(F[a+4>>2]))+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 kd(a,b){var c=0,d=0,e=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)){e=a;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)<=-1){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]}Sa(d,F[b+24>>2],(c-1>>>3&536870908)+4|0);c=F[b+28>>2]}else{c=0}F[e+28>>2]=c;e=a;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)<=-1){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]}Sa(d,F[b+36>>2],(c-1>>>3&536870908)+4|0);a=F[b+40>>2]}else{a=0}F[e+40>>2]=a}return}va();V()}va();V()}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;g=F[b+12>>2];d=g;c=F[b+20>>2];e=c;a:{h=F[b+16>>2];f=h+4|0;c=f>>>0<4?c+1|0:c;i=F[b+8>>2];if((c|0)>(d|0)?1:(c|0)>=(d|0)?i>>>0>>0:0){break a}j=F[b>>2];d=j+h|0;k=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;l=H[b+38>>1];if(l>>>0<=513){d=g;c=e;e=h+8|0;c=e>>>0<8?c+1|0:c;f=e;if((c|0)>(d|0)?1:(c|0)>=(d|0)?f>>>0>i>>>0:0){break a}F[b+16>>2]=f;F[b+20>>2]=c}if(!(k&1)){break a}d=O(k)^31;if(d-1>>>0>28){break a}F[a+8>>2]=d+1;e=-2<>2]=d;F[a+12>>2]=e^-1;F[a+24>>2]=(d|0)/2;J[a+20>>2]=M(2)/M(d|0);if(l>>>0<=513){if((c|0)>(g|0)?1:(c|0)>=(g|0)?f>>>0>=i>>>0:0){break a}d=G[f+j|0];e=f+1|0;c=e>>>0<1?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;c=0;b:{switch(d|0){case 1:c=1;break;case 0:break b;default:break a}}F[a+72>>2]=c}return xa(a+96|0,b)|0}return 0}function _b(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=d-c|0;if((h|0)<1){return}a:{f=F[a+8>>2];i=F[a+4>>2];if((f-i|0)>=(h|0)){j=i-b|0;if((j|0)>=(h|0)){f=i;g=d;break a}f=i;g=c+j|0;if((g|0)!=(d|0)){e=g;while(1){D[f|0]=G[e|0];f=f+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=f;if((j|0)>=1){break a}return}g=F[a>>2];d=(i-g|0)+h|0;if((d|0)>-1){j=b-g|0;k=j;e=f-g|0;f=e<<1;e=e>>>0<1073741823?d>>>0>f>>>0?d:f:2147483647;d=0;b:{if(!e){break b}d=sa(e)}c=ta(k+d|0,c,h);if((j|0)>=1){ta(d,g,j)}c=c+h|0;f=i-b|0;if((f|0)>=1){c=ta(c,b,f)+f|0}F[a+8>>2]=d+e;F[a+4>>2]=c;F[a>>2]=d;if(g){ra(g)}return}va();V()}e=f;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=f-(b+h|0)|0;if(a){Sa(f-a|0,b,a)}if((c|0)==(g|0)){return}e=b;while(1){D[e|0]=G[c|0];e=e+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}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;f=F[b+12>>2];c=F[b+20>>2];g=c;a:{h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;i=F[b+8>>2];e=d;d=c;if((c|0)>(f|0)?1:(c|0)>=(f|0)?i>>>0>>0:0){break a}k=F[b>>2];c=k+h|0;l=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=f;c=g;e=h+8|0;c=e>>>0<8?c+1|0:c;j=e;if((c|0)>(d|0)?1:(c|0)>=(d|0)?e>>>0>i>>>0:0){break a}F[b+16>>2]=j;F[b+20>>2]=c;if(!(l&1)){break a}d=O(l)^31;if(d-1>>>0>28){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)?1:(c|0)>=(f|0)?j>>>0>=i>>>0:0){break a}f=G[k+j|0];d=h+9|0;g=d>>>0<9?g+1|0:g;c=b;F[c+16>>2]=d;F[c+20>>2]=g;g=0;b:{switch(f|0){case 1:g=1;break;case 0:break b;default:break a}}F[a+72>>2]=g}return xa(a+96|0,b)|0}return 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;e=ea+-64|0;ea=e;d=1;a:{if(Ya(a,b,0)){break a}d=0;if(!b){break a}d=ea+-64|0;ea=d;f=F[b>>2];g=F[f-4>>2];h=F[f-8>>2];F[d+20>>2]=0;F[d+16>>2]=16420;F[d+12>>2]=b;F[d+8>>2]=16468;f=0;ua(d+24|0,0,39);b=b+h|0;b:{if(Ya(g,16468,0)){F[d+56>>2]=1;ga[F[F[g>>2]+20>>2]](g,d+8|0,b,b,1,0);f=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:f=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}}f=F[d+24>>2]}ea=d- -64|0;d=0;if(!f){break a}ua(e+8|4,0,52);F[e+56>>2]=1;F[e+20>>2]=-1;F[e+16>>2]=a;F[e+8>>2]=f;ga[F[F[f>>2]+28>>2]](f,e+8|0,F[c>>2],1);a=F[e+32>>2];if((a|0)==1){F[c>>2]=F[e+24>>2]}d=(a|0)==1}ea=e- -64|0;return d|0}function Td(a,b,c){var d=0,e=0,f=0,g=0,h=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;c=b&3;b:{if(a-2>>>0<3){b=0;a=1;break b}e=b&-4;b=0;a=1;while(1){f=a+3|0;g=a+2|0;h=a+1|0;b=I[d+(b<<2)>>2]>I[d+(a<<2)>>2]?a: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;b=I[d+(b<<2)>>2]>I[d+(f<<2)>>2]?f:b;a=a+4|0;e=e-4|0;if(e){continue}break}}if(!c){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(c){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 Db(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a>>2];c=e+(b>>>3&536870908)|0;F[c>>2]=F[c>>2]|1<>2];f=(b|0)==-1;c=-1;a:{if(f){break a}d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;c=-1;if((d|0)==-1){break a}c=F[F[g>>2]+(d<<2)>>2]}d=F[a+12>>2];h=(c>>>3&536870908)+d|0;F[h>>2]=F[h>>2]|1<>>0)%3|0?-1:2)+b|0;if((f|0)!=-1){c=F[F[g>>2]+(f<<2)>>2]}f=d+(c>>>3&536870908)|0;F[f>>2]=F[f>>2]|1<>2]+(b<<2)>>2];if((b|0)==-1){break b}D[a+24|0]=0;a=e+(b>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>>0)%3|0?e:b-2|0;if((e|0)!=-1){c=F[F[g>>2]+(e<<2)>>2]}e=d+(c>>>3&536870908)|0;F[e>>2]=F[e>>2]|1<>>0)%3|0?-1:2)|0;if((b|0)!=-1){a=F[F[g>>2]+(b<<2)>>2]}b=d+(a>>>3&536870908)|0;a=F[b>>2]|1<>2]|-2147483648}F[b>>2]=a}}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;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){Ia(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}Ca();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]<=-1){ra(F[a+16>>2])}ea=a+32|0;break a}Ma();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;e=ea-32|0;ea=e;g=F[a+28>>2];F[e+16>>2]=g;d=F[a+20>>2];F[e+28>>2]=c;F[e+24>>2]=b;b=d-g|0;F[e+20>>2]=b;g=b+c|0;j=2;b=e+16|0;a:{b:{f=Z(F[a+60>>2],e+16|0,2,e+12|0)|0;d=0;c:{if(!f){break c}F[4312]=f;d=-1}d:{if(!d){while(1){d=F[e+12>>2];if((d|0)==(g|0)){break d}if((d|0)<=-1){break b}h=F[b+4>>2];f=h>>>0>>0;i=(f<<3)+b|0;h=d-(f?h:0)|0;F[i>>2]=h+F[i>>2];i=(f?12:4)+b|0;F[i>>2]=F[i>>2]-h;g=g-d|0;b=f?b+8|0:b;j=j-f|0;f=Z(F[a+60>>2],b|0,j|0,e+12|0)|0;d=0;e:{if(!f){break e}F[4312]=f;d=-1}if(!d){continue}break}}if((g|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 Sg(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=Ga(j,g,i);h:{if(!h){if(a>>>0>=c>>>0){break h}break e}if((h|0)<=-1){break e}}c=Ga(g,j,i);if(!c){break g}if((c|0)<=-1){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)<=-1){ra(f)}ea=d+16|0;break a}Ma();V()}return a|0}function ub(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=F[a+8>>2];a:{if(G[b+84|0]){break a}e=F[a+16>>2];if(!e|!G[e+84|0]){break a}d=F[b+72>>2];c=F[b+68>>2];D[e+84|0]=0;d=d-c>>2;f=F[e+68>>2];c=F[e+72>>2]-f>>2;b:{if(d>>>0>c>>>0){Yb(e+68|0,d-c|0,1968);b=F[a+8>>2];break b}if(c>>>0<=d>>>0){break b}F[e+72>>2]=f+(d<<2)}if(G[b+84|0]){break a}e=F[b+68>>2];b=F[b+72>>2]-e|0;if(!b){break a}d=b>>31;c=(d+b^d)>>>2|0;b=(b|0)>-1?b:-1;b=L(c,(b|0)<1?b:1);c=b>>>0>1?b:1;f=c&3;d=F[F[a+16>>2]+68>>2];b=0;if(c-1>>>0>=3){h=c&-4;while(1){c=b<<2;F[c+d>>2]=F[c+e>>2];g=c|4;F[g+d>>2]=F[e+g>>2];g=c|8;F[g+d>>2]=F[e+g>>2];c=c|12;F[c+d>>2]=F[c+e>>2];b=b+4|0;h=h-4|0;if(h){continue}break}}if(!f){break a}while(1){c=b<<2;F[c+d>>2]=F[c+e>>2];b=b+1|0;f=f-1|0;if(f){continue}break}}return F[a+16>>2]}function Cc(a,b){var c=0,d=0,e=0,f=0,g=0,h=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;g=F[b+4>>2]-F[b>>2]|0;c=(g|0)/20|0;a:{b:{c:{if(g){if(c>>>0>=214748365){break c}e=sa(g);F[a+16>>2]=e;F[a+20>>2]=e;F[a+24>>2]=L(c,20)+e;g=a;c=F[b>>2];b=F[b+4>>2]-c|0;d=e;d:{if((b|0)<1){break d}d=ta(e,c,b)+L((b>>>0)/20|0,20)|0}F[g+20>>2]=d}F[a+28>>2]=0;b=d-e|0;if(!b){break a}b=(b|0)/20|0;d=b>>>0>1?b:1;g=d&1;if(b>>>0<2){b=0;break b}d=d&-2;b=0;while(1){c=L(b|1,20)+e|0;c=L(F[c+16>>2],F[c+12>>2]);h=L(b,20)+e|0;h=L(F[h+16>>2],F[h+12>>2]);f=f>>>0>>0?h:f;f=c>>>0>f>>>0?c:f;b=b+2|0;d=d-2|0;if(d){continue}break}break b}va();V()}if(!g){break a}b=L(b,20)+e|0;b=L(F[b+16>>2],F[b+12>>2]);f=b>>>0>f>>>0?b:f}jb(a,f);F[a+12>>2]=F[a>>2];return a}function ae(a,b){var c=0,d=0,e=0,f=0;d=-1;a:{b:{if((b|0)==-1){f=-1;b=1;break b}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;d=F[(F[F[a>>2]+96>>2]+L(e,12)|0)+(c-L(e,3)<<2)>>2]}c:{if((f|0)==-1){c=(d|0)==-1;e=1;break c}e=((f>>>0)%3|0?-1:2)+f|0;c=(d|0)==-1;d:{if((e|0)<=-1){break d}c=(e>>>0)/3|0;c=F[(F[F[a>>2]+96>>2]+L(c,12)|0)+(e-L(c,3)<<2)>>2]==(d|0)}e=0}d=-1;if(!c){break a}d=-1;e:{b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)>=0){c=(b>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(c,12)|0)+(b-L(c,3)<<2)>>2];if(!e){break e}b=(d|0)==-1;break b}if(!e){break e}b=1;break b}c=f+1|0;c=(c>>>0)%3|0?c:f-2|0;b=(d|0)==-1;if((c|0)<=-1){break b}b=F[F[a>>2]+96>>2];a=(c>>>0)/3|0;b=F[(b+L(a,12)|0)+(c-L(a,3)<<2)>>2]==(d|0)}d=b?f:-1}return d}function ya(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;F[a+16>>2]=0;c=F[a>>2];F[a+4>>2]=c;F[a+12>>2]=c;h=F[b+12>>2];e=h;c=F[b+20>>2];d=F[b+16>>2];f=d+4|0;c=f>>>0<4?c+1|0:c;i=F[b+8>>2];g=f;f=c;a:{if((c|0)>(e|0)?1:(c|0)>=(e|0)?i>>>0>>0:0){break a}c=d+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]=f;if(!e|e&3){break a}c=e;d=i;j=c>>>0>d-g>>>0;d=h-(f+(d>>>0>>0)|0)|0;if((d|0)<0?1:(d|0)<=0?j:0){break a}d=e>>>2|0;if(d){Ja(a,d);i=F[b+8>>2];h=F[b+12>>2];g=F[b+16>>2];f=F[b+20>>2]}d=c+g|0;f=c>>>0>d>>>0?f+1|0:f;if((f|0)>(h|0)?1:(f|0)>=(h|0)?d>>>0>i>>>0:0){break a}ta(F[a>>2],g+F[b>>2]|0,e);g=c;e=c+F[b+16>>2]|0;c=F[b+20>>2];F[b+16>>2]=e;F[b+20>>2]=e>>>0>>0?c+1|0:c;F[a+16>>2]=0;F[a+12>>2]=F[a>>2];k=1}return k}function tb(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}c=c+((c>>>0)%3|0?-1: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;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;c=-1;if((b|0)==-1){break g}b=F[F[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break g}c=b-1|0;if((b>>>0)%3|0){break g}c=b+2|0}F[a+8>>2]=c}}function Sa(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 yh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=sa(72);c=d;F[c+4>>2]=0;F[c+8>>2]=0;F[c>>2]=1360;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]=1572;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;a:{if((b|0)>=0){h=a+8|0;e=F[a+12>>2];d=F[a+8>>2];g=e-d>>2;b:{if((g|0)>(b|0)){break b}f=b+1|0;if(b>>>0>=g>>>0){jd(h,f-g|0);break b}if(f>>>0>=g>>>0){break b}d=(f<<2)+d|0;if((d|0)!=(e|0)){while(1){e=e-4|0;f=F[e>>2];F[e>>2]=0;if(f){ga[F[F[f>>2]+4>>2]](f)}if((d|0)!=(e|0)){continue}break}}F[a+12>>2]=d}a=F[h>>2]+(b<<2)|0;d=F[a>>2];F[a>>2]=c;if(!d){break a}ga[F[F[d>>2]+4>>2]](d);break a}ga[F[F[d>>2]+4>>2]](c)}return(b^-1)>>>31|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];j=a<<24>>24;k=3;b:{c:{d:{if(!e){break d}k=0;e=G[c+11|0];f=e<<24>>24;i=(j|0)<0?F[d+4>>2]:a;if((i|0)!=(((f|0)<0?F[c+4>>2]:e)|0)){break d}h=(f|0)<0?F[c>>2]:c;f=F[d>>2];e=(j|0)<0;e:{if(!e){if(!i){break e}e=d;if(G[h|0]!=(f&255)){break d}while(1){a=a-1|0;if(!a){break e}f=G[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==G[e|0]){continue}break}break d}if(!i){break e}if(Ga(e?f:d,h,i)){break c}}m=F[g>>2];k=1}if((j|0)>-1){break b}}ra(F[d>>2])}f:{switch(k|0){case 0:case 3:break f;default:break a}}g=g+4|0;if((l|0)!=(g|0)){continue}break}}m=0}ea=d+16|0;return m}function jd(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(12220);V()}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b}if(c){ra(c)}}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;d=F[b+12>>2];i=d;c=F[b+20>>2];f=c;g=F[b+16>>2];e=g+4|0;c=e>>>0<4?c+1|0:c;j=F[b+8>>2];h=e;e=c;a:{if((c|0)>(d|0)?1:(c|0)>=(d|0)?j>>>0>>0:0){break a}k=F[b>>2];c=k+g|0;d=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=h;F[b+20>>2]=e;c=f;f=g+8|0;c=f>>>0<8?c+1|0:c;e=f;f=c;if((c|0)>(i|0)?1:(c|0)>=(i|0)?e>>>0>j>>>0:0){break a}c=h+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]=f;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=d;d=(c>>31)-((b>>>0>c>>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d){break a}l=1;b=b+1|0;F[a+20>>2]=b;c=(b|0)/2|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1}return l|0}function sf(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;d=F[b>>2];e=F[b+4>>2];k=F[F[a+8>>2]+40>>2];h=k;l=sa((h|0)>-1?h:-1);f=1;g=e-d|0;a:{if((g|0)<1){break a}f=0;b=0+F[c+20>>2]|0;i=F[c+16>>2];e=k;d=i+e|0;j=d;b=d>>>0>>0?b+1|0:b;e=b;d=F[c+12>>2];if((b|0)>(d|0)?1:(b|0)>=(d|0)?j>>>0>I[c+8>>2]:0){break a}n=g>>2;b=L(g>>>2|0,(g|0)<1?g:1);g=(b|0)>1?b:1;b=1;while(1){b:{d=ta(l,i+F[c>>2]|0,h);F[c+16>>2]=j;F[c+20>>2]=e;ta(F[F[F[a+8>>2]+64>>2]>>2]+m|0,d,h);if((b|0)==(g|0)){break b}d=o+F[c+20>>2]|0;i=F[c+16>>2];e=k;f=i+e|0;j=f;d=e>>>0>f>>>0?d+1|0:d;e=d;f=F[c+12>>2];if((d|0)>(f|0)?1:(d|0)>=(f|0)?j>>>0>I[c+8>>2]:0){break b}m=h+m|0;b=b+1|0;continue}break}f=(b|0)>=(n|0)}ra(l);return f|0}function ua(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}f=a+c|0;D[f-1|0]=b;D[a|0]=b;if(c>>>0<3){break a}D[f-2|0]=b;D[a+1|0]=b;D[f-3|0]=b;D[a+2|0]=b;if(c>>>0<7){break a}D[f-4|0]=b;D[a+3|0]=b;if(c>>>0<9){break a}f=0-a&3;e=f+a|0;d=L(b&255,16843009);F[e>>2]=d;b=c-f&-4;c=b+e|0;F[c-4>>2]=d;if(b>>>0<9){break a}F[e+8>>2]=d;F[e+4>>2]=d;F[c-8>>2]=d;F[c-12>>2]=d;if(b>>>0<25){break a}F[e+24>>2]=d;F[e+20>>2]=d;F[e+16>>2]=d;F[e+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=e&4|24;c=c-b|0;if(c>>>0<32){break a}d=Kj(d,0,1,1);f=fa;b=b+e|0;while(1){F[b+24>>2]=d;e=f;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 Gh(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)<=-1){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)>=1){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=we(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>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){c=we(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(12220);V()}function Pd(a,b,c){a:{if(b>>>0>20){break a}b:{switch(b-9|0){case 0:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];return;case 1: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:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];F[a+4>>2]=0;return;case 3: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;return;case 4: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 5:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=H[b>>1];F[a+4>>2]=0;return;case 6: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 7:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=G[b|0];F[a+4>>2]=0;return;case 8:b=F[c>>2]+7&-8;F[c>>2]=b+8;K[a>>3]=K[b>>3];return;case 9:break b;default:break a}}ga[0](a,c)}}function Lh(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)<=-1){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)>=1){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=xe(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>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){c=xe(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(12220);V()}function mb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=F[b>>2];g=F[b+8>>2];h=F[b+4>>2];i=F[b>>2];d=F[a>>2];b=F[d+4>>2];a=F[d+8>>2];if(b>>>0>>0){F[b+8>>2]=g;F[b+4>>2]=h;F[b>>2]=i;F[d+4>>2]=b+12;return}a:{f=F[d>>2];e=(b-f|0)/12|0;c=e+1|0;if(c>>>0<357913942){j=L(e,12);e=(a-f|0)/12|0;a=e<<1;c=e>>>0<178956970?a>>>0>>0?c:a:357913941;a=0;b:{if(!c){break b}if(c>>>0>=357913942){break a}a=sa(L(c,12))}k=a;a=j+a|0;F[a+8>>2]=g;F[a+4>>2]=h;F[a>>2]=i;e=a+12|0;if((b|0)!=(f|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)!=(f|0)){continue}break}}F[d+8>>2]=k+L(c,12);F[d+4>>2]=e;F[d>>2]=a;if(f){ra(f)}return}va();V()}wa(14841);V()}function kf(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{switch(c|0){case 0:b=sa(20);F[b+12>>2]=-1;F[b+16>>2]=0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=1884;break a;case 1:b=sa(24);F[b+12>>2]=-1;F[b+16>>2]=0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=1884;F[b+20>>2]=0;F[b>>2]=2264;break a;case 2:b=sa(48);F[b+12>>2]=-1;F[b+16>>2]=0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=1884;F[b+20>>2]=0;F[b>>2]=2264;F[b+32>>2]=0;F[b+36>>2]=0;F[b+28>>2]=-1;F[b+24>>2]=1140;F[b>>2]=10864;F[b+40>>2]=0;F[b+44>>2]=0;break a;case 3:b=sa(32);F[b+12>>2]=-1;F[b+16>>2]=0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=1884;F[b+20>>2]=0;F[b>>2]=2264;F[b+28>>2]=-1;F[b+24>>2]=1032;F[b>>2]=6844;break a;default:break b}}F[a>>2]=0;return}F[a>>2]=b}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;f=ea-16|0;ea=f;d=sa(64);c=sa(12);F[c+8>>2]=F[F[a+4>>2]+80>>2];F[c>>2]=13428;F[c+4>>2]=0;F[f+8>>2]=c;g=td(d,f+8|0);a:{if((b|0)>=0){h=a+8|0;c=F[a+12>>2];i=F[a+8>>2];d=c-i>>2;b:{if((d|0)>(b|0)){break b}e=b+1|0;if(b>>>0>=d>>>0){jd(h,e-d|0);break b}if(d>>>0<=e>>>0){break b}e=(e<<2)+i|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}c=F[h>>2]+(b<<2)|0;a=F[c>>2];F[c>>2]=g;if(!a){break a}ga[F[F[a>>2]+4>>2]](a);break a}ga[F[F[d>>2]+4>>2]](g)}a=F[f+8>>2];F[f+8>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}ea=f+16|0;return(b^-1)>>>31|0}function Na(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=ea-16|0;ea=e;F[a+4>>2]=0;a:{b:{if(!b){break b}f=F[a+8>>2];d=f<<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)<=-1){break a}h=e;if(d>>>0<=1073741822){g=b+31&-32;d=f<<6;d=d>>>0>>0?g:d}else{d=2147483647}db(h,d);d=F[a>>2];F[a>>2]=F[e>>2];F[e>>2]=d;f=F[a+4>>2];F[a+4>>2]=b;F[e+4>>2]=f;f=F[a+8>>2];F[a+8>>2]=F[e+8>>2];F[e+8>>2]=f;if(!d){break c}ra(d)}d=b>>>5|0;f=d<<2;a=F[a>>2];if(G[c|0]){a=ua(a,255,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;F[a>>2]=F[a>>2]|-1>>>32-b;break b}a=ua(a,0,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;F[a>>2]=F[a>>2]&(-1>>>32-b^-1)}ea=e+16|0;return}va();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;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]<=-1){ra(F[e>>2])}if(D[e+27|0]<=-1){ra(F[e+16>>2])}ea=e+32|0;break a}Ma();V()}Ma();V()}return a|0}function aj(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 Ri(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=F[b+12>>2];h=c;e=c;c=F[b+20>>2];f=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;i=F[b+8>>2];j=d;d=c;a:{if((c|0)>(e|0)?1:(c|0)>=(e|0)?i>>>0>>0:0){break a}c=g+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]=j;F[b+20>>2]=d;if(H[b+38>>1]<=513){c=f;d=g+8|0;c=d>>>0<8?c+1|0:c;f=d;d=c;if((c|0)>(h|0)?1:(c|0)>=(h|0)?f>>>0>i>>>0:0){break a}F[b+16>>2]=f;F[b+20>>2]=d}if(!(e&1)){break a}b=O(e)^31;c=b-1|0;if(c>>>0<=28){F[a+8>>2]=b+1;b=-2<>2]=d;F[a+12>>2]=b^-1;F[a+24>>2]=(d|0)/2;J[a+20>>2]=M(2)/M(d|0)}k=c>>>0<29}return k|0}function Ni(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 Fi(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 Eb(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)>=1){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)<=-1){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|0)>=1){c=ta(c,b,f)+f|0}F[a+4>>2]=c;return}va();V()}function tf(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)<1){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 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,k=0;c=F[b+12>>2];h=c;e=c;c=F[b+20>>2];f=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;i=F[b+8>>2];j=d;d=c;a:{if((c|0)>(e|0)?1:(c|0)>=(e|0)?i>>>0>>0:0){break a}c=g+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]=j;F[b+20>>2]=d;c=f;d=g+8|0;c=d>>>0<8?c+1|0:c;f=d;d=c;if((c|0)>(h|0)?1:(c|0)>=(h|0)?f>>>0>i>>>0:0){break a}F[b+16>>2]=f;F[b+20>>2]=d;if(!(e&1)){break a}b=O(e)^31;if(b-1>>>0>28){break a}k=1;F[a+8>>2]=b+1;b=-2<>2]=c;F[a+12>>2]=b^-1;F[a+24>>2]=(c|0)/2;J[a+20>>2]=M(2)/M(c|0)}return k|0}function Fd(a,b){var c=0,d=0,e=0,f=0,g=0;e=ea-16|0;ea=e;F[e+12>>2]=b;c=F[4153];d=ea-208|0;ea=d;F[d+204>>2]=b;ua(d+160|0,0,40);F[d+200>>2]=F[d+204>>2];a:{if((Hc(0,a,d+200|0,d+80|0,d+160|0)|0)<0){break a}f=F[c+76>>2]>=0;b=F[c>>2];if(D[c+74|0]<=0){F[c>>2]=b&-33}g=b&32;b:{if(F[c+48>>2]){Hc(c,a,d+200|0,d+80|0,d+160|0);break b}F[c+48>>2]=80;F[c+16>>2]=d+80;F[c+28>>2]=d;F[c+20>>2]=d;b=F[c+44>>2];F[c+44>>2]=d;Hc(c,a,d+200|0,d+80|0,d+160|0);if(!b){break b}ga[F[c+36>>2]](c,0,0)|0;F[c+48>>2]=0;F[c+44>>2]=b;F[c+28>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0}F[c>>2]=F[c>>2]|g;if(!f){break a}}ea=d+208|0;ea=e+16|0}function Pg(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]<=-1){ra(F[a+8>>2])}ea=a+32|0;break a}Ma();V()}return+g}function vd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{f=F[a+4>>2];b:{if((f|0)!=F[a>>2]){c=f;break b}e=F[a+8>>2];c=F[a+12>>2];if(e>>>0>>0){d=((c-e>>2)+1|0)/2<<2;c=d+e|0;g=e-f|0;if(g){c=c-g|0;Sa(c,f,g);e=F[a+8>>2]}F[a+4>>2]=c;F[a+8>>2]=e+d;break b}c=c-f|0;d=c?c>>1:1;if(d>>>0>=1073741824){break a}c=d<<2;h=sa(c);g=h+c|0;c=(d+3&-4)+h|0;i=c;d=e-f|0;if(d){i=c+d|0;e=c;d=f;while(1){F[e>>2]=F[d>>2];d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}F[a+12>>2]=g;F[a+8>>2]=i;F[a+4>>2]=c;F[a>>2]=h;if(!f){break b}ra(f);c=F[a+4>>2]}F[c-4>>2]=F[b>>2];F[a+4>>2]=F[a+4>>2]-4;return}wa(1756);V()}function Ce(a){var b=0,c=0,d=0,e=0,f=0;f=1;c=F[a+140>>2];a:{if((c|0)<1){break a}b=c<<4;d=sa((c|0)!=(c&268435455)?-1:b|4);F[d>>2]=c;d=d+4|0;c=d+b|0;b=d;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((c|0)!=(b|0)){continue}break}e=F[a+136>>2];F[a+136>>2]=d;if(e){c=e-4|0;d=F[c>>2];if(d){b=(d<<4)+e|0;while(1){b=b-16|0;if((e|0)!=(b|0)){continue}break}}ra(c)}b=0;if(F[a+140>>2]<=0){break a}while(1){f=xa(F[a+136>>2]+(b<<4)|0,a);if(!f){break a}b=b+1|0;if((b|0)>2]){continue}break}}return f}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;b:{if(c>>>0<=10){d=F[(c<<2)+14040>>2];break b}d=-1}c=L(d,D[a+24|0]);d=c;g=c>>31;e=se(e,0,Kj(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 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=Ga(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>-1){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=Ga(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>-1){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 Zb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{e=F[a+8>>2];b:{if((e|0)!=F[a+12>>2]){break b}f=F[a+4>>2];g=F[a>>2];if(f>>>0>g>>>0){g=((f-g>>2)+1|0)/-2<<2;c=g+f|0;d=e-f|0;if(d){Sa(c,f,d);f=F[a+4>>2]}e=c+d|0;F[a+8>>2]=e;F[a+4>>2]=f+g;break b}c=e-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}d=c<<2;h=sa(d);i=h+d|0;d=e-f|0;c=(c&-4)+h|0;e=c;if(d){e=c+d|0;d=c;while(1){F[d>>2]=F[f>>2];f=f+4|0;d=d+4|0;if((e|0)!=(d|0)){continue}break}}F[a+12>>2]=i;F[a+8>>2]=e;F[a+4>>2]=c;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(1756);V()}function mc(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=Ga(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=Ga(i,f?F[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>-1){break a}}c=g}return c}function Bc(a,b,c){var d=0,e=0,f=0,g=0;f=b;e=F[c+16>>2];a:{if(!e){e=0;d=G[c+74|0];D[c+74|0]=d-1|d;d=F[c>>2];b:{if(d&8){F[c>>2]=d|32;d=-1;break b}F[c+4>>2]=0;F[c+8>>2]=0;d=F[c+44>>2];F[c+28>>2]=d;F[c+20>>2]=d;F[c+16>>2]=d+F[c+48>>2];d=0}if(d){break a}e=F[c+16>>2]}g=F[c+20>>2];if(e-g>>>0>>0){return ga[F[c+36>>2]](c,a,b)|0}c:{if(D[c+75|0]>-1){e=b;while(1){d=e;e=b;if(!d){break c}e=d-1|0;if(G[e+a|0]!=10){continue}break}e=ga[F[c+36>>2]](c,a,d)|0;if(d>>>0>e>>>0){break a}a=a+d|0;g=F[c+20>>2];e=b-d|0;break c}e=b}f=e;ta(g,a,f);F[c+20>>2]=f+F[c+20>>2];e=b}return e}function Ba(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){Sa(e,b,h)}if(f>>>0>>0){b=F[a+4>>2];c=c-d|0;if((c|0)>=1){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)<=-1){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|0)>=1){c=ta(c,b,f)+f|0}F[a+4>>2]=c;return}va();V()}function Ff(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Ya(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(Ya(a,F[b>>2],e)){if(!(F[b+20>>2]!=(c|0)?F[b+16>>2]!=(c|0):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 Fb(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((b|0)>(e|0)?1:(b|0)>=(e|0)?g>>>0>I[a+8>>2]: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;c=F[a+20>>2];d=F[a+16>>2]+8|0;c=d>>>0<8?c+1|0:c;F[a+16>>2]=d;F[a+20>>2]=c;break b}if(!re(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)<=-1){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 Ub(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=F[a+4>>2];if((d|0)!=F[a+8>>2]){c=F[b+4>>2];F[d>>2]=F[b>>2];F[d+4>>2]=c;F[d+8>>2]=F[b+8>>2];F[a+4>>2]=d+12;return}a:{f=F[a>>2];g=d-f|0;c=(g|0)/12|0;e=c+1|0;if(e>>>0<357913942){h=c<<1;e=c>>>0<178956970?e>>>0>h>>>0?e:h:357913941;d=0;b:{if(!e){break b}if(e>>>0>=357913942){break a}d=sa(L(e,12))}c=d+L(c,12)|0;h=F[b+4>>2];F[c>>2]=F[b>>2];F[c+4>>2]=h;F[c+8>>2]=F[b+8>>2];b=c+L((g|0)/-12|0,12)|0;if((g|0)>=1){ta(b,f,g)}F[a+8>>2]=d+L(e,12);F[a+4>>2]=c+12;F[a>>2]=b;if(f){ra(f)}return}va();V()}wa(13352);V()}function Mc(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);Lc(a,d,14180);Lc(a+12|0,d,14184);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)>=1){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(14188);V()}function wd(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=1572;b=F[a+60>>2];if(b){c=F[a- -64>>2];d=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){Ha(d)}if((b|0)!=(c|0)){continue}break}d=F[a+60>>2]}F[a+64>>2]=b;ra(d)}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];d=b;b:{if((b|0)==(c|0)){break b}while(1){c=c-24|0;ga[F[F[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}d=F[a+36>>2]}F[a+40>>2]=b;ra(d)}F[a>>2]=1360;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 of(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 Ab(a){var b=0,c=0,d=0,e=0;d=F[a+132>>2];if(d){b=F[a+136>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b-12|0;e=F[c>>2];if(e){F[b-8>>2]=e;ra(e)}b=c;if((d|0)!=(b|0)){continue}break}c=F[a+132>>2]}F[a+136>>2]=d;ra(c)}d=F[a+120>>2];if(d){b=F[a+124>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b-12|0;e=F[c>>2];if(e){F[b-8>>2]=e;ra(e)}b=c;if((d|0)!=(b|0)){continue}break}c=F[a+120>>2]}F[a+124>>2]=d;ra(c)}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 bb(a){var b=0,c=0,d=0,e=0;d=F[a+640>>2];if(d){b=F[a+644>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b-12|0;e=F[c>>2];if(e){F[b-8>>2]=e;ra(e)}b=c;if((d|0)!=(b|0)){continue}break}c=F[a+640>>2]}F[a+644>>2]=d;ra(c)}d=F[a+628>>2];if(d){b=F[a+632>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b-12|0;e=F[c>>2];if(e){F[b-8>>2]=e;ra(e)}b=c;if((d|0)!=(b|0)){continue}break}c=F[a+628>>2]}F[a+632>>2]=d;ra(c)}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;d=F[a+128>>2];if(d){b=F[a+132>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b-12|0;e=F[c>>2];if(e){F[b-8>>2]=e;ra(e)}b=c;if((d|0)!=(b|0)){continue}break}c=F[a+128>>2]}F[a+132>>2]=d;ra(c)}d=F[a+116>>2];if(d){b=F[a+120>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b-12|0;e=F[c>>2];if(e){F[b-8>>2]=e;ra(e)}b=c;if((d|0)!=(b|0)){continue}break}c=F[a+116>>2]}F[a+120>>2]=d;ra(c)}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 nd(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}a=F[a+216>>2]+L(e,144)|0;return(G[a+100|0]?a+4|0:0)|0}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}return 0}function db(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=ea-16|0;ea=d;a:{b:{if(F[a+8>>2]<<5>>>0>=b>>>0){break b}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if((b|0)<=-1){break a}g=(b-1>>>5|0)+1|0;b=sa(g<<2);F[d+8>>2]=g;F[d>>2]=b;f=F[a>>2];c=F[a+4>>2];F[d+4>>2]=c;F[(c>>>0<33?b:b+(c-1>>>3&536870908)|0)>>2]=0;c:{if((c|0)<1){break c}h=c>>>5|0;e=h<<2;i=Sa(b,f,e);c=c-(h<<5)|0;if((c|0)<1){break c}e=e+i|0;c=-1>>>32-c|0;F[e>>2]=F[e>>2]&(c^-1)|c&F[(h<<2)+f>>2]}F[a+8>>2]=g;F[a>>2]=b;if(!f){break b}ra(f)}ea=d+16|0;return}va();V()}function wg(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;e=ea-32|0;ea=e;f=D[b+24|0];g=F[3527];F[e+24>>2]=F[3526];F[e+28>>2]=g;g=F[3525];F[e+16>>2]=F[3524];F[e+20>>2]=g;a:{b:{g=Xa(b,c,f,e+16|0);if(g){F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;b=0;c=0;if(f){if((f|0)<=-1){break b}b=f<<2;c=sa(b);F[e>>2]=c;a=(f<<2)+c|0;F[e+8>>2]=a;ta(c,e+16|0,b);F[e+4>>2]=a;b=a}f=d;h=F[f>>2];if(h){F[d+4>>2]=h;ra(h);b=F[e+4>>2];c=F[e>>2];a=F[e+8>>2]}F[f+8>>2]=a;F[d+4>>2]=b;F[d>>2]=c}ea=e+32|0;break a}va();V()}return g|0}function md(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 Gg(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]<=-1){ra(F[a>>2])}if(D[a+27|0]<=-1){ra(F[a+16>>2])}ea=a+32|0;break a}Ma();V()}return b|0}function Rg(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]<=-1){ra(F[d>>2])}ea=d+16|0;break a}Ma();V()}return a|0}function bc(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=14664;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){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){Ha(b)}if((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;ra(b)}b=F[a+4>>2];F[a+4>>2]=0;if(b){Vc(b)}return a|0}function Rd(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!F[F[4233]>>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:0)){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[4312]=25;a=-1}else{a=1}break a}D[a|0]=b;a=1}return a}function Aa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=ea-16|0;ea=f;a:{if(!(G[b+11|0]>>>7|0)){F[a+8>>2]=F[b+8>>2];c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;break a}g=F[b>>2];e=ea-16|0;ea=e;b:{c=F[b+4>>2];if(c>>>0<=4294967279){c:{if(c>>>0<=10){D[a+11|0]=c;b=a;break c}h=a;if(c>>>0>=11){b=c+16&-16;d=b-1|0;b=(d|0)==11?b:d}else{b=10}d=b+1|0;b=sa(d);F[h>>2]=b;F[a+8>>2]=d|-2147483648;F[a+4>>2]=c}ac(b,g,c);D[e+15|0]=0;D[b+c|0]=G[e+15|0];ea=e+16|0;break b}Ma();V()}}ea=f+16|0;return a}function qe(a,b){var c=0,d=0,e=0,f=0,g=0;b=qb(a,b);a:{if((b|0)==(a+4|0)){break a}a=b+28|0;a=D[b+39|0]<=-1?F[a>>2]:a;while(1){b=a;a=a+1|0;c=D[b|0];if((c|0)==32|c-9>>>0<5){continue}break}b:{c:{d:{c=D[b|0];switch(c-43|0){case 0:break c;case 2:break d;default:break b}}e=1}c=D[a|0];b=a;f=e}e:{if(c-48>>>0>=10){break e}a=0;while(1){d=(a-D[b|0]|0)+48|0;if(D[b+1|0]-48>>>0>=10){break e}b=b+1|0;a=L(d,10);continue}}a=f?d:0-d|0;if((a|0)==-1){break a}g=(a|0)!=0}return g}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;a=g>>2;d=a+1|0;if(d>>>0<1073741824){h=a<<2;c=c-f|0;a=c>>1;d=c>>2>>>0<536870911?a>>>0>>0?d:a:1073741823;a=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}a=sa(d<<2)}c=h+a|0;F[c>>2]=F[b>>2];if((g|0)>=1){ta(a,f,g)}F[e+8>>2]=a+(d<<2);F[e+4>>2]=c+4;F[e>>2]=a;if(f){ra(f)}return}va();V()}wa(14112);V()}function Jg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=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;Me(f+48|0,a,e,d);F[a+24>>2]=F[f+48>>2];$b(a+28|0,f+48|4);if(D[f+63|0]<=-1){ra(F[f+52>>2])}ea=f- -64|0;return a+24|0}function Ig(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=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;Le(f+48|0,a,e,d);F[a+24>>2]=F[f+48>>2];$b(a+28|0,f+48|4);if(D[f+63|0]<=-1){ra(F[f+52>>2])}ea=f- -64|0;return a+24|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=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)>=1){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(10988);V()}function vc(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)>=1){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(1244);V()}function Ia(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)>=1){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(1496);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)>=1){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(11186);V()}function jf(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=2048;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){b=d;c=F[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=F[a+36>>2]}b=e;F[a+40>>2]=d;ra(b)}F[a>>2]=1360;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 hf(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=2048;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){b=d;c=F[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=F[a+36>>2]}b=e;F[a+40>>2]=d;ra(b)}F[a>>2]=1360;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 jb(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)<=-1){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)>=1){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 vi(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((c|0)>0?1:(c|0)>=0?F[b+16>>2]:0){break a}_b(b,F[b+4>>2],F[a+8>>2],F[a+12>>2]);c=F[b+20>>2];if((c|0)>0?1:(c|0)>=0?I[b+16>>2]>=1:0){break a}c=a+20|0;_b(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((c|0)>0?1:(c|0)>=0?f:0){break a}_b(b,F[b+4>>2],d+15|0,d+16|0)}ea=d+16|0;return(e|0)!=-1|0}function pe(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)>-1){c=0;e=e-f|0;d=e>>1>>>0<1073741823?d>>>0>e>>>0?d:e:2147483647;if(d){if((d|0)<=-1){break a}c=sa(d<<1)}b=b<<1;b=ua((h<<1)+c|0,0,b)+b|0;if((g|0)>=1){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(14112);V()}function Nc(a,b,c){var d=0,e=0,f=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;a:{b:{if(!b){break b}if((b|0)<=-1){break a}e=b-1>>>5|0;f=e+1|0;d=sa(f<<2);F[a+8>>2]=f;F[a>>2]=d;f=G[c|0];F[a+4>>2]=b;F[(b>>>0<33?d:d+(e<<2)|0)>>2]=0;c=b>>>5|0;e=c<<2;if(f){d=ua(d,255,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;F[c>>2]=F[c>>2]|-1>>>32-b;return a}d=ua(d,0,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;F[c>>2]=F[c>>2]&(-1>>>32-b^-1)}return a}va();V()}function Ta(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[2877];F[a+4>>2]=b+4;return}a:{e=F[a>>2];f=b-e|0;d=f>>2;c=d+1|0;if(c>>>0<1073741824){b=f>>1;c=d>>>0<536870911?b>>>0>>0?c:b:1073741823;b=0;b:{if(!c){break b}if(c>>>0>=1073741824){break a}b=sa(c<<2)}d=b+(d<<2)|0;F[d>>2]=F[2877];if((f|0)>=1){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(12220);V()}function Og(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;a=a+16|0;c=0;d:{if(!Zd(b,d,a)){break d}c=F[a>>2];if(D[a+11|0]<=-1){break d}c=a}if(D[d+11|0]<=-1){ra(F[d>>2])}ea=d+16|0;break a}Ma();V()}return c|0}function re(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>10){break a}e=F[c+16>>2];d=F[c+20>>2];f=F[c+12>>2];if((f|0)<(d|0)?1:(d|0)>=(f|0)?e>>>0>=I[c+8>>2]:0){break a}g=D[e+F[c>>2]|0];e=e+1|0;d=e>>>0<1?d+1|0:d;F[c+16>>2]=e;F[c+20>>2]=d;f=b;e=b;d=g;b:{if((d|0)<=-1){if(!re(a+1|0,b,c)){break a}a=F[b+4>>2];b=F[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}F[e>>2]=b;F[f+4>>2]=a;h=1}return h}function cb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>10){break a}e=F[c+16>>2];d=F[c+20>>2];f=F[c+12>>2];if((f|0)<(d|0)?1:(d|0)>=(f|0)?e>>>0>=I[c+8>>2]:0){break a}g=D[e+F[c>>2]|0];e=e+1|0;d=e>>>0<1?d+1|0:d;F[c+16>>2]=e;F[c+20>>2]=d;f=b;e=b;d=g;b:{if((d|0)<=-1){if(!cb(a+1|0,b,c)){break a}a=F[b+4>>2];b=F[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}F[e>>2]=b;F[f+4>>2]=a;h=1}return h}function Ib(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){Ia(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)>=1){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(12220);V()}function dd(a){var b=0,c=0,d=0,e=0,f=0;if(G[a+76|0]){D[a+76|0]=0;b=F[a+60>>2];c=F[a+72>>2]+7|0;d=c>>>0<7?1:d;e=d>>>3|0;c=d<<29|c>>>3;d=c+F[a+56>>2]|0;b=b+e|0;F[a+56>>2]=d;F[a+60>>2]=c>>>0>d>>>0?b+1|0:b}if(H[a+38>>1]<=513){D[a+132|0]=0;c=F[a+116>>2];d=a;f=F[a+112>>2];b=0;a=F[a+128>>2]+7|0;b=a>>>0<7?1:b;e=b>>>3|0;a=b<<29|a>>>3;b=f+a|0;c=c+e|0;F[d+112>>2]=b;F[d+116>>2]=a>>>0>b>>>0?c+1|0:c}}function ni(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11360;b=F[a+48>>2];F[a+48>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=13492;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;ra(b)}return a|0}function mi(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11360;b=F[a+48>>2];F[a+48>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=13492;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;ra(b)}ra(a)}function zh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=F[a+32>>2];c=d;e=F[c+8>>2];f=F[c+12>>2];b=F[c+20>>2];h=e;e=F[c+16>>2];c=e+4|0;b=c>>>0<4?b+1|0:b;g=c;c=b;a:{if((b|0)>(f|0)?1:(b|0)>=(f|0)?h>>>0>>0:0){break a}b=e+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]=g;F[d+20>>2]=c;if((b|0)<0){break a}F[F[a+4>>2]+80>>2]=b;i=1}return i|0}function Sh(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;e=ea+-64|0;ea=e;f=ga[F[F[b>>2]+44>>2]](b,c)|0;b=ga[F[F[b>>2]+40>>2]](b,c)|0;g=Gb(e);h=g;i=F[c+56>>2];j=f<<24>>24;c=b;b=b-1|0;a:{if(b>>>0<=10){b=F[(b<<2)+14040>>2];break a}b=-1}b=L(b,f);pc(h,i,j,c,0,b,b>>31);c=sa(96);b=mc(c,g);F[a>>2]=c;pb(b,d);D[b+84|0]=1;F[b+72>>2]=F[b+68>>2];ea=e- -64|0}function Ef(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Ya(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(!Ya(a,F[b>>2],e)){break a}if(!(F[b+20>>2]!=(c|0)?F[b+16>>2]!=(c|0):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 yg(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 xh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=F[a+32>>2];b=d;e=F[b+12>>2];g=F[b+8>>2];c=F[b+20>>2];b=F[b+16>>2];f=b+4|0;c=f>>>0<4?c+1|0:c;if((c|0)<(e|0)?1:(c|0)<=(e|0)?f>>>0<=g>>>0:0){b=b+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)?1:(c|0)<=(e|0)?f>>>0<=g>>>0:0)|0}function Jd(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];if(!c){F[a+36>>2]=1;F[a+24>>2]=d;F[a+16>>2]=b;if((d|0)!=1|F[a+48>>2]!=1){break a}D[a+54|0]=1;return}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|(c|0)!=1){break a}D[a+54|0]=1;return}D[a+54|0]=1;F[a+36>>2]=F[a+36>>2]+1}}function qc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;a:{if(!b){break a}h=0-G[a+12|0]&255;d=F[a+8>>2];while(1){b:{if(d>>>0>4095){break b}e=F[a+4>>2];if((e|0)<1){break b}e=e-1|0;F[a+4>>2]=e;d=G[e+F[a>>2]|0]|d<<8}f=d&255;e=f>>>0>>0;i=f;f=L(d>>>8|0,h);d=e?i+f|0:d-(h+f|0)|0;F[a+8>>2]=d;g=e|g;b=b-1|0;if(!b){break a}g=g<<1;continue}}F[c>>2]=g}function Fe(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 nf(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)<1){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 mf(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)<1){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 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 Zh(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 gd(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 xd(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!xd(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function rb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!rb(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function ib(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!ib(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function Rc(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!Rc(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function Rb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!Rb(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function Oc(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 Ne(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!Ne(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function Ea(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!Ea(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function Cb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!Cb(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function Vc(a){var b=0,c=0,d=0,e=0;if(a){d=F[a+24>>2];if(d){b=d;c=F[a+28>>2];e=b;a:{if((c|0)==(b|0)){break a}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((c|0)!=(d|0)){continue}break}e=F[a+24>>2]}b=e;F[a+28>>2]=d;ra(b)}Qa(a+12|0,F[a+16>>2]);Pa(a,F[a+4>>2]);ra(a)}}function Dg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:{b:{a=F[b+12>>2];b=F[b+8>>2];a=a-b|0;if(a){d=a>>31;d=(d+a^d)>>>2|0;a=(a|0)>-1?a:-1;a=L(d,(a|0)<1?a:1);d=a>>>0>1?a:1;a=0;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 ti(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=13492;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;ra(b)}return a|0}function xg(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 Xc(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=13492;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;ra(b)}ra(a)}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;h=F[c+8>>2];e=F[c+16>>2];g=F[c+12>>2];f=g;d=F[c+20>>2];if((d|0)<(f|0)?1:(f|0)>=(d|0)?h>>>0>e>>>0:0){b=G[e+F[c>>2]|0];i=e+1|0;f=i>>>0<1?d+1|0:d;F[c+16>>2]=i;F[c+20>>2]=f;F[a+4>>2]=b}return((d|0)<(g|0)?1:(d|0)<=(g|0)?e>>>0>>0:0)|0}function Bg(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 Xh(a){a=a|0;var b=0;F[a+8>>2]=12528;F[a>>2]=12316;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]=12764;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function Wh(a){a=a|0;var b=0;F[a+8>>2]=12528;F[a>>2]=12316;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]=12764;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 Ya(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 td(a,b){var c=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=1360;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]=2048;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;c=F[b>>2];F[b>>2]=0;F[a+60>>2]=c;return a}function se(a,b,c,d){a:{if(!b){if((d|0)<0){return 0}jb(a,c);break a}if((d|0)<0){return 0}if(!((d|0)<0?1:(d|0)<=0?F[a+4>>2]-F[a>>2]>>>0>=c>>>0:0)){jb(a,c)}if(!c){break a}Sa(F[a>>2],b,c)}b=a;c=F[a+28>>2];a=F[a+24>>2]+1|0;c=a>>>0<1?c+1|0:c;F[b+24>>2]=a;F[b+28>>2]=c;return 1}function Yh(a){a=a|0;var b=0;F[a>>2]=12528;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]=12764;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Kb(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)>=1){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(12220);V()}function Th(a){a=a|0;var b=0;F[a>>2]=12528;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]=12764;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function id(a){var b=0,c=0,d=0;c=F[a+4>>2];d=F[a>>2];if((c|0)!=(d|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)}Hb(c-140|0);b=c-144|0;c=b;if((b|0)!=(d|0)){continue}break}}F[a+4>>2]=d}function Za(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 Nd(a,b,c){var d=0,e=0,f=0,g=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);g=(e^-1)+b|0;b=e;e=I[F[d+12>>2]>>2]>2];b=e?g:b;a=e?F[d+12>>2]+4|0:a;continue}break}ea=d+16|0;ea=f+16|0;return a}function Hb(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 Lg(a){a=a|0;var b=0,c=0,d=0;if(a){if(D[a+27|0]<=-1){ra(F[a+16>>2])}c=F[a>>2];if(c){d=F[a+4>>2];b=c;a:{if((c|0)==(d|0)){break a}while(1){b=d-12|0;if(D[d-1|0]<=-1){ra(F[b>>2])}d=b;if((c|0)!=(d|0)){continue}break}b=F[a>>2]}F[a+4>>2]=c;ra(b)}ra(a)}}function Yc(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 Wd(a,b){var c=0,d=0;d=F[a+8>>2];a=F[a+12>>2]-d|0;a:{if(a){c=a>>31;c=(c+a^c)>>>2|0;a=(a|0)>-1?a:-1;a=L(c,(a|0)<1?a:1);c=a>>>0>1?a:1;a=0;while(1){if(F[F[(a<<2)+d>>2]+60>>2]==(b|0)){break a}a=a+1|0;if((c|0)!=(a|0)){continue}break}}a=-1}return a}function Ag(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 Fa(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)<1){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 Lj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=b^d;h=e>>31;f=b>>31;a=a^f;i=a-f|0;g=b;b=b>>31;g=(g^b)-((a>>>0>>0)+b|0)|0;a=d>>31;b=c^a;c=d>>31;e=e>>31;a=Mj(i,g,b-a|0,(c^d)-((a>>>0>b>>>0)+c|0)|0)^e;b=a-e|0;fa=(h^fa)-((a>>>0>>0)+h|0)|0;return b}function wh(){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 Ha(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 yi(a){a=a|0;var b=0;F[a>>2]=10864;F[a+24>>2]=1140;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}F[a>>2]=2264;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=1884;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ha(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 xi(a){a=a|0;var b=0;F[a>>2]=10864;F[a+24>>2]=1140;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}F[a>>2]=2264;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=1884;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ha(b)}ra(a)}function Af(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((d|0)>0?1:(d|0)>=0?F[b+16>>2]:0){break a}_b(b,F[b+4>>2],c+15|0,c+16|0)}ea=c+16|0;return(a|0)!=-1|0}function Kj(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 rh(){var a=0;a=sa(96);Gb(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 Kd(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 wi(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 wa(a){var b=0,c=0,d=0,e=0,f=0;b=da(8)|0;F[b>>2]=16224;F[b>>2]=16268;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]=16316;ca(b|0,16348,13);V()}function mj(a){a=a|0;var b=0;F[a>>2]=5396;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]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}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){Bb(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}Bb(a,f,c)}ea=f+256|0}function Cj(a){a=a|0;var b=0;F[a>>2]=3380;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]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Ah(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 Pf(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;b=0;a:{if(!a){break a}F[4312]=a;b=-1}a=b;ea=e+16|0;fa=a?-1:F[e+12>>2];return(a?-1:F[e+8>>2])|0}function lj(a){a=a|0;var b=0;F[a>>2]=5396;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]=3088;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]=3380;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]=3088;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=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)){Fc(c,b-d|0);e=Ec(c);c=F[a+28>>2];ta(e,c,F[a+32>>2]-c|0)}return(b|0)!=(d|0)}function Gb(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 Uf(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){Sa(b,d,c)}F[a+88>>2]=b+c}}function Qd(a){var b=0,c=0,d=0;a:{if(D[F[a>>2]]-48>>>0>=10){break a}while(1){c=F[a>>2];d=D[c|0];F[a>>2]=c+1;b=(b+d|0)-48|0;if(D[c+1|0]-48>>>0>=10){break a}b=L(b,10);continue}}return b}function gf(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 Kg(){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 kb(a){var b=0,c=0;b=F[4247];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[4247]=a;return b}F[4312]=48;return-1}function Oh(a){a=a|0;var b=0;F[a+8>>2]=12948;F[a>>2]=12784;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12764;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function Jh(a){a=a|0;var b=0;F[a+8>>2]=11956;F[a>>2]=13076;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12208;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function vf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=F[a+8>>2];if(D[d+24|0]<1){break a}if(!pb(d,F[b+4>>2]-F[b>>2]>>2)){break a}return ga[F[F[a>>2]+32>>2]](a,b,c)|0}return 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]<=-1){ra(F[b+16>>2])}ra(b)}}function Nh(a){a=a|0;var b=0;F[a+8>>2]=12948;F[a>>2]=12784;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12764;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function Ih(a){a=a|0;var b=0;F[a+8>>2]=11956;F[a>>2]=13076;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12208;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function _i(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;a=F[a+8>>2];if(G[a+24|0]==3){return F[a+28>>2]==9|0}return 0}function zj(a){a=a|0;var b=0;F[a>>2]=3628;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]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function jj(a){a=a|0;var b=0;F[a>>2]=5632;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]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Ga(a,b,c){var d=0,e=0,f=0;a:{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}f=d-e|0}return f}function Ei(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 Wc(a){F[a+40>>2]=0;F[a>>2]=13492;F[a+4>>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;F[a+32>>2]=0;E[a+36>>1]=0;return a}function yj(a){a=a|0;var b=0;F[a>>2]=3628;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]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function mg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=ea-16|0;ea=d;Me(d,a,b,c);F[a+24>>2]=F[d>>2];$b(a+28|0,d|4);if(D[d+15|0]<=-1){ra(F[d+4>>2])}ea=d+16|0;return a+24|0}function lg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=ea-16|0;ea=d;Le(d,a,b,c);F[a+24>>2]=F[d>>2];$b(a+28|0,d|4);if(D[d+15|0]<=-1){ra(F[d+4>>2])}ea=d+16|0;return a+24|0}function ij(a){a=a|0;var b=0;F[a>>2]=5632;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]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Yf(a,b){a=a|0;b=b|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}return ga[F[F[a>>2]+44>>2]](a)|0}return 0}function $e(a){a=a|0;var b=0;F[a>>2]=2264;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=1884;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ha(b)}return a|0} +function Jj(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 Te(a){a=a|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}return F[a+92>>2]!=-1|0}return 0}function Ph(a){a=a|0;var b=0;F[a>>2]=12948;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12764;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Ee(a){a=a|0;var b=0;F[a>>2]=11956;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12208;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function uc(a){a=a|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}return F[a+76>>2]!=-1|0}return 0}function _e(a){a=a|0;var b=0;F[a>>2]=2264;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=1884;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ha(b)}ra(a)}function uh(){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 ff(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 ai(a){a=a|0;var b=0;F[a>>2]=11956;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12208;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Kh(a){a=a|0;var b=0;F[a>>2]=12948;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12764;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(Ya(a,F[b+8>>2],f)){Jd(b,c,d,e);return}a=F[a+8>>2];ga[F[F[a>>2]+20>>2]](a,b,c,d,e,f)}function Ci(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=Yc(a+24|0,F[a+16>>2])}return b|0}function dh(){var a=0;a=sa(108);Yd(a);F[a+84>>2]=0;F[a+88>>2]=0;F[a>>2]=14264;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;return a|0}function Di(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=yc(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)<1){break a}c=F[a>>2]}return c}function pc(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 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(!zc(a+24|0,F[a+8>>2],c)){break a}}d=yc(a,b,c)}return d|0}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(!zc(a+24|0,ub(a),c)){break a}}b=Yc(a+24|0,F[a+16>>2])}return b|0}function Xf(a){a=a|0;var b=0;F[a>>2]=14264;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)}bc(a);return a|0}function Wf(a){a=a|0;var b=0;F[a>>2]=14264;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)}bc(a);ra(a)}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]<=-1){ra(F[b+16>>2])}ra(b)}}function vj(a){a=a|0;var b=0;F[a>>2]=3856;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3088;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]=5848;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Tg(){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 jg(a){a=a|0;var b=0;F[a>>2]=1360;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 Ec(a){var b=0;if(G[a+11|0]>>>7|0){b=F[a+4>>2]}else{b=G[a+11|0]}if(!b){Gc();V()}if(G[a+11|0]>>>7|0){a=F[a>>2]}return a}function bh(){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 Lb(a,b){if(b){Lb(a,F[b>>2]);Lb(a,F[b+4>>2]);if(D[b+39|0]<=-1){ra(F[b+28>>2])}if(D[b+27|0]<=-1){ra(F[b+16>>2])}ra(b)}}function Hf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Ya(a,F[b+8>>2],0)){Kd(b,c,d);return}a=F[a+8>>2];ga[F[F[a>>2]+28>>2]](a,b,c,d)}function uj(a){a=a|0;var b=0;F[a>>2]=3856;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3088;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]=5848;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3088;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=Id(a);if(b){break a}b=F[4331];if(b){ga[b|0]();continue}break}Y();V()}return b}function Dc(a){a=a|0;var b=0,c=0;F[a>>2]=16268;b=F[a+4>>2]-12|0;c=F[b+8>>2]-1|0;F[b+8>>2]=c;if((c|0)<=-1){ra(b)}return a|0}function jh(){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 ud(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,b){var c=0,d=0;jb(a,b);b=F[a+28>>2];c=b+1|0;d=b;b=F[a+24>>2]+1|0;F[a+24>>2]=b;F[a+28>>2]=b>>>0<1?c:d}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 kg(a){a=a|0;if(a){if(D[a+39|0]<=-1){ra(F[a+28>>2])}Qc(a+12|0,F[a+16>>2]);Lb(a,F[a+4>>2]);ra(a)}}function Ai(a){a=a|0;var b=0,c=0;c=a+24|0;b=ub(a);if(!b){b=F[a+8>>2]}return Je(c,b,F[F[a+4>>2]+32>>2])|0}function sj(a){a=a|0;var b=0;F[a>>2]=4092;F[a>>2]=3088;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]=6072;F[a>>2]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Rh(a){a=a|0;var b=0;F[a>>2]=12764;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function $h(a){a=a|0;var b=0;F[a>>2]=12208;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Sb(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 rj(a){a=a|0;var b=0;F[a>>2]=4092;F[a>>2]=3088;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]=6072;F[a>>2]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function _h(a){a=a|0;var b=0;F[a>>2]=12208;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Qh(a){a=a|0;var b=0;F[a>>2]=12764;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function vh(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 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 _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){F[a+4>>2]=b;ra(b)}}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(Ya(a,F[b+8>>2],f)){Jd(b,c,d,e)}}function Ac(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 rf(a){a=a|0;var b=0;F[a>>2]=1884;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ha(b)}return a|0}function Ej(a){a=a|0;var b=0;F[a>>2]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function si(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 qf(a){a=a|0;var b=0;F[a>>2]=1884;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ha(b)}ra(a)}function Xb(a){a=a|0;var b=0;F[a>>2]=3088;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Nj(a){var b=0,c=0;while(1){c=b;if(a){a=a-1&a;b=b+1|0;continue}break}return c}function ii(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 Qc(a,b){if(b){Qc(a,F[b>>2]);Qc(a,F[b+4>>2]);Lb(b+20|0,F[b+24>>2]);ra(b)}}function th(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 ui(a){a=a|0;if(F[a+44>>2]){return ga[F[F[a>>2]+48>>2]](a)|0}return 0}function If(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Ya(a,F[b+8>>2],0)){Kd(b,c,d)}}function ri(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 ki(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 ji(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 _g(a){a=a|0;var b=0;b=a+4|0;if(D[a+15|0]<=-1){b=F[b>>2]}return b|0}function Oj(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function Gd(a,b,c){a:{if(F[c+76>>2]<=-1){a=Bc(a,b,c);break a}a=Bc(a,b,c)}}function fh(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 ah(a){a=a|0;if(a){Qa(a+12|0,F[a+16>>2]);Pa(a,F[a+4>>2]);ra(a)}}function Nb(a,b){a=a|0;b=b|0;if(b>>>0<=1){F[a+28>>2]=b}return b>>>0<2|0}function Dh(a,b){a=a|0;b=b|0;D[b+84|0]=1;F[b+72>>2]=F[b+68>>2];return 1}function pi(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+24>>2]](a)|0}function oi(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+28>>2]](a)|0}function li(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+36>>2]](a)|0}function gh(){var a=0;a=sa(8);F[a+4>>2]=-1;F[a>>2]=1032;return a|0}function Eg(a,b,c){a=a|0;b=b|0;c=c|0;return F[F[b+8>>2]+(c<<2)>>2]}function Zg(a){a=a|0;if(a){if(D[a+15|0]<=-1){ra(F[a+4>>2])}ra(a)}}function zi(a,b){a=a|0;b=b|0;return Pe(a+24|0,ub(a),F[a+8>>2])|0}function Xi(a,b){a=a|0;b=b|0;return Hd(a+24|0,ub(a),F[a+8>>2])|0}function wf(a,b){a=a|0;b=b|0;F[a+12>>2]=-1;F[a+8>>2]=b;return 1}function me(a,b){a=a|0;b=b|0;return ga[F[F[a>>2]+12>>2]](a,b)|0}function Bi(a,b){a=a|0;b=b|0;return ga[F[F[a>>2]+56>>2]](a,b)|0}function ih(a,b){a=a|0;b=b|0;return M(J[F[a+8>>2]+(b<<2)>>2])}function Yg(a,b){a=a|0;b=b|0;return M(J[F[a>>2]+(b<<2)>>2])}function ch(a){a=a|0;return(F[a+100>>2]-F[a+96>>2]|0)/12|0}function Tf(a,b){a=a|0;b=b|0;return F[F[a+4>>2]+(b<<2)>>2]}function Bf(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 Vg(a,b){a=a|0;b=b|0;return E[F[a>>2]+(b<<1)>>1]}function Ug(a,b){a=a|0;b=b|0;return H[F[a>>2]+(b<<1)>>1]}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return Xd(b,c)|0}function Yd(a){F[a>>2]=14664;ua(a+4|0,0,80);return a}function Pj(a){if(a){return 31-O(a-1^a)|0}return 32} +function le(a){a=a|0;return F[a+12>>2]-F[a+8>>2]>>2}function ec(a){a=a|0;if(a){ga[F[F[a>>2]+4>>2]](a)}}function Xg(a,b){a=a|0;b=b|0;return D[F[a>>2]+b|0]}function Wg(a,b){a=a|0;b=b|0;return G[F[a>>2]+b|0]}function Sf(a){a=a|0;return F[a+8>>2]-F[a+4>>2]>>2}function od(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 Sc(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){Wc(a);F[a+44>>2]=0;F[a>>2]=11264}function gi(a,b){a=a|0;b=b|0;return D[b+24|0]} +function Bb(a,b,c){if(!(G[a|0]&32)){Bc(b,c,a)}}function uf(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Ng(a,b){a=a|0;b=b|0;return F[b+8>>2]}function Hj(a){a=a|0;return D[F[a+8>>2]+24|0]}function Cg(a,b){a=a|0;b=b|0;return F[b+4>>2]}function Vi(a){a=a|0;F[a>>2]=6960;return a|0}function Qi(a){a=a|0;F[a>>2]=7896;return a|0}function Qf(a){a=a|0;return ba(F[a+60>>2])|0}function Mi(a){a=a|0;F[a>>2]=8844;return a|0}function Ii(a){a=a|0;F[a>>2]=9848;return a|0}function hh(a){a=a|0;return M(J[a+20>>2])}function Ui(a){a=a|0;F[a>>2]=6960;ra(a)}function Pi(a){a=a|0;F[a>>2]=7896;ra(a)}function Li(a){a=a|0;F[a>>2]=8844;ra(a)}function Hi(a){a=a|0;F[a>>2]=9848;ra(a)}function qh(a){a=a|0;return F[a+88>>2]}function ph(a){a=a|0;return F[a+56>>2]}function mh(a){a=a|0;return F[a+40>>2]}function lh(a){a=a|0;return F[a+48>>2]}function kh(a){a=a|0;return F[a+60>>2]}function fb(a){a=a|0;return F[a+28>>2]}function Tc(a){a=a|0;return F[a+80>>2]}function wj(a,b){a=a|0;b=b|0;return 2}function sd(a,b){a=a|0;b=b|0;return-1}function oh(a){a=a|0;return D[a+24|0]}function nh(a){a=a|0;return G[a+32|0]}function eb(a){a=a|0;return F[a+4>>2]}function Xe(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 $g(a){a=a|0;return!F[a>>2]|0}function $c(a){a=a|0;return F[a+8>>2]}function ne(a){a=a|0;return F[a>>2]}function ac(a,b,c){if(c){ta(a,b,c)}}function sh(){return Gb(sa(64))|0}function eh(){return Yd(sa(84))|0}function Uc(a){a=a|0;if(a){ra(a)}}function Mf(a){a=a|0;return 16198}function Kf(a){a=a|0;Dc(a);ra(a)}function Va(a){a=a|0;return a|0}function xf(a){a=a|0;ra(wd(a))}function di(a){a=a|0;ra(Be(a))}function ci(a){a=a|0;ra(Ae(a))}function bi(a){a=a|0;ra(ze(a))}function Rf(a){a=a|0;ra(bc(a))}function Lf(a){a=a|0;ra(Dc(a))}function rd(a){a=a|0;return 3}function Ze(a){a=a|0;return 4}function Wb(a){a=a|0;return 2}function Ve(a){a=a|0;return 5}function Pb(a){a=a|0;return 6}function Da(a){a=a|0;return 1}function $a(a){a=a|0;return 0}function va(){wa(15412);V()}function Ma(){wa(16104);V()}function Ra(a){a=a|0;ra(a)}function gb(a){a=a|0;V()}function dg(){return 10}function cg(){return 11}function bg(){return 12}function ig(){return 5}function hg(){return 6}function gg(){return 7}function fg(){return 8}function eg(){return 9}function ee(){return 3}function de(){return 4}function dc(){return-1}function cc(){return 1}function ag(){return-2}function _f(){return-4}function Zf(){return-5}function Tb(){return 0}function Pc(){return 2}function Ca(){Gc();V()}function $f(){return-3}function Gc(){Y();V()}function Md(a){a=a|0}function Nf(){V()}function cf(){} // EMSCRIPTEN_END_FUNCS -var M=Mn([null,ha,ia,ja,_,$,aa,da,ea,ga,Da,ka,la,Wm,xa,ya,za,ma,oa,pa,sa,va,wa,ka,Aa,Ua,Va,Oa,Pa,Wa,Xa,Ya,Za,_a,Um,$a,za,Lb,Mb,bb,Bb,Gb,Zb,_b,Rb,Sb,Tb,Ub,$a,Xb,Yb,hc,ic,ac,cc,jc,dc,ec,fc,gc,tc,uc,lc,mc,nc,qc,oc,vc,sc,Hc,Ac,za,Bc,Cc,Dc,Ec,_a,Dc,za,Fc,Gc,Va,Va,Ac,ja,Cc,Ic,Jc,Kc,Lc,Cc,Mc,Pc,Tc,Uc,Vc,Wc,za,_a,Xc,Yc,Zc,ad,bd,cd,Wc,za,_a,Xc,dd,ed,hd,id,jd,kd,za,_a,ld,md,nd,ha,ia,pd,Za,od,Va,Ac,za,Cc,sd,Va,Ac,ja,Cc,td,ud,vd,Lc,Cc,Mc,wd,xd,yd,Vc,Wc,za,_a,Xc,Yc,zd,Bd,Cd,cd,Wc,za,_a,Xc,dd,Dd,Fd,Gd,jd,kd,za,_a,ld,md,Hd,ha,ia,pd,Za,Id,Va,Ac,Dc,za,Kd,tc,uc,Ld,Nd,Md,Pd,ja,Od,Sd,Td,jd,Bc,Ud,za,_a,Vd,za,ja,Wd,Xd,ha,ia,pd,Za,od,_d,$d,jd,Ud,za,_a,Vd,Wd,ae,ha,ia,pd,Za,Id,ha,ia,Dc,za,Dc,Ec,_a,Zd,be,ce,de,jd,Bc,Ud,za,_a,Vd,za,Vc,ee,fe,ha,ia,pd,Za,od,ie,je,jd,Ud,za,_a,Vd,ee,ke,ha,ia,pd,Za,Id,ia,Dc,za,Dc,Ec,_a,he,le,te,ue,ne,pe,oe,qe,re,se,sf,Va,za,za,rf,nh,oh,za,Dc,_a,_a,xf,yf,uf,tf,wf,zf,Af,Bf,vf,pg,qg,Df,Ef,Ff,Gf,Of,za,Bc,cg,rg,sg,Df,Ef,Ff,Gf,eg,za,Bc,cg,tg,vg,Df,Ef,Ff,Gf,jg,za,Bc,cg,Nf,wg,Mf,xg,yg,Cg,Dg,Eg,Fg,Bg,Jg,zg,Kg,Lg,Ng,Og,Pg,Qg,Mg,Sg,Tg,Ug,Vg,Wg,eh,dh,$g,ha,ia,fh,gh,Va,Dc,za,eh,th,sh,eh,dh,uh,Jk,Lk,Mk,Ok,Kk,ul,ql,sl,am,cm,bm,ha,ia,Vm,Ym,Zm,_m,ha,ia,tm,tm,an,ln,jn,dn,ia,kn,hn,en,Dc,vn]);function Sn(){return f.byteLength/65536|0}function Tn(bo){bo=bo|0;var N=Sn()|0;var O=N+bo|0;if(N=0;--T){S[48+T]=52+T;S[65+T]=T;S[97+T]=26+T}S[43]=62;S[47]=63;function Un(co,eo,fo){var U,V,T=0,W=eo,X=fo.length,Y=eo+(X*3>>2)-(fo[X-2]=="=")-(fo[X-1]=="=");for(;T>4;if(W>2;if(W=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;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 STACK_BASE=5261744;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;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 preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.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+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="draco_decoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(wasmBinaryFile);if(binary){return binary}if(readBinary){return readBinary(wasmBinaryFile)}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)&&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()})}return Promise.resolve().then(getBinary)}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"];removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).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(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}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){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function demangle(func){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+"]"})}function dynCallLegacy(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}return Module["dynCall_"+sig].call(null,ptr)}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()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>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+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function _abort(){abort()}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}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){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;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(minHeapSize,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+(i*8+4)>>2];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();preMain();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()()}}noExitRuntime=true;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 __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;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 preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.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+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var 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 receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){var result=WebAssembly.instantiate(binary,info);return result}).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(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}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){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>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+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>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+(i*8+4)>>2];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();preMain();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;i3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=4)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=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;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};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){var 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};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){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.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_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=function 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=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function 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=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 STACK_ALIGN=16;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 addFunctionWasm(func,sig){if(!functionsInTableMap){functionsInTableMap=new WeakMap;for(var i=0;i3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=4)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=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;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};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){var 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};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){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.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=( // EMSCRIPTEN_START_ASM -function instantiate(wl,xl){function nl(yl){yl.set=(function(P,zl){this[P]=zl});yl.get=(function(P){return this[P]});return yl}var a=new ArrayBuffer(16);var b=new Int32Array(a);var c=new Float32Array(a);var d=new Float64Array(a);function ol(Al){c[2]=Al}function pl(Bl){return b[Bl]}function ql(Bl,Al){b[Bl]=Al}function rl(){return c[2]}function sl(Cl,Dl){var e=Dl.memory;var f=e.buffer;e.grow=ul;var g=new Cl.Int8Array(f);var h=new Cl.Int16Array(f);var i=new Cl.Int32Array(f);var j=new Cl.Uint8Array(f);var k=new Cl.Uint16Array(f);var l=new Cl.Uint32Array(f);var m=new Cl.Float32Array(f);var n=new Cl.Float64Array(f);var o=Cl.Math.imul;var p=Cl.Math.fround;var q=Cl.Math.abs;var r=Cl.Math.clz32;var s=Cl.Math.min;var t=Cl.Math.max;var u=Cl.Math.floor;var v=Cl.Math.ceil;var w=Cl.Math.sqrt;var x=Dl.abort;var y=Cl.NaN;var z=Cl.Infinity;var A=Dl.__cxa_allocate_exception;var B=Dl.__cxa_throw;var C=Dl.abort;var D=Dl.emscripten_resize_heap;var E=Dl.emscripten_memcpy_big;var F=5256016;var G=13132;var H=0; +function instantiate(na){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<=244){g=i[3157];f=a>>>0<11?16:a+11&-8;a=f>>>3|0;b=g>>>a|0;if(b&3){c=a+((b^-1)&1)|0;f=c<<3;b=i[f+12676>>2];a=b+8|0;d=i[b+8>>2];f=f+12668|0;m:{if((d|0)==(f|0)){q=12628,r=ll(c)&g,i[q>>2]=r;break m}i[d+12>>2]=f;i[f+8>>2]=d}c=c<<3;i[b+4>>2]=c|3;b=b+c|0;i[b+4>>2]=i[b+4>>2]|1;break a}k=i[3159];if(f>>>0<=k>>>0){break l}if(b){b=b<>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;c=(c|b)+(a>>>b|0)|0;d=c<<3;b=i[d+12676>>2];a=i[b+8>>2];d=d+12668|0;n:{if((a|0)==(d|0)){g=ll(c)&g;i[3157]=g;break n}i[a+12>>2]=d;i[d+8>>2]=a}a=b+8|0;i[b+4>>2]=f|3;e=b+f|0;c=c<<3;f=c-f|0;i[e+4>>2]=f|1;i[b+c>>2]=f;if(k){c=k>>>3|0;b=(c<<3)+12668|0;d=i[3162];c=1<>2]}i[b+8>>2]=d;i[c+12>>2]=d;i[d+12>>2]=b;i[d+8>>2]=c}i[3162]=e;i[3159]=f;break a}n=i[3158];if(!n){break l}a=(n&0-n)+ -1|0;b=a>>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;b=i[((c|b)+(a>>>b|0)<<2)+12932>>2];e=(i[b+4>>2]&-8)-f|0;c=b;while(1){p:{a=i[c+16>>2];if(!a){a=i[c+20>>2];if(!a){break p}}d=(i[a+4>>2]&-8)-f|0;c=d>>>0>>0;e=c?d:e;b=c?a:b;c=a;continue}break}o=b+f|0;if(o>>>0<=b>>>0){break k}m=i[b+24>>2];d=i[b+12>>2];if((d|0)!=(b|0)){a=i[b+8>>2];i[a+12>>2]=d;i[d+8>>2]=a;break b}c=b+20|0;a=i[c>>2];if(!a){a=i[b+16>>2];if(!a){break j}c=b+16|0}while(1){h=c;d=a;c=a+20|0;a=i[c>>2];if(a){continue}c=d+16|0;a=i[d+16>>2];if(a){continue}break}i[h>>2]=0;break b}f=-1;if(a>>>0>4294967231){break l}a=a+11|0;f=a&-8;k=i[3158];if(!k){break l}h=31;e=0-f|0;if(f>>>0<=16777215){b=a>>>8|0;a=b+1048320>>>16&8;c=b<>>16&4;g=c<>>16&2;a=(g<>>15|0)-(c|(a|b))|0;h=(a<<1|f>>>a+21&1)+28|0}c=i[(h<<2)+12932>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=f<<((h|0)==31?0:25-(h>>>1|0)|0);while(1){t:{g=(i[c+4>>2]&-8)-f|0;if(g>>>0>=e>>>0){break t}d=c;e=g;if(e){break t}e=0;a=c;break r}g=i[c+20>>2];c=i[((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|d)){a=2<>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;a=i[((c|b)+(a>>>b|0)<<2)+12932>>2]}if(!a){break q}}while(1){c=(i[a+4>>2]&-8)-f|0;b=c>>>0>>0;e=b?c:e;d=b?a:d;b=i[a+16>>2];if(b){a=b}else{a=i[a+20>>2]}if(a){continue}break}}if(!d|e>>>0>=i[3159]-f>>>0){break l}h=d+f|0;if(h>>>0<=d>>>0){break k}m=i[d+24>>2];b=i[d+12>>2];if((d|0)!=(b|0)){a=i[d+8>>2];i[a+12>>2]=b;i[b+8>>2]=a;break c}c=d+20|0;a=i[c>>2];if(!a){a=i[d+16>>2];if(!a){break i}c=d+16|0}while(1){g=c;b=a;c=a+20|0;a=i[c>>2];if(a){continue}c=b+16|0;a=i[b+16>>2];if(a){continue}break}i[g>>2]=0;break c}b=i[3159];if(b>>>0>=f>>>0){a=i[3162];c=b-f|0;u:{if(c>>>0>=16){i[3159]=c;d=a+f|0;i[3162]=d;i[d+4>>2]=c|1;i[a+b>>2]=c;i[a+4>>2]=f|3;break u}i[3162]=0;i[3159]=0;i[a+4>>2]=b|3;b=a+b|0;i[b+4>>2]=i[b+4>>2]|1}a=a+8|0;break a}d=i[3160];if(d>>>0>f>>>0){b=d-f|0;i[3160]=b;a=i[3163];c=a+f|0;i[3163]=c;i[c+4>>2]=b|1;i[a+4>>2]=f|3;a=a+8|0;break a}a=0;e=f+47|0;c=e;if(i[3275]){b=i[3277]}else{i[3278]=-1;i[3279]=-1;i[3276]=4096;i[3277]=4096;i[3275]=p+12&-16^1431655768;i[3280]=0;i[3268]=0;b=4096}g=c+b|0;h=0-b|0;c=g&h;if(c>>>0<=f>>>0){break a}b=i[3267];if(b){k=i[3265];m=k+c|0;if(m>>>0<=k>>>0|m>>>0>b>>>0){break a}}if(j[13072]&4){break f}v:{w:{b=i[3163];if(b){a=13076;while(1){k=i[a>>2];if(k+i[a+4>>2]>>>0>b>>>0?k>>>0<=b>>>0:0){break w}a=i[a+8>>2];if(a){continue}break}}b=Xk(0);if((b|0)==-1){break g}g=c;a=i[3276];d=a+ -1|0;if(d&b){g=(c-b|0)+(b+d&0-a)|0}if(g>>>0<=f>>>0|g>>>0>2147483646){break g}a=i[3267];if(a){d=i[3265];h=d+g|0;if(h>>>0<=d>>>0|h>>>0>a>>>0){break g}}a=Xk(g);if((b|0)!=(a|0)){break v}break e}g=h&g-d;if(g>>>0>2147483646){break g}b=Xk(g);if((b|0)==(i[a>>2]+i[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|f+48>>>0<=g>>>0)){b=i[3277];b=b+(e-g|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((Xk(b)|0)!=-1){g=b+g|0;b=a;break e}Xk(0-g|0);break g}b=a;if((a|0)!=-1){break e}break g}x()}d=0;break b}b=0;break c}if((b|0)!=-1){break e}}i[3268]=i[3268]|4}if(c>>>0>2147483646){break d}b=Xk(c);a=Xk(0);if(b>>>0>=a>>>0|(b|0)==-1|(a|0)==-1){break d}g=a-b|0;if(g>>>0<=f+40>>>0){break d}}a=i[3265]+g|0;i[3265]=a;if(a>>>0>l[3266]){i[3266]=a}x:{y:{z:{e=i[3163];if(e){a=13076;while(1){c=i[a>>2];d=i[a+4>>2];if((c+d|0)==(b|0)){break z}a=i[a+8>>2];if(a){continue}break}break y}a=i[3161];if(!(b>>>0>=a>>>0?a:0)){i[3161]=b}a=0;i[3270]=g;i[3269]=b;i[3165]=-1;i[3166]=i[3275];i[3272]=0;while(1){c=a<<3;d=c+12668|0;i[c+12676>>2]=d;i[c+12680>>2]=d;a=a+1|0;if((a|0)!=32){continue}break}a=g+ -40|0;c=b+8&7?-8-b&7:0;d=a-c|0;i[3160]=d;c=b+c|0;i[3163]=c;i[c+4>>2]=d|1;i[(a+b|0)+4>>2]=40;i[3164]=i[3279];break x}if(j[a+12|0]&8|b>>>0<=e>>>0|c>>>0>e>>>0){break y}i[a+4>>2]=d+g;a=e+8&7?-8-e&7:0;b=a+e|0;i[3163]=b;c=i[3160]+g|0;a=c-a|0;i[3160]=a;i[b+4>>2]=a|1;i[(c+e|0)+4>>2]=40;i[3164]=i[3279];break x}d=i[3161];if(b>>>0>>0){i[3161]=b;d=0}c=b+g|0;a=13076;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=i[a>>2]){a=i[a+8>>2];if(a){continue}break F}break}if(!(j[a+12|0]&8)){break E}}a=13076;while(1){c=i[a>>2];if(c>>>0<=e>>>0){d=c+i[a+4>>2]|0;if(d>>>0>e>>>0){break D}}a=i[a+8>>2];continue}}i[a>>2]=b;i[a+4>>2]=i[a+4>>2]+g;m=(b+8&7?-8-b&7:0)+b|0;i[m+4>>2]=f|3;b=c+(c+8&7?-8-c&7:0)|0;a=(b-m|0)-f|0;h=f+m|0;if((b|0)==(e|0)){i[3163]=h;a=i[3160]+a|0;i[3160]=a;i[h+4>>2]=a|1;break B}if(i[3162]==(b|0)){i[3162]=h;a=i[3159]+a|0;i[3159]=a;i[h+4>>2]=a|1;i[a+h>>2]=a;break B}c=i[b+4>>2];if((c&3)==1){n=c&-8;G:{if(c>>>0<=255){f=c>>>3|0;c=i[b+8>>2];d=i[b+12>>2];if((d|0)==(c|0)){q=12628,r=i[3157]&ll(f),i[q>>2]=r;break G}i[c+12>>2]=d;i[d+8>>2]=c;break G}k=i[b+24>>2];g=i[b+12>>2];H:{if((g|0)!=(b|0)){c=i[b+8>>2];i[c+12>>2]=g;i[g+8>>2]=c;break H}I:{e=b+20|0;f=i[e>>2];if(f){break I}e=b+16|0;f=i[e>>2];if(f){break I}g=0;break H}while(1){c=e;g=f;e=f+20|0;f=i[e>>2];if(f){continue}e=g+16|0;f=i[g+16>>2];if(f){continue}break}i[c>>2]=0}if(!k){break G}c=i[b+28>>2];d=(c<<2)+12932|0;J:{if(i[d>>2]==(b|0)){i[d>>2]=g;if(g){break J}q=12632,r=i[3158]&ll(c),i[q>>2]=r;break G}i[k+(i[k+16>>2]==(b|0)?16:20)>>2]=g;if(!g){break G}}i[g+24>>2]=k;c=i[b+16>>2];if(c){i[g+16>>2]=c;i[c+24>>2]=g}c=i[b+20>>2];if(!c){break G}i[g+20>>2]=c;i[c+24>>2]=g}b=b+n|0;a=a+n|0}i[b+4>>2]=i[b+4>>2]&-2;i[h+4>>2]=a|1;i[a+h>>2]=a;if(a>>>0<=255){b=a>>>3|0;a=(b<<3)+12668|0;c=i[3157];b=1<>2]}i[a+8>>2]=h;i[b+12>>2]=h;i[h+12>>2]=a;i[h+8>>2]=b;break B}e=31;if(a>>>0<=16777215){c=a>>>8|0;b=c+1048320>>>16&8;d=c<>>16&4;f=d<>>16&2;b=(f<>>15|0)-(d|(b|c))|0;e=(b<<1|a>>>b+21&1)+28|0}i[h+28>>2]=e;i[h+16>>2]=0;i[h+20>>2]=0;b=(e<<2)+12932|0;c=i[3158];d=1<>2]=h;i[h+24>>2]=b;break L}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=i[b>>2];while(1){c=b;if((i[b+4>>2]&-8)==(a|0)){break C}b=e>>>29|0;e=e<<1;d=(c+(b&4)|0)+16|0;b=i[d>>2];if(b){continue}break}i[d>>2]=h;i[h+24>>2]=c}i[h+12>>2]=h;i[h+8>>2]=h;break B}a=g+ -40|0;c=b+8&7?-8-b&7:0;h=a-c|0;i[3160]=h;c=b+c|0;i[3163]=c;i[c+4>>2]=h|1;i[(a+b|0)+4>>2]=40;i[3164]=i[3279];a=(d+(d+ -39&7?39-d&7:0)|0)+ -47|0;c=a>>>0>>0?e:a;i[c+4>>2]=27;a=i[3272];i[c+16>>2]=i[3271];i[c+20>>2]=a;a=i[3270];i[c+8>>2]=i[3269];i[c+12>>2]=a;i[3271]=c+8;i[3270]=g;i[3269]=b;i[3272]=0;a=c+24|0;while(1){i[a+4>>2]=7;b=a+8|0;a=a+4|0;if(d>>>0>b>>>0){continue}break}if((c|0)==(e|0)){break x}i[c+4>>2]=i[c+4>>2]&-2;d=c-e|0;i[e+4>>2]=d|1;i[c>>2]=d;if(d>>>0<=255){b=d>>>3|0;a=(b<<3)+12668|0;c=i[3157];b=1<>2]}i[a+8>>2]=e;i[b+12>>2]=e;i[e+12>>2]=a;i[e+8>>2]=b;break x}a=31;i[e+16>>2]=0;i[e+20>>2]=0;if(d>>>0<=16777215){b=d>>>8|0;a=b+1048320>>>16&8;c=b<>>16&4;g=c<>>16&2;a=(g<>>15|0)-(c|(a|b))|0;a=(a<<1|d>>>a+21&1)+28|0}i[e+28>>2]=a;b=(a<<2)+12932|0;c=i[3158];g=1<>2]=e;i[e+24>>2]=b;break N}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);b=i[b>>2];while(1){c=b;if((d|0)==(i[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;g=(c+(b&4)|0)+16|0;b=i[g>>2];if(b){continue}break}i[g>>2]=e;i[e+24>>2]=c}i[e+12>>2]=e;i[e+8>>2]=e;break x}a=i[c+8>>2];i[a+12>>2]=h;i[c+8>>2]=h;i[h+24>>2]=0;i[h+12>>2]=c;i[h+8>>2]=a}a=m+8|0;break a}a=i[c+8>>2];i[a+12>>2]=e;i[c+8>>2]=e;i[e+24>>2]=0;i[e+12>>2]=c;i[e+8>>2]=a}a=i[3160];if(a>>>0<=f>>>0){break d}b=a-f|0;i[3160]=b;a=i[3163];c=a+f|0;i[3163]=c;i[c+4>>2]=b|1;i[a+4>>2]=f|3;a=a+8|0;break a}i[3155]=48;a=0;break a}O:{if(!m){break O}a=i[d+28>>2];c=(a<<2)+12932|0;P:{if(i[c>>2]==(d|0)){i[c>>2]=b;if(b){break P}k=ll(a)&k;i[3158]=k;break O}i[m+(i[m+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break O}}i[b+24>>2]=m;a=i[d+16>>2];if(a){i[b+16>>2]=a;i[a+24>>2]=b}a=i[d+20>>2];if(!a){break O}i[b+20>>2]=a;i[a+24>>2]=b}Q:{if(e>>>0<=15){a=e+f|0;i[d+4>>2]=a|3;a=a+d|0;i[a+4>>2]=i[a+4>>2]|1;break Q}i[d+4>>2]=f|3;i[h+4>>2]=e|1;i[e+h>>2]=e;if(e>>>0<=255){b=e>>>3|0;a=(b<<3)+12668|0;c=i[3157];b=1<>2]}i[a+8>>2]=h;i[b+12>>2]=h;i[h+12>>2]=a;i[h+8>>2]=b;break Q}a=31;if(e>>>0<=16777215){b=e>>>8|0;a=b+1048320>>>16&8;c=b<>>16&4;f=c<>>16&2;a=(f<>>15|0)-(c|(a|b))|0;a=(a<<1|e>>>a+21&1)+28|0}i[h+28>>2]=a;i[h+16>>2]=0;i[h+20>>2]=0;b=(a<<2)+12932|0;S:{c=1<>2]=h;break T}a=e<<((a|0)==31?0:25-(a>>>1|0)|0);f=i[b>>2];while(1){b=f;if((i[b+4>>2]&-8)==(e|0)){break S}c=a>>>29|0;a=a<<1;c=(b+(c&4)|0)+16|0;f=i[c>>2];if(f){continue}break}i[c>>2]=h}i[h+24>>2]=b;i[h+12>>2]=h;i[h+8>>2]=h;break Q}a=i[b+8>>2];i[a+12>>2]=h;i[b+8>>2]=h;i[h+24>>2]=0;i[h+12>>2]=b;i[h+8>>2]=a}a=d+8|0;break a}U:{if(!m){break U}a=i[b+28>>2];c=(a<<2)+12932|0;V:{if(i[c>>2]==(b|0)){i[c>>2]=d;if(d){break V}q=12632,r=ll(a)&n,i[q>>2]=r;break U}i[(i[m+16>>2]==(b|0)?16:20)+m>>2]=d;if(!d){break U}}i[d+24>>2]=m;a=i[b+16>>2];if(a){i[d+16>>2]=a;i[a+24>>2]=d}a=i[b+20>>2];if(!a){break U}i[d+20>>2]=a;i[a+24>>2]=d}W:{if(e>>>0<=15){a=e+f|0;i[b+4>>2]=a|3;a=a+b|0;i[a+4>>2]=i[a+4>>2]|1;break W}i[b+4>>2]=f|3;i[o+4>>2]=e|1;i[e+o>>2]=e;if(k){c=k>>>3|0;a=(c<<3)+12668|0;d=i[3162];c=1<>2]}i[a+8>>2]=d;i[c+12>>2]=d;i[d+12>>2]=a;i[d+8>>2]=c}i[3162]=o;i[3159]=e}a=b+8|0}F=p+16|0;return a|0}function ue(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;k=F-96|0;F=k;i[k+72>>2]=0;i[k+64>>2]=0;i[k+68>>2]=0;i[k+48>>2]=0;i[k+52>>2]=0;i[k+40>>2]=0;i[k+44>>2]=0;i[k+56>>2]=1065353216;i[k+32>>2]=0;i[k+24>>2]=0;i[k+28>>2]=0;y=i[a+124>>2];a:{b:{c:{d:{e:{if((b|0)<1){break e}A=i[a+216>>2]!=i[a+220>>2];n=1;while(1){f=u;u=f+1|0;f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{if(!j[a+308|0]){break q}r:{s:{l=i[a+296>>2];r=i[a+304>>2];c=l+(r>>>3|0)|0;h=i[a+300>>2];if(c>>>0>=h>>>0){break s}d=j[c|0];c=r+1|0;i[a+304>>2]=c;if(!(d>>>(r&7)&1)){break s}m=c>>>3|0;d=l+m|0;t:{if(d>>>0>=h>>>0){d=c;c=0;break t}e=j[d|0];d=r+2|0;i[a+304>>2]=d;m=d>>>3|0;c=e>>>(c&7)&1}e=l+m|0;if(e>>>0>>0){e=j[e|0];i[a+304>>2]=d+1;d=e>>>(d&7)<<1&2}else{d=0}c=(c|d)<<1;switch(c-1|0){case 0:case 2:case 4:break n;case 5:break p;case 1:case 3:break r;default:break q}}d=i[k+68>>2];if((d|0)==i[k+64>>2]){break d}v=-1;s=i[a+8>>2];r=i[s+24>>2];c=r;m=d+ -4|0;n=i[m>>2];e=-1;u:{if((n|0)==-1){break u}d=n+1|0;d=(d>>>0)%3|0?d:n+ -2|0;e=-1;if((d|0)==-1){break u}e=i[i[s>>2]+(d<<2)>>2]}d=i[c+(e<<2)>>2];if((d|0)!=-1){c=d+1|0;v=(c>>>0)%3|0?c:d+ -2|0}d=i[s+12>>2];p=o(f,3);c=p+1|0;i[d+(n<<2)>>2]=c;l=c<<2;i[l+d>>2]=n;q=p+2|0;i[d+(v<<2)>>2]=q;f=q<<2;i[f+d>>2]=v;h=-1;c=-1;v:{if((n|0)==-1){break v}d=n+((n>>>0)%3|0?-1:2)|0;c=-1;if((d|0)==-1){break v}c=i[i[s>>2]+(d<<2)>>2]}w:{if((v|0)==-1){break w}d=v+1|0;d=(d>>>0)%3|0?d:v+ -2|0;if((d|0)==-1){break w}h=i[i[s>>2]+(d<<2)>>2]}d=-1;if((c|0)==(e|0)|(e|0)==(h|0)){break c}d=i[s>>2];i[d+(p<<2)>>2]=e;i[d+l>>2]=h;i[d+f>>2]=c;if((c|0)!=-1){i[r+(c<<2)>>2]=q}d=i[a+120>>2]+(e>>>3&536870908)|0;c=i[d>>2];B=d,C=ll(e)&c,i[B>>2]=C;i[m>>2]=p;break f}e=i[k+68>>2];if((e|0)==i[k+64>>2]){break d}q=i[a+8>>2];d=i[q+12>>2];p=o(f,3);m=(c|1)==5;l=p+(m?2:1)|0;c=l<<2;s=i[e+ -4>>2];i[d+c>>2]=s;i[d+(s<<2)>>2]=l;ye(q+24|0,8380);d=-1;h=i[a+8>>2];r=i[h+24>>2];if(i[h+28>>2]-r>>2>(y|0)){break c}e=p+2|0;h=i[h>>2];t=h+c|0;d=i[q+28>>2]-i[q+24>>2]|0;c=(d>>2)+ -1|0;i[t>>2]=c;if(d){i[r+(c<<2)>>2]=l}e=m?p:e;l=h+(m+p<<2)|0;x:{y:{z:{if((s|0)!=-1){c=s+((s>>>0)%3|0?-1:2)|0;if((c|0)==-1){break z}c=i[h+(c<<2)>>2];i[h+(e<<2)>>2]=c;if((c|0)==-1){break y}i[r+(c<<2)>>2]=e;break y}i[h+(e<<2)>>2]=-1;d=-1;break x}i[h+(e<<2)>>2]=-1}c=s+1|0;c=(c>>>0)%3|0?c:s+ -2|0;d=-1;if((c|0)==-1){break x}d=i[h+(c<<2)>>2]}i[l>>2]=d;i[i[k+68>>2]+ -4>>2]=p;break o}m=i[k+68>>2];e=i[k+64>>2];if((m|0)==(e|0)){break d}l=m+ -4|0;w=i[l>>2];i[k+68>>2]=l;p=i[k+44>>2];if(!p){break k}d=i[k+40>>2];q=kl(p)>>>0>1;h=f&p+2147483647;A:{if(!q){break A}c=f;h=c;if(c>>>0

>>0){break A}h=(f>>>0)%(p>>>0)|0}c=i[d+(h<<2)>>2];if(!c){break k}d=i[c>>2];if(!d){break k}r=p+ -1|0;while(1){B:{c=i[d+4>>2];C:{if((f|0)!=(c|0)){D:{if(!q){c=c&r;break D}if(c>>>0

>>0){break D}c=(c>>>0)%(p>>>0)|0}if((c|0)!=(h|0)){break k}break C}if((f|0)==i[d+8>>2]){break B}}d=i[d>>2];if(d){continue}break k}break}if((l|0)!=i[k+72>>2]){i[l>>2]=i[d+12>>2];i[k+68>>2]=m;c=e;break j}r=l-e|0;m=r>>2;l=m+1|0;if(l>>>0>=1073741824){break m}h=r>>1;l=m>>>0<536870911?h>>>0>>0?l:h:1073741823;c=0;E:{if(!l){break E}if(l>>>0>=1073741824){break a}c=lk(l<<2)}h=c+(m<<2)|0;i[h>>2]=i[d+12>>2];d=(l<<2)+c|0;m=h+4|0;if((r|0)>=1){Yk(c,e,r)}i[k+72>>2]=d;i[k+68>>2]=m;i[k+64>>2]=c;if(!e){break j}Wk(e);m=i[k+68>>2];c=i[k+64>>2];break j}c=i[a+8>>2];ye(c+24|0,8380);d=-1;e=i[a+8>>2];p=o(f,3);m=i[c+28>>2]-i[c+24>>2]|0;r=m>>2;h=r+ -1|0;i[i[e>>2]+(p<<2)>>2]=h;ye(e+24|0,8380);l=p+1|0;i[i[e>>2]+(l<<2)>>2]=(i[e+28>>2]-i[e+24>>2]>>2)+ -1;c=i[a+8>>2];ye(c+24|0,8380);e=p+2|0;i[i[c>>2]+(e<<2)>>2]=(i[c+28>>2]-i[c+24>>2]>>2)+ -1;c=i[a+8>>2];q=i[c+24>>2];if(i[c+28>>2]-q>>2>(y|0)){break c}F:{G:{if(!m){i[q+(r<<2)>>2]=l;d=1;break G}i[q+(h<<2)>>2]=p;d=0;if((m|0)==-4){break G}i[q+(r<<2)>>2]=l;d=r+1|0;if((d|0)==-1){break F}}i[q+(d<<2)>>2]=e}c=i[k+68>>2];if((c|0)!=i[k+72>>2]){i[c>>2]=p;i[k+68>>2]=c+4;break o}m=i[k+64>>2];l=c-m|0;h=l>>2;e=h+1|0;if(e>>>0>=1073741824){break l}d=l>>1;e=h>>>0<536870911?d>>>0>>0?e:d:1073741823;c=0;H:{if(!e){break H}if(e>>>0>=1073741824){break a}c=lk(e<<2)}d=c+(h<<2)|0;i[d>>2]=p;e=c+(e<<2)|0;d=d+4|0;if((l|0)>=1){Yk(c,m,l)}i[k+72>>2]=e;i[k+68>>2]=d;i[k+64>>2]=c;if(!m){break o}Wk(m)}d=i[a+40>>2];if((d|0)==i[a+36>>2]){break f}f=(f^-1)+b|0;while(1){c=i[d+ -8>>2];if(c>>>0>f>>>0){break i}if((c|0)!=(f|0)){break f}e=j[d+ -4|0];c=d+ -12|0;d=i[c>>2];i[a+40>>2]=c;if((d|0)<0){break i}h=i[i[k+68>>2]+ -4>>2];i[k+20>>2]=(d^-1)+b;i[k+88>>2]=k+20;ze(k,k+40|0,k+20|0,k+88|0);d=i[k>>2];I:{if(e&1){c=-1;if((h|0)==-1){break I}c=h+1|0;c=(c>>>0)%3|0?c:h+ -2|0;break I}c=-1;if((h|0)==-1){break I}c=h+ -1|0;if((h>>>0)%3|0){break I}c=h+2|0}i[d+12>>2]=c;d=i[a+40>>2];if((d|0)!=i[a+36>>2]){continue}break}break f}x()}Ak();x()}Ak();x()}m=l;c=e}if((c|0)==(m|0)){break i}s=i[m+ -4>>2];d=(s|0)==-1;p=i[a+8>>2];if(i[i[p+12>>2]+(s<<2)>>2]!=-1?!d:0){break i}h=(w|0)==-1;q=i[p+12>>2];if(i[q+(w<<2)>>2]!=-1?!h:0){break i}r=o(f,3);f=r+2|0;i[q+(s<<2)>>2]=f;l=f<<2;i[l+q>>2]=s;c=r+1|0;i[q+(w<<2)>>2]=c;e=c<<2;i[e+q>>2]=w;if(d){break h}n=-1;t=-1;v=i[p>>2];d=v+(r<<2)|0;c=s+((s>>>0)%3|0?-1:2)|0;if((c|0)!=-1){t=i[(c<<2)+v>>2]}i[d>>2]=t;c=s+1|0;c=(c>>>0)%3|0?c:s+ -2|0;if((c|0)==-1){break g}n=i[(c<<2)+v>>2];break g}d=-1;if(n&1){break c}break e}t=-1;v=i[p>>2];i[v+(r<<2)>>2]=-1;n=-1}i[e+v>>2]=n;J:{K:{L:{if(!h){c=w+((w>>>0)%3|0?-1:2)|0;if((c|0)==-1){break L}c=i[(c<<2)+v>>2];i[l+v>>2]=c;if((c|0)==-1){break K}i[i[p+24>>2]+(c<<2)>>2]=f;break K}i[l+v>>2]=-1;z=-1;d=-1;break J}i[l+v>>2]=-1}z=-1;c=w+1|0;c=(c>>>0)%3|0?c:w+ -2|0;d=-1;if((c|0)==-1){break J}z=i[(c<<2)+v>>2];d=c}c=i[p+24>>2];e=c+(z<<2)|0;if((t|0)!=-1){i[c+(t<<2)>>2]=i[e>>2]}M:{if((d|0)==-1){break M}while(1){i[(d<<2)+v>>2]=t;c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1){break M}d=i[q+(c<<2)>>2];if((d|0)==-1){break M}c=d+1|0;d=(c>>>0)%3|0?c:d+ -2|0;if((d|0)!=-1){continue}break}}i[e>>2]=-1;N:{if(A){break N}c=i[k+28>>2];if((c|0)!=i[k+32>>2]){i[c>>2]=z;i[k+28>>2]=c+4;break N}O:{l=i[k+24>>2];h=c-l|0;f=h>>2;e=f+1|0;if(e>>>0<1073741824){d=h>>1;e=f>>>0<536870911?d>>>0>>0?e:d:1073741823;c=0;P:{if(!e){break P}if(e>>>0>=1073741824){break O}c=lk(e<<2)}d=c+(f<<2)|0;i[d>>2]=z;e=c+(e<<2)|0;d=d+4|0;if((h|0)>=1){Yk(c,l,h)}i[k+32>>2]=e;i[k+28>>2]=d;i[k+24>>2]=c;if(!l){break N}Wk(l);m=i[k+68>>2];break N}Ak();x()}break a}i[m+ -4>>2]=r}n=(u|0)<(b|0);if((b|0)!=(u|0)){continue}break}u=b}d=-1;b=i[a+8>>2];if(i[b+28>>2]-i[b+24>>2]>>2>(y|0)){break c}Q:{R:{S:{n=i[k+68>>2];if((n|0)!=i[k+64>>2]){A=a+72|0;b=a+60|0;r=a+312|0;while(1){c=n+ -4|0;q=i[c>>2];i[k+68>>2]=c;T:{if(jd(r)){m=i[a+8>>2];w=i[m>>2];if((u|0)>=((i[m+4>>2]-w>>2>>>0)/3|0)){break d}h=-1;t=-1;l=i[m+24>>2];f=l;c=-1;U:{if((q|0)==-1){break U}e=q+1|0;e=(e>>>0)%3|0?e:q+ -2|0;c=-1;if((e|0)==-1){break U}c=i[w+(e<<2)>>2]}f=i[f+(c<<2)>>2];V:{if((f|0)==-1){break V}e=f+1|0;e=(e>>>0)%3|0?e:f+ -2|0;if((e|0)==-1){break V}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)!=-1){t=i[w+(f<<2)>>2]}h=e}n=-1;z=-1;l=i[l+(t<<2)>>2];f=-1;W:{if((l|0)==-1){break W}e=l+1|0;e=(e>>>0)%3|0?e:l+ -2|0;f=-1;if((e|0)==-1){break W}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)!=-1){z=i[w+(f<<2)>>2]}f=e}y=i[m+12>>2];s=o(u,3);m=s<<2;i[y+m>>2]=q;i[y+(q<<2)>>2]=s;p=s+1|0;l=p<<2;i[l+y>>2]=h;i[y+(h<<2)>>2]=p;q=s+2|0;e=q<<2;i[e+y>>2]=f;i[y+(f<<2)>>2]=q;i[m+w>>2]=t;l=l+w|0;i[l>>2]=z;h=e+w|0;i[h>>2]=c;m=i[a+120>>2];f=p>>>0>>0?-1:t;e=m+(f>>>3&536870908)|0;c=i[e>>2];B=e,C=ll(f)&c,i[B>>2]=C;n=(p|0)!=-1?i[l>>2]:n;e=m+(n>>>3&536870908)|0;c=i[e>>2];B=e,C=ll(n)&c,i[B>>2]=C;n=-1;n=(q|0)!=-1?i[h>>2]:n;e=m+(n>>>3&536870908)|0;c=i[e>>2];B=e,C=ll(n)&c,i[B>>2]=C;n=i[a+64>>2];e=i[a+68>>2];if((n|0)==e<<5){if((n+1|0)<=-1){break S}c=b;if(n>>>0<=1073741822){f=n+32&-32;e=e<<6;e=e>>>0>>0?f:e}else{e=2147483647}Xb(c,e);n=i[a+64>>2]}u=u+1|0;i[a+64>>2]=n+1;c=i[a+60>>2]+(n>>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>2];if((c|0)!=i[a+80>>2]){i[c>>2]=s;i[a+76>>2]=c+4;break T}m=i[A>>2];l=c-m|0;h=l>>2;f=h+1|0;if(f>>>0>=1073741824){break R}e=l>>1;f=h>>>0<536870911?e>>>0>>0?f:e:1073741823;c=0;X:{if(!f){break X}if(f>>>0>=1073741824){break a}c=lk(f<<2)}e=c+(h<<2)|0;i[e>>2]=s;f=c+(f<<2)|0;e=e+4|0;if((l|0)>=1){Yk(c,m,l)}i[a+80>>2]=f;i[a+76>>2]=e;i[a+72>>2]=c;if(!m){break T}Wk(m);break T}c=i[a+64>>2];h=i[a+68>>2];if((c|0)==h<<5){if((c+1|0)<=-1){break S}e=b;if(c>>>0<=1073741822){f=c+32&-32;c=h<<6;c=c>>>0>>0?f:c}else{c=2147483647}Xb(e,c);c=i[a+64>>2]}i[a+64>>2]=c+1;f=i[a+60>>2]+(c>>>3&536870908)|0;e=i[f>>2];B=f,C=ll(c)&e,i[B>>2]=C;c=i[a+76>>2];if((c|0)!=i[a+80>>2]){i[c>>2]=q;i[a+76>>2]=c+4;break T}m=i[A>>2];l=c-m|0;h=l>>2;f=h+1|0;if(f>>>0>=1073741824){break R}e=l>>1;f=h>>>0<536870911?e>>>0>>0?f:e:1073741823;c=0;Y:{if(!f){break Y}if(f>>>0>=1073741824){break Q}c=lk(f<<2)}e=c+(h<<2)|0;i[e>>2]=q;f=c+(f<<2)|0;e=e+4|0;if((l|0)>=1){Yk(c,m,l)}i[a+80>>2]=f;i[a+76>>2]=e;i[a+72>>2]=c;if(!m){break T}Wk(m)}n=i[k+68>>2];if((n|0)!=i[k+64>>2]){continue}break}b=i[a+8>>2]}if(((i[b+4>>2]-i[b>>2]>>2>>>0)/3|0)!=(u|0)){break c}n=i[b+24>>2];d=i[b+28>>2]-n>>2;t=i[k+24>>2];f=i[k+28>>2];if((t|0)==(f|0)){break b}while(1){h=i[t>>2];u=d+ -1|0;Z:{if(i[(u<<2)+n>>2]!=-1){c=d;break Z}n=i[b+24>>2];while(1){u=d+ -2|0;c=d+ -1|0;d=c;if(i[(u<<2)+n>>2]==-1){continue}break}}if(u>>>0>=h>>>0){i[k>>2]=b;e=u<<2;d=i[e+n>>2];g[k+12|0]=1;i[k+8>>2]=d;i[k+4>>2]=d;if((d|0)!=-1){i[i[b>>2]+(d<<2)>>2]=h;Ec(k);d=i[k+8>>2];if((d|0)!=-1){while(1){i[i[i[a+8>>2]>>2]+(d<<2)>>2]=h;Ec(k);d=i[k+8>>2];if((d|0)!=-1){continue}break}}b=i[a+8>>2]}d=i[b+24>>2];e=d+e|0;if((h|0)!=-1){i[d+(h<<2)>>2]=i[e>>2]}i[e>>2]=-1;m=1<>2];l=d+(h>>>3&536870908)|0;e=l;h=d+(u>>>3&536870908)|0;d=1<>2];_:{if(i[h>>2]&d){break _}u=i[l>>2]&(m^-1)}i[e>>2]=u;i[h>>2]=i[h>>2]&(d^-1);c=c+ -1|0}d=c;t=t+4|0;if((f|0)==(t|0)){break c}n=i[b+24>>2];continue}}Ak();x()}Ak();x()}break a}d=-1}t=i[k+24>>2]}if(t){i[k+28>>2]=t;Wk(t)}a=i[k+48>>2];if(a){while(1){b=i[a>>2];Wk(a);a=b;if(a){continue}break}}a=i[k+40>>2];i[k+40>>2]=0;if(a){Wk(a)}a=i[k+64>>2];if(a){i[k+68>>2]=a;Wk(a)}F=k+96|0;return d}va(8944);x()}function Fe(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;l=F-96|0;F=l;i[l+72>>2]=0;i[l+64>>2]=0;i[l+68>>2]=0;i[l+48>>2]=0;i[l+52>>2]=0;i[l+40>>2]=0;i[l+44>>2]=0;i[l+56>>2]=1065353216;i[l+32>>2]=0;i[l+24>>2]=0;i[l+28>>2]=0;u=i[a+124>>2];a:{b:{c:{d:{if((b|0)<1){break d}v=a+232|0;z=i[a+216>>2]!=i[a+220>>2];r=1;while(1){m=q;q=m+1|0;e:{f:{g:{h:{i:{j:{k:{l:{c=i[a+404>>2];m:{n:{if((c|0)!=-1){d=-1;e=i[a+428>>2]+(c<<2)|0;f=i[e>>2];c=f+ -1|0;i[e>>2]=c;if((f|0)<1){break c}c=i[i[i[a+416>>2]+o(i[a+404>>2],12)>>2]+(c<<2)>>2];e=i[(c<<2)+9024>>2];i[a+400>>2]=e;if(!c){f=i[l+68>>2];if((f|0)==i[l+64>>2]){break c}h=-1;e=i[a+8>>2];r=i[e+24>>2];k=r;s=f+ -4|0;d=i[s>>2];c=-1;o:{if((d|0)==-1){break o}f=d+1|0;f=(f>>>0)%3|0?f:d+ -2|0;c=-1;if((f|0)==-1){break o}c=i[i[e>>2]+(f<<2)>>2]}f=i[k+(c<<2)>>2];if((f|0)!=-1){h=f+1|0;h=(h>>>0)%3|0?h:f+ -2|0}k=i[e+12>>2];f=o(m,3);m=f+1|0;i[k+(d<<2)>>2]=m;t=m<<2;i[t+k>>2]=d;n=f+2|0;i[k+(h<<2)>>2]=n;m=k;k=n<<2;i[m+k>>2]=h;p=-1;m=-1;p:{if((d|0)==-1){break p}d=d+((d>>>0)%3|0?-1:2)|0;m=-1;if((d|0)==-1){break p}m=i[i[e>>2]+(d<<2)>>2]}q:{if((h|0)==-1){break q}d=h+1|0;d=(d>>>0)%3|0?d:h+ -2|0;if((d|0)==-1){break q}p=i[i[e>>2]+(d<<2)>>2]}d=-1;if((c|0)==(m|0)|(c|0)==(p|0)){break c}d=i[e>>2];i[d+(f<<2)>>2]=c;i[d+t>>2]=p;i[d+k>>2]=m;if((m|0)!=-1){i[r+(m<<2)>>2]=n}d=i[a+120>>2]+(c>>>3&536870908)|0;m=i[d>>2];B=d,C=ll(c)&m,i[B>>2]=C;i[s>>2]=f;He(v,f);break e}r:{switch(e+ -1|0){case 2:case 4:h=i[l+68>>2];if((h|0)==i[l+64>>2]){break c}f=i[a+8>>2];d=i[f+12>>2];e=o(m,3);k=(c|0)==3;p=e+(k?2:1)|0;s=p<<2;c=i[h+ -4>>2];i[d+s>>2]=c;i[d+(c<<2)>>2]=p;ye(f+24|0,8380);d=-1;n=i[a+8>>2];h=i[n+24>>2];if(i[n+28>>2]-h>>2>(u|0)){break c}t=e+2|0;d=i[n>>2];f=i[f+28>>2]-i[f+24>>2]|0;n=(f>>2)+ -1|0;i[d+s>>2]=n;if(f){i[h+(n<<2)>>2]=p}f=k?e:t;t=d+(e+k<<2)|0;s:{t:{u:{if((c|0)!=-1){k=c+((c>>>0)%3|0?-1:2)|0;if((k|0)==-1){break u}k=i[d+(k<<2)>>2];i[d+(f<<2)>>2]=k;if((k|0)==-1){break t}i[h+(k<<2)>>2]=f;break t}i[d+(f<<2)>>2]=-1;h=-1;break s}i[d+(f<<2)>>2]=-1}h=c+1|0;c=(h>>>0)%3|0?h:c+ -2|0;h=-1;if((c|0)==-1){break s}h=i[d+(c<<2)>>2]}i[t>>2]=h;d=i[l+68>>2];i[d+ -4>>2]=e;break m;case 6:break n;case 0:break r;default:break c}}f=i[l+68>>2];e=i[l+64>>2];if((f|0)==(e|0)){break c}h=f+ -4|0;p=i[h>>2];i[l+68>>2]=h;n=i[l+44>>2];if(!n){break j}d=i[l+40>>2];s=kl(n)>>>0>1;k=m&n+2147483647;v:{if(!s){break v}c=m;k=c;if(c>>>0>>0){break v}k=(m>>>0)%(n>>>0)|0}c=i[d+(k<<2)>>2];if(!c){break j}d=i[c>>2];if(!d){break j}t=n+ -1|0;while(1){w:{c=i[d+4>>2];x:{if((m|0)!=(c|0)){y:{if(!s){c=c&t;break y}if(c>>>0>>0){break y}c=(c>>>0)%(n>>>0)|0}if((c|0)!=(k|0)){break j}break x}if((m|0)==i[d+8>>2]){break w}}d=i[d>>2];if(d){continue}break j}break}if((h|0)!=i[l+72>>2]){i[h>>2]=i[d+12>>2];i[l+68>>2]=f;c=e;break i}h=h-e|0;k=h>>2;f=k+1|0;if(f>>>0>=1073741824){break l}n=h>>1;f=k>>>0<536870911?n>>>0>>0?f:n:1073741823;c=0;z:{if(!f){break z}if(f>>>0>=1073741824){break a}c=lk(f<<2)}k=c+(k<<2)|0;i[k>>2]=i[d+12>>2];d=(f<<2)+c|0;f=k+4|0;if((h|0)>=1){Yk(c,e,h)}i[l+72>>2]=d;i[l+68>>2]=f;i[l+64>>2]=c;if(!e){break i}Wk(e);f=i[l+68>>2];c=i[l+64>>2];break i}i[a+400>>2]=7}f=i[a+8>>2];ye(f+24|0,8380);d=-1;c=i[a+8>>2];e=o(m,3);h=i[f+28>>2]-i[f+24>>2]|0;f=h>>2;p=f+ -1|0;i[i[c>>2]+(e<<2)>>2]=p;ye(c+24|0,8380);k=e+1|0;i[i[c>>2]+(k<<2)>>2]=(i[c+28>>2]-i[c+24>>2]>>2)+ -1;c=i[a+8>>2];ye(c+24|0,8380);n=e+2|0;i[i[c>>2]+(n<<2)>>2]=(i[c+28>>2]-i[c+24>>2]>>2)+ -1;s=i[a+8>>2];c=i[s+24>>2];if(i[s+28>>2]-c>>2>(u|0)){break c}A:{B:{if(!h){i[c+(f<<2)>>2]=k;d=1;break B}i[c+(p<<2)>>2]=e;d=0;if((h|0)==-4){break B}i[c+(f<<2)>>2]=k;d=f+1|0;if((d|0)==-1){break A}}i[c+(d<<2)>>2]=n}c=i[l+68>>2];if((c|0)!=i[l+72>>2]){i[c>>2]=e;d=c+4|0;i[l+68>>2]=d;break m}f=i[l+64>>2];h=c-f|0;k=h>>2;d=k+1|0;if(d>>>0>=1073741824){break k}p=h>>1;d=k>>>0<536870911?p>>>0>>0?d:p:1073741823;c=0;C:{if(!d){break C}if(d>>>0>=1073741824){break a}c=lk(d<<2)}k=c+(k<<2)|0;i[k>>2]=e;e=c+(d<<2)|0;d=k+4|0;if((h|0)>=1){Yk(c,f,h)}i[l+72>>2]=e;i[l+68>>2]=d;i[l+64>>2]=c;if(!f){break m}Wk(f);d=i[l+68>>2]}He(v,i[d+ -4>>2]);d=i[a+40>>2];if((d|0)==i[a+36>>2]){break e}m=(m^-1)+b|0;while(1){c=i[d+ -8>>2];if(c>>>0>m>>>0){break h}if((c|0)!=(m|0)){break e}f=j[d+ -4|0];c=d+ -12|0;e=i[c>>2];i[a+40>>2]=c;if((e|0)<0){break h}c=i[i[l+68>>2]+ -4>>2];i[l+20>>2]=(e^-1)+b;i[l+88>>2]=l+20;ze(l,l+40|0,l+20|0,l+88|0);e=i[l>>2];D:{if(f&1){d=-1;if((c|0)==-1){break D}d=c+1|0;d=(d>>>0)%3|0?d:c+ -2|0;break D}d=-1;if((c|0)==-1){break D}d=c+ -1|0;if((c>>>0)%3|0){break D}d=c+2|0}i[e+12>>2]=d;d=i[a+40>>2];if((d|0)!=i[a+36>>2]){continue}break}break e}Ak();x()}Ak();x()}f=h;c=e}if((c|0)==(f|0)){break h}c=i[f+ -4>>2];e=(c|0)==-1;k=i[a+8>>2];if(i[i[k+12>>2]+(c<<2)>>2]!=-1?!e:0){break h}t=(p|0)==-1;n=i[k+12>>2];if(i[n+(p<<2)>>2]!=-1?!t:0){break h}r=o(m,3);s=r+2|0;i[n+(c<<2)>>2]=s;d=s<<2;i[d+n>>2]=c;m=r+1|0;i[n+(p<<2)>>2]=m;w=m<<2;i[w+n>>2]=p;if(e){break g}e=-1;m=-1;h=i[k>>2];A=h+(r<<2)|0;y=c+((c>>>0)%3|0?-1:2)|0;if((y|0)!=-1){m=i[(y<<2)+h>>2]}i[A>>2]=m;y=c+1|0;c=(y>>>0)%3|0?y:c+ -2|0;if((c|0)==-1){break f}e=i[(c<<2)+h>>2];break f}d=-1;if(r){break c}break d}m=-1;h=i[k>>2];i[h+(r<<2)>>2]=-1;e=-1}i[h+w>>2]=e;E:{F:{G:{if(!t){c=p+((p>>>0)%3|0?-1:2)|0;if((c|0)==-1){break G}c=i[(c<<2)+h>>2];i[d+h>>2]=c;if((c|0)==-1){break F}i[i[k+24>>2]+(c<<2)>>2]=s;break F}i[d+h>>2]=-1;e=-1;d=-1;break E}i[d+h>>2]=-1}e=-1;c=p+1|0;c=(c>>>0)%3|0?c:p+ -2|0;d=-1;if((c|0)==-1){break E}e=i[(c<<2)+h>>2];d=c}c=i[a+388>>2];p=m<<2;s=c+p|0;t=c;c=e<<2;i[s>>2]=i[s>>2]+i[t+c>>2];k=i[k+24>>2];c=k+c|0;if((m|0)!=-1){i[k+p>>2]=i[c>>2]}H:{if((d|0)==-1){break H}while(1){i[(d<<2)+h>>2]=m;k=d+1|0;d=(k>>>0)%3|0?k:d+ -2|0;if((d|0)==-1){break H}d=i[n+(d<<2)>>2];if((d|0)==-1){break H}k=d+1|0;d=(k>>>0)%3|0?k:d+ -2|0;if((d|0)!=-1){continue}break}}i[c>>2]=-1;I:{if(z){break I}c=i[l+28>>2];if((c|0)!=i[l+32>>2]){i[c>>2]=e;i[l+28>>2]=c+4;break I}J:{d=i[l+24>>2];m=c-d|0;k=m>>2;h=k+1|0;if(h>>>0<1073741824){p=m>>1;h=k>>>0<536870911?p>>>0>>0?h:p:1073741823;c=0;K:{if(!h){break K}if(h>>>0>=1073741824){break J}c=lk(h<<2)}k=c+(k<<2)|0;i[k>>2]=e;e=c+(h<<2)|0;h=k+4|0;if((m|0)>=1){Yk(c,d,m)}i[l+32>>2]=e;i[l+28>>2]=h;i[l+24>>2]=c;if(!d){break I}Wk(d);f=i[l+68>>2];break I}Ak();x()}break a}i[f+ -4>>2]=r;He(v,r)}r=(q|0)<(b|0);if((b|0)!=(q|0)){continue}break}q=b}d=-1;m=i[a+8>>2];if(i[m+28>>2]-i[m+24>>2]>>2>(u|0)){break c}L:{M:{N:{e=i[l+68>>2];if((e|0)!=i[l+64>>2]){v=a+72|0;m=a+60|0;z=a+312|0;while(1){b=e+ -4|0;n=i[b>>2];i[l+68>>2]=b;O:{if(jd(z)){u=i[a+8>>2];r=i[u>>2];if((q|0)>=((i[u+4>>2]-r>>2>>>0)/3|0)){break c}e=-1;b=-1;h=i[u+24>>2];f=h;c=-1;P:{if((n|0)==-1){break P}k=n+1|0;k=(k>>>0)%3|0?k:n+ -2|0;c=-1;if((k|0)==-1){break P}c=i[r+(k<<2)>>2]}k=c;c=i[f+(k<<2)>>2];Q:{if((c|0)==-1){break Q}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;if((c|0)==-1){break Q}e=c+1|0;e=(e>>>0)%3|0?e:c+ -2|0;if((e|0)!=-1){b=i[r+(e<<2)>>2]}e=c}p=-1;f=-1;h=i[h+(b<<2)>>2];c=-1;R:{if((h|0)==-1){break R}s=h+1|0;h=(s>>>0)%3|0?s:h+ -2|0;c=-1;if((h|0)==-1){break R}c=h+1|0;c=(c>>>0)%3|0?c:h+ -2|0;if((c|0)!=-1){f=i[r+(c<<2)>>2]}c=h}u=i[u+12>>2];h=o(q,3);t=h<<2;i[u+t>>2]=n;i[u+(n<<2)>>2]=h;n=h+1|0;w=n<<2;i[w+u>>2]=e;i[u+(e<<2)>>2]=n;s=h+2|0;e=s<<2;i[e+u>>2]=c;i[u+(c<<2)>>2]=s;i[r+t>>2]=b;c=r+w|0;i[c>>2]=f;f=e+r|0;i[f>>2]=k;e=n>>>0>>0?-1:b;b=i[a+120>>2];k=(e>>>3&536870908)+b|0;r=i[k>>2];B=k,C=ll(e)&r,i[B>>2]=C;p=(n|0)!=-1?i[c>>2]:p;c=b+(p>>>3&536870908)|0;e=i[c>>2];B=c,C=ll(p)&e,i[B>>2]=C;e=-1;e=(s|0)!=-1?i[f>>2]:e;b=b+(e>>>3&536870908)|0;c=i[b>>2];B=b,C=ll(e)&c,i[B>>2]=C;e=i[a+64>>2];c=i[a+68>>2];if((e|0)==c<<5){if((e+1|0)<=-1){break N}b=m;if(e>>>0<=1073741822){e=e+32&-32;c=c<<6;c=c>>>0>>0?e:c}else{c=2147483647}Xb(b,c);e=i[a+64>>2]}q=q+1|0;i[a+64>>2]=e+1;b=i[a+60>>2]+(e>>>3&536870908)|0;i[b>>2]=i[b>>2]|1<>2];if((b|0)!=i[a+80>>2]){i[b>>2]=h;i[a+76>>2]=b+4;break O}c=i[v>>2];e=b-c|0;k=e>>2;f=k+1|0;if(f>>>0>=1073741824){break M}p=e>>1;f=k>>>0<536870911?p>>>0>>0?f:p:1073741823;b=0;S:{if(!f){break S}if(f>>>0>=1073741824){break a}b=lk(f<<2)}k=b+(k<<2)|0;i[k>>2]=h;f=b+(f<<2)|0;h=k+4|0;if((e|0)>=1){Yk(b,c,e)}i[a+80>>2]=f;i[a+76>>2]=h;i[a+72>>2]=b;if(!c){break O}Wk(c);break O}c=i[a+64>>2];e=i[a+68>>2];if((c|0)==e<<5){if((c+1|0)<=-1){break N}b=m;if(c>>>0<=1073741822){c=c+32&-32;e=e<<6;c=e>>>0>>0?c:e}else{c=2147483647}Xb(b,c);c=i[a+64>>2]}i[a+64>>2]=c+1;b=i[a+60>>2]+(c>>>3&536870908)|0;e=i[b>>2];B=b,C=ll(c)&e,i[B>>2]=C;b=i[a+76>>2];if((b|0)!=i[a+80>>2]){i[b>>2]=n;i[a+76>>2]=b+4;break O}c=i[v>>2];e=b-c|0;h=e>>2;f=h+1|0;if(f>>>0>=1073741824){break M}k=e>>1;f=h>>>0<536870911?k>>>0>>0?f:k:1073741823;b=0;T:{if(!f){break T}if(f>>>0>=1073741824){break L}b=lk(f<<2)}h=b+(h<<2)|0;i[h>>2]=n;f=b+(f<<2)|0;h=h+4|0;if((e|0)>=1){Yk(b,c,e)}i[a+80>>2]=f;i[a+76>>2]=h;i[a+72>>2]=b;if(!c){break O}Wk(c)}e=i[l+68>>2];if((e|0)!=i[l+64>>2]){continue}break}m=i[a+8>>2]}if(((i[m+4>>2]-i[m>>2]>>2>>>0)/3|0)!=(q|0)){break c}q=i[m+24>>2];d=i[m+28>>2]-q>>2;b=i[l+24>>2];h=i[l+28>>2];if((b|0)==(h|0)){break b}while(1){f=i[b>>2];e=d+ -1|0;U:{if(i[(e<<2)+q>>2]!=-1){c=d;break U}q=i[m+24>>2];while(1){e=d+ -2|0;c=d+ -1|0;d=c;if(i[(e<<2)+q>>2]==-1){continue}break}}if(e>>>0>=f>>>0){i[l>>2]=m;d=q;q=e<<2;d=i[d+q>>2];g[l+12|0]=1;i[l+8>>2]=d;i[l+4>>2]=d;k=q;if((d|0)!=-1){i[i[m>>2]+(d<<2)>>2]=f;Ec(l);d=i[l+8>>2];if((d|0)!=-1){while(1){i[i[i[a+8>>2]>>2]+(d<<2)>>2]=f;Ec(l);d=i[l+8>>2];if((d|0)!=-1){continue}break}}m=i[a+8>>2]}q=i[m+24>>2];d=k+q|0;if((f|0)!=-1){i[q+(f<<2)>>2]=i[d>>2]}i[d>>2]=-1;d=1<>>3&536870908;f=i[a+120>>2];q=q+f|0;k=q;f=f+(e>>>3&536870908)|0;e=1<>2];V:{if(i[f>>2]&e){break V}r=i[q>>2]&(d^-1)}i[k>>2]=r;i[f>>2]=i[f>>2]&(e^-1);c=c+ -1|0}d=c;b=b+4|0;if((h|0)==(b|0)){break c}q=i[m+24>>2];continue}}Ak();x()}Ak();x()}break a}b=i[l+24>>2]}if(b){i[l+28>>2]=b;Wk(b)}a=i[l+48>>2];if(a){while(1){b=i[a>>2];Wk(a);a=b;if(a){continue}break}}a=i[l+40>>2];i[l+40>>2]=0;if(a){Wk(a)}a=i[l+64>>2];if(a){i[l+68>>2]=a;Wk(a)}F=l+96|0;return d}va(8944);x()}function Ff(a,b,c,d,e){var f=0,k=0;f=F-32|0;F=f;i[b+32>>2]=d;i[b+40>>2]=c;i[b+4>>2]=e;Cf(a,d,f+16|0);a:{if(i[a>>2]){break a}c=a+4|0;if(g[a+15|0]<=-1){Wk(i[c>>2])}d=j[f+23|0];if((I[i[i[b>>2]+8>>2]](b)|0)!=(d|0)){b=lk(64);i[f>>2]=b;i[f+4>>2]=50;i[f+8>>2]=-2147483584;g[b+50|0]=0;d=j[10401]|j[10402]<<8;g[b+48|0]=d;g[b+49|0]=d>>>8;d=j[10397]|j[10398]<<8|(j[10399]<<16|j[10400]<<24);e=j[10393]|j[10394]<<8|(j[10395]<<16|j[10396]<<24);g[b+40|0]=e;g[b+41|0]=e>>>8;g[b+42|0]=e>>>16;g[b+43|0]=e>>>24;g[b+44|0]=d;g[b+45|0]=d>>>8;g[b+46|0]=d>>>16;g[b+47|0]=d>>>24;d=j[10389]|j[10390]<<8|(j[10391]<<16|j[10392]<<24);e=j[10385]|j[10386]<<8|(j[10387]<<16|j[10388]<<24);g[b+32|0]=e;g[b+33|0]=e>>>8;g[b+34|0]=e>>>16;g[b+35|0]=e>>>24;g[b+36|0]=d;g[b+37|0]=d>>>8;g[b+38|0]=d>>>16;g[b+39|0]=d>>>24;d=j[10381]|j[10382]<<8|(j[10383]<<16|j[10384]<<24);e=j[10377]|j[10378]<<8|(j[10379]<<16|j[10380]<<24);g[b+24|0]=e;g[b+25|0]=e>>>8;g[b+26|0]=e>>>16;g[b+27|0]=e>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[10373]|j[10374]<<8|(j[10375]<<16|j[10376]<<24);e=j[10369]|j[10370]<<8|(j[10371]<<16|j[10372]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[10365]|j[10366]<<8|(j[10367]<<16|j[10368]<<24);e=j[10361]|j[10362]<<8|(j[10363]<<16|j[10364]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[10357]|j[10358]<<8|(j[10359]<<16|j[10360]<<24);e=j[10353]|j[10354]<<8|(j[10355]<<16|j[10356]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ok(c,f);if(g[f+11|0]>-1){break a}Wk(i[f>>2]);break a}e=j[f+21|0];g[b+36|0]=e;k=j[f+22|0];g[b+37|0]=k;if((e|0)!=2){b=lk(32);i[f>>2]=b;i[f+4>>2]=26;i[f+8>>2]=-2147483616;g[b+26|0]=0;d=j[10428]|j[10429]<<8;g[b+24|0]=d;g[b+25|0]=d>>>8;d=j[10424]|j[10425]<<8|(j[10426]<<16|j[10427]<<24);e=j[10420]|j[10421]<<8|(j[10422]<<16|j[10423]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[10416]|j[10417]<<8|(j[10418]<<16|j[10419]<<24);e=j[10412]|j[10413]<<8|(j[10414]<<16|j[10415]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[10408]|j[10409]<<8|(j[10410]<<16|j[10411]<<24);e=j[10404]|j[10405]<<8|(j[10406]<<16|j[10407]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-5;ok(c,f);if(g[f+11|0]>-1){break a}Wk(i[f>>2]);break a}d=d?2:3;if((d|0)!=(k|0)){b=lk(32);i[f>>2]=b;i[f+4>>2]=26;i[f+8>>2]=-2147483616;g[b+26|0]=0;d=j[10455]|j[10456]<<8;g[b+24|0]=d;g[b+25|0]=d>>>8;d=j[10451]|j[10452]<<8|(j[10453]<<16|j[10454]<<24);e=j[10447]|j[10448]<<8|(j[10449]<<16|j[10450]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[10443]|j[10444]<<8|(j[10445]<<16|j[10446]<<24);e=j[10439]|j[10440]<<8|(j[10441]<<16|j[10442]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[10435]|j[10436]<<8|(j[10437]<<16|j[10438]<<24);e=j[10431]|j[10432]<<8|(j[10433]<<16|j[10434]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-5;ok(c,f);if(g[f+11|0]>-1){break a}Wk(i[f>>2]);break a}h[i[b+32>>2]+38>>1]=d|512;b:{if(h[f+26>>1]>-1){break b}Df(a,b);if(i[a>>2]){break a}if(g[c+11|0]>-1){break b}Wk(i[c>>2])}if(!(I[i[i[b>>2]+12>>2]](b)|0)){b=lk(48);i[f>>2]=b;i[f+4>>2]=33;i[f+8>>2]=-2147483600;g[b+33|0]=0;g[b+32|0]=j[10490];d=j[10486]|j[10487]<<8|(j[10488]<<16|j[10489]<<24);e=j[10482]|j[10483]<<8|(j[10484]<<16|j[10485]<<24);g[b+24|0]=e;g[b+25|0]=e>>>8;g[b+26|0]=e>>>16;g[b+27|0]=e>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[10478]|j[10479]<<8|(j[10480]<<16|j[10481]<<24);e=j[10474]|j[10475]<<8|(j[10476]<<16|j[10477]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[10470]|j[10471]<<8|(j[10472]<<16|j[10473]<<24);e=j[10466]|j[10467]<<8|(j[10468]<<16|j[10469]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[10462]|j[10463]<<8|(j[10464]<<16|j[10465]<<24);e=j[10458]|j[10459]<<8|(j[10460]<<16|j[10461]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ok(c,f);if(g[f+11|0]>-1){break a}Wk(i[f>>2]);break a}if(!(I[i[i[b>>2]+20>>2]](b)|0)){b=lk(32);i[f>>2]=b;i[f+4>>2]=31;i[f+8>>2]=-2147483616;g[b+31|0]=0;d=j[10519]|j[10520]<<8|(j[10521]<<16|j[10522]<<24);e=j[10515]|j[10516]<<8|(j[10517]<<16|j[10518]<<24);g[b+23|0]=e;g[b+24|0]=e>>>8;g[b+25|0]=e>>>16;g[b+26|0]=e>>>24;g[b+27|0]=d;g[b+28|0]=d>>>8;g[b+29|0]=d>>>16;g[b+30|0]=d>>>24;d=j[10512]|j[10513]<<8|(j[10514]<<16|j[10515]<<24);e=j[10508]|j[10509]<<8|(j[10510]<<16|j[10511]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[10504]|j[10505]<<8|(j[10506]<<16|j[10507]<<24);e=j[10500]|j[10501]<<8|(j[10502]<<16|j[10503]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[10496]|j[10497]<<8|(j[10498]<<16|j[10499]<<24);e=j[10492]|j[10493]<<8|(j[10494]<<16|j[10495]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ok(c,f);if(g[f+11|0]>-1){break a}Wk(i[f>>2]);break a}if(!(I[i[i[b>>2]+24>>2]](b)|0)){b=lk(48);i[f>>2]=b;i[f+4>>2]=34;i[f+8>>2]=-2147483600;g[b+34|0]=0;d=j[10556]|j[10557]<<8;g[b+32|0]=d;g[b+33|0]=d>>>8;d=j[10552]|j[10553]<<8|(j[10554]<<16|j[10555]<<24);e=j[10548]|j[10549]<<8|(j[10550]<<16|j[10551]<<24);g[b+24|0]=e;g[b+25|0]=e>>>8;g[b+26|0]=e>>>16;g[b+27|0]=e>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[10544]|j[10545]<<8|(j[10546]<<16|j[10547]<<24);e=j[10540]|j[10541]<<8|(j[10542]<<16|j[10543]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[10536]|j[10537]<<8|(j[10538]<<16|j[10539]<<24);e=j[10532]|j[10533]<<8|(j[10534]<<16|j[10535]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[10528]|j[10529]<<8|(j[10530]<<16|j[10531]<<24);e=j[10524]|j[10525]<<8|(j[10526]<<16|j[10527]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ok(c,f);if(g[f+11|0]>-1){break a}Wk(i[f>>2]);break a}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}F=f+32|0}function Cf(a,b,c){var d=0,e=0,f=0,k=0,m=0,n=0;e=F-16|0;F=e;k=i[b+12>>2];d=i[b+20>>2];f=i[b+16>>2];m=f+5|0;if(m>>>0<5){d=d+1|0}a:{if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]>>0:0){b=lk(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[10297]|j[10298]<<8|(j[10299]<<16|j[10300]<<24);d=j[10293]|j[10294]<<8|(j[10295]<<16|j[10296]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[2573];d=i[2572];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[2571];d=i[2570];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[2569];d=i[2568];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;ok(a+4|0,e);if(g[e+11|0]>-1){break a}Wk(i[e>>2]);break a}d=f+i[b>>2]|0;k=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);g[c|0]=k;g[c+1|0]=k>>>8;g[c+2|0]=k>>>16;g[c+3|0]=k>>>24;g[c+4|0]=j[d+4|0];k=b;d=i[b+20>>2];f=i[b+16>>2]+5|0;if(f>>>0<5){d=d+1|0}m=f;f=d;i[k+16>>2]=m;i[k+20>>2]=d;if(Lj(c,10302,5)){b=lk(32);i[e>>2]=b;i[e+4>>2]=17;i[e+8>>2]=-2147483616;g[b+17|0]=0;g[b+16|0]=j[10324];c=j[10320]|j[10321]<<8|(j[10322]<<16|j[10323]<<24);d=j[10316]|j[10317]<<8|(j[10318]<<16|j[10319]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[10312]|j[10313]<<8|(j[10314]<<16|j[10315]<<24);d=j[10308]|j[10309]<<8|(j[10310]<<16|j[10311]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;ok(a+4|0,e);if(g[e+11|0]>-1){break a}Wk(i[e>>2]);break a}d=i[b+12>>2];if((d|0)<(f|0)?1:(d|0)<=(f|0)?l[b+8>>2]<=m>>>0:0){b=lk(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[10297]|j[10298]<<8|(j[10299]<<16|j[10300]<<24);d=j[10293]|j[10294]<<8|(j[10295]<<16|j[10296]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[2573];d=i[2572];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[2571];d=i[2570];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[2569];d=i[2568];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;ok(a+4|0,e);if(g[e+11|0]>-1){break a}Wk(i[e>>2]);break a}g[c+5|0]=j[m+i[b>>2]|0];d=i[b+20>>2];f=i[b+16>>2]+1|0;if(f>>>0<1){d=d+1|0}i[b+16>>2]=f;i[k+20>>2]=d;k=i[b+12>>2];if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<=f>>>0:0){b=lk(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[10297]|j[10298]<<8|(j[10299]<<16|j[10300]<<24);d=j[10293]|j[10294]<<8|(j[10295]<<16|j[10296]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[2573];d=i[2572];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[2571];d=i[2570];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[2569];d=i[2568];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;ok(a+4|0,e);if(g[e+11|0]>-1){break a}Wk(i[e>>2]);break a}g[c+6|0]=j[f+i[b>>2]|0];d=i[b+20>>2];f=i[b+16>>2]+1|0;if(f>>>0<1){d=d+1|0}i[b+16>>2]=f;i[b+20>>2]=d;k=i[b+12>>2];if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<=f>>>0:0){b=lk(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[10297]|j[10298]<<8|(j[10299]<<16|j[10300]<<24);d=j[10293]|j[10294]<<8|(j[10295]<<16|j[10296]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[2573];d=i[2572];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[2571];d=i[2570];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[2569];d=i[2568];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;ok(a+4|0,e);if(g[e+11|0]>-1){break a}Wk(i[e>>2]);break a}g[c+7|0]=j[f+i[b>>2]|0];d=i[b+20>>2];f=i[b+16>>2]+1|0;if(f>>>0<1){d=d+1|0}i[b+16>>2]=f;i[b+20>>2]=d;k=i[b+12>>2];if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<=f>>>0:0){b=lk(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[10297]|j[10298]<<8|(j[10299]<<16|j[10300]<<24);d=j[10293]|j[10294]<<8|(j[10295]<<16|j[10296]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[2573];d=i[2572];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[2571];d=i[2570];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[2569];d=i[2568];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;ok(a+4|0,e);if(g[e+11|0]>-1){break a}Wk(i[e>>2]);break a}g[c+8|0]=j[f+i[b>>2]|0];d=i[b+20>>2];f=d;n=i[b+16>>2];m=n+1|0;if(m>>>0<1){d=d+1|0}i[b+16>>2]=m;i[b+20>>2]=d;k=i[b+12>>2];d=f;f=n+3|0;if(f>>>0<3){d=d+1|0}if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]>>0:0){b=lk(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[10297]|j[10298]<<8|(j[10299]<<16|j[10300]<<24);d=j[10293]|j[10294]<<8|(j[10295]<<16|j[10296]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[2573];d=i[2572];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[2571];d=i[2570];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[2569];d=i[2568];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;ok(a+4|0,e);if(g[e+11|0]>-1){break a}Wk(i[e>>2]);break a}f=c;c=m+i[b>>2]|0;h[f+10>>1]=j[c|0]|j[c+1|0]<<8;c=b;f=b;d=i[b+20>>2];b=i[b+16>>2]+2|0;if(b>>>0<2){d=d+1|0}i[f+16>>2]=b;i[c+20>>2]=d;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0}F=e+16|0}function Wb(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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;j=F+ -64|0;F=j;i[a+8>>2]=e;f=a+32|0;k=i[f>>2];d=i[a+36>>2]-k>>2;a:{if(d>>>0>>0){La(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=k+(e<<2)}i[j+56>>2]=0;i[j+60>>2]=0;i[j+48>>2]=0;i[j+52>>2]=0;i[j+40>>2]=0;i[j+44>>2]=0;f=j+32|0;i[f>>2]=0;i[f+4>>2]=0;i[j+24>>2]=0;i[j+28>>2]=0;i[j+16>>2]=0;i[j+20>>2]=0;i[j>>2]=0;d=0;if(e){Na(j+16|0,e,j);h=i[j+28>>2];d=i[f>>2]}i[j>>2]=0;d=d-h>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}i[j+32>>2]=(e<<2)+h;break b}Na(j+16|12,e-d|0,j)}i[j>>2]=0;f=i[j+40>>2];d=i[j+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}i[j+44>>2]=f+(e<<2);break c}Na(j+40|0,e-d|0,j)}i[j>>2]=0;f=i[j+52>>2];d=i[j+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}i[j+56>>2]=f+(e<<2);break d}Na(j+52|0,e-d|0,j)}e:{if(i[a+8>>2]<=0){break e}g=i[j+16>>2];h=0;while(1){d=h<<2;f=i[d+g>>2];l=i[a+16>>2];f:{if((f|0)>(l|0)){k=i[a+32>>2];i[d+k>>2]=l;break f}k=i[a+32>>2];d=d+k|0;l=i[a+12>>2];if((f|0)<(l|0)){i[d>>2]=l;break f}i[d>>2]=f}h=h+1|0;d=i[a+8>>2];if((h|0)<(d|0)){continue}break}if((d|0)<1){break e}d=0;while(1){g=d<<2;f=g+c|0;g=i[b+g>>2]+i[g+k>>2]|0;i[f>>2]=g;g:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break g}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}A=i[a+52>>2];q=i[a+48>>2];u=lk(16);d=u;i[d>>2]=0;i[d+4>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[j+8>>2]=0;i[j>>2]=0;i[j+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;t=lk(d);i[j>>2]=t;f=d+t|0;i[j+8>>2]=f;Zk(t,0,d);i[j+4>>2]=f}d=1;f=i[a+56>>2];k=i[f+4>>2];v=i[f>>2];f=k-v|0;i:{if((f|0)<5){break i}d=v-k|0;d=((d|0)>(f|0)?d:f)>>>2|0;B=d>>>0>2?d:2;C=d>>>0>1?d:1;D=e<<2;l=1;while(1){j:{k:{l:{if((l|0)!=(C|0)){m:{n:{k=i[(l<<2)+v>>2];if((k|0)==-1){break n}n=k+((k>>>0)%3|0?-1:2)|0;w=n>>>5|0;m=1;y=1<>2];f=0;d=k;o:{while(1){p:{if(i[z+(d>>>3&536870908)>>2]>>>d&1){break p}g=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break p}r=i[A>>2];h=i[q+28>>2];s=i[r+(i[h+(g<<2)>>2]<<2)>>2];if((s|0)>=(l|0)){break p}p=g+1|0;p=i[r+(i[h+(((p>>>0)%3|0?p:g+ -2|0)<<2)>>2]<<2)>>2];if((p|0)>=(l|0)){break p}g=i[r+(i[h+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(l|0)){break p}if((e|0)>=1){r=i[(j+16|0)+o(f,12)>>2];g=o(e,g);p=o(e,p);s=o(e,s);h=0;while(1){i[r+(h<<2)>>2]=(i[(g+h<<2)+c>>2]+i[(h+p<<2)+c>>2]|0)-i[(h+s<<2)+c>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}g=4;f=f+1|0;if((f|0)==4){break o}}q:{if(m&1){h=-1;g=d+1|0;d=(g>>>0)%3|0?g:d+ -2|0;if((d|0)==-1|i[i[q>>2]+(d>>>3&536870908)>>2]>>>d&1){break q}d=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break q}g=d+1|0;h=(g>>>0)%3|0?g:d+ -2|0;break q}h=-1;d=((d>>>0)%3|0?-1:2)+d|0;if((d|0)==-1|i[i[q>>2]+(d>>>3&536870908)>>2]>>>d&1){break q}d=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break q}if((d>>>0)%3|0){h=d+ -1|0;break q}h=d+2|0}r:{if((h|0)==(k|0)){break r}d=h;g=(h|0)!=-1;h=(g|m^-1)&1;d=h?d:-1;m=g&m;if(!((n|0)==-1|h)){if(i[i[q>>2]+(w<<2)>>2]&y){break r}g=i[i[i[q+64>>2]+12>>2]+(n<<2)>>2];if((g|0)==-1){break r}m=0;if((g>>>0)%3|0){d=g+ -1|0}else{d=g+2|0}}if((d|0)!=-1){continue}}break}g=f;if((g|0)<1){break n}}n=(e|0)<1;if(!n){Zk(t,0,D)}d=g+ -1|0;m=(d<<2)+u|0;d=o(d,12)+a|0;r=d+60|0;w=i[d- -64>>2];d=0;y=i[j>>2];k=0;f=0;while(1){h=i[m>>2];i[m>>2]=h+1;if(w>>>0<=h>>>0){break i}s:{if(i[i[r>>2]+(h>>>3&536870908)>>2]>>>h&1){break s}f=f+1|0;if(n){break s}z=i[(j+16|0)+o(k,12)>>2];h=0;while(1){s=h<<2;p=s+y|0;i[p>>2]=i[p>>2]+i[s+z>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}k=k+1|0;if((g|0)!=(k|0)){continue}break}m=o(e,l);g=m;if(!f){break m}h=0;if((e|0)>0){break l}break k}g=o(e,l)}if(i[a+8>>2]<1){break j}m=(o(l+ -1|0,e)<<2)+c|0;h=0;while(1){d=h<<2;f=i[d+m>>2];n=i[a+16>>2];t:{if((f|0)>(n|0)){k=i[a+32>>2];i[d+k>>2]=n;break t}k=i[a+32>>2];d=d+k|0;n=i[a+12>>2];if((f|0)<(n|0)){i[d>>2]=n;break t}i[d>>2]=f}h=h+1|0;f=i[a+8>>2];if((h|0)<(f|0)){continue}break}d=0;if((f|0)<1){break j}f=g<<2;h=f+c|0;m=b+f|0;while(1){g=d<<2;f=g+h|0;g=i[g+m>>2]+i[g+k>>2]|0;i[f>>2]=g;u:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break u}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}break j}Bk();x()}while(1){d=(h<<2)+t|0;i[d>>2]=i[d>>2]/(f|0);h=h+1|0;if((h|0)!=(e|0)){continue}break}}if(i[a+8>>2]<1){break j}h=0;while(1){d=h<<2;f=i[d+t>>2];g=i[a+16>>2];v:{if((f|0)>(g|0)){k=i[a+32>>2];i[d+k>>2]=g;break v}k=i[a+32>>2];d=d+k|0;g=i[a+12>>2];if((f|0)<(g|0)){i[d>>2]=g;break v}i[d>>2]=f}h=h+1|0;f=i[a+8>>2];if((h|0)<(f|0)){continue}break}d=0;if((f|0)<1){break j}f=m<<2;h=f+c|0;m=b+f|0;while(1){g=d<<2;f=g+h|0;g=i[g+m>>2]+i[g+k>>2]|0;i[f>>2]=g;w:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break w}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}d=1;l=l+1|0;if((B|0)!=(l|0)){continue}break}}a=i[j>>2];if(a){i[j+4>>2]=a;Wk(a)}Wk(u);a=i[j+52>>2];if(a){i[j+56>>2]=a;Wk(a)}a=i[j+40>>2];if(a){i[j+44>>2]=a;Wk(a)}a=i[j+28>>2];if(a){i[j+32>>2]=a;Wk(a)}a=i[j+16>>2];if(a){i[j+20>>2]=a;Wk(a)}F=j- -64|0;return d|0}Ak();x()}function vc(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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;h=F+ -64|0;F=h;i[a+8>>2]=e;f=a+32|0;k=i[f>>2];d=i[a+36>>2]-k>>2;a:{if(d>>>0>>0){La(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=k+(e<<2)}i[h+56>>2]=0;i[h+60>>2]=0;i[h+48>>2]=0;i[h+52>>2]=0;i[h+40>>2]=0;i[h+44>>2]=0;d=h+32|0;i[d>>2]=0;i[d+4>>2]=0;i[h+24>>2]=0;i[h+28>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;i[h>>2]=0;f=0;if(e){Na(h+16|0,e,h);j=i[h+28>>2];f=i[d>>2]}i[h>>2]=0;d=f-j>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}i[h+32>>2]=(e<<2)+j;break b}Na(h+16|12,e-d|0,h)}i[h>>2]=0;f=i[h+40>>2];d=i[h+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}i[h+44>>2]=f+(e<<2);break c}Na(h+40|0,e-d|0,h)}i[h>>2]=0;f=i[h+52>>2];d=i[h+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}i[h+56>>2]=f+(e<<2);break d}Na(h+52|0,e-d|0,h)}e:{if(i[a+8>>2]<=0){break e}g=i[h+16>>2];j=0;while(1){d=j<<2;f=i[d+g>>2];m=i[a+16>>2];f:{if((f|0)>(m|0)){k=i[a+32>>2];i[d+k>>2]=m;break f}k=i[a+32>>2];d=d+k|0;m=i[a+12>>2];if((f|0)<(m|0)){i[d>>2]=m;break f}i[d>>2]=f}j=j+1|0;d=i[a+8>>2];if((j|0)<(d|0)){continue}break}if((d|0)<1){break e}f=0;while(1){g=f<<2;d=g+c|0;g=i[b+g>>2]+i[g+k>>2]|0;i[d>>2]=g;g:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break g}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;if((f|0)>2]){continue}break}}A=i[a+52>>2];z=i[a+48>>2];w=lk(16);d=w;i[d>>2]=0;i[d+4>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;s=lk(d);i[h>>2]=s;f=d+s|0;i[h+8>>2]=f;Zk(s,0,d);i[h+4>>2]=f}k=1;d=i[a+56>>2];f=i[d+4>>2];y=i[d>>2];d=f-y|0;i:{if((d|0)<5){break i}f=y-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;B=d>>>0>2?d:2;C=d>>>0>1?d:1;D=e<<2;m=1;while(1){j:{k:{l:{if((m|0)!=(C|0)){m:{n:{k=i[(m<<2)+y>>2];if((k|0)==-1){break n}n=i[z+12>>2];u=k+((k>>>0)%3|0?-1:2)|0;v=n+(u<<2)|0;l=1;f=0;d=k;o:{while(1){g=i[n+(d<<2)>>2];p:{if((g|0)==-1){break p}j=-1;r=i[A>>2];p=i[z>>2];t=i[r+(i[p+(g<<2)>>2]<<2)>>2];q=g+1|0;q=(q>>>0)%3|0?q:g+ -2|0;if((q|0)!=-1){q=i[p+(q<<2)>>2]}else{q=-1}g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){j=i[p+(g<<2)>>2]}if((t|0)>=(m|0)){break p}g=i[(q<<2)+r>>2];if((g|0)>=(m|0)){break p}j=i[r+(j<<2)>>2];if((j|0)>=(m|0)){break p}p=i[(h+16|0)+o(f,12)>>2];if((e|0)>=1){r=o(e,j);g=o(e,g);t=o(e,t);j=0;while(1){i[p+(j<<2)>>2]=(i[(j+r<<2)+c>>2]+i[(g+j<<2)+c>>2]|0)-i[(j+t<<2)+c>>2];j=j+1|0;if((j|0)!=(e|0)){continue}break}}g=4;f=f+1|0;if((f|0)==4){break o}}q:{if(l&1){p=d+1|0;d=(p>>>0)%3|0?p:d+ -2|0;g=-1;if((d|0)==-1){break q}d=i[n+(d<<2)>>2];g=-1;if((d|0)==-1){break q}g=d+1|0;g=(g>>>0)%3|0?g:d+ -2|0;break q}d=((d>>>0)%3|0?-1:2)+d|0;g=-1;if((d|0)==-1){break q}d=i[n+(d<<2)>>2];g=-1;if((d|0)==-1){break q}g=d+ -1|0;if((d>>>0)%3|0){break q}g=d+2|0}r:{if((g|0)==(k|0)){break r}d=g;g=(g|0)!=-1;j=(g|l^-1)&1;d=j?d:-1;l=g&l;if(!((u|0)==-1|j)){g=i[v>>2];if((g|0)==-1){break r}l=0;if((g>>>0)%3|0){d=g+ -1|0}else{d=g+2|0}}if((d|0)!=-1){continue}}break}g=f;if((g|0)<1){break n}}n=(e|0)<1;if(!n){Zk(s,0,D)}d=g+ -1|0;l=(d<<2)+w|0;d=o(d,12)+a|0;p=d+60|0;r=i[d- -64>>2];k=0;t=i[h>>2];d=0;f=0;while(1){j=i[l>>2];i[l>>2]=j+1;if(r>>>0<=j>>>0){break i}s:{if(i[i[p>>2]+(j>>>3&536870908)>>2]>>>j&1){break s}f=f+1|0;if(n){break s}q=i[(h+16|0)+o(d,12)>>2];j=0;while(1){u=j<<2;v=u+t|0;i[v>>2]=i[v>>2]+i[q+u>>2];j=j+1|0;if((j|0)!=(e|0)){continue}break}}d=d+1|0;if((g|0)!=(d|0)){continue}break}g=o(e,m);d=g;if(!f){break m}j=0;if((e|0)>0){break l}break k}d=o(e,m)}if(i[a+8>>2]<1){break j}l=(o(m+ -1|0,e)<<2)+c|0;j=0;while(1){f=j<<2;g=i[f+l>>2];n=i[a+16>>2];t:{if((g|0)>(n|0)){k=i[a+32>>2];i[f+k>>2]=n;break t}k=i[a+32>>2];f=f+k|0;n=i[a+12>>2];if((g|0)<(n|0)){i[f>>2]=n;break t}i[f>>2]=g}j=j+1|0;g=i[a+8>>2];if((j|0)<(g|0)){continue}break}f=0;if((g|0)<1){break j}d=d<<2;j=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[d>>2]=g;u:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break u}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;if((f|0)>2]){continue}break}break j}Bk();x()}while(1){d=(j<<2)+s|0;i[d>>2]=i[d>>2]/(f|0);j=j+1|0;if((j|0)!=(e|0)){continue}break}}if(i[a+8>>2]<1){break j}j=0;while(1){d=j<<2;f=i[d+s>>2];l=i[a+16>>2];v:{if((f|0)>(l|0)){k=i[a+32>>2];i[d+k>>2]=l;break v}k=i[a+32>>2];d=d+k|0;l=i[a+12>>2];if((f|0)<(l|0)){i[d>>2]=l;break v}i[d>>2]=f}j=j+1|0;d=i[a+8>>2];if((j|0)<(d|0)){continue}break}f=0;if((d|0)<1){break j}d=g<<2;j=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[d>>2]=g;w:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break w}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;if((f|0)>2]){continue}break}}k=1;m=m+1|0;if((B|0)!=(m|0)){continue}break}}a=i[h>>2];if(a){i[h+4>>2]=a;Wk(a)}Wk(w);a=i[h+52>>2];if(a){i[h+56>>2]=a;Wk(a)}a=i[h+40>>2];if(a){i[h+44>>2]=a;Wk(a)}a=i[h+28>>2];if(a){i[h+32>>2]=a;Wk(a)}a=i[h+16>>2];if(a){i[h+20>>2]=a;Wk(a)}F=h- -64|0;return k|0}Ak();x()}function Pj(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=F-16|0;F=e;i[e+12>>2]=a;a:{if(a>>>0<=211){a=i[Qj(11424,11616,e+12|0)>>2];break a}if(a>>>0>=4294967292){Sj();x()}f=(a>>>0)/210|0;d=o(f,210);i[e+8>>2]=a-d;g=Qj(11616,11808,e+8|0)-11616>>2;b:{while(1){a=i[(g<<2)+11616>>2]+d|0;d=5;b=h;c:{d:{while(1){h=b;if((d|0)==47){d=211;while(1){b=(a>>>0)/(d>>>0)|0;if(b>>>0>>0){break c}if((o(b,d)|0)==(a|0)){break d}b=d+10|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+12|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+16|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+18|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+22|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+28|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+30|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+36|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+40|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+42|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+46|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+52|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+58|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+60|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+66|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+70|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+72|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+78|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+82|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+88|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+96|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+100|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+102|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+106|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+108|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+112|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+120|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+126|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+130|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+136|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+138|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+142|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+148|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+150|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+156|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+162|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+166|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+168|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+172|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+178|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+180|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+186|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+190|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+192|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+196|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+198|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+208|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}d=d+210|0;if((o(b,c)|0)!=(a|0)){continue}break}break d}b=i[(d<<2)+11424>>2];c=(a>>>0)/(b>>>0)|0;j=o(b,c);c=c>>>0>>0;if(!c){b=c?a:h;d=d+1|0;if((a|0)!=(j|0)){continue}}break}if((a|0)!=(j|0)|c){break b}}b=g+1|0;a=(b|0)==48;g=a?0:b;f=a+f|0;d=o(f,210);continue}break}i[e+12>>2]=a;break a}i[e+12>>2]=a;a=c?a:h}F=e+16|0;return a}function Bg(a,b,c,d){var e=0,f=0,h=0,o=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:h=1;e:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break e}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break e}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 1:f:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break f}h=i[a>>2];e=i[h+4>>2];h=i[h>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=h+b|0;if(e>>>0<=b>>>0){break b}while(1){h=0;e=g[b|0];if((e|0)<0){break c}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break f}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break c}if((e|0)>=(c|0)){return 1}break a;case 2:h=1;g:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break g}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if((e+128&65535)>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break g}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 3:h=1;h:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break h}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if(e>>>0>127){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break h}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 4:h=1;i:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break i}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e+128>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break i}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 5:h=1;j:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break j}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e>>>0>127){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break j}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 6:h=1;k:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break k}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];r=o+128|0;if(r>>>0<128){e=e+1|0}if(!e&r>>>0>255|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break k}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 7:h=1;l:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break l}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];if(!e&o>>>0>127|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break l}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 8:h=1;m:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break m}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;s=m[b>>2];n:{if(p(q(s))=((e|0)>(c|0)?c:e)<<24>>24){break m}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 9:h=1;o:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break o}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;t=n[b>>3];p:{if(q(t)<2147483648){e=~~t;break p}e=-2147483648}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break o}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}h=1;q:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break q}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break q}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}Zk(d+e|0,0,c-e|0)}return h}return 0}Zk(d+e|0,0,c-e|0);return 1}function ne(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;h=F+ -64|0;F=h;i[a+132>>2]=0;if(i[a+148>>2]){b=i[a+144>>2];if(b){while(1){d=i[b>>2];Wk(b);b=d;if(b){continue}break}}i[a+144>>2]=0;d=i[a+140>>2];if(d){b=0;while(1){i[i[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;if((d|0)!=(b|0)){continue}break}}i[a+148>>2]=0}a:{b:{c:{if(!oe(1,h+52|0,i[i[a+4>>2]+32>>2])){break c}i[a+156>>2]=i[h+52>>2];if(!oe(1,h+48|0,i[i[a+4>>2]+32>>2])){break c}f=i[h+48>>2];if(f>>>0>1431655765|l[a+156>>2]>o(f,3)>>>0){break c}b=i[i[a+4>>2]+32>>2];p=i[b+16>>2];e=i[b+12>>2];d=i[b+20>>2];if((e|0)<(d|0)?1:(e|0)<=(d|0)?l[b+8>>2]<=p>>>0:0){break c}m=j[p+i[b>>2]|0];p=p+1|0;if(p>>>0<1){d=d+1|0}i[b+16>>2]=p;i[b+20>>2]=d;if(!oe(1,h+44|0,b)){break c}q=i[h+44>>2];if(f>>>0>>0|f>>>0>q+((q>>>0)/3|0)>>>0){break c}if(!oe(1,h+40|0,i[i[a+4>>2]+32>>2])){break c}e=i[h+40>>2];if(e>>>0>q>>>0){break c}i[a+28>>2]=i[a+24>>2];d=lk(88);Mi(d);b=i[a+8>>2];i[a+8>>2]=d;p=a+8|0;if(b){pe(p,b);if(!i[p>>2]){break c}}c=i[a+160>>2];i[a+164>>2]=c;d:{if(i[a+168>>2]-c>>2>>>0>=f>>>0){break d}if(f>>>0>=1073741824){break a}d=f<<2;b=lk(d);i[a+164>>2]=b;i[a+160>>2]=b;i[a+168>>2]=b+d;if(!c){break d}Wk(c)}c=i[a+172>>2];i[a+176>>2]=c;e:{if(i[a+180>>2]-c>>2>>>0>=f>>>0){break e}if(f>>>0>=1073741824){break b}d=f<<2;b=lk(d);i[a+176>>2]=b;i[a+172>>2]=b;i[a+180>>2]=b+d;if(!c){break e}Wk(c)}i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+40>>2]=i[a+36>>2];i[a- -64>>2]=0;i[a+52>>2]=i[a+48>>2];i[a+76>>2]=i[a+72>>2];r=a+216|0;c=i[a+216>>2];b=c;d=i[a+220>>2];if((b|0)!=(d|0)){while(1){b=i[d+ -12>>2];if(b){i[d+ -8>>2]=b;Wk(b)}b=i[d+ -28>>2];if(b){i[d+ -24>>2]=b;Wk(b)}b=d+ -144|0;n=i[d+ -40>>2];if(n){i[d+ -36>>2]=n;Wk(n)}qe(d+ -140|0);d=b;if((c|0)!=(b|0)){continue}break}b=i[r>>2]}i[a+220>>2]=c;d=(c-b|0)/144|0;f:{if(d>>>0>>0){re(r,m-d|0);break f}if(d>>>0<=m>>>0){break f}d=o(m,144)+b|0;if((d|0)!=(c|0)){while(1){b=i[c+ -12>>2];if(b){i[c+ -8>>2]=b;Wk(b)}b=i[c+ -28>>2];if(b){i[c+ -24>>2]=b;Wk(b)}b=c+ -144|0;n=i[c+ -40>>2];if(n){i[c+ -36>>2]=n;Wk(n)}qe(c+ -140|0);c=b;if((b|0)!=(d|0)){continue}break}}i[a+220>>2]=d}c=0;if(!Wi(i[a+8>>2],f,e+i[a+156>>2]|0)){break c}b=i[a+156>>2];g[h|0]=1;ie(a+120|0,b+e|0,h);if((se(a,i[i[a+4>>2]+32>>2])|0)==-1){break c}i[a+376>>2]=a;e=a+232|0;c=i[(I[i[i[a>>2]+32>>2]](a)|0)+32>>2];s=i[c>>2]+i[c+16>>2]|0;d=i[(I[i[i[a>>2]+32>>2]](a)|0)+32>>2];c=i[d+8>>2];b=i[d+16>>2];Rf(e,s,c-b|0,k[i[(I[i[i[a>>2]+32>>2]](a)|0)+32>>2]+38>>1]);i[a+372>>2]=m;b=Pf(h);c=i[a+268>>2];i[a+304>>2]=i[a+264>>2];i[a+308>>2]=c;c=i[a+260>>2];i[a+296>>2]=i[a+256>>2];i[a+300>>2]=c;d=a+248|0;c=d;f=i[c+4>>2];i[a+288>>2]=i[c>>2];i[a+292>>2]=f;m=a+240|0;c=m;f=i[c+4>>2];i[a+280>>2]=i[c>>2];i[a+284>>2]=f;c=i[a+236>>2];f=a+272|0;i[f>>2]=i[a+232>>2];i[f+4>>2]=c;g:{h:{if(Sf(f,1,h+56|0)){c=i[f+4>>2];i[e>>2]=i[f>>2];i[e+4>>2]=c;c=i[f+36>>2];i[e+32>>2]=i[f+32>>2];i[e+36>>2]=c;c=i[f+28>>2];i[e+24>>2]=i[f+24>>2];i[e+28>>2]=c;c=i[f+20>>2];i[e+16>>2]=i[f+16>>2];i[e+20>>2]=c;c=i[f+12>>2];i[e+8>>2]=i[f+8>>2];i[e+12>>2]=c;n=i[m>>2];c=i[d>>2];u=n-c|0;t=i[h+60>>2];s=i[m+4>>2];m=i[d+4>>2];d=s-(m+(n>>>0>>0)|0)|0;n=i[h+56>>2];if((t|0)==(d|0)&n>>>0<=u>>>0|t>>>0>>0){break h}}c=0;break g}m=m+t|0;n=c+n|0;if(n>>>0>>0){m=m+1|0}i[a+248>>2]=n;i[a+252>>2]=m;c=0;if(!hd(a+312|0,e)){break g}if(!te(e)){break g}d=i[e+36>>2];i[h+32>>2]=i[e+32>>2];i[h+36>>2]=d;d=i[e+28>>2];i[h+24>>2]=i[e+24>>2];i[h+28>>2]=d;d=i[e+20>>2];i[h+16>>2]=i[e+16>>2];i[h+20>>2]=d;d=i[e+12>>2];i[h+8>>2]=i[e+8>>2];i[h+12>>2]=d;d=i[e+4>>2];i[h>>2]=i[e>>2];i[h+4>>2]=d;q=ue(a,q);if((q|0)==-1){break g}d=i[i[a+4>>2]+32>>2];c=i[b+16>>2];m=c+i[b>>2]|0;b=i[b+8>>2];Rf(d,m,b-c|0,k[d+38>>1]);i:{if(i[a+220>>2]==i[a+216>>2]){break i}c=i[p>>2];if(i[c+4>>2]==i[c>>2]){break i}d=0;while(1){if(ve(a,d)){d=d+3|0;c=i[p>>2];if(d>>>0>2]-i[c>>2]>>2>>>0){continue}break i}break}c=0;break g}if(j[a+308|0]){Uf(f)}b=i[a+216>>2];if((b|0)!=i[a+220>>2]){d=0;while(1){e=o(d,144);ej((e+b|0)+4|0,i[p>>2]);c=i[r>>2];b=c+e|0;f=i[b+132>>2];m=i[b+136>>2];if((f|0)!=(m|0)){gj(b+4|0,i[f>>2]);b=f+4|0;if((m|0)!=(b|0)){while(1){gj((e+i[r>>2]|0)+4|0,i[b>>2]);b=b+4|0;if((m|0)!=(b|0)){continue}break}}c=i[r>>2]}fj((c+e|0)+4|0);d=d+1|0;b=i[a+216>>2];if(d>>>0<(i[a+220>>2]-b|0)/144>>>0){continue}break}}c=i[a+8>>2];we(a+184|0,i[c+28>>2]-i[c+24>>2]>>2);d=i[a+216>>2];if((d|0)!=i[a+220>>2]){b=0;while(1){c=o(b,144)+d|0;d=i[c+60>>2]-i[c+56>>2]>>2;m=c+104|0;c=i[a+8>>2];c=i[c+28>>2]-i[c+24>>2]>>2;we(m,(d|0)<(c|0)?c:d);b=b+1|0;d=i[a+216>>2];if(b>>>0<(i[a+220>>2]-d|0)/144>>>0){continue}break}}c=xe(a,q)}}F=h- -64|0;return c|0}va(8944);x()}va(8944);x()}function Dg(a,b,c,d){var e=0,f=0,h=0,o=0,q=p(0),r=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:e:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break e}h=i[a>>2];e=i[h+4>>2];h=i[h>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=h+b|0;if(e>>>0<=b>>>0){break b}while(1){h=0;e=g[b|0];if((e|0)<0){break c}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break e}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break c}if((e|0)>=(c|0)){return 1}break a;case 1:h=1;f:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break f}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break f}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 2:h=1;g:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break g}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break g}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 3:h=1;h:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break h}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break h}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 4:h=1;i:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break i}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break i}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 5:h=1;j:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break j}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break j}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 6:h=1;k:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break k}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];if(!e&o>>>0>255|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break k}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 7:h=1;l:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break l}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];if(!e&o>>>0>255|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break l}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 8:h=1;m:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break m}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;q=m[b>>2];n:{if(q=p(0)){e=~~q>>>0;break n}e=0}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break m}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 9:h=1;o:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break o}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;r=n[b>>3];p:{if(r<4294967296&r>=0){e=~~r>>>0;break p}e=0}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break o}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}h=1;q:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break q}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break q}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}Zk(d+e|0,0,c-e|0)}return h}return 0}Zk(d+e|0,0,c-e|0);return 1}function gc(a,b,c,d){var e=0,f=0,l=0,o=0,r=p(0),t=0,w=0,x=0;a:{b:{if(!d){break b}c:{switch(i[a+28>>2]+ -1|0){case 0:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=g[b|0];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 1:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=j[b|0];i[e+4>>2]=0;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 2:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=h[b>>1];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 3:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=k[b>>1];i[e+4>>2]=0;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 4:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=i[b>>2];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 5:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=i[b>>2];i[e+4>>2]=0;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 6:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}l=i[b+4>>2];e=(f<<3)+d|0;i[e>>2]=i[b>>2];i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 7:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=i[b+4>>2];l=e;w=i[b>>2];if((e|0)<0?1:(e|0)<=0?w>>>0<0:0){return}e=(f<<3)+d|0;i[e>>2]=w;i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 8:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;w=i[e+4>>2];f=0;while(1){if(w>>>0<=b>>>0){return}e=(f<<3)+d|0;o=e;r=m[b>>2];d:{if(p(q(r))=p(1)?r>p(0)?~~p(s(p(u(p(r*p(2.3283064365386963e-10)))),p(4294967296)))>>>0:~~p(v(p(p(r-p(~~r>>>0>>>0))*p(2.3283064365386963e-10))))>>>0:0;x=~~r>>>0;break d}l=-2147483648;x=0}i[o>>2]=x;i[e+4>>2]=l;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 9:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;w=i[e+4>>2];f=0;while(1){if(w>>>0<=b>>>0){return}e=(f<<3)+d|0;o=e;t=n[b>>3];e:{if(q(t)<0x8000000000000000){l=q(t)>=1?t>0?~~s(u(t*2.3283064365386963e-10),4294967295)>>>0:~~v((t- +(~~t>>>0>>>0))*2.3283064365386963e-10)>>>0:0;x=~~t>>>0;break e}l=-2147483648;x=0}i[o>>2]=x;i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 10:break c;default:break b}}e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=j[b|0];i[e+4>>2]=0;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}Zk((e<<3)+d|0,0,c-e<<3)}return}Zk((e<<3)+d|0,0,c-e<<3)}function xe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;e=F-48|0;F=e;f=i[i[a+4>>2]+44>>2];c=i[a+8>>2];g=i[c>>2];c=i[c+4>>2];i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;d=(c-g>>2>>>0)/3|0;c=i[f+96>>2];g=(i[f+100>>2]-c|0)/12|0;a:{if(d>>>0>g>>>0){Ae(f+96|0,d-g|0,e+32|0);break a}if(d>>>0>=g>>>0){break a}i[f+100>>2]=c+o(d,12)}b:{if(i[a+216>>2]==i[a+220>>2]){l=i[a+4>>2];k=i[l+44>>2];h=i[k+100>>2];if((h|0)!=i[k+96>>2]){j=e+40|0;c=0;while(1){g=-1;p=0;d=-1;c:{d:{e:{f=o(c,3);if((f|0)==-1){break e}n=-1;d=i[i[i[a+8>>2]>>2]+(f<<2)>>2];p=f+1|0;if((p|0)!=-1){break e}f=0;break d}n=i[i[i[a+8>>2]>>2]+(p<<2)>>2];f=f+2|0;if((f|0)==-1){break c}}g=i[i[i[a+8>>2]>>2]+(f<<2)>>2]}f=c+1|0;p=i[k+96>>2];m=(h-p|0)/12|0;if(m>>>0<=c>>>0){i[j>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;h=k+96|0;Ae(h,f-m|0,e+32|0);l=i[a+4>>2];p=i[h>>2]}c=p+o(c,12)|0;i[c+8>>2]=g;i[c+4>>2]=n;i[c>>2]=d;c=f;k=i[l+44>>2];h=i[k+100>>2];if(c>>>0<(h-i[k+96>>2]|0)/12>>>0){continue}break}}i[i[l+4>>2]+80>>2]=b;c=1;break b}i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;l=i[a+8>>2];c=i[l>>2];b=i[l+4>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;f:{g:{h:{i:{j:{k:{l:{g=b-c|0;if(g){b=g>>2;if(b>>>0>=1073741824){break l}c=lk(g);i[e>>2]=c;b=c+(b<<2)|0;i[e+8>>2]=b;Zk(c,0,g);i[e+4>>2]=b}c=i[l+24>>2];if((i[l+28>>2]-c|0)<1){break g}while(1){g=i[(q<<2)+c>>2];m:{if((g|0)==-1){break m}n:{if(i[i[a+120>>2]+(q>>>3&536870908)>>2]>>>q&1){break n}b=i[a+220>>2];n=i[a+216>>2];if((b|0)==(n|0)){break n}m=(b-n|0)/144|0;j=((g>>>0)%3|0?-1:2)+g|0;p=0;while(1){d=g<<2;f=n+o(p,144)|0;b=i[d+i[i[f+68>>2]>>2]>>2];o:{if(!(i[i[f+16>>2]+(b>>>3&536870908)>>2]>>>b&1)){break o}b=g;k=b;c=-1;p:{if((j|0)==-1){break p}h=i[i[l+12>>2]+(j<<2)>>2];c=-1;if((h|0)==-1){break p}c=h+ -1|0;if((h>>>0)%3|0){break p}c=h+2|0}if((k|0)==(c|0)){break o}h=i[f+32>>2];f=i[h+d>>2];while(1){d=0;if((c|0)==-1){break f}if((f|0)!=i[h+(c<<2)>>2]){g=c;break n}k=b;c=((c>>>0)%3|0?-1:2)+c|0;d=-1;q:{if((c|0)==-1){break q}c=i[i[l+12>>2]+(c<<2)>>2];d=-1;if((c|0)==-1){break q}d=c+ -1|0;if((c>>>0)%3|0){break q}d=c+2|0}c=d;if((k|0)!=(c|0)){continue}break}}p=p+1|0;if(p>>>0>>0){continue}break}}b=i[e+20>>2];j=i[e+16>>2];m=b-j|0;h=m>>2;i[i[e>>2]+(g<<2)>>2]=h;c=i[e+24>>2];r:{if(b>>>0>>0){i[b>>2]=g;i[e+20>>2]=b+4;break r}f=h+1|0;if(f>>>0>=1073741824){break k}d=c-j|0;c=d>>1;d=d>>2>>>0<536870911?c>>>0>>0?f:c:1073741823;b=0;s:{if(!d){break s}if(d>>>0>=1073741824){break j}b=lk(d<<2)}c=b+(h<<2)|0;i[c>>2]=g;d=b+(d<<2)|0;c=c+4|0;if((m|0)>=1){Yk(b,j,m)}i[e+24>>2]=d;i[e+20>>2]=c;i[e+16>>2]=b;if(!j){break r}Wk(j);l=i[a+8>>2]}if((g|0)==-1){break m}b=((g>>>0)%3|0?-1:2)+g|0;if((b|0)==-1){break m}b=i[i[l+12>>2]+(b<<2)>>2];if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}d=g;if((c|0)==(d|0)){break m}while(1){b=c;t:{u:{c=i[a+220>>2];j=i[a+216>>2];if((c|0)==(j|0)){break u}m=(c-j|0)/144|0;c=0;while(1){h=i[(j+o(c,144)|0)+32>>2];f=b<<2;if(i[h+f>>2]==i[h+(d<<2)>>2]){c=c+1|0;if(c>>>0>>0){continue}break u}break}c=i[e+20>>2];n=i[e+16>>2];j=c-n|0;m=j>>2;i[f+i[e>>2]>>2]=m;d=i[e+24>>2];if(c>>>0>>0){i[c>>2]=b;i[e+20>>2]=c+4;break t}h=m+1|0;if(h>>>0>=1073741824){break i}f=d-n|0;d=f>>1;f=f>>2>>>0<536870911?d>>>0>>0?h:d:1073741823;c=0;v:{if(!f){break v}if(f>>>0>=1073741824){break h}c=lk(f<<2)}d=c+(m<<2)|0;i[d>>2]=b;f=c+(f<<2)|0;d=d+4|0;if((j|0)>=1){Yk(c,n,j)}i[e+24>>2]=f;i[e+20>>2]=d;i[e+16>>2]=c;if(!n){break t}Wk(n);l=i[a+8>>2];break t}c=i[e>>2];i[c+(b<<2)>>2]=i[c+(d<<2)>>2]}if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}c=i[i[l+12>>2]+(c<<2)>>2];if((c|0)==-1){break m}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}d=b;if((c|0)!=(g|0)){continue}break}}q=q+1|0;c=i[l+24>>2];if((q|0)>2]-c>>2){continue}break}break g}Ak();x()}Ak();x()}va(8944);x()}Ak();x()}va(8944);x()}q=i[a+4>>2];k=i[q+44>>2];d=i[k+100>>2];if((d|0)!=i[k+96>>2]){n=e+40|0;c=0;while(1){g=c+1|0;j=o(c,12);b=j+i[e>>2]|0;m=i[b+8>>2];h=i[b+4>>2];f=i[b>>2];b=i[k+96>>2];d=(d-b|0)/12|0;if(d>>>0<=c>>>0){i[n>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;b=k+96|0;Ae(b,g-d|0,e+32|0);q=i[a+4>>2];b=i[b>>2]}b=b+j|0;i[b+8>>2]=m;i[b+4>>2]=h;i[b>>2]=f;c=g;k=i[q+44>>2];d=i[k+100>>2];if(c>>>0<(d-i[k+96>>2]|0)/12>>>0){continue}break}}i[i[q+4>>2]+80>>2]=i[e+20>>2]-i[e+16>>2]>>2;d=1}c=d;a=i[e>>2];if(a){i[e+4>>2]=a;Wk(a)}a=i[e+16>>2];if(!a){break b}i[e+20>>2]=a;Wk(a)}F=e+48|0;return c}function yg(a,b,c,d){var e=0,f=0,o=p(0),q=0,r=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(g[b|0]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(127)}b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(j[b|0]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(255)}b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(h[b>>1]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(32767)}b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(k[b>>1]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(65535)}b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(i[b>>2]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(4.656612873077393e-10)}b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(l[b>>2]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(2.3283064365386963e-10)}b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(+l[b>>2]+ +i[b+4>>2]*4294967296);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(1.0842021724855044e-19)}b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(+l[b>>2]+ +l[b+4>>2]*4294967296);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(5.421010862427522e-20)}b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}m[(f<<2)+d>>2]=m[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}m[(f<<2)+d>>2]=n[b>>3];b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){q=i[a>>2];e=i[q>>2];b=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;while(1){if(l[q+4>>2]<=b>>>0){break b}m[(f<<2)+d>>2]=j[b|0]?p(1):p(0);b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}Zk((e<<2)+d|0,0,c-e<<2)}return r}return 0}Zk((e<<2)+d|0,0,c-e<<2);return 1}function Gg(a,b,c,d){var e=0,f=0,l=0,o=0,r=0,s=0,t=p(0),u=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;l=i[e+4>>2];while(1){if(l>>>0<=b>>>0){break b}o=0;e=h[b>>1];if((e|0)<0){break c}h[(f<<1)+d>>1]=e;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}o=1;if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e+32768>>>0>65535){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e>>>0>32767){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];r=i[b>>2];s=r+32768|0;if(s>>>0<32768){e=e+1|0}if(!e&s>>>0>65535|e>>>0>0){break b}h[(f<<1)+d>>1]=r;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];r=i[b>>2];if(!e&r>>>0>32767|e>>>0>0){break b}h[(f<<1)+d>>1]=r;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}r=(f<<1)+d|0;t=m[b>>2];e:{if(p(q(t))>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}r=(f<<1)+d|0;u=n[b>>3];f:{if(q(u)<2147483648){e=~~u;break f}e=-2147483648}h[r>>1]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}Zk((e<<1)+d|0,0,c-e<<1)}return o}return 0}Zk((e<<1)+d|0,0,c-e<<1);return 1}function Ig(a,b,c,d){var e=0,f=0,l=0,o=0,q=0,r=p(0),s=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;l=i[e+4>>2];while(1){if(l>>>0<=b>>>0){break b}o=0;e=g[b|0];if((e|0)<0){break c}h[(f<<1)+d>>1]=e&255;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}o=1;if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;l=i[e+4>>2];while(1){if(l>>>0<=b>>>0){break b}o=0;e=h[b>>1];if((e|0)<0){break c}h[(f<<1)+d>>1]=e;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}o=1;if((e|0)>=(c|0)){break c}break a;case 3:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e>>>0>65535){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e>>>0>65535){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];q=i[b>>2];if(!e&q>>>0>65535|e>>>0>0){break b}h[(f<<1)+d>>1]=q;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];q=i[b>>2];if(!e&q>>>0>65535|e>>>0>0){break b}h[(f<<1)+d>>1]=q;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}q=(f<<1)+d|0;r=m[b>>2];e:{if(r=p(0)){e=~~r>>>0;break e}e=0}h[q>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}q=(f<<1)+d|0;s=n[b>>3];f:{if(s<4294967296&s>=0){e=~~s>>>0;break f}e=0}h[q>>1]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}Zk((e<<1)+d|0,0,c-e<<1)}return o}return 0}Zk((e<<1)+d|0,0,c-e<<1);return 1}function Kg(a,b,c,d){var e=0,f=0,l=0,o=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=h[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=g[a+24|0];if(((o|0)>(c|0)?c:o)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;e=i[e+4>>2];while(1){if(e>>>0<=b>>>0){break b}o=0;r=i[b>>2];if((r|0)<0){break c}i[(f<<2)+d>>2]=r;b=b+4|0;f=f+1|0;o=g[a+24|0];if((f|0)<((o|0)>(c|0)?c:o)<<24>>24){continue}break}}if((o|0)>=(c|0)){return 1}Zk((o<<2)+d|0,0,c-o<<2);return 1;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=i[b+4>>2];l=i[b>>2];if(l+ -2147483648>>>0<2147483648){e=e+1|0}if(e>>>0>0){break b}i[(f<<2)+d>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=i[b+4>>2];l=i[b>>2];if(!e&l>>>0>2147483647|e>>>0>0){break b}i[(f<<2)+d>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=(f<<2)+d|0;s=m[b>>2];e:{if(p(q(s))>2]=l;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=(f<<2)+d|0;t=n[b>>3];f:{if(q(t)<2147483648){l=~~t;break f}l=-2147483648}i[e>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}Zk((e<<2)+d|0,0,c-e<<2)}return o}return 0}Zk((e<<2)+d|0,0,c-e<<2);return 1}function zc(a,b,c,d){var e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;f=F-80|0;F=f;e=-1;h=-1;a:{if((b|0)==-1){break a}k=((b>>>0)%3|0?-1:2)+b|0;l=i[a+32>>2];p=b+1|0;b=(p>>>0)%3|0?p:b+ -2|0;if((b|0)!=-1){e=i[i[l>>2]+(b<<2)>>2]}if((k|0)==-1){break a}h=i[i[l>>2]+(k<<2)>>2]}k=i[a+36>>2];b=i[k>>2];b:{c:{d:{e:{k=i[k+4>>2]-b>>2;if(!(k>>>0<=e>>>0|k>>>0<=h>>>0)){f:{g:{u=i[b+(e<<2)>>2];w=(u|0)>=(d|0);if(w){break g}h=i[b+(h<<2)>>2];if((h|0)>=(d|0)){break g}b=h<<3;B=i[(b|4)+c>>2];e=u<<3;y=i[(e|4)+c>>2];C=i[b+c>>2];z=i[c+e>>2];if(!((C|0)!=(z|0)|(y|0)!=(B|0))){i[a+8>>2]=z;i[a+12>>2]=y;break f}b=i[i[a+4>>2]+(d<<2)>>2];i[f+72>>2]=0;i[f+76>>2]=0;e=f- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gc(e,b,g[e+24|0],f+56|0);b=i[i[a+4>>2]+(u<<2)>>2];i[f+48>>2]=0;i[f+52>>2]=0;i[f+40>>2]=0;i[f+44>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gc(e,b,g[e+24|0],f+32|0);b=i[i[a+4>>2]+(h<<2)>>2];i[f+24>>2]=0;i[f+28>>2]=0;i[f+16>>2]=0;i[f+20>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gc(e,b,g[e+24|0],f+8|0);A=i[f+44>>2];e=i[f+16>>2];b=i[f+40>>2];p=i[f+20>>2]-(A+(e>>>0>>0)|0)|0;h=e-b|0;e=hl(h,p,h,p);q=H;n=e;E=i[f+36>>2];e=i[f+8>>2];r=i[f+32>>2];k=r;s=i[f+12>>2]-(E+(e>>>0>>0)|0)|0;k=e-k|0;o=hl(k,s,k,s);l=n+o|0;e=H+q|0;e=l>>>0>>0?e+1|0:e;G=l;m=i[f+52>>2];l=i[f+24>>2];n=i[f+48>>2];o=n;q=i[f+28>>2]-(m+(l>>>0>>0)|0)|0;l=l-o|0;v=hl(l,q,l,q);o=G+v|0;e=H+e|0;t=o;o=o>>>0>>0?e+1|0:e;if(!(t|o)){break g}c=i[f+64>>2];u=c-b|0;I=i[f+68>>2]-((c>>>0>>0)+A|0)|0;b=hl(u,I,h,p);c=H;e=b;b=i[f+56>>2];w=b-r|0;J=i[f+60>>2]-((b>>>0>>0)+E|0)|0;d=hl(w,J,k,s);b=e+d|0;e=H+c|0;e=b>>>0>>0?e+1|0:e;d=b;b=i[f+72>>2];A=b-n|0;K=i[f+76>>2]-((b>>>0>>0)+m|0)|0;c=hl(A,K,l,q);b=d+c|0;e=H+e|0;D=b;G=b;r=b>>>0>>0?e+1|0:e;L=r;e=q;b=e>>31;c=e>>31;e=b+e|0;n=c+l|0;if(n>>>0>>0){e=e+1|0}c=c^n;b=b^e;M=b;n=c;E=b;d=p;b=d>>31;d=d>>31;m=b;b=p+b|0;e=d;v=e+h|0;if(v>>>0>>0){b=b+1|0}d=d^v;b=b^m;N=b;v=b;e=s;b=e>>31;e=e>>31;P=n;Q=d;m=b+s|0;n=e+k|0;if(n>>>0>>0){m=m+1|0}e=e^n;d=e>>>0>>0;b=b^m;d=(b|0)<(N|0)?1:(b|0)<=(N|0)?d:0;e=d?Q:e;c=e>>>0>>0;b=d?v:b;c=(b|0)<(M|0)?1:(b|0)<=(M|0)?c:0;c=G>>>0>jl(-1,2147483647,c?P:e,c?E:b)>>>0;b=H;if((L|0)>(b|0)?1:(L|0)>=(b|0)?c:0){break b}d=1;b=0;c=il(hl(h,p,D,r),H,t,o);e=I-(H+(u>>>0>>0)|0)|0;c=u-c|0;c=hl(c,e,c,e);h=H;n=c;c=il(hl(k,s,D,r),H,t,o);e=J-(H+(w>>>0>>0)|0)|0;c=w-c|0;e=hl(c,e,c,e);c=n+e|0;m=H+h|0;m=c>>>0>>0?m+1|0:m;k=c;c=il(hl(D,r,l,q),H,t,o);e=K-(H+(A>>>0>>0)|0)|0;c=A-c|0;h=hl(c,e,c,e);c=k+h|0;e=H+m|0;h=hl(c,c>>>0>>0?e+1|0:e,t,o);c=H;k=c;if(!c&h>>>0<=1|c>>>0<0){break e}l=h;c=k;while(1){e=b<<1|d>>>31;d=d<<1;b=e;p=!c&l>>>0>7|c>>>0>0;l=(c&3)<<30|l>>>2;c=c>>>2|0;if(p){continue}break}break d}e=a;if(w){if((d|0)<=0){i[a+8>>2]=0;i[a+12>>2]=0;break f}b=(d<<1)+ -2|0}else{b=u<<1}b=(b<<2)+c|0;i[e+8>>2]=i[b>>2];i[a+12>>2]=i[b+4>>2]}O=1;break b}Bk();x()}b=k;d=h;if(d-1|0){break c}}while(1){c=jl(h,k,d,b)+d|0;e=b+H|0;e=c>>>0>>0?e+1|0:e;d=(e&1)<<31|c>>>1;b=e>>>1|0;c=hl(d,b,d,b);e=H;if((k|0)==(e|0)&c>>>0>h>>>0|e>>>0>k>>>0){continue}break}}k=i[a+20>>2];if(k){l=k+ -1|0;p=i[i[a+16>>2]+(l>>>3&536870908)>>2];i[a+20>>2]=l;c=B;e=y;s=c-e|0;q=e>>31;y=(c>>31)-(q+(c>>>0>>0)|0)|0;c=hl(D,r,s,y);h=H;e=hl(e,q,t,o);c=e+c|0;m=H+h|0;m=c>>>0>>0?m+1|0:m;n=c;c=C;h=z;e=h;q=c-e|0;B=e>>31;z=(c>>31)-(B+(c>>>0>>0)|0)|0;c=hl(d,b,q,z);e=c;c=p>>>l&1;C=c?0-e|0:e;l=n+C|0;n=H;e=(c?0-(n+(0>>0)|0)|0:n)+m|0;R=a,S=il(l,l>>>0>>0?e+1|0:e,t,o),i[R+12>>2]=S;e=hl(D,r,q,z);l=H;n=a;a=e;e=hl(h,B,t,o);a=a+e|0;m=H+l|0;m=a>>>0>>0?m+1|0:m;e=a;a=hl(d,b,s,y);d=c?a:0-a|0;b=e+d|0;e=H;a=(c?e:0-((0>>0)+e|0)|0)+m|0;R=n,S=il(b,b>>>0>>0?a+1|0:a,t,o),i[R+8>>2]=S}O=(k|0)!=0}F=f+80|0;return O}function fc(a,b,c,d){var e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;f=F-80|0;F=f;h=-1;e=-1;a:{if((b|0)==-1){break a}e=b+1|0;h=(e>>>0)%3|0?e:b+ -2|0;e=b+ -1|0;if((b>>>0)%3|0){break a}e=b+2|0}l=i[a+36>>2];b=i[l>>2];b:{c:{d:{e:{f:{l=i[l+4>>2]-b>>2;m=h<<2;h=i[i[a+32>>2]+28>>2];k=i[m+h>>2];if(l>>>0<=k>>>0){break f}e=i[h+(e<<2)>>2];if(l>>>0<=e>>>0){break f}g:{h:{u=i[b+(k<<2)>>2];w=(u|0)>=(d|0);if(w){break h}h=i[b+(e<<2)>>2];if((h|0)>=(d|0)){break h}b=h<<3;B=i[(b|4)+c>>2];e=u<<3;y=i[(e|4)+c>>2];C=i[b+c>>2];z=i[c+e>>2];if(!((C|0)!=(z|0)|(y|0)!=(B|0))){i[a+8>>2]=z;i[a+12>>2]=y;break g}b=i[i[a+4>>2]+(d<<2)>>2];i[f+72>>2]=0;i[f+76>>2]=0;e=f- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gc(e,b,g[e+24|0],f+56|0);b=i[i[a+4>>2]+(u<<2)>>2];i[f+48>>2]=0;i[f+52>>2]=0;i[f+40>>2]=0;i[f+44>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gc(e,b,g[e+24|0],f+32|0);b=i[i[a+4>>2]+(h<<2)>>2];i[f+24>>2]=0;i[f+28>>2]=0;i[f+16>>2]=0;i[f+20>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gc(e,b,g[e+24|0],f+8|0);A=i[f+44>>2];e=i[f+16>>2];b=i[f+40>>2];q=i[f+20>>2]-(A+(e>>>0>>0)|0)|0;h=e-b|0;e=hl(h,q,h,q);p=H;m=e;E=i[f+36>>2];e=i[f+8>>2];r=i[f+32>>2];l=r;s=i[f+12>>2]-(E+(e>>>0>>0)|0)|0;l=e-l|0;o=hl(l,s,l,s);k=m+o|0;e=H+p|0;e=k>>>0>>0?e+1|0:e;G=k;n=i[f+52>>2];k=i[f+24>>2];m=i[f+48>>2];o=m;p=i[f+28>>2]-(n+(k>>>0>>0)|0)|0;k=k-o|0;v=hl(k,p,k,p);o=G+v|0;e=H+e|0;t=o;o=o>>>0>>0?e+1|0:e;if(!(t|o)){break h}c=i[f+64>>2];u=c-b|0;I=i[f+68>>2]-((c>>>0>>0)+A|0)|0;b=hl(u,I,h,q);c=H;e=b;b=i[f+56>>2];w=b-r|0;J=i[f+60>>2]-((b>>>0>>0)+E|0)|0;d=hl(w,J,l,s);b=e+d|0;e=H+c|0;e=b>>>0>>0?e+1|0:e;d=b;b=i[f+72>>2];A=b-m|0;K=i[f+76>>2]-((b>>>0>>0)+n|0)|0;c=hl(A,K,k,p);b=d+c|0;e=H+e|0;D=b;G=b;r=b>>>0>>0?e+1|0:e;L=r;e=p;b=e>>31;c=e>>31;e=b+e|0;m=c+k|0;if(m>>>0>>0){e=e+1|0}c=c^m;b=b^e;M=b;m=c;E=b;d=q;b=d>>31;d=d>>31;n=b;b=q+b|0;e=d;v=e+h|0;if(v>>>0>>0){b=b+1|0}d=d^v;b=b^n;N=b;v=b;e=s;b=e>>31;e=e>>31;P=m;Q=d;n=b+s|0;m=e+l|0;if(m>>>0>>0){n=n+1|0}e=e^m;d=e>>>0>>0;b=b^n;d=(b|0)<(N|0)?1:(b|0)<=(N|0)?d:0;e=d?Q:e;c=e>>>0>>0;b=d?v:b;c=(b|0)<(M|0)?1:(b|0)<=(M|0)?c:0;c=G>>>0>jl(-1,2147483647,c?P:e,c?E:b)>>>0;b=H;if((L|0)>(b|0)?1:(L|0)>=(b|0)?c:0){break b}d=1;b=0;c=il(hl(h,q,D,r),H,t,o);e=I-(H+(u>>>0>>0)|0)|0;c=u-c|0;c=hl(c,e,c,e);h=H;m=c;c=il(hl(l,s,D,r),H,t,o);e=J-(H+(w>>>0>>0)|0)|0;c=w-c|0;e=hl(c,e,c,e);c=m+e|0;n=H+h|0;n=c>>>0>>0?n+1|0:n;l=c;c=il(hl(D,r,k,p),H,t,o);e=K-(H+(A>>>0>>0)|0)|0;c=A-c|0;h=hl(c,e,c,e);c=l+h|0;e=H+n|0;h=hl(c,c>>>0>>0?e+1|0:e,t,o);c=H;l=c;if(!c&h>>>0<=1|c>>>0<0){break e}k=h;c=l;while(1){e=b<<1|d>>>31;d=d<<1;b=e;q=!c&k>>>0>7|c>>>0>0;k=(c&3)<<30|k>>>2;c=c>>>2|0;if(q){continue}break}break d}e=a;if(w){if((d|0)<=0){i[a+8>>2]=0;i[a+12>>2]=0;break g}b=(d<<1)+ -2|0}else{b=u<<1}b=(b<<2)+c|0;i[e+8>>2]=i[b>>2];i[a+12>>2]=i[b+4>>2]}O=1;break b}Bk();x()}b=l;d=h;if(d-1|0){break c}}while(1){c=jl(h,l,d,b)+d|0;e=b+H|0;e=c>>>0>>0?e+1|0:e;d=(e&1)<<31|c>>>1;b=e>>>1|0;c=hl(d,b,d,b);e=H;if((l|0)==(e|0)&c>>>0>h>>>0|e>>>0>l>>>0){continue}break}}l=i[a+20>>2];if(l){k=l+ -1|0;q=i[i[a+16>>2]+(k>>>3&536870908)>>2];i[a+20>>2]=k;c=B;e=y;s=c-e|0;p=e>>31;y=(c>>31)-(p+(c>>>0>>0)|0)|0;c=hl(D,r,s,y);h=H;e=hl(e,p,t,o);c=e+c|0;n=H+h|0;n=c>>>0>>0?n+1|0:n;m=c;c=C;h=z;e=h;p=c-e|0;B=e>>31;z=(c>>31)-(B+(c>>>0>>0)|0)|0;c=hl(d,b,p,z);e=c;c=q>>>k&1;C=c?0-e|0:e;k=m+C|0;m=H;e=(c?0-(m+(0>>0)|0)|0:m)+n|0;R=a,S=il(k,k>>>0>>0?e+1|0:e,t,o),i[R+12>>2]=S;e=hl(D,r,p,z);k=H;m=a;a=e;e=hl(h,B,t,o);a=a+e|0;n=H+k|0;n=a>>>0>>0?n+1|0:n;e=a;a=hl(d,b,s,y);d=c?a:0-a|0;b=e+d|0;e=H;a=(c?e:0-((0>>0)+e|0)|0)+n|0;R=m,S=il(b,b>>>0>>0?a+1|0:a,t,o),i[R+8>>2]=S}O=(l|0)!=0}F=f+80|0;return O}function Mg(a,b,c,d){var e=0,f=0,o=0,q=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=h[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}e=i[b>>2];if(l[b+4>>2]>0){break b}i[(f<<2)+d>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}e=i[b>>2];if(l[b+4>>2]>0){break b}i[(f<<2)+d>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}r=(f<<2)+d|0;s=m[b>>2];e:{if(s=p(0)){e=~~s>>>0;break e}e=0}i[r>>2]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}r=(f<<2)+d|0;t=n[b>>3];f:{if(t<4294967296&t>=0){e=~~t>>>0;break f}e=0}i[r>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+hl(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}Zk((e<<2)+d|0,0,c-e<<2)}return q}return 0}Zk((e<<2)+d|0,0,c-e<<2);return 1}function sf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=F-32|0;F=d;a:{if(!tf(1,d+28|0,i[a+32>>2])){break a}if(!tf(1,d+24|0,i[a+32>>2])){break a}r=i[d+28>>2];if(r>>>0>1431655765){break a}f=i[a+32>>2];e=f;h=i[e+8>>2];b=h;g=i[e+16>>2];m=b-g|0;c=i[e+12>>2];n=b>>>0>>0;b=i[e+20>>2];q=il(m,c-(n+b|0)|0,3,0);o=H;if((c|0)<(b|0)?1:(c|0)<=(b|0)?h>>>0<=g>>>0:0){break a}e=r;c=hl(e,0,3,0);h=H;u=i[d+24>>2];if(!h&c>>>0>>0|h>>>0<0|(!o&q>>>0>>0|o>>>0<0)){break a}h=j[g+i[f>>2]|0];e=b;o=g+1|0;if(o>>>0<1){e=e+1|0}c=f;i[c+16>>2]=o;i[c+20>>2]=e;b:{if(!h){if(!uf(a,r)){break a}break b}c:{if(u>>>0<=255){if(!r){break b}q=0;n=d+16|0;i[n>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;h=i[f+8>>2];c=i[f+12>>2];b=c;if((b|0)<(e|0)?1:(b|0)<=(e|0)?h>>>0<=o>>>0:0){break c}while(1){g=i[f>>2];s=j[g+o|0];b=e;m=o+1|0;if(m>>>0<1){b=b+1|0}p=f;i[f+16>>2]=m;i[f+20>>2]=b;i[d+8>>2]=s;if((c|0)<(b|0)?1:(c|0)<=(b|0)?h>>>0<=m>>>0:0){break c}s=j[g+m|0];b=e;m=o+2|0;if(m>>>0<2){b=b+1|0}i[f+16>>2]=m;i[p+20>>2]=b;i[d+12>>2]=s;if((c|0)<(b|0)?1:(c|0)<=(b|0)?h>>>0<=m>>>0:0){break c}b=j[g+m|0];c=o+3|0;if(c>>>0<3){e=e+1|0}i[f+16>>2]=c;i[f+20>>2]=e;i[d+16>>2]=b;vf(i[a+44>>2]+96|0,d+8|0);q=q+1|0;if((r|0)==(q|0)){break b}f=i[a+32>>2];b=f;o=i[b+16>>2];e=i[b+20>>2];i[n>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;h=i[b+8>>2];c=i[b+12>>2];b=c;if((b|0)>(e|0)?1:(b|0)>=(e|0)?h>>>0>o>>>0:0){continue}break}break c}if(u>>>0<=65535){if(!r){break b}q=0;t=d+16|0;i[t>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;p=i[f+12>>2];n=p;c=g+3|0;if(c>>>0<3){b=b+1|0}m=i[f+8>>2];h=c;c=b;if((n|0)<(b|0)?1:(n|0)<=(b|0)?m>>>0>>0:0){break c}while(1){n=i[f>>2];b=n+o|0;b=j[b|0]|j[b+1|0]<<8;i[f+16>>2]=h;i[f+20>>2]=c;i[d+8>>2]=b;c=p;b=e;g=o+4|0;if(g>>>0<4){b=b+1|0}s=g;g=b;if((c|0)<(b|0)?1:(c|0)<=(b|0)?m>>>0>>0:0){break c}b=h+n|0;b=j[b|0]|j[b+1|0]<<8;i[f+16>>2]=s;i[f+20>>2]=g;i[d+12>>2]=b;b=e;e=o+6|0;if(e>>>0<6){b=b+1|0}c=e;e=b;if((p|0)<(b|0)?1:(p|0)<=(b|0)?m>>>0>>0:0){break c}b=n+s|0;b=j[b|0]|j[b+1|0]<<8;i[f+16>>2]=c;i[f+20>>2]=e;i[d+16>>2]=b;vf(i[a+44>>2]+96|0,d+8|0);q=q+1|0;if((r|0)==(q|0)){break b}f=i[a+32>>2];b=f;o=i[b+16>>2];e=i[b+20>>2];i[t>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;g=i[b+12>>2];p=g;m=i[b+8>>2];n=m;b=e;c=o+2|0;if(c>>>0<2){b=b+1|0}h=c;c=b;if((g|0)>(b|0)?1:(g|0)>=(b|0)?n>>>0>=h>>>0:0){continue}break}break c}d:{if(l[i[a+44>>2]+80>>2]>2097151){break d}c=k[a+36>>1];if((c<<24|c<<8&16711680)>>>16>>>0<514){break d}if(!r){break b}e=d+16|0;i[e>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;if(!tf(1,d+4|0,f)){break c}while(1){i[d+8>>2]=i[d+4>>2];if(!tf(1,d+4|0,i[a+32>>2])){break c}i[d+12>>2]=i[d+4>>2];if(!tf(1,d+4|0,i[a+32>>2])){break c}i[d+16>>2]=i[d+4>>2];vf(i[a+44>>2]+96|0,d+8|0);p=p+1|0;if((r|0)==(p|0)){break b}b=i[a+32>>2];i[e>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;if(tf(1,d+4|0,b)){continue}break}break c}if(!r){break b}q=0;t=d+16|0;i[t>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;p=i[f+12>>2];n=p;c=g+5|0;if(c>>>0<5){b=b+1|0}m=i[f+8>>2];h=c;c=b;if((n|0)<(b|0)?1:(n|0)<=(b|0)?m>>>0>>0:0){break c}while(1){n=i[f>>2];b=n+o|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[f+16>>2]=h;i[f+20>>2]=c;i[d+8>>2]=b;c=p;b=e;g=o+8|0;if(g>>>0<8){b=b+1|0}s=g;g=b;if((c|0)<(b|0)?1:(c|0)<=(b|0)?m>>>0>>0:0){break c}b=h+n|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[f+16>>2]=s;i[f+20>>2]=g;i[d+12>>2]=b;b=o+12|0;if(b>>>0<12){e=e+1|0}c=b;b=e;if((p|0)<(b|0)?1:(p|0)<=(b|0)?m>>>0>>0:0){break c}e=n+s|0;e=j[e|0]|j[e+1|0]<<8|(j[e+2|0]<<16|j[e+3|0]<<24);i[f+16>>2]=c;i[f+20>>2]=b;i[d+16>>2]=e;vf(i[a+44>>2]+96|0,d+8|0);q=q+1|0;if((r|0)==(q|0)){break b}f=i[a+32>>2];b=f;o=i[b+16>>2];e=i[b+20>>2];i[t>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;g=i[b+12>>2];p=g;m=i[b+8>>2];n=m;b=e;c=o+4|0;if(c>>>0<4){b=b+1|0}h=c;c=b;if((g|0)>(b|0)?1:(g|0)>=(b|0)?n>>>0>=h>>>0:0){continue}break}}p=0;break a}i[i[a+4>>2]+80>>2]=u;p=1}F=d+32|0;return p|0}function De(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;h=F+ -64|0;F=h;i[a+132>>2]=0;if(i[a+148>>2]){b=i[a+144>>2];if(b){while(1){c=i[b>>2];Wk(b);b=c;if(b){continue}break}}i[a+144>>2]=0;c=i[a+140>>2];if(c){b=0;while(1){i[i[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;if((c|0)!=(b|0)){continue}break}}i[a+148>>2]=0}a:{b:{c:{if(!oe(1,h+60|0,i[i[a+4>>2]+32>>2])){break c}i[a+156>>2]=i[h+60>>2];if(!oe(1,h+56|0,i[i[a+4>>2]+32>>2])){break c}f=i[h+56>>2];if(f>>>0>1431655765|l[a+156>>2]>o(f,3)>>>0){break c}b=i[i[a+4>>2]+32>>2];m=i[b+16>>2];e=i[b+12>>2];c=i[b+20>>2];if((e|0)<(c|0)?1:(e|0)<=(c|0)?l[b+8>>2]<=m>>>0:0){break c}n=j[m+i[b>>2]|0];m=m+1|0;if(m>>>0<1){c=c+1|0}i[b+16>>2]=m;i[b+20>>2]=c;if(!oe(1,h+52|0,b)){break c}p=i[h+52>>2];if(f>>>0

>>0|f>>>0>p+((p>>>0)/3|0)>>>0){break c}if(!oe(1,h+48|0,i[i[a+4>>2]+32>>2])){break c}r=i[h+48>>2];if(r>>>0>p>>>0){break c}i[a+28>>2]=i[a+24>>2];c=lk(88);Mi(c);b=i[a+8>>2];i[a+8>>2]=c;m=a+8|0;if(b){pe(m,b);if(!i[m>>2]){break c}}b=i[a+160>>2];i[a+164>>2]=b;d:{if(i[a+168>>2]-b>>2>>>0>=f>>>0){break d}if(f>>>0>=1073741824){break a}c=f<<2;d=lk(c);i[a+164>>2]=d;i[a+160>>2]=d;i[a+168>>2]=c+d;if(!b){break d}Wk(b)}b=i[a+172>>2];i[a+176>>2]=b;e:{if(i[a+180>>2]-b>>2>>>0>=f>>>0){break e}if(f>>>0>=1073741824){break b}c=f<<2;d=lk(c);i[a+176>>2]=d;i[a+172>>2]=d;i[a+180>>2]=c+d;if(!b){break e}Wk(b)}i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+40>>2]=i[a+36>>2];i[a- -64>>2]=0;i[a+52>>2]=i[a+48>>2];i[a+76>>2]=i[a+72>>2];q=a+216|0;d=i[a+216>>2];e=d;c=i[a+220>>2];if((d|0)!=(c|0)){while(1){b=i[c+ -12>>2];if(b){i[c+ -8>>2]=b;Wk(b)}b=i[c+ -28>>2];if(b){i[c+ -24>>2]=b;Wk(b)}b=c+ -144|0;e=i[c+ -40>>2];if(e){i[c+ -36>>2]=e;Wk(e)}qe(c+ -140|0);c=b;if((d|0)!=(b|0)){continue}break}e=i[q>>2]}i[a+220>>2]=d;b=(d-e|0)/144|0;f:{if(b>>>0>>0){re(q,n-b|0);break f}if(b>>>0<=n>>>0){break f}c=o(n,144)+e|0;if((c|0)!=(d|0)){while(1){b=i[d+ -12>>2];if(b){i[d+ -8>>2]=b;Wk(b)}b=i[d+ -28>>2];if(b){i[d+ -24>>2]=b;Wk(b)}b=d+ -144|0;e=i[d+ -40>>2];if(e){i[d+ -36>>2]=e;Wk(e)}qe(d+ -140|0);d=b;if((b|0)!=(c|0)){continue}break}}i[a+220>>2]=c}d=0;if(!Wi(i[a+8>>2],f,r+i[a+156>>2]|0)){break c}b=i[a+156>>2];g[h+8|0]=1;ie(a+120|0,b+r|0,h+8|0);if((se(a,i[i[a+4>>2]+32>>2])|0)==-1){break c}i[a+376>>2]=a;f=a+232|0;b=i[(I[i[i[a>>2]+32>>2]](a)|0)+32>>2];s=i[b>>2]+i[b+16>>2]|0;e=i[(I[i[i[a>>2]+32>>2]](a)|0)+32>>2];b=i[e+8>>2];c=i[e+16>>2];Rf(f,s,b-c|0,k[i[(I[i[i[a>>2]+32>>2]](a)|0)+32>>2]+38>>1]);t=a,u=I[i[i[a>>2]+36>>2]](a)|0,i[t+380>>2]=u;i[a+372>>2]=n;i[a+384>>2]=r+i[a+156>>2];b=Pf(h+8|0);g:{if(!Ee(f,b)){break g}p=Fe(a,p);if((p|0)==-1){break g}e=i[i[a+4>>2]+32>>2];c=i[b+16>>2];n=c+i[b>>2]|0;b=i[b+8>>2];Rf(e,n,b-c|0,k[e+38>>1]);h:{if(i[a+220>>2]==i[a+216>>2]){break h}b=i[m>>2];if(i[b+4>>2]==i[b>>2]){break h}b=0;while(1){if(ve(a,b)){b=b+3|0;c=i[m>>2];if(b>>>0>2]-i[c>>2]>>2>>>0){continue}break h}break}break g}if(j[a+308|0]){Uf(a+272|0)}b=i[a+216>>2];if((b|0)!=i[a+220>>2]){e=0;while(1){d=o(e,144);ej((d+b|0)+4|0,i[m>>2]);b=i[q>>2];c=b+d|0;f=i[c+132>>2];n=i[c+136>>2];if((f|0)!=(n|0)){gj(c+4|0,i[f>>2]);b=f+4|0;if((n|0)!=(b|0)){while(1){gj((d+i[q>>2]|0)+4|0,i[b>>2]);b=b+4|0;if((n|0)!=(b|0)){continue}break}}b=i[q>>2]}fj((b+d|0)+4|0);e=e+1|0;b=i[a+216>>2];if(e>>>0<(i[a+220>>2]-b|0)/144>>>0){continue}break}}b=i[a+8>>2];we(a+184|0,i[b+28>>2]-i[b+24>>2]>>2);c=i[a+216>>2];if((c|0)!=i[a+220>>2]){b=0;while(1){d=o(b,144)+c|0;c=i[d+60>>2]-i[d+56>>2]>>2;e=d+104|0;d=i[a+8>>2];d=i[d+28>>2]-i[d+24>>2]>>2;we(e,(c|0)<(d|0)?d:c);b=b+1|0;c=i[a+216>>2];if(b>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}d=xe(a,p)}}F=h- -64|0;return d|0}va(8944);x()}va(8944);x()}function Ye(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;a:{b:{c:{d:{e:{f:{g:{if(i[a+92>>2]==i[a+88>>2]){break g}d=i[a+52>>2];h:{if((d|0)!=i[a+56>>2]){i[d>>2]=b;i[a+52>>2]=d+4;break h}h=i[a+48>>2];g=d-h|0;f=g>>2;c=f+1|0;if(c>>>0>=1073741824){break a}e=g>>1;c=f>>>0<536870911?e>>>0>>0?c:e:1073741823;d=0;i:{if(!c){break i}if(c>>>0>=1073741824){break b}d=lk(c<<2)}e=d+(f<<2)|0;i[e>>2]=b;c=d+(c<<2)|0;e=e+4|0;if((g|0)>=1){Yk(d,h,g)}i[a+56>>2]=c;i[a+52>>2]=e;i[a+48>>2]=d;if(!h){break h}Wk(h)}i[a+84>>2]=0;e=-1;d=-1;j:{if((b|0)==-1){break j}f=i[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)!=-1){e=i[i[f>>2]+(c<<2)>>2]}c=((b>>>0)%3|0?-1:2)+b|0;if((c|0)==-1){break j}d=i[i[f>>2]+(c<<2)>>2]}c=i[a+36>>2];h=c+(e>>>3&536870908)|0;g=i[h>>2];f=1<>2]=f|g;f=a+8|0;if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0}else{c=-1}Ze(f,e,c);c=i[a+36>>2]}f=(d>>>3&536870908)+c|0;c=i[f>>2];e=1<>2]=c|e;c=a+8|0;e=-1;k:{if((b|0)==-1){break k}e=b+ -1|0;if((b>>>0)%3|0){break k}e=b+2|0}Ze(c,d,e)}e=-1;e=(b|0)!=-1?i[i[i[a+4>>2]>>2]+(b<<2)>>2]:e;f=i[a+36>>2]+(e>>>3&536870908)|0;c=i[f>>2];d=1<>2]=c|d;Ze(a+8|0,e,b)}c=i[a+84>>2];if((c|0)>2){break g}q=a+8|0;while(1){b=o(c,12)+a|0;e=b+52|0;d=i[e>>2];if((d|0)==i[b+48>>2]){c=c+1|0;if((c|0)!=3){continue}break g}d=d+ -4|0;b=i[d>>2];i[e>>2]=d;i[a+84>>2]=c;if((b|0)==-1){break g}e=i[a+24>>2];d=(b>>>0)/3|0;l:{if(i[e+(d>>>3&268435452)>>2]>>>d&1){break l}m:{while(1){g=(b>>>0)/3|0;d=(g>>>3&268435452)+e|0;i[d>>2]=i[d>>2]|1<>2]>>2]+(b<<2)>>2]:e;f=i[a+36>>2]+(e>>>3&536870908)|0;c=i[f>>2];d=1<>2]=c|d;Ze(q,e,b)}if((b|0)==-1){break m}h=i[a+4>>2];d=-1;e=-1;c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)!=-1){e=i[i[h+12>>2]+(c<<2)>>2]}b=(b-o(g,3)|0?-1:2)+b|0;if((b|0)!=-1){d=i[i[h+12>>2]+(b<<2)>>2]}g=(d|0)==-1;f=(d>>>0)/3|0;c=(e>>>0)/3|0;n:{o:{p:{q:{b=(e|0)==-1;if(!b){b=b?-1:c;b=i[i[a+24>>2]+(b>>>3&536870908)>>2]&1<>2]+(b>>>3&536870908)>>2]>>>b&1){break r}b=0;c=i[i[h>>2]+(d<<2)>>2];if(!(i[i[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){b=i[a+88>>2]+(c<<2)|0;c=i[b>>2];i[b>>2]=c+1;b=(c|0)<1?2:1}if(!(!p|(b|0)>i[a+84>>2])){b=d;e=i[a+24>>2];continue}c=o(b,12)+a|0;k=c+52|0;f=i[k>>2];m=c+56|0;s:{if((f|0)!=i[m>>2]){i[f>>2]=d;i[k>>2]=f+4;break s}h=c+48|0;n=i[h>>2];j=f-n|0;l=j>>2;g=l+1|0;if(g>>>0>=1073741824){break f}f=j>>1;f=l>>>0<536870911?f>>>0>>0?g:f:1073741823;c=0;t:{if(!f){break t}if(f>>>0>=1073741824){break e}c=lk(f<<2)}g=c+(l<<2)|0;i[g>>2]=d;f=c+(f<<2)|0;d=g+4|0;if((j|0)>=1){Yk(c,n,j)}i[h>>2]=c;i[k>>2]=d;i[m>>2]=f;if(!n){break s}Wk(n)}if(i[a+84>>2]<=(b|0)){break r}i[a+84>>2]=b}if(p){break m}b=-1;if((e|0)==-1){break n}}b=i[i[i[a+4>>2]>>2]+(e<<2)>>2]}d=0;if(!(i[i[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=i[a+88>>2]+(b<<2)|0;d=i[b>>2];i[b>>2]=d+1;d=(d|0)<1?2:1}if((d|0)<=i[a+84>>2]){b=e;e=i[a+24>>2];continue}break}b=o(d,12)+a|0;l=b+52|0;c=i[l>>2];h=b+56|0;u:{if((c|0)!=i[h>>2]){i[c>>2]=e;i[l>>2]=c+4;break u}g=b+48|0;j=i[g>>2];k=c-j|0;m=k>>2;f=m+1|0;if(f>>>0>=1073741824){break d}c=k>>1;c=m>>>0<536870911?c>>>0>>0?f:c:1073741823;b=0;v:{if(!c){break v}if(c>>>0>=1073741824){break c}b=lk(c<<2)}f=b+(m<<2)|0;i[f>>2]=e;c=b+(c<<2)|0;e=f+4|0;if((k|0)>=1){Yk(b,j,k)}i[g>>2]=b;i[l>>2]=e;i[h>>2]=c;if(!j){break u}Wk(j)}c=i[a+84>>2];if((c|0)<=(d|0)){break l}i[a+84>>2]=d;c=d;break l}c=i[a+84>>2]}if((c|0)<3){continue}break}}return 1}Ak();x()}va(8944);x()}Ak();x()}va(8944);x()}va(8944);x()}Ak();x()}function fe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=F-80|0;F=h;a:{b:{t=i[a+4>>2];c=i[t+32>>2];u=i[c+8>>2];m=i[c+16>>2];r=i[c+12>>2];e=r;f=i[c+20>>2];c:{if((e|0)<(f|0)?1:(e|0)<=(f|0)?u>>>0<=m>>>0:0){break c}v=i[c>>2];n=j[v+m|0];e=f;p=m+1|0;if(p>>>0<1){e=e+1|0}l=c;i[c+16>>2]=p;i[c+20>>2]=e;if((r|0)<(e|0)?1:(r|0)<=(e|0)?u>>>0<=p>>>0:0){break c}p=j[p+v|0];e=f;s=m+2|0;if(s>>>0<2){e=e+1|0}i[c+16>>2]=s;i[l+20>>2]=e;l=n<<24>>24;d:{if((l|0)>=0){q=i[a+216>>2];if((i[a+220>>2]-q|0)/144>>>0<=n>>>0){break c}q=q+o(n,144)|0;if(i[q>>2]<=-1){break d}break c}if(i[a+212>>2]>-1){break c}q=a+212|0}i[q>>2]=b;e:{f:{q=k[t+36>>1];g:{if((q<<24|q<<8&16711680)>>>16>>>0>=258){if((r|0)<(e|0)?1:(r|0)<=(e|0)?u>>>0<=s>>>0:0){break c}e=j[s+v|0];m=m+3|0;if(m>>>0<3){f=f+1|0}i[c+16>>2]=m;i[c+20>>2]=f;if(e>>>0>1){break c}if(!p){break g}if((e|0)==1){break c}break f}if(p){break f}e=0}if((l|0)<=-1){c=a+184|0}else{c=i[a+216>>2]+o(n,144)|0;g[c+100|0]=0;c=c+104|0}h:{i:{switch(e|0){case 0:ge(h+16|0,a,c);break h;case 1:break i;default:break c}}he(h+16|0,a,c)}c=i[h+16>>2];if(!c){break c}break e}if((l|0)<0){break c}e=i[t+44>>2];f=i[a+216>>2];c=lk(80);i[c+12>>2]=0;i[c+16>>2]=0;i[c>>2]=9812;i[c+4>>2]=0;i[c+76>>2]=0;i[c+68>>2]=e;i[c+64>>2]=0;i[c+56>>2]=0;i[c+60>>2]=0;i[c+8>>2]=8680;l=c+20|0;d=l;i[d>>2]=0;i[d+4>>2]=0;r=c+28|0;d=r;i[d>>2]=0;i[d+4>>2]=0;i[c+36>>2]=0;i[c+40>>2]=0;m=c+44|0;d=m;i[d>>2]=0;i[d+4>>2]=0;i[c+52>>2]=0;d=f+o(n,144)|0;n=d+104|0;i[c+72>>2]=n;t=h+52|0;f=t;i[f>>2]=0;i[f+4>>2]=0;u=h+44|0;f=u;i[f>>2]=0;i[f+4>>2]=0;v=h+36|0;f=v;i[f>>2]=0;i[f+4>>2]=0;f=h+28|0;i[f>>2]=0;i[f+4>>2]=0;i[h+68>>2]=0;i[h+72>>2]=0;i[h+60>>2]=0;i[h+64>>2]=0;i[h+20>>2]=0;i[h+24>>2]=0;i[h+16>>2]=8680;p=d+4|0;i[h+20>>2]=p;d=i[d+68>>2];s=i[d>>2];d=i[d+4>>2];g[h+79|0]=0;ie(h+40|0,(d-s>>2>>>0)/3|0,h+79|0);d=i[h+20>>2];s=i[d+56>>2];d=i[d+52>>2];g[h+79|0]=0;ie(t,s-d>>2,h+79|0);i[v>>2]=c;i[h+32>>2]=e;i[f>>2]=n;i[h+24>>2]=p;i[r>>2]=c;e=i[f+4>>2];i[l>>2]=i[f>>2];i[l+4>>2]=e;f=i[h+24>>2];i[c+12>>2]=i[h+20>>2];i[c+16>>2]=f;f=c;d=i[u>>2];if(d){e=c+32|0;j:{if(d>>>0<=i[c+40>>2]<<5>>>0){l=d+ -1>>>5|0;d=i[e>>2];break j}e=i[e>>2];if(e){Wk(e);i[c+40>>2]=0;i[c+32>>2]=0;i[c+36>>2]=0;d=i[h+44>>2]}if((d|0)<=-1){break b}l=d+ -1>>>5|0;e=l+1|0;d=lk(e<<2);i[c+40>>2]=e;i[c+36>>2]=0;i[c+32>>2]=d}_k(d,i[h+40>>2],(l<<2)+4|0);d=i[h+44>>2]}else{d=0}i[f+36>>2]=d;f=c;d=i[h+56>>2];if(d){k:{if(d>>>0<=i[c+52>>2]<<5>>>0){e=d+ -1>>>5|0;d=i[m>>2];break k}e=i[m>>2];if(e){Wk(e);i[c+52>>2]=0;i[c+44>>2]=0;i[c+48>>2]=0;d=i[h+56>>2]}if((d|0)<=-1){break a}e=d+ -1>>>5|0;l=e+1|0;d=lk(l<<2);i[c+52>>2]=l;i[c+48>>2]=0;i[c+44>>2]=d}_k(d,i[h+52>>2],(e<<2)+4|0);d=i[h+56>>2]}else{d=0}i[f+48>>2]=d;Ga(c+56|0,i[h+64>>2],i[h+68>>2]);i[h+16>>2]=8680;f=i[h+64>>2];if(f){i[h+68>>2]=f;Wk(f)}i[h+16>>2]=8932;f=i[h+52>>2];if(f){Wk(f)}f=i[h+40>>2];if(!f){break e}Wk(f)}f=lk(64);i[h+8>>2]=c;hb(f,h+8|0);c=i[h+8>>2];i[h+8>>2]=0;if(c){I[i[i[c>>2]+4>>2]](c)}if((b|0)>=0){a=i[a+4>>2];d=a+8|0;c=i[a+12>>2];n=i[a+8>>2];e=c-n>>2;l:{if((e|0)>(b|0)){break l}l=b+1|0;if(e>>>0<=b>>>0){je(d,l-e|0);break l}if(l>>>0>=e>>>0){break l}l=n+(l<<2)|0;if((l|0)!=(c|0)){while(1){c=c+ -4|0;e=i[c>>2];i[c>>2]=0;if(e){I[i[i[e>>2]+4>>2]](e)}if((c|0)!=(l|0)){continue}break}}i[a+12>>2]=l}b=i[d>>2]+(b<<2)|0;a=i[b>>2];i[b>>2]=f;d=1;if(!a){break c}I[i[i[a>>2]+4>>2]](a);break c}I[i[i[f>>2]+4>>2]](f);d=0}F=h+80|0;return d|0}Ak();x()}Ak();x()}function Dc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0;f=F-96|0;F=f;e=i[a+16>>2];g[f+92|0]=1;i[f+88>>2]=b;i[f+84>>2]=b;i[f+80>>2]=e;d=-1;d=(b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:d;h=i[a+20>>2];e=i[h>>2];a:{b:{if(i[h+4>>2]-e>>2>>>0>d>>>0){e=i[i[a+8>>2]+(i[e+(d<<2)>>2]<<2)>>2];d=i[a+4>>2];if(!j[d+84|0]){e=i[i[d+68>>2]+(e<<2)>>2]}i[f+72>>2]=0;i[f+76>>2]=0;h=f- -64|0;i[h>>2]=0;i[h+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;gc(d,e,g[d+24|0],f+56|0);if((b|0)!=-1){d=b+1|0;h=(d>>>0)%3|0?d:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;n=f+48|0;o=f+40|0;while(1){e=h;d=m;c:{if(!i[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b+ -2|0;d=b+ -1|0;if((b>>>0)%3|0){break c}d=b+2|0}b=-1;b=(e|0)!=-1?i[i[i[a+16>>2]>>2]+(e<<2)>>2]:b;k=i[a+20>>2];e=i[k>>2];if(i[k+4>>2]-e>>2>>>0<=b>>>0){break b}e=i[i[a+8>>2]+(i[e+(b<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}i[n>>2]=0;i[n+4>>2]=0;i[o>>2]=0;i[o+4>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;gc(b,e,g[b+24|0],f+32|0);b=-1;b=(d|0)!=-1?i[i[i[a+16>>2]>>2]+(d<<2)>>2]:b;e=i[a+20>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0<=b>>>0){break a}d=i[i[a+8>>2]+(i[d+(b<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;k=f+16|0;i[k>>2]=0;i[k+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;gc(b,d,g[b+24|0],f+8|0);d=i[f+8>>2];b=i[f+56>>2];s=d-b|0;y=i[f+60>>2];t=i[f+12>>2]-(y+(d>>>0>>0)|0)|0;z=i[f+40>>2];d=i[f+64>>2];D=z-d|0;A=i[f+68>>2];z=i[f+44>>2]-(A+(z>>>0>>0)|0)|0;B=hl(s,t,D,z);C=l-B|0;u=u-(H+(l>>>0>>0)|0)|0;l=i[k>>2];B=l-d|0;k=i[k+4>>2]-((l>>>0>>0)+A|0)|0;l=i[f+32>>2];A=l-b|0;y=i[f+36>>2]-((l>>>0>>0)+y|0)|0;d=hl(B,k,A,y);l=d+C|0;b=H+u|0;b=l>>>0>>0?b+1|0:b;u=b;E=p;w=s;G=t;b=i[f+48>>2];p=i[f+72>>2];d=p;t=b-d|0;s=i[f+76>>2];C=i[f+52>>2]-(s+(b>>>0>>0)|0)|0;w=hl(w,G,t,C);d=E+w|0;b=H+q|0;b=d>>>0>>0?b+1|0:b;q=i[e>>2];w=q-p|0;e=i[e+4>>2]-((q>>>0

>>0)+s|0)|0;q=hl(w,e,A,y);p=d-q|0;q=b-(H+(d>>>0>>0)|0)|0;b=hl(B,k,t,C);d=r-b|0;b=v-(H+(r>>>0>>0)|0)|0;v=hl(w,e,D,z);r=v+d|0;b=H+b|0;b=r>>>0>>0?b+1|0:b;v=b;Ec(f+80|0);b=i[f+88>>2];if((b|0)!=-1){continue}break}}d=v;b=d>>31;d=d>>31;h=b;b=v+b|0;m=d+r|0;if(m>>>0>>0){b=b+1|0}o=d^m;n=b^h;t=-1;e=2147483647;d=q;b=d>>31;d=d>>31;m=b;b=q+b|0;k=d+p|0;if(k>>>0>>0){b=b+1|0}d=d^k;b=b^m;h=b;m=d^-1;b=b^2147483647;d:{if(!i[a+28>>2]){if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break d}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}d=b;h=a;b=u;e=b>>31;o=b>>31;b=o+b|0;k=e+l|0;if(k>>>0>>0){b=b+1|0}e=e^k;m=b^o;n=e+h|0;b=n;h=m^2147483647;a=(h|0)==(d|0)&a>>>0>(e^-1)>>>0|d>>>0>h>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;l=il(l,u,a,b);p=il(p,q,a,b);r=il(r,v,a,b);break d}e:{if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break e}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}m=b;n=a;d=b;h=u;b=h>>31;h=h>>31;k=b;b=u+b|0;s=h+l|0;if(s>>>0>>0){b=b+1|0}h=h^s;b=b^k;o=b;b=b^2147483647;if((b|0)==(d|0)&n>>>0>(h^-1)>>>0|d>>>0>b>>>0){break e}b=m+o|0;d=a+h|0;if(d>>>0>>0){b=b+1|0}t=d;e=b;if(!b&d>>>0<536870913|b>>>0<0){break d}}a=(e&536870911)<<3|t>>>29;b=e>>>29|0;l=il(l,u,a,b);p=il(p,q,a,b);r=il(r,v,a,b)}i[c+8>>2]=l;i[c+4>>2]=p;i[c>>2]=r;F=f+96|0;return}Bk();x()}Bk();x()}Bk();x()}function oc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0;f=F-96|0;F=f;d=i[a+16>>2];g[f+92|0]=1;i[f+88>>2]=b;i[f+84>>2]=b;i[f+80>>2]=d;h=i[a+20>>2];e=i[h>>2];a:{b:{d=i[i[d+28>>2]+(b<<2)>>2];if(i[h+4>>2]-e>>2>>>0>d>>>0){d=i[i[a+8>>2]+(i[e+(d<<2)>>2]<<2)>>2];e=i[a+4>>2];if(!j[e+84|0]){d=i[i[e+68>>2]+(d<<2)>>2]}i[f+72>>2]=0;i[f+76>>2]=0;h=f- -64|0;i[h>>2]=0;i[h+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;gc(e,d,g[e+24|0],f+56|0);if((b|0)!=-1){d=b+1|0;h=(d>>>0)%3|0?d:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;n=f+48|0;o=f+40|0;while(1){e=h;d=m;c:{if(!i[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b+ -2|0;d=b+ -1|0;if((b>>>0)%3|0){break c}d=b+2|0}k=i[a+20>>2];b=i[k>>2];e=i[i[i[a+16>>2]+28>>2]+(e<<2)>>2];if(i[k+4>>2]-b>>2>>>0<=e>>>0){break b}e=i[i[a+8>>2]+(i[b+(e<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}i[n>>2]=0;i[n+4>>2]=0;i[o>>2]=0;i[o+4>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;gc(b,e,g[b+24|0],f+32|0);e=i[a+20>>2];b=i[e>>2];d=i[i[i[a+16>>2]+28>>2]+(d<<2)>>2];if(i[e+4>>2]-b>>2>>>0<=d>>>0){break a}e=i[i[a+8>>2]+(i[b+(d<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}k=f+24|0;d=k;i[d>>2]=0;i[d+4>>2]=0;r=f+16|0;d=r;i[d>>2]=0;i[d+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;gc(b,e,g[b+24|0],f+8|0);d=i[f+8>>2];b=i[f+56>>2];t=d-b|0;y=i[f+60>>2];e=i[f+12>>2]-(y+(d>>>0>>0)|0)|0;z=i[f+40>>2];d=i[f+64>>2];D=z-d|0;A=i[f+68>>2];z=i[f+44>>2]-(A+(z>>>0>>0)|0)|0;B=hl(t,e,D,z);C=l-B|0;u=u-(H+(l>>>0>>0)|0)|0;l=i[r>>2];B=l-d|0;r=i[r+4>>2]-((l>>>0>>0)+A|0)|0;l=i[f+32>>2];A=l-b|0;y=i[f+36>>2]-((l>>>0>>0)+y|0)|0;d=hl(B,r,A,y);l=d+C|0;b=H+u|0;b=l>>>0>>0?b+1|0:b;u=b;E=p;w=t;G=e;b=i[f+48>>2];p=i[f+72>>2];d=p;e=b-d|0;t=i[f+76>>2];C=i[f+52>>2]-(t+(b>>>0>>0)|0)|0;w=hl(w,G,e,C);d=E+w|0;b=H+q|0;b=d>>>0>>0?b+1|0:b;q=i[k>>2];w=q-p|0;k=i[k+4>>2]-((q>>>0

>>0)+t|0)|0;q=hl(w,k,A,y);p=d-q|0;q=b-(H+(d>>>0>>0)|0)|0;b=hl(B,r,e,C);d=s-b|0;b=v-(H+(s>>>0>>0)|0)|0;v=hl(w,k,D,z);s=v+d|0;b=H+b|0;b=s>>>0>>0?b+1|0:b;v=b;qc(f+80|0);b=i[f+88>>2];if((b|0)!=-1){continue}break}}d=v;b=d>>31;d=d>>31;h=b;b=v+b|0;m=d+s|0;if(m>>>0>>0){b=b+1|0}o=d^m;n=b^h;r=-1;e=2147483647;d=q;b=d>>31;d=d>>31;m=b;b=q+b|0;k=d+p|0;if(k>>>0>>0){b=b+1|0}d=d^k;b=b^m;h=b;m=d^-1;b=b^2147483647;d:{if(!i[a+28>>2]){if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break d}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}d=b;h=a;b=u;e=b>>31;o=b>>31;b=o+b|0;k=e+l|0;if(k>>>0>>0){b=b+1|0}e=e^k;m=b^o;n=e+h|0;b=n;h=m^2147483647;a=(h|0)==(d|0)&a>>>0>(e^-1)>>>0|d>>>0>h>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;l=il(l,u,a,b);p=il(p,q,a,b);s=il(s,v,a,b);break d}e:{if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break e}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}m=b;n=a;d=b;h=u;b=h>>31;h=h>>31;k=b;b=u+b|0;t=h+l|0;if(t>>>0>>0){b=b+1|0}h=h^t;b=b^k;o=b;b=b^2147483647;if((b|0)==(d|0)&n>>>0>(h^-1)>>>0|d>>>0>b>>>0){break e}b=m+o|0;d=a+h|0;if(d>>>0>>0){b=b+1|0}r=d;e=b;if(!b&d>>>0<536870913|b>>>0<0){break d}}a=(e&536870911)<<3|r>>>29;b=e>>>29|0;l=il(l,u,a,b);p=il(p,q,a,b);s=il(s,v,a,b)}i[c+8>>2]=l;i[c+4>>2]=p;i[c>>2]=s;F=f+96|0;return}Bk();x()}Bk();x()}Bk();x()}function Wk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;a:{if(!a){break a}d=a+ -8|0;b=i[a+ -4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=i[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=i[d+8>>2];b=b>>>3|0;c=i[d+12>>2];if((c|0)==(e|0)){j=12628,k=i[3157]&ll(b),i[j>>2]=k;break b}i[e+12>>2]=c;i[c+8>>2]=e;break b}h=i[d+24>>2];b=i[d+12>>2];c:{if((b|0)!=(d|0)){c=i[d+8>>2];i[c+12>>2]=b;i[b+8>>2]=c;break c}d:{e=d+20|0;c=i[e>>2];if(c){break d}e=d+16|0;c=i[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=i[e>>2];if(c){continue}e=b+16|0;c=i[b+16>>2];if(c){continue}break}i[g>>2]=0}if(!h){break b}e=i[d+28>>2];c=(e<<2)+12932|0;e:{if(i[c>>2]==(d|0)){i[c>>2]=b;if(b){break e}j=12632,k=i[3158]&ll(e),i[j>>2]=k;break b}i[h+(i[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}i[b+24>>2]=h;c=i[d+16>>2];if(c){i[b+16>>2]=c;i[c+24>>2]=b}c=i[d+20>>2];if(!c){break b}i[b+20>>2]=c;i[c+24>>2]=b;break b}b=i[f+4>>2];if((b&3)!=3){break b}i[3159]=a;i[f+4>>2]=b&-2;i[d+4>>2]=a|1;i[a+d>>2]=a;return}if(f>>>0<=d>>>0){break a}b=i[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if((f|0)==i[3163]){i[3163]=d;a=i[3160]+a|0;i[3160]=a;i[d+4>>2]=a|1;if(i[3162]!=(d|0)){break a}i[3159]=0;i[3162]=0;return}if((f|0)==i[3162]){i[3162]=d;a=i[3159]+a|0;i[3159]=a;i[d+4>>2]=a|1;i[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){c=i[f+8>>2];b=b>>>3|0;e=i[f+12>>2];if((c|0)==(e|0)){j=12628,k=i[3157]&ll(b),i[j>>2]=k;break g}i[c+12>>2]=e;i[e+8>>2]=c;break g}h=i[f+24>>2];b=i[f+12>>2];h:{if((f|0)!=(b|0)){c=i[f+8>>2];i[c+12>>2]=b;i[b+8>>2]=c;break h}i:{e=f+20|0;c=i[e>>2];if(c){break i}e=f+16|0;c=i[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=i[e>>2];if(c){continue}e=b+16|0;c=i[b+16>>2];if(c){continue}break}i[g>>2]=0}if(!h){break g}e=i[f+28>>2];c=(e<<2)+12932|0;j:{if((f|0)==i[c>>2]){i[c>>2]=b;if(b){break j}j=12632,k=i[3158]&ll(e),i[j>>2]=k;break g}i[h+((f|0)==i[h+16>>2]?16:20)>>2]=b;if(!b){break g}}i[b+24>>2]=h;c=i[f+16>>2];if(c){i[b+16>>2]=c;i[c+24>>2]=b}c=i[f+20>>2];if(!c){break g}i[b+20>>2]=c;i[c+24>>2]=b}i[d+4>>2]=a|1;i[a+d>>2]=a;if(i[3162]!=(d|0)){break f}i[3159]=a;return}i[f+4>>2]=b&-2;i[d+4>>2]=a|1;i[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+12668|0;c=i[3157];a=1<>2]}i[b+8>>2]=d;i[a+12>>2]=d;i[d+12>>2]=b;i[d+8>>2]=a;return}e=31;i[d+16>>2]=0;i[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}i[d+28>>2]=e;g=(e<<2)+12932|0;l:{m:{c=i[3158];b=1<>2]=d;i[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=i[g>>2];while(1){c=b;if((i[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=(c+(b&4)|0)+16|0;b=i[g>>2];if(b){continue}break}i[g>>2]=d;i[d+24>>2]=c}i[d+12>>2]=d;i[d+8>>2]=d;break l}a=i[c+8>>2];i[a+12>>2]=d;i[c+8>>2]=d;i[d+24>>2]=0;i[d+12>>2]=c;i[d+8>>2]=a}a=i[3165]+ -1|0;i[3165]=a;if(a){break a}d=13084;while(1){a=i[d>>2];d=a+8|0;if(a){continue}break}i[3165]=-1}}function fj(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;i[a+56>>2]=i[a+52>>2];i[a+44>>2]=i[a+40>>2];a:{b:{c:{e=i[a+64>>2];d=i[e+24>>2];if((d|0)!=i[e+28>>2]){n=a+40|0;o=a+52|0;while(1){e=c;j=i[(l<<2)+d>>2];d:{if((j|0)==-1){break d}c=i[a+56>>2];e:{if((c|0)!=i[a+60>>2]){i[c>>2]=e;i[a+56>>2]=c+4;break e}h=i[o>>2];g=c-h|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break c}b=g>>1;d=f>>>0<536870911?b>>>0>>0?d:b:1073741823;c=0;f:{if(!d){break f}if(d>>>0>=1073741824){break a}c=lk(d<<2)}b=c+(f<<2)|0;i[b>>2]=e;d=c+(d<<2)|0;b=b+4|0;if((g|0)>=1){Yk(c,h,g)}i[a+60>>2]=d;i[a+56>>2]=b;i[a+52>>2]=c;if(!h){break e}Wk(h)}g:{if(!(i[i[a+12>>2]+(l>>>3&536870908)>>2]>>>l&1)){break g}c=j+1|0;c=(c>>>0)%3|0?c:j+ -2|0;if((c|0)==-1|i[i[a>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[a+64>>2]+12>>2]+(c<<2)>>2];if((b|0)==-1){break g}c=b+1|0;d=(c>>>0)%3|0?c:b+ -2|0;if((d|0)==-1){break g}while(1){c=d+1|0;j=d;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1|i[i[a>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[a+64>>2]+12>>2]+(c<<2)>>2];if((b|0)==-1){break g}c=b+1|0;d=(c>>>0)%3|0?c:b+ -2|0;if((d|0)!=-1){continue}break}}i[i[a+28>>2]+(j<<2)>>2]=e;c=i[a+44>>2];h:{if((c|0)!=i[a+48>>2]){i[c>>2]=j;i[a+44>>2]=c+4;break h}h=i[n>>2];g=c-h|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break b}b=g>>1;d=f>>>0<536870911?b>>>0>>0?d:b:1073741823;c=0;i:{if(!d){break i}if(d>>>0>=1073741824){break a}c=lk(d<<2)}b=c+(f<<2)|0;i[b>>2]=j;d=c+(d<<2)|0;b=b+4|0;if((g|0)>=1){Yk(c,h,g)}i[a+48>>2]=d;i[a+44>>2]=b;i[a+40>>2]=c;if(!h){break h}Wk(h)}c=e+1|0;b=((j>>>0)%3|0?-1:2)+j|0;if((b|0)==-1){break d}b=i[i[i[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break d}d=b+((b>>>0)%3|0?-1:2)|0;if((d|0)==-1|(d|0)==(j|0)){break d}while(1){b=d+1|0;b=(b>>>0)%3|0?b:d+ -2|0;if(i[i[a>>2]+(b>>>3&536870908)>>2]>>>b&1){e=i[a+56>>2];j:{if((e|0)!=i[a+60>>2]){i[e>>2]=c;i[a+56>>2]=e+4;break j}k=i[o>>2];h=e-k|0;g=h>>2;f=g+1|0;if(f>>>0>=1073741824){break c}b=h>>1;f=g>>>0<536870911?b>>>0>>0?f:b:1073741823;e=0;k:{if(!f){break k}if(f>>>0>=1073741824){break a}e=lk(f<<2)}b=e+(g<<2)|0;i[b>>2]=c;f=e+(f<<2)|0;b=b+4|0;if((h|0)>=1){Yk(e,k,h)}i[a+60>>2]=f;i[a+56>>2]=b;i[a+52>>2]=e;if(!k){break j}Wk(k)}b=c+1|0;e=i[a+44>>2];l:{if((e|0)!=i[a+48>>2]){i[e>>2]=d;i[a+44>>2]=e+4;break l}m=i[n>>2];k=e-m|0;h=k>>2;g=h+1|0;if(g>>>0>=1073741824){break b}f=k>>1;g=h>>>0<536870911?f>>>0>>0?g:f:1073741823;e=0;m:{if(!g){break m}if(g>>>0>=1073741824){break a}e=lk(g<<2)}f=e+(h<<2)|0;i[f>>2]=d;g=e+(g<<2)|0;f=f+4|0;if((k|0)>=1){Yk(e,m,k)}i[a+48>>2]=g;i[a+44>>2]=f;i[a+40>>2]=e;if(!m){break l}Wk(m)}e=c;c=b}i[i[a+28>>2]+(d<<2)>>2]=e;b=((d>>>0)%3|0?-1:2)+d|0;if((b|0)==-1){break d}b=i[i[i[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break d}d=b+((b>>>0)%3|0?-1:2)|0;if((d|0)==-1){break d}if((d|0)!=(j|0)){continue}break}}e=i[a+64>>2];d=i[e+24>>2];l=l+1|0;if(l>>>0>2]-d>>2>>>0){continue}break}}return}Ak();x()}Ak();x()}va(11024);x()}function of(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(i[i[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=i[a+48>>2];i[a+52>>2]=c;a:{if((c|0)!=i[a+56>>2]){i[c>>2]=b;i[a+52>>2]=c+4;break a}f=lk(4);i[f>>2]=b;e=f+4|0;i[a+56>>2]=e;i[a+52>>2]=e;i[a+48>>2]=f;if(!c){break a}Wk(c)}e=i[i[a+4>>2]+28>>2];c=b+1|0;f=(c>>>0)%3|0?c:b+ -2|0;c=i[e+(f<<2)>>2];if((c|0)==-1){return 0}h=(b-o(d,3)|0?-1:2)+b|0;d=i[e+(h<<2)>>2];if((d|0)==-1){return 0}b=i[a+36>>2];e=b+(c>>>3&536870908)|0;g=i[e>>2];j=1<>2]=g|j;Ze(a+8|0,c,f);b=i[a+36>>2]}b=(d>>>3&536870908)+b|0;c=i[b>>2];f=1<>2]=c|f;Ze(a+8|0,d,h)}c=i[a+52>>2];if((c|0)==i[a+48>>2]){return 1}l=a+48|0;m=a+8|0;while(1){c=c+ -4|0;b=i[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}f=i[a+24>>2]+(d>>>3&268435452)|0;e=i[f>>2];d=1<>2]=d|e;f=i[a+4>>2];c=i[i[f+28>>2]+(b<<2)>>2];if((c|0)==-1){return 0}while(1){d=b;d:{b=i[a+36>>2]+(c>>>3&536870908)|0;e=i[b>>2];h=1<>2]+(c<<2)>>2];if((g|0)!=-1){f:{j=g+1|0;g=(j>>>0)%3|0?j:g+ -2|0;if((g|0)==-1|i[i[f>>2]+(g>>>3&536870908)>>2]>>>g&1){break f}f=i[i[i[f+64>>2]+12>>2]+(g<<2)>>2];if((f|0)==-1){break f}i[b>>2]=e|h;Ze(m,c,d);b=f+1|0;if((((b>>>0)%3|0?b:f+ -2|0)|0)==-1){break e}b=-1;f=i[a+4>>2];g:{if((d|0)==-1){break g}c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1|i[i[f>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[f+64>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];j=c>>>5|0;e=i[d+(j<<2)>>2];break d}}i[b>>2]=e|h;Ze(m,c,d)}h:{i:{if((d|0)==-1){break i}f=i[a+4>>2];b=-1;e=d+1|0;e=(e>>>0)%3|0?e:d+ -2|0;c=-1;j:{if((e|0)==-1){break j}c=-1;if(i[i[f>>2]+(e>>>3&536870908)>>2]>>>e&1){break j}c=i[i[i[f+64>>2]+12>>2]+(e<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if(!((d|0)==-1|i[i[f>>2]+(d>>>3&536870908)>>2]>>>d&1)){b=i[i[i[f+64>>2]+12>>2]+(d<<2)>>2]}k=(b|0)==-1;h=k?-1:(b>>>0)/3|0;e=(c>>>0)/3|0;g=(c|0)==-1;if(!g){d=i[a+24>>2];g=g?-1:e;j=g>>>5|0;e=i[d+(j<<2)>>2];g=1<>2];j=h>>>5|0;e=i[d+(j<<2)>>2];if(!(g&e)){break d}}c=i[a+52>>2]+ -4|0;i[a+52>>2]=c;break b}if(k){b=c;break d}if(i[(h>>>3&536870908)+d>>2]>>>h&1){b=c;break d}d=i[a+52>>2];i[d+ -4>>2]=b;if((d|0)!=i[a+56>>2]){i[d>>2]=c;c=d+4|0;break c}k:{b=d;d=i[l>>2];f=b-d|0;h=f>>2;e=h+1|0;if(e>>>0<1073741824){g=f>>1;e=h>>>0<536870911?g>>>0>>0?e:g:1073741823;b=0;l:{if(!e){break l}if(e>>>0>=1073741824){break k}b=lk(e<<2)}h=b+(h<<2)|0;i[h>>2]=c;e=b+(e<<2)|0;c=h+4|0;if((f|0)>=1){Yk(b,d,f)}i[a+56>>2]=e;i[a+52>>2]=c;i[a+48>>2]=b;if(!d){break b}Wk(d);c=i[a+52>>2];break b}Ak();x()}va(8944);x()}i[(j<<2)+d>>2]=e|g;c=i[i[f+28>>2]+(b<<2)>>2];if((c|0)!=-1){continue}break}return 0}i[a+52>>2]=c}if(i[l>>2]!=(c|0)){continue}break}}return 1}function sc(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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0>>0){La(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}s=i[a+52>>2];r=i[a+48>>2];d=0;f=(e&1073741823)!=(e|0)?-1:e<<2;p=Zk(lk(f),0,f);f=i[a+8>>2];b:{if((f|0)<1){break b}while(1){f=d<<2;g=i[f+p>>2];k=i[a+16>>2];c:{if((g|0)>(k|0)){h=i[a+32>>2];i[f+h>>2]=k;break c}h=i[a+32>>2];f=f+h|0;k=i[a+12>>2];if((g|0)<(k|0)){i[f>>2]=k;break c}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}if((f|0)<1){break b}g=0;while(1){f=g<<2;d=f+c|0;f=i[b+f>>2]+i[f+h>>2]|0;i[d>>2]=f;d:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break d}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}d=i[a+56>>2];g=i[d+4>>2];q=i[d>>2];d=g-q|0;if((d|0)>=5){g=q-g|0;d=((g|0)>(d|0)?g:d)>>>2|0;t=d>>>0>2?d:2;u=d>>>0>1?d:1;k=1;while(1){e:{f:{if((k|0)!=(u|0)){n=o(e,k);d=i[(k<<2)+q>>2];if((d|0)==-1){break f}d=i[i[r+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}g=-1;j=i[s>>2];h=i[r>>2];l=i[j+(i[h+(d<<2)>>2]<<2)>>2];m=d+1|0;m=(m>>>0)%3|0?m:d+ -2|0;if((m|0)!=-1){m=i[h+(m<<2)>>2]}else{m=-1}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)!=-1){g=i[h+(d<<2)>>2]}if((l|0)>=(k|0)){break f}d=i[(m<<2)+j>>2];if((d|0)>=(k|0)){break f}g=i[j+(g<<2)>>2];if((g|0)>=(k|0)){break f}if((e|0)>=1){g=o(e,g);h=o(d,e);j=o(e,l);d=0;while(1){i[(d<<2)+p>>2]=(i[(d+g<<2)+c>>2]+i[(d+h<<2)+c>>2]|0)-i[(d+j<<2)+c>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}if((f|0)<1){break e}d=0;while(1){f=d<<2;g=i[f+p>>2];j=i[a+16>>2];g:{if((g|0)>(j|0)){h=i[a+32>>2];i[f+h>>2]=j;break g}h=i[a+32>>2];f=f+h|0;j=i[a+12>>2];if((g|0)<(j|0)){i[f>>2]=j;break g}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=n<<2;n=d+c|0;j=b+d|0;while(1){f=g<<2;d=f+n|0;f=i[f+j>>2]+i[f+h>>2]|0;i[d>>2]=f;h:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break h}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}break e}Bk();x()}if((f|0)<1){break e}j=(o(k+ -1|0,e)<<2)+c|0;d=0;while(1){f=d<<2;g=i[f+j>>2];l=i[a+16>>2];i:{if((g|0)>(l|0)){h=i[a+32>>2];i[f+h>>2]=l;break i}h=i[a+32>>2];f=f+h|0;l=i[a+12>>2];if((g|0)<(l|0)){i[f>>2]=l;break i}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=n<<2;n=d+c|0;j=b+d|0;while(1){f=g<<2;d=f+n|0;f=i[f+j>>2]+i[f+h>>2]|0;i[d>>2]=f;j:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break j}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}k=k+1|0;if((t|0)!=(k|0)){continue}break}}Wk(p);return 1}function Pb(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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0>>0){La(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}r=i[a+52>>2];p=i[a+48>>2];d=0;f=(e&1073741823)!=(e|0)?-1:e<<2;n=Zk(lk(f),0,f);f=i[a+8>>2];b:{if((f|0)<1){break b}while(1){f=d<<2;g=i[f+n>>2];j=i[a+16>>2];c:{if((g|0)>(j|0)){h=i[a+32>>2];i[f+h>>2]=j;break c}h=i[a+32>>2];f=f+h|0;j=i[a+12>>2];if((g|0)<(j|0)){i[f>>2]=j;break c}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}if((f|0)<1){break b}g=0;while(1){f=g<<2;d=f+c|0;f=i[b+f>>2]+i[f+h>>2]|0;i[d>>2]=f;d:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break d}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}d=i[a+56>>2];g=i[d+4>>2];q=i[d>>2];d=g-q|0;if((d|0)>=5){g=q-g|0;d=((g|0)>(d|0)?g:d)>>>2|0;s=d>>>0>2?d:2;t=d>>>0>1?d:1;j=1;while(1){e:{f:{if((j|0)!=(t|0)){m=o(e,j);d=i[(j<<2)+q>>2];if((d|0)==-1|i[i[p>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}d=i[i[i[p+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}h=i[r>>2];g=i[p+28>>2];k=i[h+(i[g+(d<<2)>>2]<<2)>>2];if((k|0)>=(j|0)){break f}l=d+1|0;l=i[h+(i[g+(((l>>>0)%3|0?l:d+ -2|0)<<2)>>2]<<2)>>2];if((l|0)>=(j|0)){break f}d=i[h+(i[g+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(j|0)){break f}if((e|0)>=1){g=o(d,e);h=o(e,l);k=o(e,k);d=0;while(1){i[(d<<2)+n>>2]=(i[(d+g<<2)+c>>2]+i[(d+h<<2)+c>>2]|0)-i[(d+k<<2)+c>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}if((f|0)<1){break e}d=0;while(1){f=d<<2;g=i[f+n>>2];k=i[a+16>>2];g:{if((g|0)>(k|0)){h=i[a+32>>2];i[f+h>>2]=k;break g}h=i[a+32>>2];f=f+h|0;k=i[a+12>>2];if((g|0)<(k|0)){i[f>>2]=k;break g}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=m<<2;m=d+c|0;k=b+d|0;while(1){f=g<<2;d=f+m|0;f=i[f+k>>2]+i[f+h>>2]|0;i[d>>2]=f;h:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break h}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}break e}Bk();x()}if((f|0)<1){break e}k=(o(j+ -1|0,e)<<2)+c|0;d=0;while(1){f=d<<2;g=i[f+k>>2];l=i[a+16>>2];i:{if((g|0)>(l|0)){h=i[a+32>>2];i[f+h>>2]=l;break i}h=i[a+32>>2];f=f+h|0;l=i[a+12>>2];if((g|0)<(l|0)){i[f>>2]=l;break i}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=m<<2;m=d+c|0;k=b+d|0;while(1){f=g<<2;d=f+m|0;f=i[f+k>>2]+i[f+h>>2]|0;i[d>>2]=f;j:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break j}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}j=j+1|0;if((s|0)!=(j|0)){continue}break}}Wk(n);return 1}function Qi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0;e=F-48|0;F=e;a:{if(!b){break a}w=a+12|0;g=i[a+4>>2];m=i[a>>2];f=g-m|0;k=f>>2;d=i[a+12>>2];c=i[a+16>>2]-d>>2;b:{if(k>>>0>c>>>0){Ti(w,k-c|0);g=i[a+4>>2];m=i[a>>2];f=g-m|0;k=f>>2;break b}if(k>>>0>=c>>>0){break b}i[a+16>>2]=d+(k<<2)}i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;c:{if(!f){break c}if(k>>>0<1073741824){l=lk(f);i[e+36>>2]=l;i[e+32>>2]=l;i[e+40>>2]=(k<<2)+l;d=l;f=0;while(1){c=i[(f<<2)+m>>2];j=d-l>>2;d:{if(c>>>0>>0){break d}i[e+16>>2]=0;d=c+1|0;if(d>>>0>j>>>0){Na(e+32|0,d-j|0,e+16|0);m=i[a>>2];g=i[a+4>>2];l=i[e+32>>2];break d}if(d>>>0>=j>>>0){break d}i[e+36>>2]=(d<<2)+l}d=(c<<2)+l|0;i[d>>2]=i[d>>2]+1;f=f+1|0;h=g-m|0;k=h>>2;if(f>>>0>=k>>>0){break c}d=i[e+36>>2];continue}}va(10832);x()}i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;e:{f:{if(h){if(k>>>0>=536870912){break f}n=lk(h<<1);i[e+16>>2]=n;c=k<<3;d=c+n|0;i[e+24>>2]=d;Zk(n,255,c);i[e+20>>2]=d}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;c=i[e+36>>2];g=c-l|0;u=g>>2;g:{if(g){if(u>>>0>=1073741824){break g}p=lk(g);i[e>>2]=p;d=(u<<2)+p|0;i[e+8>>2]=d;f=0;j=Zk(p,0,g);i[e+4>>2]=d;d=l-c|0;c=((d|0)>(g|0)?d:g)>>>2|0;d=(g|0)>-1?g:-1;d=o(c,(d|0)<1?d:1);c=d>>>0>1?d:1;h=0;while(1){d=h<<2;i[d+j>>2]=f;f=i[d+l>>2]+f|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}if(!k){break e}while(1){y=q<<2;g=i[y+m>>2];r=-1;d=q+1|0;c=(d>>>0)%3|0?d:q+ -2|0;if((c|0)!=-1){r=i[(c<<2)+m>>2]}s=-1;f=(q>>>0)%3|0;c=(f?-1:2)+q|0;if((c|0)!=-1){s=i[(c<<2)+m>>2]}h:{if(!(((g|0)!=(s|0)?!((r|0)==(s|0)|(g|0)==(r|0)):0)|f)){i[a+40>>2]=i[a+40>>2]+1;d=q+3|0;break h}c=s<<2;v=i[c+l>>2];i:{j:{if((v|0)<1){break j}f=i[c+p>>2];h=0;while(1){j=(f<<3)+n|0;c=i[j>>2];if((c|0)==-1){break j}k:{if((c|0)!=(r|0)){break k}t=i[j+4>>2];if((t|0)!=-1){c=i[(t<<2)+m>>2]}else{c=-1}if((c|0)==(g|0)){break k}while(1){l:{c=f;h=h+1|0;if((h|0)>=(v|0)){break l}z=(c<<3)+n|0;f=c+1|0;g=(f<<3)+n|0;j=i[g>>2];i[z>>2]=j;i[z+4>>2]=i[g+4>>2];if((j|0)!=-1){continue}}break}i[(c<<3)+n>>2]=-1;if((t|0)==-1){break j}c=i[w>>2];i[c+y>>2]=t;i[c+(t<<2)>>2]=q;break i}f=f+1|0;h=h+1|0;if((v|0)!=(h|0)){continue}break}}f=r<<2;c=i[f+l>>2];if((c|0)<1){break i}f=i[f+p>>2];h=0;while(1){j=(f<<3)+n|0;if(i[j>>2]==-1){i[j>>2]=s;i[j+4>>2]=q;break i}f=f+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}}q=d;if(d>>>0>>0){continue}break}break e}Ak();x()}Ak();x()}i[b>>2]=u;if(p){i[e+4>>2]=p;Wk(p)}a=i[e+16>>2];if(a){i[e+20>>2]=a;Wk(a)}a=i[e+32>>2];if(!a){break a}i[e+36>>2]=a;Wk(a)}F=e+48|0;return(b|0)!=0}function hf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(i[i[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=i[a+48>>2];i[a+52>>2]=c;a:{if((c|0)!=i[a+56>>2]){i[c>>2]=b;i[a+52>>2]=c+4;break a}e=lk(4);i[e>>2]=b;f=e+4|0;i[a+56>>2]=f;i[a+52>>2]=f;i[a+48>>2]=e;if(!c){break a}Wk(c)}e=i[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b+ -2|0;if((f|0)!=-1){c=i[i[e>>2]+(f<<2)>>2]}h=(b-o(d,3)|0?-1:2)+b|0;if((h|0)==-1){return 0}if((c|0)==-1){return 0}d=i[i[e>>2]+(h<<2)>>2];if((d|0)==-1){return 0}b=i[a+36>>2];e=b+(c>>>3&536870908)|0;g=i[e>>2];j=1<>2]=g|j;Ze(a+8|0,c,f);b=i[a+36>>2]}b=(d>>>3&536870908)+b|0;c=i[b>>2];e=1<>2]=c|e;Ze(a+8|0,d,h)}d=i[a+52>>2];if((d|0)==i[a+48>>2]){return 1}k=a+48|0;l=a+8|0;while(1){d=d+ -4|0;b=i[d>>2];c=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=i[a+24>>2]+(c>>>3&268435452)|0;f=i[e>>2];c=1<>2]=c|f;while(1){h=i[a+4>>2];c=i[i[h>>2]+(b<<2)>>2];if((c|0)==-1){return 0}d:{d=i[a+36>>2]+(c>>>3&536870908)|0;e=i[d>>2];f=1<>2]+(c<<2)>>2];if((g|0)!=-1){j=g+1|0;g=(j>>>0)%3|0?j:g+ -2|0;if((g|0)!=-1){h=i[i[h+12>>2]+(g<<2)>>2];if((h|0)!=-1){i[d>>2]=e|f;Ze(l,c,b);c=h+1|0;if((((c>>>0)%3|0?c:h+ -2|0)|0)==-1){break e}d=b+ -2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=i[i[i[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];j=c>>>5|0;f=i[e+(j<<2)>>2];break d}}}i[d>>2]=e|f;Ze(l,c,b)}d=-1;e=i[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b+ -2|0;if((f|0)!=-1){c=i[i[e+12>>2]+(f<<2)>>2]}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)!=-1){d=i[i[e+12>>2]+(b<<2)>>2]}b=(d|0)==-1;h=b?-1:(d>>>0)/3|0;f=(c>>>0)/3|0;f:{g=(c|0)==-1;if(!g){e=i[a+24>>2];g=g?-1:f;j=g>>>5|0;f=i[e+(j<<2)>>2];g=1<>2];j=h>>>5|0;f=i[e+(j<<2)>>2];if(!(g&f)){break d}}d=i[a+52>>2]+ -4|0;i[a+52>>2]=d;break b}if(b){b=c;break d}if(i[(h>>>3&536870908)+e>>2]>>>h&1){b=c;break d}b=i[a+52>>2];i[b+ -4>>2]=d;if((b|0)!=i[a+56>>2]){i[b>>2]=c;d=b+4|0;break c}g:{e=i[k>>2];f=b-e|0;h=f>>2;d=h+1|0;if(d>>>0<1073741824){g=f>>1;d=h>>>0<536870911?g>>>0>>0?d:g:1073741823;b=0;h:{if(!d){break h}if(d>>>0>=1073741824){break g}b=lk(d<<2)}h=b+(h<<2)|0;i[h>>2]=c;c=b+(d<<2)|0;d=h+4|0;if((f|0)>=1){Yk(b,e,f)}i[a+56>>2]=c;i[a+52>>2]=d;i[a+48>>2]=b;if(!e){break b}Wk(e);d=i[a+52>>2];break b}Ak();x()}va(8944);x()}i[(j<<2)+e>>2]=f|g;if((b|0)!=-1){continue}break}return 0}i[a+52>>2]=d}if(i[k>>2]!=(d|0)){continue}break}}return 1}function nc(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,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=F-32|0;F=h;i[a+68>>2]=f;e=i[a+56>>2];f=i[e>>2];j=i[e+4>>2];i[h+24>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;g=j-f|0;if((g|0)>=1){a:{d=i[e>>2];b:{if((d|0)==i[e+4>>2]){e=i[h+8>>2];break b}n=a+60|0;e=f-j|0;e=((e|0)>(g|0)?e:g)>>>2|0;o=e>>>0>1?e:1;p=a+112|0;while(1){oc(n,i[(m<<2)+d>>2],h+16|0);e=i[h+20>>2];j=e>>31;f=i[h+16>>2];g=f>>31;l=i[h+24>>2];k=l>>31;d=0;k=k^k+l;j=k+((j^e+j)+(g^f+g)|0)|0;if(j>>>0>>0){d=1}g=j;c:{if(!(d|g)){i[h+16>>2]=i[a+108>>2];break c}j=i[a+108>>2];k=j>>31;e=il(hl(j,k,e,e>>31),H,g,d);i[h+20>>2]=e;d=il(hl(j,k,f,f>>31),H,g,d);i[h+16>>2]=d;if((l|0)>=0){i[h+24>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break c}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[h+24>>2]=f+(d+e^d)}d=jd(p);f=i[h+16>>2];if(d){i[h+24>>2]=0-i[h+24>>2];i[h+20>>2]=0-i[h+20>>2];f=0-f|0;i[h+16>>2]=f}e=i[h+20>>2];d:{if((f|0)>=0){d=i[a+108>>2];f=d+i[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=i[h+24>>2];d=f>>31;d=d^d+f;break e}f=i[h+24>>2];d=i[a+100>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break d}f=i[a+100>>2]+((e|0)<0?e:0-e|0)|0}f:{if(!(d|f)){f=i[a+100>>2];e=f;break f}j=i[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(j|0)){e=f;break f}e=0;if(f|j){break i}f=0;break f}if(!((d|0)!=(j|0)|f)){f=d;e=f;break f}if((d|0)!=(j|0)){break g}g=i[a+108>>2];break h}g=i[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(j){break g}}j=d;if((g|0)<=(f|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(j|0)){break j}e=i[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=i[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}i[h+12>>2]=f;k:{if(i[a+8>>2]<1){break k}f=0;d=e;while(1){g=i[a+16>>2];l:{if((d|0)>(g|0)){j=i[a+32>>2];i[j+(f<<2)>>2]=g;break l}j=i[a+32>>2];g=j+(f<<2)|0;l=i[a+12>>2];if((d|0)<(l|0)){i[g>>2]=l;break l}i[g>>2]=d}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){d=i[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=m<<3;l=f+c|0;k=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+k>>2]+i[g+j>>2]|0;i[f>>2]=g;m:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break m}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}m=m+1|0;if((o|0)==(m|0)){break a}f=i[a+56>>2];d=i[f>>2];if(i[f+4>>2]-d>>2>>>0>m>>>0){continue}break}}i[h+8>>2]=e;Bk();x()}i[h+8>>2]=e}F=h+32|0;return 1}function Cc(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,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=F-32|0;F=h;i[a+68>>2]=f;e=i[a+56>>2];f=i[e>>2];j=i[e+4>>2];i[h+24>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;g=j-f|0;if((g|0)>=1){a:{d=i[e>>2];b:{if((d|0)==i[e+4>>2]){e=i[h+8>>2];break b}n=a+60|0;e=f-j|0;e=((e|0)>(g|0)?e:g)>>>2|0;o=e>>>0>1?e:1;p=a+112|0;while(1){Dc(n,i[(m<<2)+d>>2],h+16|0);e=i[h+20>>2];j=e>>31;f=i[h+16>>2];g=f>>31;l=i[h+24>>2];k=l>>31;d=0;k=k^k+l;j=k+((j^e+j)+(g^f+g)|0)|0;if(j>>>0>>0){d=1}g=j;c:{if(!(d|g)){i[h+16>>2]=i[a+108>>2];break c}j=i[a+108>>2];k=j>>31;e=il(hl(j,k,e,e>>31),H,g,d);i[h+20>>2]=e;d=il(hl(j,k,f,f>>31),H,g,d);i[h+16>>2]=d;if((l|0)>=0){i[h+24>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break c}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[h+24>>2]=f+(d+e^d)}d=jd(p);f=i[h+16>>2];if(d){i[h+24>>2]=0-i[h+24>>2];i[h+20>>2]=0-i[h+20>>2];f=0-f|0;i[h+16>>2]=f}e=i[h+20>>2];d:{if((f|0)>=0){d=i[a+108>>2];f=d+i[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=i[h+24>>2];d=f>>31;d=d^d+f;break e}f=i[h+24>>2];d=i[a+100>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break d}f=i[a+100>>2]+((e|0)<0?e:0-e|0)|0}f:{if(!(d|f)){f=i[a+100>>2];e=f;break f}j=i[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(j|0)){e=f;break f}e=0;if(f|j){break i}f=0;break f}if(!((d|0)!=(j|0)|f)){f=d;e=f;break f}if((d|0)!=(j|0)){break g}g=i[a+108>>2];break h}g=i[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(j){break g}}j=d;if((g|0)<=(f|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(j|0)){break j}e=i[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=i[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}i[h+12>>2]=f;k:{if(i[a+8>>2]<1){break k}f=0;d=e;while(1){g=i[a+16>>2];l:{if((d|0)>(g|0)){j=i[a+32>>2];i[j+(f<<2)>>2]=g;break l}j=i[a+32>>2];g=j+(f<<2)|0;l=i[a+12>>2];if((d|0)<(l|0)){i[g>>2]=l;break l}i[g>>2]=d}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){d=i[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=m<<3;l=f+c|0;k=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+k>>2]+i[g+j>>2]|0;i[f>>2]=g;m:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break m}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}m=m+1|0;if((o|0)==(m|0)){break a}f=i[a+56>>2];d=i[f>>2];if(i[f+4>>2]-d>>2>>>0>m>>>0){continue}break}}i[h+8>>2]=e;Bk();x()}i[h+8>>2]=e}F=h+32|0;return 1}function zj(a,b){var c=0,d=0,e=0,f=0,h=0,k=0;a:{b:{d=b;h=i[b>>2];if(h){c=i[b+4>>2];if(!c){break b}while(1){d=c;c=i[c>>2];if(c){continue}break}}h=i[d+4>>2];if(h){break b}h=0;e=1;break a}i[h+8>>2]=i[d+8>>2];e=0}f=i[d+8>>2];c=i[f>>2];c:{if((d|0)==(c|0)){i[f>>2]=h;if((a|0)==(d|0)){c=0;a=h;break c}c=i[f+4>>2];break c}i[f+4>>2]=h}d:{e:{f:{k=!j[d+12|0];if((b|0)!=(d|0)){f=i[b+8>>2];i[d+8>>2]=f;i[f+((i[i[b+8>>2]>>2]!=(b|0))<<2)>>2]=d;f=i[b>>2];i[d>>2]=f;i[f+8>>2]=d;f=i[b+4>>2];i[d+4>>2]=f;if(f){i[f+8>>2]=d}g[d+12|0]=j[b+12|0];a=(a|0)==(b|0)?d:a}if(!(k|!a)){if(e){while(1){b=j[c+12|0];g:{e=i[c+8>>2];if(i[e>>2]!=(c|0)){if(!b){g[c+12|0]=1;g[e+12|0]=0;d=i[e+4>>2];b=i[d>>2];i[e+4>>2]=b;if(b){i[b+8>>2]=e}i[d+8>>2]=i[e+8>>2];b=i[e+8>>2];i[(((e|0)!=i[b>>2])<<2)+b>>2]=d;i[d>>2]=e;i[e+8>>2]=d;b=i[c>>2];a=(b|0)==(a|0)?c:a;c=i[b+4>>2]}d=i[c>>2];if(!(j[d+12|0]?0:d)){b=i[c+4>>2];if(j[b+12|0]?0:b){break f}g[c+12|0]=0;c=i[c+8>>2];h:{if((c|0)==(a|0)){c=a;break h}if(j[c+12|0]){break g}}g[c+12|0]=1;return}b=i[c+4>>2];if(b){break f}break e}i:{if(b){b=c;break i}g[c+12|0]=1;g[e+12|0]=0;b=i[c+4>>2];i[e>>2]=b;if(b){i[b+8>>2]=e}i[c+8>>2]=i[e+8>>2];d=i[e+8>>2];j:{if((e|0)==i[d>>2]){i[d>>2]=c;b=i[e>>2];break j}i[d+4>>2]=c}i[c+4>>2]=e;i[e+8>>2]=c;a=(a|0)==(e|0)?c:a}d=i[b>>2];k:{if(!(!d|j[d+12|0])){c=b;break k}c=i[b+4>>2];if(!(j[c+12|0]?0:c)){g[b+12|0]=0;c=i[b+8>>2];if(j[c+12|0]?(c|0)!=(a|0):0){break g}g[c+12|0]=1;return}if(d){if(!j[d+12|0]){c=b;break k}c=i[b+4>>2]}g[c+12|0]=1;g[b+12|0]=0;a=i[c>>2];i[b+4>>2]=a;if(a){i[a+8>>2]=b}i[c+8>>2]=i[b+8>>2];a=i[b+8>>2];i[((i[a>>2]!=(b|0))<<2)+a>>2]=c;i[c>>2]=b;i[b+8>>2]=c;d=b}a=c;c=i[c+8>>2];g[a+12|0]=j[c+12|0];g[c+12|0]=1;g[d+12|0]=1;b=i[c>>2];a=i[b+4>>2];i[c>>2]=a;if(a){i[a+8>>2]=c}i[b+8>>2]=i[c+8>>2];a=i[c+8>>2];i[(((c|0)!=i[a>>2])<<2)+a>>2]=b;i[b+4>>2]=c;i[c+8>>2]=b;return}b=i[c+8>>2];c=i[((i[b>>2]==(c|0))<<2)+b>>2];continue}}g[h+12|0]=1}return}if(j[b+12|0]){break e}d=c;break d}g[d+12|0]=1;g[c+12|0]=0;a=i[d+4>>2];i[c>>2]=a;if(a){i[a+8>>2]=c}i[d+8>>2]=i[c+8>>2];a=i[c+8>>2];i[((i[a>>2]!=(c|0))<<2)+a>>2]=d;i[d+4>>2]=c;i[c+8>>2]=d;b=c}c=i[d+8>>2];g[d+12|0]=j[c+12|0];g[c+12|0]=1;g[b+12|0]=1;b=i[c+4>>2];a=i[b>>2];i[c+4>>2]=a;if(a){i[a+8>>2]=c}i[b+8>>2]=i[c+8>>2];a=i[c+8>>2];i[(((c|0)!=i[a>>2])<<2)+a>>2]=b;i[b>>2]=c;i[c+8>>2]=b}function Ab(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,j=0,k=0,l=0,m=0;a:{b:{c:{d:{e:{f:{g:{h:{d=i[a+8>>2];switch(i[d+28>>2]+ -1|0){case 0:break c;case 3:break d;case 2:break e;case 5:break f;case 4:break g;case 1:break h;default:break a}}f=g[d+24|0];j=lk((f|0)>-1?f:-1);c=i[a+16>>2];d=0;i:{if(!i[c+80>>2]){break i}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((f|0)>0){while(1){g[c+j|0]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}Yk(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,f);l=f+l|0;e=e+1|0;if((e|0)!=(b|0)){continue}break}break b}e=g[d+24|0];m=e<<2;j=lk((e|0)!=(e&1073741823)?-1:m);c=i[a+16>>2];d=0;j:{if(!i[c+80>>2]){break j}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((e|0)>0){while(1){i[(c<<2)+j>>2]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Yk(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}e=g[d+24|0];m=e<<2;j=lk((e|0)!=(e&1073741823)?-1:m);c=i[a+16>>2];d=0;k:{if(!i[c+80>>2]){break k}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((e|0)>0){while(1){i[(c<<2)+j>>2]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Yk(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}e=g[d+24|0];d=e+e|0;j=lk(d>>>0>>0?-1:d);c=i[a+16>>2];d=0;l:{if(!i[c+80>>2]){break l}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}m=e<<1;while(1){c=0;if((e|0)>0){while(1){h[(c<<1)+j>>1]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Yk(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}e=g[d+24|0];d=e+e|0;j=lk(d>>>0>>0?-1:d);c=i[a+16>>2];d=0;m:{if(!i[c+80>>2]){break m}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}m=e<<1;while(1){c=0;if((e|0)>0){while(1){h[(c<<1)+j>>1]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}Yk(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}f=g[d+24|0];j=lk((f|0)>-1?f:-1);c=i[a+16>>2];d=0;n:{if(!i[c+80>>2]){break n}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((f|0)>0){while(1){g[c+j|0]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}Yk(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,f);l=f+l|0;e=e+1|0;if((e|0)!=(b|0)){continue}break}}Wk(j);j=1}return j|0}function Si(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=F-48|0;F=k;i[a+36>>2]=b;p=a+24|0;d=i[a+24>>2];c=i[a+28>>2]-d>>2;a:{if(c>>>0>>0){Ti(p,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+28>>2]=d+(b<<2)}g[k+16|0]=0;l=Ui(k+32|0,b,k+16|0);c=i[a>>2];d=i[a+4>>2];g[k+8|0]=0;q=Ui(k+16|0,d-c>>2,k+8|0);b:{h=i[a+4>>2];c=i[a>>2];if(h-c>>2>>>0<3){break b}t=a+48|0;while(1){m=o(r,3);e=i[(m<<2)+c>>2];d=m+1|0;c:{d:{if((d|0)==-1){j=0;f=-1;break d}f=i[(d<<2)+c>>2];j=m+2|0;d=-1;if((j|0)==-1){break c}}d=i[(j<<2)+c>>2]}e:{if(!((d|0)==(f|0)|(e|0)==(f|0)|(d|0)==(e|0))){j=i[q>>2];n=0;while(1){d=m+n|0;f:{if(i[(d>>>3&536870908)+j>>2]>>>d&1){break f}h=i[i[a>>2]+(d<<2)>>2];i[k+8>>2]=h;c=1<>2];f=h>>>5|0;j=i[e+(f<<2)>>2];s=c&j;if(s){ye(p,10828);Vi(t,k+8|0);c=i[l+4>>2];f=i[l+8>>2];if((c|0)==f<<5){if((c+1|0)<=-1){break e}e=l;if(c>>>0<=1073741822){h=c+32&-32;c=f<<6;c=c>>>0>>0?h:c}else{c=2147483647}Xb(e,c);c=i[l+4>>2]}i[l+4>>2]=c+1;e=i[l>>2];f=e+(c>>>3&536870908)|0;h=i[f>>2];u=f,v=ll(c)&h,i[u>>2]=v;i[k+8>>2]=b;c=1<>>5|0;j=i[(f<<2)+e>>2];b=b+1|0}i[(f<<2)+e>>2]=c|j;j=i[q>>2];c=d;g:{while(1){if((c|0)==-1){break g}e=(c>>>3&536870908)+j|0;i[e>>2]=i[e>>2]|1<>2];i[i[p>>2]+(e<<2)>>2]=c;if(s){i[i[a>>2]+(c<<2)>>2]=e}h=d;f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;e=-1;h:{if((c|0)==-1){break h}f=i[i[a+12>>2]+(c<<2)>>2];e=-1;if((f|0)==-1){break h}c=f+1|0;e=(c>>>0)%3|0?c:f+ -2|0}c=e;if((h|0)!=(c|0)){continue}break}if((d|0)!=-1){break f}}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1){break f}d=i[i[a+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}c=d+((d>>>0)%3|0?-1:2)|0;if((c|0)==-1){break f}while(1){d=(c>>>3&536870908)+j|0;i[d>>2]=i[d>>2]|1<>2]+(c<<2)>>2]=i[k+8>>2]}d=((c>>>0)%3|0?-1:2)+c|0;if((d|0)==-1){break f}d=i[i[a+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}c=d+((d>>>0)%3|0?-1:2)|0;if((c|0)!=-1){continue}break}}n=n+1|0;if((n|0)!=3){continue}break}c=i[a>>2];h=i[a+4>>2]}r=r+1|0;if(r>>>0<(h-c>>2>>>0)/3>>>0){continue}break b}break}Ak();x()}j=0;i[a+44>>2]=0;b=i[l>>2];c=i[l+4>>2];d=c>>>5|0;f=c&31;if(d|f){h=(d<<2)+b|0;c=0;e=b;while(1){if(!(i[e>>2]>>>c&1)){j=j+1|0;i[a+44>>2]=j}d=(c|0)==31;c=d?0:c+1|0;e=d?e+4|0:e;if((h|0)!=(e|0)|(c|0)!=(f|0)){continue}break}}a=i[q>>2];if(a){Wk(a);b=i[l>>2]}if(b){Wk(b)}F=k+48|0}function Gb(a,b,c,d,e){var f=0,g=0,h=0,j=0,k=0;a:{b:{c:{d:{e:{switch(b+ -1|0){case 0:b=lk(60);i[b+4>>2]=c;i[b>>2]=2776;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break d}c=lk(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=Yk(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=3972;break a;case 3:b=lk(112);i[b+4>>2]=c;i[b>>2]=2776;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break c}c=lk(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=Yk(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=4396;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=0;i[b+92>>2]=0;i[b+96>>2]=0;i[b+100>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;break a;case 4:b=lk(104);i[b+4>>2]=c;i[b>>2]=2776;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break b}c=lk(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=Yk(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=e+8|0;d=i[c>>2];f=i[c+4>>2];i[b+84>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=4632;i[b+52>>2]=d;i[b+56>>2]=f;d=i[e+4>>2];i[b+88>>2]=i[e>>2];i[b+92>>2]=d;d=i[c+4>>2];i[b+96>>2]=i[c>>2];i[b+100>>2]=d;break a;case 5:b=lk(128);rc(b,c,d,e);break a;default:break e}}i[a>>2]=0;return}Ak();x()}Ak();x()}Ak();x()}i[a>>2]=b}function Fb(a,b,c,d,e){var f=0,g=0,h=0,j=0,k=0;a:{b:{c:{d:{e:{switch(b+ -1|0){case 0:b=lk(60);i[b+4>>2]=c;i[b>>2]=2776;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break d}c=lk(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=Yk(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=2068;break a;case 3:b=lk(112);i[b+4>>2]=c;i[b>>2]=2776;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break c}c=lk(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=Yk(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=2832;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=0;i[b+92>>2]=0;i[b+96>>2]=0;i[b+100>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;break a;case 4:b=lk(104);i[b+4>>2]=c;i[b>>2]=2776;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break b}c=lk(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=Yk(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=e+8|0;d=i[c>>2];f=i[c+4>>2];i[b+84>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=3080;i[b+52>>2]=d;i[b+56>>2]=f;d=i[e+4>>2];i[b+88>>2]=i[e>>2];i[b+92>>2]=d;d=i[c+4>>2];i[b+96>>2]=i[c>>2];i[b+100>>2]=d;break a;case 5:b=lk(128);Hb(b,c,d,e);break a;default:break e}}i[a>>2]=0;return}Ak();x()}Ak();x()}Ak();x()}i[a>>2]=b}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,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=F-48|0;F=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){Dc(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=il(hl(j,k,e,e>>31),H,h,d);i[g+12>>2]=e;d=il(hl(j,k,f,f>>31),H,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=jd(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];h=i[h>>2];i[g+36>>2]=f;i[g+32>>2]=e;i[g+24>>2]=h;i[g+28>>2]=j;Tc(g+40|0,o,g+32|0,g+24|0);d=c+d|0;i[d>>2]=i[g+40>>2];i[d+4>>2]=i[g+44>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Bk();x()}F=g+48|0;return 1}function Sc(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,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=F-48|0;F=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){oc(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=il(hl(j,k,e,e>>31),H,h,d);i[g+12>>2]=e;d=il(hl(j,k,f,f>>31),H,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=jd(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];h=i[h>>2];i[g+36>>2]=f;i[g+32>>2]=e;i[g+24>>2]=h;i[g+28>>2]=j;Tc(g+40|0,o,g+32|0,g+24|0);d=c+d|0;i[d>>2]=i[g+40>>2];i[d+4>>2]=i[g+44>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Bk();x()}F=g+48|0;return 1}function kj(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0;d=F-48|0;F=d;c=lk(8);i[c+4>>2]=b;i[c>>2]=0;b=c+8|0;i[d+40>>2]=b;i[d+36>>2]=b;i[d+32>>2]=c;a:{b:{c:{d:{while(1){b=b+ -8|0;m=i[b+4>>2];q=i[b>>2];i[d+36>>2]=b;if(q){i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;n=1;b=i[a>>2];h=i[b+16>>2];f=i[b+12>>2];c=i[b+20>>2];e:{if((f|0)<(c|0)?1:(f|0)<=(c|0)?l[b+8>>2]<=h>>>0:0){break e}e=j[h+i[b>>2]|0];f=h+1|0;if(f>>>0<1){c=c+1|0}i[b+16>>2]=f;i[b+20>>2]=c;tk(d+16|0,e);if(e){f=i[a>>2];p=xk(d+16|0);k=i[f+12>>2];h=i[f+20>>2];o=i[f+16>>2];b=e;c=o+b|0;if(c>>>0>>0){h=h+1|0}if((k|0)<(h|0)?1:(k|0)<=(h|0)?l[f+8>>2]>>0:0){break e}Yk(p,o+i[f>>2]|0,e);c=f;f=c;h=i[c+20>>2];e=b+i[c+16>>2]|0;if(e>>>0>>0){h=h+1|0}i[f+16>>2]=e;i[c+20>>2]=h}m=lk(24);b=m;i[b+4>>2]=0;i[b+8>>2]=0;i[b+16>>2]=0;i[b+20>>2]=0;i[b>>2]=b+4;i[b+12>>2]=b+16;i[d+8>>2]=b;b=yj(q,d+16|0,d+8|0);c=i[d+8>>2];i[d+8>>2]=0;if(c){Jf(c+12|0,i[c+16>>2]);Kf(c,i[c+4>>2]);Wk(c)}n=b^1}if(g[d+27|0]<=-1){Wk(i[d+16>>2])}if(n){break b}}if(!m){break b}i[d+16>>2]=0;if(!lj(1,d+16|0,i[a>>2])){break b}b=0;c=i[d+16>>2];if(c){while(1){if(!mj(a,m)){break b}b=b+1|0;if((c|0)!=(b|0)){continue}break}}i[d+4>>2]=0;if(!lj(1,d+4|0,i[a>>2])){break b}e=i[a>>2];c=i[e+8>>2];b=i[e+16>>2];p=i[d+4>>2];f=c-b>>>0

>>0;b=i[e+12>>2]-(i[e+20>>2]+(c>>>0>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?f:0){break b}if(p){n=0;while(1){b=i[d+36>>2];c=i[d+40>>2];f:{if(b>>>0>>0){i[b+4>>2]=0;i[b>>2]=m;i[d+36>>2]=b+8;break f}k=i[d+32>>2];o=b-k|0;b=o>>3;h=b+1|0;if(h>>>0>=536870912){break d}f=b<<3;e=c-k|0;c=e>>2;e=e>>3>>>0<268435455?c>>>0>>0?h:c:536870911;b=0;g:{if(!e){break g}if(e>>>0>=536870912){break c}b=lk(e<<3)}c=f+b|0;i[c+4>>2]=0;i[c>>2]=m;e=b+(e<<3)|0;c=c+8|0;if((o|0)>=1){Yk(b,k,o)}i[d+40>>2]=e;i[d+36>>2]=c;i[d+32>>2]=b;if(!k){break f}Wk(k)}n=n+1|0;if((p|0)!=(n|0)){continue}break}}b=i[d+36>>2];c=i[d+32>>2];if((b|0)!=(c|0)){continue}break}a=1;break a}Ak();x()}va(11160);x()}c=i[d+32>>2];a=0}if(c){i[d+36>>2]=c;Wk(c)}F=d+48|0;return a}function yb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;a:{s=I[i[i[a>>2]+44>>2]](a)|0;if((s|0)<1){break a}h=i[b+4>>2]-i[b>>2]>>2;zb(a,h,s);d=i[a+16>>2];if(!i[d+80>>2]){break a}f=i[i[d>>2]>>2];if(!f){break a}m=i[c+8>>2];k=i[c+16>>2];g=i[c+12>>2];n=g;e=i[c+20>>2];if((n|0)<(e|0)?1:(n|0)<=(e|0)?m>>>0<=k>>>0:0){break a}n=o(h,s);q=f+i[d+48>>2]|0;r=i[c>>2];t=j[r+k|0];h=c;d=e;f=k+1|0;if(f>>>0<1){d=d+1|0}p=f;f=d;i[h+16>>2]=p;i[h+20>>2]=d;b:{c:{d:{if(t){if(vd(n,s,c,q)){break d}break a}if((g|0)<(f|0)?1:(g|0)<=(f|0)?m>>>0<=p>>>0:0){break a}h=j[p+r|0];d=e;e=k+2|0;if(e>>>0<2){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;d=Vf(5);e=i[i[a+16>>2]+64>>2];e=i[e+4>>2]-i[e>>2]|0;e:{if((d|0)==(h|0)){h=n<<2;if(e>>>0>>0){break a}f=i[c+12>>2];d=i[c+20>>2];k=i[c+16>>2];e=h;g=k+e|0;if(g>>>0>>0){d=d+1|0}if((f|0)>(d|0)?1:(f|0)>=(d|0)?l[c+8>>2]>=g>>>0:0){break e}break a}if(e>>>0>>0){break a}k=i[c+12>>2];d=i[c+20>>2];m=i[c+8>>2];f=m;p=i[c+16>>2];g=p;e=h;r=f-g>>>0>>0;f=k-(d+(f>>>0>>0)|0)|0;g=H;if((f|0)<(g|0)?1:(f|0)<=(g|0)?r:0){break a}f=1;if(!n){break c}g=0;f=m;m=e+p|0;if(m>>>0>>0){d=d+1|0}if((k|0)<(d|0)?1:(k|0)<=(d|0)?f>>>0>>0:0){break b}m=0;while(1){Yk(q+(m<<2)|0,p+i[c>>2]|0,h);d=i[c+20>>2];p=e+i[c+16>>2]|0;if(p>>>0>>0){d=d+1|0}i[c+16>>2]=p;i[c+20>>2]=d;m=m+1|0;if((n|0)==(m|0)){break d}k=i[c+12>>2];r=e+p|0;if(r>>>0>>0){d=d+1|0}if((k|0)>(d|0)?1:(k|0)>=(d|0)?l[c+8>>2]>=r>>>0:0){continue}break}break b}Yk(q,k+i[c>>2]|0,h);d=i[c+20>>2];f=e+i[c+16>>2]|0;if(f>>>0>>0){d=d+1|0}i[c+16>>2]=f;i[c+20>>2]=d}f=1;if(!n){break c}e=i[a+20>>2];if(e){f=0;if(I[i[i[e>>2]+32>>2]](e)|0){break c}}Lf(q,n,q);f=0}e=i[a+20>>2];f:{if(!e){break f}if(!(I[i[i[e>>2]+40>>2]](e,c)|0)){break a}if(f){break f}g=0;a=i[a+20>>2];if(!(I[i[i[a>>2]+44>>2]](a,q,q,n,s,i[b>>2])|0)){break b}}g=1}return g|0}return 0}function Ri(a){var b=0,c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=F-32|0;F=e;b=i[a>>2];d=i[a+4>>2];g[e|0]=0;o=Ui(e+16|0,d-b>>2,e);i[e+8>>2]=0;i[e>>2]=0;k=i[a>>2];b=i[a+4>>2];a:{b:{while(1){c:{p=0;l=0;if((b|0)==(k|0)){break c}while(1){c=i[o>>2];d:{if(i[c+(l>>>3&536870908)>>2]>>>l&1){break d}d=i[e>>2];i[e+4>>2]=d;b=l;while(1){e:{f=b+1|0;q=b;b=(f>>>0)%3|0?f:b+ -2|0;if((b|0)==-1){break e}b=i[i[a+12>>2]+(b<<2)>>2];if((b|0)==-1){break e}f=b+1|0;b=(f>>>0)%3|0?f:b+ -2|0;if((l|0)==(b|0)|(b|0)==-1){break e}if(!(i[(b>>>3&536870908)+c>>2]>>>b&1)){continue}}break}f=d;b=q;while(1){j=(b>>>3&536870908)+c|0;i[j>>2]=i[j>>2]|1<>>0)%3|0?j:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;if((d|0)!=(f|0)){n=i[(j<<2)+k>>2];b=f;while(1){f:{if((n|0)!=i[b>>2]){break f}c=-1;h=i[b+4>>2];c=(m|0)!=-1?i[i[a+12>>2]+(m<<2)>>2]:c;if((h|0)==(c|0)){break f}d=-1;d=(h|0)!=-1?i[i[a+12>>2]+(h<<2)>>2]:d;if((c|0)!=-1){i[i[a+12>>2]+(c<<2)>>2]=-1}b=i[a+12>>2];if((d|0)!=-1){i[b+(d<<2)>>2]=-1}i[b+(m<<2)>>2]=-1;i[b+(h<<2)>>2]=-1;p=1;break d}b=b+8|0;if((d|0)!=(b|0)){continue}break}}n=m<<2;k=i[n+k>>2];g:{if(i[e+8>>2]!=(d|0)){b=d;i[b>>2]=k;i[b+4>>2]=j;i[e+4>>2]=b+8;break g}d=d-f|0;h=d>>3;c=h+1|0;if(c>>>0>=536870912){break b}b=d>>2;c=h>>>0<268435455?b>>>0>>0?c:b:536870911;b=0;h:{if(!c){break h}if(c>>>0>=536870912){break a}b=lk(c<<3)}h=b+(h<<3)|0;i[h>>2]=k;i[h+4>>2]=j;j=b+(c<<3)|0;c=h+8|0;if((d|0)>=1){Yk(b,f,d)}i[e+8>>2]=j;i[e+4>>2]=c;i[e>>2]=b;if(!f){break g}Wk(f)}i:{if((m|0)==-1){break i}b=i[n+i[a+12>>2]>>2];if((b|0)==-1){break i}b=b+((b>>>0)%3|0?-1:2)|0;if((q|0)==(b|0)|(b|0)==-1){break i}k=i[a>>2];c=i[o>>2];d=i[e+4>>2];f=i[e>>2];continue}break}k=i[a>>2]}l=l+1|0;b=i[a+4>>2];if(l>>>0>2>>>0){continue}break}if(p){continue}}break}a=i[e>>2];if(a){i[e+4>>2]=a;Wk(a)}a=i[o>>2];if(a){Wk(a)}F=e+32|0;return}Ak();x()}va(10832);x()}function ge(a,b,c){var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=F+ -64|0;F=e;h=i[i[b+4>>2]+44>>2];d=lk(80);i[d+12>>2]=0;i[d+16>>2]=0;i[d>>2]=9520;i[d+4>>2]=0;i[d+76>>2]=0;i[d+72>>2]=c;i[d+68>>2]=h;i[d+64>>2]=0;i[d+56>>2]=0;i[d+60>>2]=0;i[d+8>>2]=9684;k=d+20|0;f=k;i[f>>2]=0;i[f+4>>2]=0;n=d+28|0;f=n;i[f>>2]=0;i[f+4>>2]=0;i[d+36>>2]=0;i[d+40>>2]=0;l=d+44|0;f=l;i[f>>2]=0;i[f+4>>2]=0;i[d+52>>2]=0;b=i[b+8>>2];o=e+36|0;f=o;i[f>>2]=0;i[f+4>>2]=0;p=e+28|0;f=p;i[f>>2]=0;i[f+4>>2]=0;q=e+20|0;f=q;i[f>>2]=0;i[f+4>>2]=0;f=e+12|0;i[f>>2]=0;i[f+4>>2]=0;i[e+52>>2]=0;i[e+56>>2]=0;i[e+44>>2]=0;i[e+48>>2]=0;i[e+4>>2]=0;i[e+8>>2]=0;i[e>>2]=9684;i[e+4>>2]=b;j=i[b>>2];m=i[b+4>>2];g[e+63|0]=0;ie(e+24|0,(m-j>>2>>>0)/3|0,e+63|0);j=i[e+4>>2];m=i[j+28>>2];j=i[j+24>>2];g[e+63|0]=0;ie(o,m-j>>2,e+63|0);i[q>>2]=d;i[e+16>>2]=h;i[f>>2]=c;i[e+8>>2]=b;i[n>>2]=d;b=i[f+4>>2];i[k>>2]=i[f>>2];i[k+4>>2]=b;b=i[e+8>>2];i[d+12>>2]=i[e+4>>2];i[d+16>>2]=b;a:{b:{c=d;b=i[p>>2];if(b){f=d+32|0;c:{if(b>>>0<=i[d+40>>2]<<5>>>0){h=b+ -1>>>5|0;b=i[f>>2];break c}f=i[f>>2];if(f){Wk(f);i[d+40>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;b=i[e+28>>2]}if((b|0)<=-1){break b}h=b+ -1>>>5|0;f=h+1|0;b=lk(f<<2);i[d+40>>2]=f;i[d+36>>2]=0;i[d+32>>2]=b}_k(b,i[e+24>>2],(h<<2)+4|0);b=i[e+28>>2]}else{b=0}i[c+36>>2]=b;f=d;b=i[e+40>>2];if(b){d:{if(b>>>0<=i[d+52>>2]<<5>>>0){c=b+ -1>>>5|0;b=i[l>>2];break d}c=i[l>>2];if(c){Wk(c);i[d+52>>2]=0;i[d+44>>2]=0;i[d+48>>2]=0;b=i[e+40>>2]}if((b|0)<=-1){break a}c=b+ -1>>>5|0;h=c+1|0;b=lk(h<<2);i[d+52>>2]=h;i[d+48>>2]=0;i[d+44>>2]=b}_k(b,i[e+36>>2],(c<<2)+4|0);b=i[e+40>>2]}else{b=0}i[f+48>>2]=b;Ga(d+56|0,i[e+48>>2],i[e+52>>2]);i[a>>2]=d;i[e>>2]=9684;a=i[e+48>>2];if(a){i[e+52>>2]=a;Wk(a)}i[e>>2]=9500;a=i[e+36>>2];if(a){Wk(a)}a=i[e+24>>2];if(a){Wk(a)}F=e- -64|0;return}Ak();x()}Ak();x()}function ij(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;e=o(b,12)+a|0;n=e+12|0;p=e+8|0;i[n>>2]=i[p>>2];l=(c|0)==-1?-1:(c>>>0)/3|0;r=e+16|0;s=1;e=c;a:{b:{c:{while(1){d:{q=h;if(h){if((e|0)==-1){break d}if((jj(a,((e>>>0)%3|0?-1:2)+e|0)|0)==-1){break a}c=e+1|0;c=(c>>>0)%3|0?c:e+ -2|0;if((c|0)==-1){break a}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;if((c|0)==-1){break a}c=i[i[i[a+4>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break a}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;if((c|0)==-1){break a}l=(c>>>0)/3|0}j=1<>2]+(l>>>3&536870908)|0;k=i[g>>2];e:{if(j&k){break e}f=0;while(1){i[g>>2]=k|j;d=i[n>>2];f:{if((d|0)!=i[r>>2]){i[d>>2]=l;i[n>>2]=d+4;break f}k=i[p>>2];j=d-k|0;m=j>>2;g=m+1|0;if(g>>>0>=1073741824){break c}d=j>>1;g=m>>>0<536870911?d>>>0>>0?g:d:1073741823;d=0;g:{if(!g){break g}if(g>>>0>=1073741824){break b}d=lk(g<<2)}m=d+(m<<2)|0;i[m>>2]=l;g=d+(g<<2)|0;m=m+4|0;if((j|0)>=1){Yk(d,k,j)}i[p>>2]=d;i[n>>2]=m;i[r>>2]=g;if(!k){break f}Wk(k)}d=f+1|0;h:{if(!f){break h}if(d&1){if((c|0)==-1){c=-1;break h}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;break h}e=q?c:e;if((c|0)==-1){c=-1;break h}if((c>>>0)%3|0){c=c+ -1|0;break h}c=c+2|0}c=jj(a,c);if((c|0)!=-1){f=d;l=(c>>>0)/3|0;g=i[a+56>>2]+(l>>>3&268435452)|0;k=i[g>>2];j=1<>2]+ -4|0;f=i[h>>2];d=i[a+56>>2]+(f>>>3&536870908)|0;q=i[d>>2];t=d,u=ll(f)&q,i[t>>2]=u;i[n>>2]=h}h=1;f=s;s=0;if(f){continue}break a}break}e=-1;jj(a,-1);break a}Ak();x()}va(11092);x()}i[((b<<2)+a|0)+44>>2]=e;e=i[n>>2];b=i[p>>2];if((e|0)!=(b|0)){c=e-b|0;h=(c|0)>-1?c:-1;e=b-e|0;c=o((h|0)<1?h:1,((e|0)>(c|0)?e:c)>>>2|0);e=c>>>0>1?c:1;a=i[a+56>>2];c=0;while(1){h=i[b+(c<<2)>>2];f=a+(h>>>3&536870908)|0;d=i[f>>2];t=f,u=ll(h)&d,i[t>>2]=u;c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function pf(a,b){var c=0,d=0,e=0;i[a>>2]=i[b>>2];i[a+4>>2]=i[b+4>>2];i[a+8>>2]=i[b+8>>2];c=b+12|0;i[a+12>>2]=i[c>>2];i[c>>2]=0;i[b+4>>2]=0;i[b+8>>2]=0;c=b+16|0;i[a+16>>2]=i[c>>2];i[a+20>>2]=i[b+20>>2];d=b+24|0;i[a+24>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=j[b+28|0];e=a+40|0;i[e>>2]=0;c=a+32|0;i[c>>2]=0;i[c+4>>2]=0;g[a+28|0]=d;d=c;c=b+32|0;i[d>>2]=i[c>>2];i[a+36>>2]=i[b+36>>2];d=b+40|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a+52|0;i[d>>2]=0;c=a+44|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+44|0;i[e>>2]=i[c>>2];i[a+48>>2]=i[b+48>>2];e=d;d=b+52|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a- -64|0;i[d>>2]=0;c=a+56|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+56|0;i[e>>2]=i[c>>2];i[a+60>>2]=i[b+60>>2];e=d;d=b- -64|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;i[a+68>>2]=i[b+68>>2];d=i[b+72>>2];e=a+84|0;i[e>>2]=0;c=a+76|0;i[c>>2]=0;i[c+4>>2]=0;i[a+72>>2]=d;d=c;c=b+76|0;i[d>>2]=i[c>>2];i[a+80>>2]=i[b+80>>2];d=b+84|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a+96|0;i[d>>2]=0;c=a+88|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+88|0;i[e>>2]=i[c>>2];i[a+92>>2]=i[b+92>>2];e=d;d=b+96|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;c=j[b+100|0];d=a+112|0;i[d>>2]=0;i[a+104>>2]=0;i[a+108>>2]=0;g[a+100|0]=c;i[a+104>>2]=i[b+104>>2];i[a+108>>2]=i[b+108>>2];c=b+112|0;i[d>>2]=i[c>>2];i[c>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;d=a+124|0;i[d>>2]=0;c=a+116|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+116|0;i[e>>2]=i[c>>2];i[a+120>>2]=i[b+120>>2];e=d;d=b+124|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;c=i[b+128>>2];d=a+140|0;i[d>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+128>>2]=c;i[a+132>>2]=i[b+132>>2];i[a+136>>2]=i[b+136>>2];c=b+140|0;i[d>>2]=i[c>>2];i[c>>2]=0;i[b+132>>2]=0;i[b+136>>2]=0;return a}function ve(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;h=F-16|0;F=h;i[h>>2]=b;g=-1;a:{if((b|0)==-1){i[h+4>>2]=-1;break a}c=b+1|0;i[h+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}i[h+8>>2]=g;q=(b|0)==-1?-1:(b>>>0)/3|0;b:{c:{d:{e:{while(1){f:{g:{if((b|0)!=-1){c=i[i[i[a+8>>2]+12>>2]+(b<<2)>>2];if((c|0)!=-1){break g}}g=0;c=i[a+216>>2];if((c|0)==i[a+220>>2]){break f}while(1){f=o(g,144)+c|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];h:{if(c>>>0>>0){i[c>>2]=b;i[j>>2]=c+4;break h}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break e}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;i:{if(!e){break i}if(e>>>0>=1073741824){break d}c=lk(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){Yk(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break h}Wk(f)}g=g+1|0;c=i[a+216>>2];if(g>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0>>0){break f}g=0;if(i[a+220>>2]==i[a+216>>2]){break f}while(1){j:{if(!jd(i[a+368>>2]+(g<<4)|0)){break j}f=i[a+216>>2]+o(g,144)|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];if(c>>>0>>0){i[c>>2]=b;i[j>>2]=c+4;break j}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break c}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;k:{if(!e){break k}if(e>>>0>=1073741824){break b}c=lk(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){Yk(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break j}Wk(f)}g=g+1|0;if(g>>>0<(i[a+220>>2]-i[a+216>>2]|0)/144>>>0){continue}break}}p=p+1|0;if((p|0)!=3){b=i[(p<<2)+h>>2];continue}break}F=h+16|0;return 1}Ak();x()}va(8944);x()}Ak();x()}va(8944);x()}function Ja(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=F-96|0;F=e;a:{if(!Ka(1,e+92|0,b)){break a}h=i[e+92>>2];if(!h){break a}d=i[b+8>>2];c=i[b+16>>2];c=hl(d-c|0,i[b+12>>2]-(i[b+20>>2]+(d>>>0>>0)|0)|0,5,0)>>>0>>0;d=H;if((d|0)<0?1:(d|0)<=0?c:0){break a}c=i[a+4>>2];d=i[a+8>>2]-c>>2;b:{if(h>>>0>d>>>0){La(a+4|0,h-d|0);break b}if(h>>>0>=d>>>0){break b}i[a+8>>2]=c+(h<<2)}w=h>>>0>1?h:1;s=a+16|0;t=i[a+32>>2];u=1;while(1){c:{p=i[b+8>>2];n=i[b+16>>2];f=i[b+12>>2];c=f;d=i[b+20>>2];if((c|0)<(d|0)?1:(c|0)<=(d|0)?p>>>0<=n>>>0:0){break c}q=i[b>>2];v=j[q+n|0];c=d;k=n+1|0;if(k>>>0<1){c=c+1|0}g=b;i[b+16>>2]=k;i[b+20>>2]=c;if((f|0)<(c|0)?1:(f|0)<=(c|0)?p>>>0<=k>>>0:0){break c}k=j[k+q|0];c=d;l=n+2|0;if(l>>>0<2){c=c+1|0}i[b+16>>2]=l;i[g+20>>2]=c;if((f|0)<(c|0)?1:(f|0)<=(c|0)?p>>>0<=l>>>0:0){break c}l=j[l+q|0];c=d;r=n+3|0;if(r>>>0<3){c=c+1|0}i[b+16>>2]=r;i[g+20>>2]=c;if((f|0)<(c|0)?1:(f|0)<=(c|0)?p>>>0<=r>>>0:0){break c}f=j[r+q|0];c=d;d=n+4|0;if(d>>>0<4){c=c+1|0}i[b+16>>2]=d;i[g+20>>2]=c;if(!l|(v>>>0>4|(k+ -1&255)>>>0>10)){break c}d=ya(e+24|0);c=o(Vf(k),l);za(d,v,l<<24>>24,k,(f|0)!=0,c,c>>31);if(!Ka(1,e+20|0,b)){break c}g=i[e+20>>2];i[e+84>>2]=g;c=lk(96);Da(c,d);i[e+16>>2]=c;d=Fj(t,e+16|0);c=i[e+16>>2];i[e+16>>2]=0;if(c){Ma(c)}f=d<<2;i[i[f+i[t+8>>2]>>2]+60>>2]=g;i[i[a+4>>2]+(m<<2)>>2]=d;c=i[a+16>>2];g=i[a+20>>2]-c>>2;d:{if((d|0)<(g|0)){break d}i[e+12>>2]=-1;d=d+1|0;if(d>>>0>g>>>0){Na(s,d-g|0,e+12|0);c=i[s>>2];break d}if(d>>>0>=g>>>0){break d}i[a+20>>2]=(d<<2)+c}i[c+f>>2]=m;m=m+1|0;u=m>>>0>>0;if((m|0)!=(w|0)){continue}}break}m=u^1}F=e+96|0;return m&1}function Hd(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=F+ -64|0;F=d;i[d+48>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a:{if(!Qd(d,b)|(i[d+12>>2]?0:a)){break a}if(!Kd(1,d+56|0,b)){break a}f=i[b+8>>2];n=i[b+16>>2];g=n;l=f-g|0;k=i[d+60>>2];e=k;m=i[b+20>>2];g=i[b+12>>2]-(m+(f>>>0>>0)|0)|0;f=i[d+56>>2];if((e|0)==(g|0)&f>>>0>l>>>0|e>>>0>g>>>0){break a}k=k+m|0;g=n;m=g+f|0;if(m>>>0>>0){k=k+1|0}i[b+16>>2]=m;i[b+20>>2]=k;if((f|0)<1){break a}l=n+i[b>>2]|0;i[d+40>>2]=l;g=d;b:{c:{d:{e:{f:{b=f+ -1|0;e=l+b|0;switch((j[e|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break c}}if((f|0)<2){break a}b=f+ -2|0;i[d+44>>2]=b;e=(f+l|0)+ -2|0;e=j[e+1|0]<<8&16128|j[e|0];break b}if((f|0)<3){break a}b=f+ -3|0;i[d+44>>2]=b;e=(f+l|0)+ -3|0;e=j[e+1|0]<<8|j[e+2|0]<<16&4128768|j[e|0];break b}b=f+ -4|0;i[d+44>>2]=b;e=(f+l|0)+ -4|0;e=j[e+2|0]<<16|j[e+3|0]<<24&1056964608|j[e+1|0]<<8|j[e|0];break b}i[d+44>>2]=b;e=j[e|0]&63}h=e+4194304|0;i[g+48>>2]=h;p=h>>>0<1073741824;if(!a|h>>>0>1073741823){break a}m=i[d+28>>2];k=0;n=i[d+16>>2];while(1){g:{if(h>>>0>4194303){break g}while(1){if((b|0)<1){break g}b=b+ -1|0;i[d+44>>2]=b;h=j[b+l|0]|h<<8;i[d+48>>2]=h;if(h>>>0<4194304){continue}break}}f=h&1048575;e=i[(f<<2)+n>>2];g=(e<<3)+m|0;h=(o(i[g>>2],h>>>20|0)+f|0)-i[g+4>>2]|0;i[d+48>>2]=h;i[(k<<2)+c>>2]=e;p=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=i[d+28>>2];if(a){i[d+32>>2]=a;Wk(a)}a=i[d+16>>2];if(a){i[d+20>>2]=a;Wk(a)}a=i[d>>2];if(a){i[d+4>>2]=a;Wk(a)}F=d- -64|0;return p}function Fd(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=F+ -64|0;F=d;i[d+48>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a:{if(!Od(d,b)|(i[d+12>>2]?0:a)){break a}if(!Kd(1,d+56|0,b)){break a}f=i[b+8>>2];n=i[b+16>>2];g=n;l=f-g|0;k=i[d+60>>2];e=k;m=i[b+20>>2];g=i[b+12>>2]-(m+(f>>>0>>0)|0)|0;f=i[d+56>>2];if((e|0)==(g|0)&f>>>0>l>>>0|e>>>0>g>>>0){break a}k=k+m|0;g=n;m=g+f|0;if(m>>>0>>0){k=k+1|0}i[b+16>>2]=m;i[b+20>>2]=k;if((f|0)<1){break a}l=n+i[b>>2]|0;i[d+40>>2]=l;g=d;b:{c:{d:{e:{f:{b=f+ -1|0;e=l+b|0;switch((j[e|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break c}}if((f|0)<2){break a}b=f+ -2|0;i[d+44>>2]=b;e=(f+l|0)+ -2|0;e=j[e+1|0]<<8&16128|j[e|0];break b}if((f|0)<3){break a}b=f+ -3|0;i[d+44>>2]=b;e=(f+l|0)+ -3|0;e=j[e+1|0]<<8|j[e+2|0]<<16&4128768|j[e|0];break b}b=f+ -4|0;i[d+44>>2]=b;e=(f+l|0)+ -4|0;e=j[e+2|0]<<16|j[e+3|0]<<24&1056964608|j[e+1|0]<<8|j[e|0];break b}i[d+44>>2]=b;e=j[e|0]&63}h=e- -1048576|0;i[g+48>>2]=h;p=h>>>0<268435456;if(!a|h>>>0>268435455){break a}m=i[d+28>>2];k=0;n=i[d+16>>2];while(1){g:{if(h>>>0>1048575){break g}while(1){if((b|0)<1){break g}b=b+ -1|0;i[d+44>>2]=b;h=j[b+l|0]|h<<8;i[d+48>>2]=h;if(h>>>0<1048576){continue}break}}f=h&262143;e=i[(f<<2)+n>>2];g=(e<<3)+m|0;h=(o(i[g>>2],h>>>18|0)+f|0)-i[g+4>>2]|0;i[d+48>>2]=h;i[(k<<2)+c>>2]=e;p=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=i[d+28>>2];if(a){i[d+32>>2]=a;Wk(a)}a=i[d+16>>2];if(a){i[d+20>>2]=a;Wk(a)}a=i[d>>2];if(a){i[d+4>>2]=a;Wk(a)}F=d- -64|0;return p}function Qd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{if(!k[b+38>>1]){break a}n=a+12|0;if(!Id(1,n,b)){break a}f=i[a+12>>2];c=i[a>>2];d=i[a+4>>2]-c>>2;b:{if(f>>>0>d>>>0){fd(a,f-d|0);f=i[a+12>>2];break b}if(f>>>0>=d>>>0){break b}i[a+4>>2]=c+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];l=i[b+12>>2];while(1){e=i[b+16>>2];d=i[b+20>>2];c=d;if((l|0)<(c|0)?1:(l|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];m=j[p+e|0];e=e+1|0;if(e>>>0<1){d=d+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=d;c=m>>>2|0;e=0;c:{d:{e:{f:{q=m&3;switch(q|0){case 0:break d;case 3:break f;default:break e}}d=c+g|0;if(d>>>0>=f>>>0){return 0}Zk(i[a>>2]+(g<<2)|0,0,(m&252)+4|0);g=d;break c}while(1){if((l|0)<(d|0)?1:(l|0)<=(d|0)?o>>>0<=h>>>0:0){return 0}m=j[h+p|0];h=h+1|0;if(h>>>0<1){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=m<<(e<<3|6)|c;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=c}g=g+1|0;f=i[n>>2];if(g>>>0>>0){continue}break}l=a+16|0;g=i[a>>2];b=i[a+16>>2];d=i[a+20>>2]-b|0;c=d>>2;g:{if(c>>>0<=1048575){fd(l,1048576-c|0);break g}if((d|0)==4194304){break g}i[a+20>>2]=b+4194304}h:{i:{b=a+28|0;d=i[b>>2];c=i[a+32>>2]-d>>3;if(f>>>0>c>>>0){Jd(b,f-c|0);d=i[b>>2];break i}if(f>>>0>>0){i[a+32>>2]=(f<<3)+d}if(f){break i}b=0;a=0;break h}a=i[g>>2];e=0;i[d+4>>2]=0;i[d>>2]=a;b=1;c=i[g>>2];if(c>>>0<=1048576){b=0;while(1){j:{if(e>>>0>>0){a=i[l>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((c|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+d|0;i[h+4>>2]=c;i[h>>2]=e;e=c;c=c+i[a>>2]|0;if(c>>>0>1048576){break j}continue}}break}b=b>>>0>>0}a=(c|0)==1048576}return a&(b^1)}return r}function Gd(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=F+ -64|0;F=d;i[d+48>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a:{if(!Pd(d,b)|(i[d+12>>2]?0:a)){break a}if(!Kd(1,d+56|0,b)){break a}f=i[b+8>>2];n=i[b+16>>2];g=n;l=f-g|0;k=i[d+60>>2];e=k;m=i[b+20>>2];g=i[b+12>>2]-(m+(f>>>0>>0)|0)|0;f=i[d+56>>2];if((e|0)==(g|0)&f>>>0>l>>>0|e>>>0>g>>>0){break a}k=k+m|0;g=n;m=g+f|0;if(m>>>0>>0){k=k+1|0}i[b+16>>2]=m;i[b+20>>2]=k;if((f|0)<1){break a}l=n+i[b>>2]|0;i[d+40>>2]=l;g=d;b:{c:{d:{e:{f:{b=f+ -1|0;e=l+b|0;switch((j[e|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break c}}if((f|0)<2){break a}b=f+ -2|0;i[d+44>>2]=b;e=(f+l|0)+ -2|0;e=j[e+1|0]<<8&16128|j[e|0];break b}if((f|0)<3){break a}b=f+ -3|0;i[d+44>>2]=b;e=(f+l|0)+ -3|0;e=j[e+1|0]<<8|j[e+2|0]<<16&4128768|j[e|0];break b}b=f+ -4|0;i[d+44>>2]=b;e=(f+l|0)+ -4|0;e=j[e+2|0]<<16|j[e+3|0]<<24&1056964608|j[e+1|0]<<8|j[e|0];break b}i[d+44>>2]=b;e=j[e|0]&63}h=e+2097152|0;i[g+48>>2]=h;p=h>>>0<536870912;if(!a|h>>>0>536870911){break a}m=i[d+28>>2];k=0;n=i[d+16>>2];while(1){g:{if(h>>>0>2097151){break g}while(1){if((b|0)<1){break g}b=b+ -1|0;i[d+44>>2]=b;h=j[b+l|0]|h<<8;i[d+48>>2]=h;if(h>>>0<2097152){continue}break}}f=h&524287;e=i[(f<<2)+n>>2];g=(e<<3)+m|0;h=(o(i[g>>2],h>>>19|0)+f|0)-i[g+4>>2]|0;i[d+48>>2]=h;i[(k<<2)+c>>2]=e;p=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=i[d+28>>2];if(a){i[d+32>>2]=a;Wk(a)}a=i[d+16>>2];if(a){i[d+20>>2]=a;Wk(a)}a=i[d>>2];if(a){i[d+4>>2]=a;Wk(a)}F=d- -64|0;return p}function Od(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{if(!k[b+38>>1]){break a}n=a+12|0;if(!Id(1,n,b)){break a}f=i[a+12>>2];c=i[a>>2];d=i[a+4>>2]-c>>2;b:{if(f>>>0>d>>>0){fd(a,f-d|0);f=i[a+12>>2];break b}if(f>>>0>=d>>>0){break b}i[a+4>>2]=c+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];l=i[b+12>>2];while(1){e=i[b+16>>2];d=i[b+20>>2];c=d;if((l|0)<(c|0)?1:(l|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];m=j[p+e|0];e=e+1|0;if(e>>>0<1){d=d+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=d;c=m>>>2|0;e=0;c:{d:{e:{f:{q=m&3;switch(q|0){case 0:break d;case 3:break f;default:break e}}d=c+g|0;if(d>>>0>=f>>>0){return 0}Zk(i[a>>2]+(g<<2)|0,0,(m&252)+4|0);g=d;break c}while(1){if((l|0)<(d|0)?1:(l|0)<=(d|0)?o>>>0<=h>>>0:0){return 0}m=j[h+p|0];h=h+1|0;if(h>>>0<1){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=m<<(e<<3|6)|c;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=c}g=g+1|0;f=i[n>>2];if(g>>>0>>0){continue}break}l=a+16|0;g=i[a>>2];b=i[a+16>>2];d=i[a+20>>2]-b|0;c=d>>2;g:{if(c>>>0<=262143){fd(l,262144-c|0);break g}if((d|0)==1048576){break g}i[a+20>>2]=b- -1048576}h:{i:{b=a+28|0;d=i[b>>2];c=i[a+32>>2]-d>>3;if(f>>>0>c>>>0){Jd(b,f-c|0);d=i[b>>2];break i}if(f>>>0>>0){i[a+32>>2]=(f<<3)+d}if(f){break i}b=0;a=0;break h}a=i[g>>2];e=0;i[d+4>>2]=0;i[d>>2]=a;b=1;c=i[g>>2];if(c>>>0<=262144){b=0;while(1){j:{if(e>>>0>>0){a=i[l>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((c|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+d|0;i[h+4>>2]=c;i[h>>2]=e;e=c;c=c+i[a>>2]|0;if(c>>>0>262144){break j}continue}}break}b=b>>>0>>0}a=(c|0)==262144}return a&(b^1)}return r}function Pd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{if(!k[b+38>>1]){break a}n=a+12|0;if(!Id(1,n,b)){break a}f=i[a+12>>2];c=i[a>>2];d=i[a+4>>2]-c>>2;b:{if(f>>>0>d>>>0){fd(a,f-d|0);f=i[a+12>>2];break b}if(f>>>0>=d>>>0){break b}i[a+4>>2]=c+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];l=i[b+12>>2];while(1){e=i[b+16>>2];d=i[b+20>>2];c=d;if((l|0)<(c|0)?1:(l|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];m=j[p+e|0];e=e+1|0;if(e>>>0<1){d=d+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=d;c=m>>>2|0;e=0;c:{d:{e:{f:{q=m&3;switch(q|0){case 0:break d;case 3:break f;default:break e}}d=c+g|0;if(d>>>0>=f>>>0){return 0}Zk(i[a>>2]+(g<<2)|0,0,(m&252)+4|0);g=d;break c}while(1){if((l|0)<(d|0)?1:(l|0)<=(d|0)?o>>>0<=h>>>0:0){return 0}m=j[h+p|0];h=h+1|0;if(h>>>0<1){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=m<<(e<<3|6)|c;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=c}g=g+1|0;f=i[n>>2];if(g>>>0>>0){continue}break}l=a+16|0;g=i[a>>2];b=i[a+16>>2];d=i[a+20>>2]-b|0;c=d>>2;g:{if(c>>>0<=524287){fd(l,524288-c|0);break g}if((d|0)==2097152){break g}i[a+20>>2]=b+2097152}h:{i:{b=a+28|0;d=i[b>>2];c=i[a+32>>2]-d>>3;if(f>>>0>c>>>0){Jd(b,f-c|0);d=i[b>>2];break i}if(f>>>0>>0){i[a+32>>2]=(f<<3)+d}if(f){break i}b=0;a=0;break h}a=i[g>>2];e=0;i[d+4>>2]=0;i[d>>2]=a;b=1;c=i[g>>2];if(c>>>0<=524288){b=0;while(1){j:{if(e>>>0>>0){a=i[l>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((c|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+d|0;i[h+4>>2]=c;i[h>>2]=e;e=c;c=c+i[a>>2]|0;if(c>>>0>524288){break j}continue}}break}b=b>>>0>>0}a=(c|0)==524288}return a&(b^1)}return r}function Ed(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=F+ -64|0;F=d;i[d+48>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a:{if(!Nd(d,b)|(i[d+12>>2]?0:a)){break a}if(!Kd(1,d+56|0,b)){break a}f=i[b+8>>2];n=i[b+16>>2];g=n;l=f-g|0;k=i[d+60>>2];e=k;m=i[b+20>>2];g=i[b+12>>2]-(m+(f>>>0>>0)|0)|0;f=i[d+56>>2];if((e|0)==(g|0)&f>>>0>l>>>0|e>>>0>g>>>0){break a}k=k+m|0;g=n;m=g+f|0;if(m>>>0>>0){k=k+1|0}i[b+16>>2]=m;i[b+20>>2]=k;if((f|0)<1){break a}l=n+i[b>>2]|0;i[d+40>>2]=l;g=d;b:{c:{d:{e:{f:{b=f+ -1|0;e=l+b|0;switch((j[e|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break c}}if((f|0)<2){break a}b=f+ -2|0;i[d+44>>2]=b;e=(f+l|0)+ -2|0;e=j[e+1|0]<<8&16128|j[e|0];break b}if((f|0)<3){break a}b=f+ -3|0;i[d+44>>2]=b;e=(f+l|0)+ -3|0;e=j[e+1|0]<<8|j[e+2|0]<<16&4128768|j[e|0];break b}b=f+ -4|0;i[d+44>>2]=b;e=(f+l|0)+ -4|0;e=j[e+2|0]<<16|j[e+3|0]<<24&1056964608|j[e+1|0]<<8|j[e|0];break b}i[d+44>>2]=b;e=j[e|0]&63}h=e+262144|0;i[g+48>>2]=h;p=h>>>0<67108864;if(!a|h>>>0>67108863){break a}m=i[d+28>>2];k=0;n=i[d+16>>2];while(1){g:{if(h>>>0>262143){break g}while(1){if((b|0)<1){break g}b=b+ -1|0;i[d+44>>2]=b;h=j[b+l|0]|h<<8;i[d+48>>2]=h;if(h>>>0<262144){continue}break}}f=h&65535;e=i[(f<<2)+n>>2];g=(e<<3)+m|0;h=(o(i[g>>2],h>>>16|0)+f|0)-i[g+4>>2]|0;i[d+48>>2]=h;i[(k<<2)+c>>2]=e;p=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=i[d+28>>2];if(a){i[d+32>>2]=a;Wk(a)}a=i[d+16>>2];if(a){i[d+20>>2]=a;Wk(a)}a=i[d>>2];if(a){i[d+4>>2]=a;Wk(a)}F=d- -64|0;return p}function Dd(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=F+ -64|0;F=d;i[d+48>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a:{if(!Md(d,b)|(i[d+12>>2]?0:a)){break a}if(!Kd(1,d+56|0,b)){break a}f=i[b+8>>2];n=i[b+16>>2];g=n;l=f-g|0;k=i[d+60>>2];e=k;m=i[b+20>>2];g=i[b+12>>2]-(m+(f>>>0>>0)|0)|0;f=i[d+56>>2];if((e|0)==(g|0)&f>>>0>l>>>0|e>>>0>g>>>0){break a}k=k+m|0;g=n;m=g+f|0;if(m>>>0>>0){k=k+1|0}i[b+16>>2]=m;i[b+20>>2]=k;if((f|0)<1){break a}l=n+i[b>>2]|0;i[d+40>>2]=l;g=d;b:{c:{d:{e:{f:{b=f+ -1|0;e=l+b|0;switch((j[e|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break c}}if((f|0)<2){break a}b=f+ -2|0;i[d+44>>2]=b;e=(f+l|0)+ -2|0;e=j[e+1|0]<<8&16128|j[e|0];break b}if((f|0)<3){break a}b=f+ -3|0;i[d+44>>2]=b;e=(f+l|0)+ -3|0;e=j[e+1|0]<<8|j[e+2|0]<<16&4128768|j[e|0];break b}b=f+ -4|0;i[d+44>>2]=b;e=(f+l|0)+ -4|0;e=j[e+2|0]<<16|j[e+3|0]<<24&1056964608|j[e+1|0]<<8|j[e|0];break b}i[d+44>>2]=b;e=j[e|0]&63}h=e+131072|0;i[g+48>>2]=h;p=h>>>0<33554432;if(!a|h>>>0>33554431){break a}m=i[d+28>>2];k=0;n=i[d+16>>2];while(1){g:{if(h>>>0>131071){break g}while(1){if((b|0)<1){break g}b=b+ -1|0;i[d+44>>2]=b;h=j[b+l|0]|h<<8;i[d+48>>2]=h;if(h>>>0<131072){continue}break}}f=h&32767;e=i[(f<<2)+n>>2];g=(e<<3)+m|0;h=(o(i[g>>2],h>>>15|0)+f|0)-i[g+4>>2]|0;i[d+48>>2]=h;i[(k<<2)+c>>2]=e;p=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=i[d+28>>2];if(a){i[d+32>>2]=a;Wk(a)}a=i[d+16>>2];if(a){i[d+20>>2]=a;Wk(a)}a=i[d>>2];if(a){i[d+4>>2]=a;Wk(a)}F=d- -64|0;return p}function Nd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{if(!k[b+38>>1]){break a}n=a+12|0;if(!Id(1,n,b)){break a}f=i[a+12>>2];c=i[a>>2];d=i[a+4>>2]-c>>2;b:{if(f>>>0>d>>>0){fd(a,f-d|0);f=i[a+12>>2];break b}if(f>>>0>=d>>>0){break b}i[a+4>>2]=c+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];l=i[b+12>>2];while(1){e=i[b+16>>2];d=i[b+20>>2];c=d;if((l|0)<(c|0)?1:(l|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];m=j[p+e|0];e=e+1|0;if(e>>>0<1){d=d+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=d;c=m>>>2|0;e=0;c:{d:{e:{f:{q=m&3;switch(q|0){case 0:break d;case 3:break f;default:break e}}d=c+g|0;if(d>>>0>=f>>>0){return 0}Zk(i[a>>2]+(g<<2)|0,0,(m&252)+4|0);g=d;break c}while(1){if((l|0)<(d|0)?1:(l|0)<=(d|0)?o>>>0<=h>>>0:0){return 0}m=j[h+p|0];h=h+1|0;if(h>>>0<1){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=m<<(e<<3|6)|c;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=c}g=g+1|0;f=i[n>>2];if(g>>>0>>0){continue}break}l=a+16|0;g=i[a>>2];b=i[a+16>>2];d=i[a+20>>2]-b|0;c=d>>2;g:{if(c>>>0<=65535){fd(l,65536-c|0);break g}if((d|0)==262144){break g}i[a+20>>2]=b+262144}h:{i:{b=a+28|0;d=i[b>>2];c=i[a+32>>2]-d>>3;if(f>>>0>c>>>0){Jd(b,f-c|0);d=i[b>>2];break i}if(f>>>0>>0){i[a+32>>2]=(f<<3)+d}if(f){break i}b=0;a=0;break h}a=i[g>>2];e=0;i[d+4>>2]=0;i[d>>2]=a;b=1;c=i[g>>2];if(c>>>0<=65536){b=0;while(1){j:{if(e>>>0>>0){a=i[l>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((c|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+d|0;i[h+4>>2]=c;i[h>>2]=e;e=c;c=c+i[a>>2]|0;if(c>>>0>65536){break j}continue}}break}b=b>>>0>>0}a=(c|0)==65536}return a&(b^1)}return r}function Md(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{if(!k[b+38>>1]){break a}n=a+12|0;if(!Id(1,n,b)){break a}f=i[a+12>>2];c=i[a>>2];d=i[a+4>>2]-c>>2;b:{if(f>>>0>d>>>0){fd(a,f-d|0);f=i[a+12>>2];break b}if(f>>>0>=d>>>0){break b}i[a+4>>2]=c+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];l=i[b+12>>2];while(1){e=i[b+16>>2];d=i[b+20>>2];c=d;if((l|0)<(c|0)?1:(l|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];m=j[p+e|0];e=e+1|0;if(e>>>0<1){d=d+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=d;c=m>>>2|0;e=0;c:{d:{e:{f:{q=m&3;switch(q|0){case 0:break d;case 3:break f;default:break e}}d=c+g|0;if(d>>>0>=f>>>0){return 0}Zk(i[a>>2]+(g<<2)|0,0,(m&252)+4|0);g=d;break c}while(1){if((l|0)<(d|0)?1:(l|0)<=(d|0)?o>>>0<=h>>>0:0){return 0}m=j[h+p|0];h=h+1|0;if(h>>>0<1){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=m<<(e<<3|6)|c;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=c}g=g+1|0;f=i[n>>2];if(g>>>0>>0){continue}break}l=a+16|0;g=i[a>>2];b=i[a+16>>2];d=i[a+20>>2]-b|0;c=d>>2;g:{if(c>>>0<=32767){fd(l,32768-c|0);break g}if((d|0)==131072){break g}i[a+20>>2]=b+131072}h:{i:{b=a+28|0;d=i[b>>2];c=i[a+32>>2]-d>>3;if(f>>>0>c>>>0){Jd(b,f-c|0);d=i[b>>2];break i}if(f>>>0>>0){i[a+32>>2]=(f<<3)+d}if(f){break i}b=0;a=0;break h}a=i[g>>2];e=0;i[d+4>>2]=0;i[d>>2]=a;b=1;c=i[g>>2];if(c>>>0<=32768){b=0;while(1){j:{if(e>>>0>>0){a=i[l>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((c|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+d|0;i[h+4>>2]=c;i[h>>2]=e;e=c;c=c+i[a>>2]|0;if(c>>>0>32768){break j}continue}}break}b=b>>>0>>0}a=(c|0)==32768}return a&(b^1)}return r}function Cd(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=F+ -64|0;F=d;i[d+48>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a:{if(!Ld(d,b)|(i[d+12>>2]?0:a)){break a}if(!Kd(1,d+56|0,b)){break a}f=i[b+8>>2];n=i[b+16>>2];g=n;l=f-g|0;k=i[d+60>>2];e=k;m=i[b+20>>2];g=i[b+12>>2]-(m+(f>>>0>>0)|0)|0;f=i[d+56>>2];if((e|0)==(g|0)&f>>>0>l>>>0|e>>>0>g>>>0){break a}k=k+m|0;g=n;m=g+f|0;if(m>>>0>>0){k=k+1|0}i[b+16>>2]=m;i[b+20>>2]=k;if((f|0)<1){break a}l=n+i[b>>2]|0;i[d+40>>2]=l;g=d;b:{c:{d:{e:{f:{b=f+ -1|0;e=l+b|0;switch((j[e|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break c}}if((f|0)<2){break a}b=f+ -2|0;i[d+44>>2]=b;e=(f+l|0)+ -2|0;e=j[e+1|0]<<8&16128|j[e|0];break b}if((f|0)<3){break a}b=f+ -3|0;i[d+44>>2]=b;e=(f+l|0)+ -3|0;e=j[e+1|0]<<8|j[e+2|0]<<16&4128768|j[e|0];break b}b=f+ -4|0;i[d+44>>2]=b;e=(f+l|0)+ -4|0;e=j[e+2|0]<<16|j[e+3|0]<<24&1056964608|j[e+1|0]<<8|j[e|0];break b}i[d+44>>2]=b;e=j[e|0]&63}h=e+32768|0;i[g+48>>2]=h;p=h>>>0<8388608;if(!a|h>>>0>8388607){break a}m=i[d+28>>2];k=0;n=i[d+16>>2];while(1){g:{if(h>>>0>32767){break g}while(1){if((b|0)<1){break g}b=b+ -1|0;i[d+44>>2]=b;h=j[b+l|0]|h<<8;i[d+48>>2]=h;if(h>>>0<32768){continue}break}}f=h&8191;e=i[(f<<2)+n>>2];g=(e<<3)+m|0;h=(o(i[g>>2],h>>>13|0)+f|0)-i[g+4>>2]|0;i[d+48>>2]=h;i[(k<<2)+c>>2]=e;p=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=i[d+28>>2];if(a){i[d+32>>2]=a;Wk(a)}a=i[d+16>>2];if(a){i[d+20>>2]=a;Wk(a)}a=i[d>>2];if(a){i[d+4>>2]=a;Wk(a)}F=d- -64|0;return p}function Ad(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=F+ -64|0;F=d;i[d+48>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a:{if(!yd(d,b)|(i[d+12>>2]?0:a)){break a}if(!Kd(1,d+56|0,b)){break a}f=i[b+8>>2];n=i[b+16>>2];g=n;l=f-g|0;k=i[d+60>>2];e=k;m=i[b+20>>2];g=i[b+12>>2]-(m+(f>>>0>>0)|0)|0;f=i[d+56>>2];if((e|0)==(g|0)&f>>>0>l>>>0|e>>>0>g>>>0){break a}k=k+m|0;g=n;m=g+f|0;if(m>>>0>>0){k=k+1|0}i[b+16>>2]=m;i[b+20>>2]=k;if((f|0)<1){break a}l=n+i[b>>2]|0;i[d+40>>2]=l;g=d;b:{c:{d:{e:{f:{b=f+ -1|0;e=l+b|0;switch((j[e|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break c}}if((f|0)<2){break a}b=f+ -2|0;i[d+44>>2]=b;e=(f+l|0)+ -2|0;e=j[e+1|0]<<8&16128|j[e|0];break b}if((f|0)<3){break a}b=f+ -3|0;i[d+44>>2]=b;e=(f+l|0)+ -3|0;e=j[e+1|0]<<8|j[e+2|0]<<16&4128768|j[e|0];break b}b=f+ -4|0;i[d+44>>2]=b;e=(f+l|0)+ -4|0;e=j[e+2|0]<<16|j[e+3|0]<<24&1056964608|j[e+1|0]<<8|j[e|0];break b}i[d+44>>2]=b;e=j[e|0]&63}h=e+16384|0;i[g+48>>2]=h;p=h>>>0<4194304;if(!a|h>>>0>4194303){break a}m=i[d+28>>2];k=0;n=i[d+16>>2];while(1){g:{if(h>>>0>16383){break g}while(1){if((b|0)<1){break g}b=b+ -1|0;i[d+44>>2]=b;h=j[b+l|0]|h<<8;i[d+48>>2]=h;if(h>>>0<16384){continue}break}}f=h&4095;e=i[(f<<2)+n>>2];g=(e<<3)+m|0;h=(o(i[g>>2],h>>>12|0)+f|0)-i[g+4>>2]|0;i[d+48>>2]=h;i[(k<<2)+c>>2]=e;p=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=i[d+28>>2];if(a){i[d+32>>2]=a;Wk(a)}a=i[d+16>>2];if(a){i[d+20>>2]=a;Wk(a)}a=i[d>>2];if(a){i[d+4>>2]=a;Wk(a)}F=d- -64|0;return p}function yd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{if(!k[b+38>>1]){break a}n=a+12|0;if(!Id(1,n,b)){break a}f=i[a+12>>2];c=i[a>>2];d=i[a+4>>2]-c>>2;b:{if(f>>>0>d>>>0){fd(a,f-d|0);f=i[a+12>>2];break b}if(f>>>0>=d>>>0){break b}i[a+4>>2]=c+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];l=i[b+12>>2];while(1){e=i[b+16>>2];d=i[b+20>>2];c=d;if((l|0)<(c|0)?1:(l|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];m=j[p+e|0];e=e+1|0;if(e>>>0<1){d=d+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=d;c=m>>>2|0;e=0;c:{d:{e:{f:{q=m&3;switch(q|0){case 0:break d;case 3:break f;default:break e}}d=c+g|0;if(d>>>0>=f>>>0){return 0}Zk(i[a>>2]+(g<<2)|0,0,(m&252)+4|0);g=d;break c}while(1){if((l|0)<(d|0)?1:(l|0)<=(d|0)?o>>>0<=h>>>0:0){return 0}m=j[h+p|0];h=h+1|0;if(h>>>0<1){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=m<<(e<<3|6)|c;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=c}g=g+1|0;f=i[n>>2];if(g>>>0>>0){continue}break}l=a+16|0;g=i[a>>2];b=i[a+16>>2];d=i[a+20>>2]-b|0;c=d>>2;g:{if(c>>>0<=4095){fd(l,4096-c|0);break g}if((d|0)==16384){break g}i[a+20>>2]=b+16384}h:{i:{b=a+28|0;d=i[b>>2];c=i[a+32>>2]-d>>3;if(f>>>0>c>>>0){Jd(b,f-c|0);d=i[b>>2];break i}if(f>>>0>>0){i[a+32>>2]=(f<<3)+d}if(f){break i}b=0;a=0;break h}a=i[g>>2];e=0;i[d+4>>2]=0;i[d>>2]=a;b=1;c=i[g>>2];if(c>>>0<=4096){b=0;while(1){j:{if(e>>>0>>0){a=i[l>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((c|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+d|0;i[h+4>>2]=c;i[h>>2]=e;e=c;c=c+i[a>>2]|0;if(c>>>0>4096){break j}continue}}break}b=b>>>0>>0}a=(c|0)==4096}return a&(b^1)}return r}function Ld(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{if(!k[b+38>>1]){break a}n=a+12|0;if(!Id(1,n,b)){break a}f=i[a+12>>2];c=i[a>>2];d=i[a+4>>2]-c>>2;b:{if(f>>>0>d>>>0){fd(a,f-d|0);f=i[a+12>>2];break b}if(f>>>0>=d>>>0){break b}i[a+4>>2]=c+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];l=i[b+12>>2];while(1){e=i[b+16>>2];d=i[b+20>>2];c=d;if((l|0)<(c|0)?1:(l|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];m=j[p+e|0];e=e+1|0;if(e>>>0<1){d=d+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=d;c=m>>>2|0;e=0;c:{d:{e:{f:{q=m&3;switch(q|0){case 0:break d;case 3:break f;default:break e}}d=c+g|0;if(d>>>0>=f>>>0){return 0}Zk(i[a>>2]+(g<<2)|0,0,(m&252)+4|0);g=d;break c}while(1){if((l|0)<(d|0)?1:(l|0)<=(d|0)?o>>>0<=h>>>0:0){return 0}m=j[h+p|0];h=h+1|0;if(h>>>0<1){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=m<<(e<<3|6)|c;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=c}g=g+1|0;f=i[n>>2];if(g>>>0>>0){continue}break}l=a+16|0;g=i[a>>2];b=i[a+16>>2];d=i[a+20>>2]-b|0;c=d>>2;g:{if(c>>>0<=8191){fd(l,8192-c|0);break g}if((d|0)==32768){break g}i[a+20>>2]=b+32768}h:{i:{b=a+28|0;d=i[b>>2];c=i[a+32>>2]-d>>3;if(f>>>0>c>>>0){Jd(b,f-c|0);d=i[b>>2];break i}if(f>>>0>>0){i[a+32>>2]=(f<<3)+d}if(f){break i}b=0;a=0;break h}a=i[g>>2];e=0;i[d+4>>2]=0;i[d>>2]=a;b=1;c=i[g>>2];if(c>>>0<=8192){b=0;while(1){j:{if(e>>>0>>0){a=i[l>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((c|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+d|0;i[h+4>>2]=c;i[h>>2]=e;e=c;c=c+i[a>>2]|0;if(c>>>0>8192){break j}continue}}break}b=b>>>0>>0}a=(c|0)==8192}return a&(b^1)}return r}function Tc(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=c;k=i[b+16>>2];g=i[f+4>>2]-k|0;e=i[f>>2]-k|0;i[f>>2]=e;i[f+4>>2]=g;f=g>>31;h=f+g^f;f=e>>31;m=i[b+16>>2];l=(h+(f+e^f)|0)<=(m|0);a:{if(l){f=g;break a}b:{c:{if((e|0)>=0){j=1;h=1;if((g|0)>-1){break b}f=1;j=-1;h=-1;if((e|0)>=1){break c}break b}f=-1;j=-1;h=-1;if((g|0)<1){break b}}j=(g|0)<1?-1:1;h=f}f=e<<1;e=o(h,m);f=f-e|0;h=(o(h,j)|0)>-1;j=o(j,m);f=((h?0-f|0:f)+j|0)/2|0;i[c+4>>2]=f;g=(g<<1)-j|0;e=(e+(h?0-g|0:g)|0)/2|0;i[c>>2]=e}d:{e:{f:{g:{h:{if(!e){if(f){break h}j=1;f=0;g=0;h=0;break d}j=1;g=(e|0)<0&(f|0)<1;i:{if((e|0)>=1){h=(f|0)>-1?2:1;if(!g){break i}g=e;break d}h=(f|0)>0?3:0;if(!g){break i}g=e;break d}j=h+ -1|0;h=0;g=e;j:{switch(j|0){case 1:break j;case 0:break f;case 2:break g;default:break e}}f=0-f|0;g=0-e|0;h=2;break e}if((f|0)<1){break f}}g=0-f|0;h=3;f=e;break e}h=1;g=f;f=0-e|0}e=c;i[e>>2]=g;i[e+4>>2]=f;j=0}c=i[d+4>>2]+f|0;f=i[b+16>>2];e=i[d>>2]+g|0;k:{if((f|0)<(e|0)){e=e-i[b+4>>2]|0;break k}if((e|0)>=(0-f|0)){break k}e=i[b+4>>2]+e|0}l:{if((f|0)<(c|0)){c=c-i[b+4>>2]|0;break l}if((c|0)>=(0-f|0)){break l}c=i[b+4>>2]+c|0}m:{if(j){b=c;break m}b=c;n:{switch((4-h&3)+ -1|0){case 0:b=0-e|0;e=c;break m;case 1:b=0-c|0;e=0-e|0;break m;case 2:break n;default:break m}}b=e;e=0-c|0}o:{if(l){c=b;break o}p:{q:{if((e|0)>=0){c=1;g=1;if((b|0)>-1){break p}d=1;c=-1;g=-1;if((e|0)>=1){break q}break p}d=-1;c=-1;g=-1;if((b|0)<1){break p}}c=(b|0)<1?-1:1;g=d}d=e<<1;e=o(f,g);d=d-e|0;i[a>>2]=d;l=0-d|0;h=d;d=(o(c,g)|0)>-1;g=o(c,f);c=((d?l:h)+g|0)/2|0;b=(b<<1)-g|0;e=(e+(d?0-b|0:b)|0)/2|0}i[a>>2]=e+k;i[a+4>>2]=c+k}function Ee(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=F-16|0;F=h;a:{if(!hd(a+80|0,a)){break a}if(!te(a)){break a}c=i[a+4>>2];i[b>>2]=i[a>>2];i[b+4>>2]=c;c=i[a+36>>2];i[b+32>>2]=i[a+32>>2];i[b+36>>2]=c;c=i[a+28>>2];i[b+24>>2]=i[a+24>>2];i[b+28>>2]=c;c=i[a+20>>2];i[b+16>>2]=i[a+16>>2];i[b+20>>2]=c;c=i[a+12>>2];i[b+8>>2]=i[a+8>>2];i[b+12>>2]=c;i[a+176>>2]=2;i[a+180>>2]=7;c=i[a+152>>2];if((c|0)<0){break a}i[h+12>>2]=0;d=2;f=i[a+156>>2];g=i[a+160>>2]-f>>2;b:{if(c>>>0>g>>>0){Na(a+156|0,c-g|0,h+12|0);d=i[a+176>>2];e=i[a+180>>2];break b}e=7;if(c>>>0>=g>>>0){break b}i[a+160>>2]=f+(c<<2)}g=a+184|0;e=(e-d|0)+1|0;c=i[a+188>>2];f=i[a+184>>2];d=(c-f|0)/12|0;c:{if(e>>>0>d>>>0){Ge(g,e-d|0);e=i[a+188>>2];break c}if(e>>>0>=d>>>0){e=c;break c}e=f+o(e,12)|0;if((e|0)!=(c|0)){while(1){d=c+ -12|0;f=i[d>>2];if(f){i[c+ -8>>2]=f;Wk(f)}c=d;if((c|0)!=(e|0)){continue}break}}i[a+188>>2]=e}l=a+196|0;d=i[a+184>>2];c=(e-d|0)/12|0;j=i[a+196>>2];f=i[a+200>>2]-j>>2;d:{if(c>>>0>f>>>0){La(l,c-f|0);d=i[a+184>>2];e=i[a+188>>2];break d}if(c>>>0>=f>>>0){break d}i[a+200>>2]=j+(c<<2)}if((d|0)==(e|0)){d=1;break a}c=0;while(1){e:{if(!oe(1,h+8|0,b)){break e}d=i[h+8>>2];e=i[a+148>>2];if(d>>>0>(i[e+4>>2]-i[e>>2]>>2>>>0)/3>>>0){break e}if(d){e=i[g>>2];m=o(c,12);f=e+m|0;j=i[f>>2];k=i[f+4>>2]-j>>2;f:{if(d>>>0>k>>>0){fd(f,d-k|0);e=i[g>>2];break f}if(d>>>0>=k>>>0){break f}i[f+4>>2]=(d<<2)+j}vd(d,1,b,i[e+m>>2]);i[i[l>>2]+(c<<2)>>2]=d}d=1;c=c+1|0;if(c>>>0<(i[a+188>>2]-i[a+184>>2]|0)/12>>>0){continue}break a}break}d=0}F=h+16|0;return d}function nb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=F-16|0;F=e;h=I[i[i[a>>2]+24>>2]](a)|0;a:{if((h|0)<1){break a}q=a+48|0;k=1;while(1){b:{c:{if(!i[(I[i[i[a>>2]+28>>2]](a)|0)+40>>2]){break c}l=f<<2;b=i[l+i[a+36>>2]>>2];c=i[b+8>>2];m=bb(b);if(!m){break c}n=i[(I[i[i[a>>2]+28>>2]](a)|0)+40>>2];o=i[c+56>>2];b=lk(32);i[e>>2]=b;i[e+4>>2]=24;i[e+8>>2]=-2147483616;g[b+24|0]=0;c=j[1808]|j[1809]<<8|(j[1810]<<16|j[1811]<<24);d=j[1804]|j[1805]<<8|(j[1806]<<16|j[1807]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[1800]|j[1801]<<8|(j[1802]<<16|j[1803]<<24);d=j[1796]|j[1797]<<8|(j[1798]<<16|j[1799]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[1792]|j[1793]<<8|(j[1794]<<16|j[1795]<<24);d=j[1788]|j[1789]<<8|(j[1790]<<16|j[1791]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;d:{e:{d=n+16|0;b=d;c=i[b>>2];if(!c){break e}while(1){p=i[c+16>>2]<(o|0);b=p?b:c;c=i[(p<<2)+c>>2];if(c){continue}break}if((b|0)==(d|0)|(o|0)>2]){break e}b=b+20|0;if(!Xa(b,e)){break e}b=Zf(b,e);break d}b=Zf(n,e)}if(g[e+11|0]<=-1){Wk(i[e>>2])}if(!b){break c}Fa(i[i[i[a+36>>2]+l>>2]+8>>2],m);break b}b=i[i[a+36>>2]+(f<<2)>>2];if(!(I[i[i[b>>2]+24>>2]](b,q)|0)){break a}}f=f+1|0;k=(f|0)<(h|0);if((f|0)!=(h|0)){continue}break}}F=e+16|0;return(k^-1)&1}function td(a,b,c,d,e){var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;a:{b:{c:{d:{e:{n=a+4|0;f:{if((n|0)==(b|0)){break f}f=j[b+27|0];h=f<<24>>24<0;k=j[e+11|0];p=k<<24>>24;g=(p|0)<0;f=h?i[b+20>>2]:f;k=g?i[e+4>>2]:k;l=f>>>0>>0;m=l?f:k;if(m){g=g?i[e>>2]:e;o=b+16|0;h=h?i[o>>2]:o;o=Lj(g,h,m);if(!o){if(k>>>0>>0){break f}break e}if((o|0)>-1){break e}break f}if(k>>>0>=f>>>0){break d}}h=i[b>>2];d=b;g:{h:{if(i[a>>2]==(b|0)){break h}i:{if(h){f=h;while(1){d=f;f=i[f+4>>2];if(f){continue}break}break i}d=b+8|0;if(i[i[b+8>>2]>>2]==(b|0)){while(1){f=i[d>>2];d=f+8|0;if((f|0)==i[i[f+8>>2]>>2]){continue}break}}d=i[d>>2]}g=j[e+11|0];f=g<<24>>24<0;l=j[d+27|0];k=l<<24>>24<0;j:{g=f?i[e+4>>2]:g;l=k?i[d+20>>2]:l;m=g>>>0>>0?g:l;if(m){n=d+16|0;f=Lj(k?i[n>>2]:n,f?i[e>>2]:e,m);if(f){break j}}if(l>>>0>>0){break h}break g}if((f|0)>-1){break g}}if(!h){i[c>>2]=b;return b}i[c>>2]=d;return d+4|0}return ud(a,c,e)}f=Lj(h,g,m);if(f){break c}}if(l){break b}break a}if((f|0)>-1){break a}}h=i[b+4>>2];k:{if(h){f=h;while(1){d=f;f=i[f>>2];if(f){continue}break}break k}d=i[b+8>>2];if(i[d>>2]==(b|0)){break k}f=b+8|0;while(1){g=i[f>>2];f=g+8|0;d=i[g+8>>2];if((g|0)!=i[d>>2]){continue}break}}l:{m:{if((d|0)==(n|0)){break m}g=j[d+27|0];f=g<<24>>24<0;n:{g=f?i[d+20>>2]:g;l=g>>>0>>0?g:k;if(l){m=d+16|0;f=Lj((p|0)<0?i[e>>2]:e,f?i[m>>2]:m,l);if(f){break n}}if(k>>>0>>0){break m}break l}if((f|0)>-1){break l}}if(!h){i[c>>2]=b;return b+4|0}i[c>>2]=d;return d}return ud(a,c,e)}i[c>>2]=b;i[d>>2]=b;return d}function ld(a,b){var c=0,d=0,e=0;c=F-96|0;F=c;d=i[b+36>>2];i[c+88>>2]=i[b+32>>2];i[c+92>>2]=d;d=i[b+28>>2];i[c+80>>2]=i[b+24>>2];i[c+84>>2]=d;d=i[b+20>>2];i[c+72>>2]=i[b+16>>2];i[c+76>>2]=d;e=i[b+12>>2];d=c- -64|0;i[d>>2]=i[b+8>>2];i[d+4>>2]=e;d=i[b+4>>2];i[c+56>>2]=i[b>>2];i[c+60>>2]=d;Cf(c+24|0,c+56|0,c+40|0);b=i[c+24>>2];a:{if(b){i[a>>2]=b;ok(a+4|0,c+24|4);if(g[c+39|0]>-1){break a}Wk(i[c+28>>2]);break a}if(g[c+39|0]<=-1){Wk(i[c+28>>2])}b=j[c+47|0];if(b>>>0>=2){b=lk(32);i[c+8>>2]=b;i[c+12>>2]=26;i[c+16>>2]=-2147483616;g[b+26|0]=0;d=j[8009]|j[8010]<<8;g[b+24|0]=d;g[b+25|0]=d>>>8;d=j[8005]|j[8006]<<8|(j[8007]<<16|j[8008]<<24);e=j[8001]|j[8002]<<8|(j[8003]<<16|j[8004]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[7997]|j[7998]<<8|(j[7999]<<16|j[8e3]<<24);e=j[7993]|j[7994]<<8|(j[7995]<<16|j[7996]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[7989]|j[7990]<<8|(j[7991]<<16|j[7992]<<24);e=j[7985]|j[7986]<<8|(j[7987]<<16|j[7988]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[c+24>>2]=-1;b=ok(c+24|4,c+8|0);i[a>>2]=i[c+24>>2];ok(a+4|0,b);if(g[b+11|0]<=-1){Wk(i[b>>2])}if(g[c+19|0]>-1){break a}Wk(i[c+8>>2]);break a}i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;i[a+8>>2]=0;i[a+12>>2]=0}F=c+96|0}function se(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;n=F-16|0;F=n;s=-1;a:{b:{c:{if(!oe(1,n+12|0,b)){break c}d=i[n+12>>2];if(d){c=i[a+8>>2];if(d>>>0>(i[c+4>>2]-i[c>>2]>>2>>>0)/3>>>0){break c}t=a+36|0;while(1){if(!oe(1,n+8|0,b)){break c}c=i[n+8>>2];if(!oe(1,n+8|0,b)){break c}m=c+m|0;c=i[n+8>>2];if(m>>>0>>0){break c}h=m-c|0;c=i[a+40>>2];d:{if((c|0)!=i[a+44>>2]){i[c+4>>2]=m;i[c>>2]=h;i[a+40>>2]=c+12;break d}e=c;c=i[t>>2];q=e-c|0;f=(q|0)/12|0;p=f+1|0;if(p>>>0>=357913942){break b}e=f<<1;p=f>>>0<178956970?e>>>0

>>0?p:e:357913941;e=0;e:{if(!p){break e}if(p>>>0>=357913942){break a}e=lk(o(p,12))}f=e+o(f,12)|0;i[f+4>>2]=m;i[f>>2]=h;h=f+o((q|0)/-12|0,12)|0;e=e+o(p,12)|0;f=f+12|0;if((q|0)>=1){Yk(h,c,q)}i[a+44>>2]=e;i[a+40>>2]=f;i[a+36>>2]=h;if(!c){break d}Wk(c)}r=r+1|0;if((d|0)!=(r|0)){continue}break}m=0;Sf(b,0,0);q=d>>>0>1?d:1;while(1){d=j[b+36|0];c=k[i[a+4>>2]+36>>1];f:{if((c<<24|c<<8&16711680)>>>16>>>0<=513){if(!d){break f}h=0;d=i[b+32>>2];r=d>>>3|0;f=i[b+24>>2];c=r+f|0;e=i[b+28>>2];g:{if(c>>>0>=e>>>0){c=d;break g}h=j[c|0];c=d+1|0;i[b+32>>2]=c;r=c>>>3|0;h=h>>>(d&7)&1}if(f+r>>>0>=e>>>0){break f}i[b+32>>2]=c+1;break f}if(!d){break f}h=0;d=i[b+32>>2];c=i[b+24>>2]+(d>>>3|0)|0;if(c>>>0>=l[b+28>>2]){break f}c=j[c|0];i[b+32>>2]=d+1;h=c>>>(d&7)&1}d=i[a+36>>2]+o(m,12)|0;g[d+8|0]=j[d+8|0]&254|h&1;m=m+1|0;if((q|0)!=(m|0)){continue}break}Uf(b)}s=i[b+16>>2]}F=n+16|0;return s}Ak();x()}va(8944);x()}function md(a,b,c,d){var e=0,f=0,h=0;e=F-80|0;F=e;f=i[c+36>>2];i[e+72>>2]=i[c+32>>2];i[e+76>>2]=f;h=i[c+28>>2];f=e- -64|0;i[f>>2]=i[c+24>>2];i[f+4>>2]=h;f=i[c+20>>2];i[e+56>>2]=i[c+16>>2];i[e+60>>2]=f;f=i[c+12>>2];i[e+48>>2]=i[c+8>>2];i[e+52>>2]=f;f=i[c+4>>2];i[e+40>>2]=i[c>>2];i[e+44>>2]=f;Cf(a,e+40|0,e+24|0);a:{if(i[a>>2]){break a}f=a+4|0;if(g[a+15|0]<=-1){Wk(i[f>>2])}if(j[e+31|0]!=1){b=lk(32);i[e>>2]=b;i[e+4>>2]=20;i[e+8>>2]=-2147483616;g[b+20|0]=0;c=j[8028]|j[8029]<<8|(j[8030]<<16|j[8031]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;c=j[8024]|j[8025]<<8|(j[8026]<<16|j[8027]<<24);d=j[8020]|j[8021]<<8|(j[8022]<<16|j[8023]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[8016]|j[8017]<<8|(j[8018]<<16|j[8019]<<24);d=j[8012]|j[8013]<<8|(j[8014]<<16|j[8015]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;ok(f,e);if(g[e+11|0]>-1){break a}Wk(i[e>>2]);break a}kd(e,j[e+32|0]);h=i[e>>2];b:{if(h){i[a>>2]=h;ok(f,e|4);break b}h=i[e+16>>2];i[e+16>>2]=0;i[h+44>>2]=d;Ff(a,h,b,c,d);if(!i[a>>2]){if(g[f+11|0]<=-1){Wk(i[f>>2])}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}if(!h){break b}I[i[i[h>>2]+4>>2]](h)}a=i[e+16>>2];i[e+16>>2]=0;if(a){I[i[i[a>>2]+4>>2]](a)}if(g[e+15|0]>-1){break a}Wk(i[e+4>>2])}F=e+80|0}function Fc(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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i[a+8>>2]=e;h=a+32|0;g=i[h>>2];f=i[a+36>>2]-g>>2;a:{if(f>>>0>>0){La(h,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}h=0;f=(e&1073741823)!=(e|0)?-1:e<<2;n=Zk(lk(f),0,f);g=i[a+8>>2];b:{if((g|0)<1){break b}while(1){f=h<<2;g=i[f+n>>2];j=i[a+16>>2];c:{if((g|0)>(j|0)){k=i[a+32>>2];i[f+k>>2]=j;break c}k=i[a+32>>2];f=f+k|0;j=i[a+12>>2];if((g|0)<(j|0)){i[f>>2]=j;break c}i[f>>2]=g}h=h+1|0;g=i[a+8>>2];if((h|0)<(g|0)){continue}break}if((g|0)<1){break b}j=0;while(1){h=j<<2;f=h+c|0;h=i[b+h>>2]+i[h+k>>2]|0;i[f>>2]=h;d:{if((h|0)>i[a+16>>2]){h=h-i[a+20>>2]|0}else{if((h|0)>=i[a+12>>2]){break d}h=h+i[a+20>>2]|0}i[f>>2]=h}j=j+1|0;g=i[a+8>>2];if((j|0)<(g|0)){continue}break}}if((e|0)<(d|0)){p=0-e<<2;f=e;while(1){e:{if((g|0)<1){break e}m=f<<2;o=m+c|0;q=o+p|0;h=0;while(1){g=h<<2;j=i[g+q>>2];l=i[a+16>>2];f:{if((j|0)>(l|0)){k=i[a+32>>2];i[g+k>>2]=l;break f}k=i[a+32>>2];g=g+k|0;l=i[a+12>>2];if((j|0)<(l|0)){i[g>>2]=l;break f}i[g>>2]=j}h=h+1|0;g=i[a+8>>2];if((h|0)<(g|0)){continue}break}j=0;if((g|0)<1){break e}m=b+m|0;while(1){g=j<<2;h=g+o|0;g=i[g+m>>2]+i[g+k>>2]|0;i[h>>2]=g;g:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break g}g=g+i[a+20>>2]|0}i[h>>2]=g}j=j+1|0;g=i[a+8>>2];if((j|0)<(g|0)){continue}break}}f=e+f|0;if((f|0)<(d|0)){continue}break}}Wk(n);return 1}function he(a,b,c){var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;d=F-112|0;F=d;m=i[i[b+4>>2]+44>>2];h=lk(120);e=h;i[e+12>>2]=0;i[e+16>>2]=0;i[e>>2]=9052;i[e+4>>2]=0;i[e+8>>2]=9264;i[e+116>>2]=0;i[e+112>>2]=c;i[e+108>>2]=m;i[e+104>>2]=0;i[e+96>>2]=0;i[e+100>>2]=0;i[e+20>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+56>>2]=0;i[e+60>>2]=0;e=e- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[h+72>>2]=0;i[h+76>>2]=0;i[h+80>>2]=0;i[h+84>>2]=0;i[h+88>>2]=0;b=i[b+8>>2];i[d+52>>2]=0;e=d+44|0;i[e>>2]=0;i[e+4>>2]=0;i[d+36>>2]=0;i[d+40>>2]=0;n=d+28|0;k=n;i[k>>2]=0;i[k+4>>2]=0;k=d+20|0;f=k;i[f>>2]=0;i[f+4>>2]=0;f=d- -64|0;i[f>>2]=0;i[f+4>>2]=0;i[d+72>>2]=0;i[d+76>>2]=0;f=d+80|0;i[f>>2]=0;i[f+4>>2]=0;i[d+88>>2]=0;i[d+104>>2]=0;i[d+12>>2]=0;i[d+16>>2]=0;i[d+56>>2]=0;i[d+60>>2]=0;i[d+8>>2]=9264;i[d+96>>2]=0;i[d+100>>2]=0;i[d+12>>2]=b;j=i[b>>2];l=i[b+4>>2];g[d+111|0]=0;ie(d+32|0,(l-j>>2>>>0)/3|0,d+111|0);j=i[d+12>>2];l=i[j+28>>2];j=i[j+24>>2];g[d+111|0]=0;ie(e,l-j>>2,d+111|0);i[n>>2]=h;i[d+24>>2]=m;i[k>>2]=c;i[d+16>>2]=b;ke(h,d+8|0);i[a>>2]=h;i[d+8>>2]=9264;a=i[d+96>>2];if(a){i[d+100>>2]=a;Wk(a)}a=i[f>>2];if(a){i[d+84>>2]=a;Wk(a)}a=i[d+68>>2];if(a){i[d+72>>2]=a;Wk(a)}a=i[d+56>>2];if(a){i[d+60>>2]=a;Wk(a)}i[d+8>>2]=9500;a=i[d+44>>2];if(a){Wk(a)}a=i[d+32>>2];if(a){Wk(a)}F=d+112|0}function re(a,b){var c=0,d=0,e=0,f=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if((e-c|0)/144>>>0>=b>>>0){d=a;if(b){a=o(b,144)+c|0;while(1){i[c>>2]=-1;dj(c+4|0);i[c+104>>2]=0;i[c+108>>2]=0;g[c+100|0]=1;i[c+112>>2]=0;i[c+116>>2]=0;i[c+120>>2]=0;i[c+124>>2]=0;i[c+128>>2]=0;i[c+132>>2]=0;i[c+136>>2]=0;i[c+140>>2]=0;c=c+144|0;if((a|0)!=(c|0)){continue}break}c=a}i[d+4>>2]=c;return}a:{b:{c:{f=i[a>>2];c=(c-f|0)/144|0;d=c+b|0;if(d>>>0<29826162){h=o(c,144);e=(e-f|0)/144|0;f=e<<1;f=e>>>0<14913080?f>>>0>>0?d:f:29826161;c=0;d:{if(!f){break d}if(f>>>0>=29826162){break c}c=lk(o(f,144))}e=c;d=c+h|0;h=d+o(b,144)|0;c=d;while(1){i[c>>2]=-1;dj(c+4|0);i[c+104>>2]=0;i[c+108>>2]=0;g[c+100|0]=1;i[c+112>>2]=0;i[c+116>>2]=0;i[c+120>>2]=0;i[c+124>>2]=0;i[c+128>>2]=0;i[c+132>>2]=0;i[c+136>>2]=0;i[c+140>>2]=0;c=c+144|0;if((h|0)!=(c|0)){continue}break}e=o(f,144)+e|0;b=i[a>>2];c=i[a+4>>2];if((b|0)==(c|0)){break b}while(1){c=c+ -144|0;d=pf(d+ -144|0,c);if((b|0)!=(c|0)){continue}break}i[a+8>>2]=e;c=i[a+4>>2];i[a+4>>2]=h;b=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=i[c+ -12>>2];if(a){i[c+ -8>>2]=a;Wk(a)}a=i[c+ -28>>2];if(a){i[c+ -24>>2]=a;Wk(a)}a=c+ -144|0;d=i[c+ -40>>2];if(d){i[c+ -36>>2]=d;Wk(d)}qe(c+ -140|0);c=a;if((c|0)!=(b|0)){continue}break}break a}Ak();x()}va(8944);x()}i[a+8>>2]=e;i[a+4>>2]=h;i[a>>2]=d}if(b){Wk(b)}}function kd(a,b){var c=0,d=0,e=0;e=F-32|0;F=e;a:{b:{switch(b|0){case 0:b=lk(48);Rd(b);i[b>>2]=9992;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;case 1:b=lk(52);Rd(b);i[b+48>>2]=0;i[b>>2]=8232;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;default:break b}}b=lk(32);i[e>>2]=b;i[e+4>>2]=28;i[e+8>>2]=-2147483616;g[b+28|0]=0;c=j[7980]|j[7981]<<8|(j[7982]<<16|j[7983]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;c=j[7976]|j[7977]<<8|(j[7978]<<16|j[7979]<<24);d=j[7972]|j[7973]<<8|(j[7974]<<16|j[7975]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[7968]|j[7969]<<8|(j[7970]<<16|j[7971]<<24);d=j[7964]|j[7965]<<8|(j[7966]<<16|j[7967]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[7960]|j[7961]<<8|(j[7962]<<16|j[7963]<<24);d=j[7956]|j[7957]<<8|(j[7958]<<16|j[7959]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[e+16>>2]=-1;b=ok(e+16|4,e);i[a>>2]=i[e+16>>2];ok(a+4|0,b);i[a+16>>2]=0;if(g[b+11|0]<=-1){Wk(i[b>>2])}if(g[e+11|0]>-1){break a}Wk(i[e>>2])}F=e+32|0}function dc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0;m=F-16|0;F=m;e=i[b+12>>2];c=i[b+20>>2];f=i[b+16>>2];d=f+4|0;if(d>>>0<4){c=c+1|0}g=d;d=c;a:{if((e|0)<(c|0)?1:(e|0)<=(c|0)?l[b+8>>2]>>0:0){break a}c=f+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=g;i[b+20>>2]=d;if((c|0)<0){break a}Vb(a+76|0,c);g=gd(m);b:{if(!hd(g,b)){break b}if((c|0)>=1){e=1;while(1){f=1<>2]+(k>>>3&536870908)|0;e=e^h;h=i[d>>2]|f;c:{if(!(e&1)){break c}h=i[d>>2]&(f^-1)}f=h;e=e^1;i[d>>2]=f;k=k+1|0;if((c|0)!=(k|0)){continue}break}}d=i[b+12>>2];k=d;c=i[b+20>>2];e=c;g=i[b+16>>2];f=g+4|0;if(f>>>0<4){c=c+1|0}n=i[b+8>>2];h=f;f=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?n>>>0>>0:0){break b}o=i[b>>2];c=o+g|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=f;c=e;e=g+8|0;if(e>>>0<8){c=c+1|0}f=e;e=c;if((k|0)<(c|0)?1:(k|0)<=(c|0)?n>>>0>>0:0){break b}c=h+o|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=e;if((d|0)>(c|0)){break b}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break b}p=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break b}i[a+24>>2]=c+ -1}}F=m+16|0;return p|0}function ug(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=F-16|0;F=e;i[a+68>>2]=i[a+68>>2]+1;d=o(b,12)+a|0;f=i[d+12>>2];h=i[d+8>>2];d=f-h|0;if((d|0)>=1){f=h-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;k=d>>>0>1?d:1;d=i[((b<<2)+a|0)+44>>2];h=0;while(1){b=d;f=(b>>>0)/3|0;g=(b|0)==-1;d=g?-1:f;j=i[a+56>>2]+(d>>>3&536870908)|0;i[j>>2]=i[j>>2]|1<>2]=i[a+72>>2]+1;a:{b:{if(!h){i[e+12>>2]=(b|0)<0?-1:i[(i[i[a>>2]+96>>2]+o(f,12)|0)+((b>>>0)%3<<2)>>2];i[e+8>>2]=c;tg(e+8|0,e+12|0);c:{if(!g){d=-1;f=e;g=b+1|0;g=(g>>>0)%3|0?g:b+ -2|0;if((g|0)>=0){j=(g>>>0)/3|0;j=i[(i[i[a>>2]+96>>2]+o(j,12)|0)+(g-o(j,3)<<2)>>2]}else{j=-1}i[f+12>>2]=j;i[e+8>>2]=c;tg(e+8|0,e+12|0);f=((b>>>0)%3|0?-1:2)+b|0;if((f|0)<0){break c}d=(f>>>0)/3|0;d=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(f-o(d,3)<<2)>>2];break c}d=-1;i[e+12>>2]=-1;i[e+8>>2]=c;tg(e+8|0,e+12|0)}i[a+76>>2]=d;i[e+12>>2]=d;i[e+8>>2]=c;tg(e+8|0,e+12|0);break b}g=(b|0)<0?-1:i[(i[i[a>>2]+96>>2]+o(f,12)|0)+((b>>>0)%3<<2)>>2];i[a+76>>2]=g;i[e+12>>2]=g;i[e+8>>2]=c;tg(e+8|0,e+12|0);if(h&1){d=-1;if((b|0)==-1){break a}if(b-o(f,3)|0){b=b+ -1|0;break b}b=b+2|0;break b}d=-1;if((b|0)==-1){break a}d=b+1|0;b=(d>>>0)%3|0?d:b+ -2|0}d=-1;if((b|0)==-1){break a}d=i[i[i[a+4>>2]+12>>2]+(b<<2)>>2]}h=h+1|0;if((k|0)!=(h|0)){continue}break}}F=e+16|0}function He(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(i[a+168>>2]){case 0:case 1:c=i[a+148>>2];e=1;b=i[a+156>>2];g=b+(((f|0)!=-1?i[i[c>>2]+(f<<2)>>2]:-1)<<2)|0;i[g>>2]=i[g>>2]+1;b=(((d|0)!=-1?i[i[c>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 5:e=i[a+148>>2];c=-1;c=((b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:c)<<2;b=i[a+156>>2];c=c+b|0;i[c>>2]=i[c>>2]+1;c=(((f|0)!=-1?i[i[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;i[c>>2]=i[c>>2]+1;c=-1;c=(d|0)!=-1?i[i[e>>2]+(d<<2)>>2]:c;e=2;b=b+(c<<2)|0;break c;case 3:e=i[a+148>>2];c=-1;c=((b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:c)<<2;b=i[a+156>>2];c=c+b|0;i[c>>2]=i[c>>2]+1;c=(((f|0)!=-1?i[i[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;i[c>>2]=i[c>>2]+2;b=(((d|0)!=-1?i[i[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;e=1;break c;case 7:break d;default:break b}}e=i[a+148>>2];c=-1;c=((b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:c)<<2;b=i[a+156>>2];c=c+b|0;i[c>>2]=i[c>>2]+2;c=(((f|0)!=-1?i[i[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;i[c>>2]=i[c>>2]+2;c=-1;c=(d|0)!=-1?i[i[e>>2]+(d<<2)>>2]:c;e=2;b=b+(c<<2)|0}i[b>>2]=i[b>>2]+e}c=-1;c=(f|0)!=-1?i[i[i[a+148>>2]>>2]+(f<<2)>>2]:c;f=i[a+176>>2];b=f;d=a;c=i[i[a+156>>2]+(c<<2)>>2];if((c|0)>=(b|0)){a=i[a+180>>2];b=(c|0)>(a|0)?a:c}i[d+172>>2]=b-f}function pd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=F-32|0;F=e;f=a+16|0;d=i[f>>2];a:{b:{if(!d){break b}h=i[b>>2];c=f;while(1){g=i[d+16>>2]<(h|0);c=g?c:d;d=i[(g<<2)+d>>2];if(d){continue}break}if((c|0)==(f|0)){break b}if((h|0)>=i[c+16>>2]){break a}}k=Wf(e+16|0);b=i[b>>2];j=e+8|0;i[j>>2]=0;i[j+4>>2]=0;i[e>>2]=b;i[e+4>>2]=j;c=i[k>>2];h=k+4|0;if((c|0)!=(h|0)){g=e|4;while(1){b=c;d=c+16|0;qd(g,j,d,d);d=i[c+4>>2];c:{if(!d){c=i[b+8>>2];if((b|0)==i[c>>2]){break c}d=b+8|0;while(1){b=i[d>>2];d=b+8|0;c=i[b+8>>2];if((b|0)!=i[c>>2]){continue}break}break c}while(1){c=d;d=i[c>>2];if(d){continue}break}}if((c|0)!=(h|0)){continue}break}}d=i[f>>2];d:{if(d){f=a+16|0;g=i[e>>2];while(1){b=i[d+16>>2];e:{if((g|0)<(b|0)){c=i[d>>2];if(c){break e}f=d;break d}if((b|0)>=(g|0)){break d}f=d+4|0;c=i[d+4>>2];if(!c){break d}d=f}f=d;d=c;continue}}d=f}c=i[f>>2];if(!c){c=lk(32);i[c+16>>2]=i[e>>2];i[c+20>>2]=i[e+4>>2];g=i[e+8>>2];i[c+24>>2]=g;b=i[e+12>>2];i[c+28>>2]=b;h=c+24|0;f:{if(!b){i[c+20>>2]=h;break f}i[g+8>>2]=h;i[e+8>>2]=0;i[e+12>>2]=0;i[e+4>>2]=j}i[c+8>>2]=d;i[c>>2]=0;i[c+4>>2]=0;i[f>>2]=c;d=i[i[a+12>>2]>>2];b=c;g:{if(!d){break g}i[a+12>>2]=d;b=i[f>>2]}rd(i[a+16>>2],b);a=a+20|0;i[a>>2]=i[a>>2]+1}sd(e|4,i[e+8>>2]);sd(k,i[k+4>>2])}F=e+32|0;return c+20|0}function Df(a,b){var c=0,d=0,e=0;e=F-32|0;F=e;c=lk(36);i[c+4>>2]=0;i[c+8>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;i[c+32>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;i[c>>2]=c+4;i[c+12>>2]=c+16;i[e+24>>2]=c;d=e+16|0;i[d>>2]=0;a:{if(!nj(d,i[b+32>>2],c)){b=lk(32);i[e>>2]=b;i[e+4>>2]=26;i[e+8>>2]=-2147483616;g[b+26|0]=0;c=j[10350]|j[10351]<<8;g[b+24|0]=c;g[b+25|0]=c>>>8;c=j[10346]|j[10347]<<8|(j[10348]<<16|j[10349]<<24);d=j[10342]|j[10343]<<8|(j[10344]<<16|j[10345]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[10338]|j[10339]<<8|(j[10340]<<16|j[10341]<<24);d=j[10334]|j[10335]<<8|(j[10336]<<16|j[10337]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[10330]|j[10331]<<8|(j[10332]<<16|j[10333]<<24);d=j[10326]|j[10327]<<8|(j[10328]<<16|j[10329]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;ok(a+4|0,e);if(g[e+11|0]>-1){break a}Wk(i[e>>2]);break a}b=i[b+4>>2];i[e+24>>2]=0;d=i[b+4>>2];i[b+4>>2]=c;if(d){Ef(d)}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}a=i[e+24>>2];i[e+24>>2]=0;if(a){Ef(a)}F=e+32|0}function wd(a,b,c,d){var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(!yd(e+8|0,c)){break a}if(!zd(e+8|0,c)){break a}b:{if(!a){Sf(c,0,0);break b}if(!i[e+20>>2]){break a}Sf(c,0,0);h=i[e+56>>2];s=i[e+36>>2];t=i[e+48>>2];u=i[e+24>>2];while(1){c:{if(h>>>0>16383){break c}f=i[e+52>>2];while(1){if((f|0)<1){break c}f=f+ -1|0;i[e+52>>2]=f;h=j[f+t|0]|h<<8;i[e+56>>2]=h;if(h>>>0<16384){continue}break}}g=h&4095;q=i[(g<<2)+u>>2];k=(q<<3)+s|0;h=(o(i[k>>2],h>>>12|0)+g|0)-i[k+4>>2]|0;i[e+56>>2]=h;if((b|0)>=1){if(!j[c+36|0]){g=0;break a}k=b+l|0;while(1){d:{if((q|0)<1){n=0;break d}g=i[c+32>>2];v=i[c+28>>2];w=i[c+24>>2];f=0;n=0;while(1){m=(g>>>3|0)+w|0;e:{if(m>>>0>=v>>>0){p=0;break e}p=j[m|0];m=g+1|0;i[c+32>>2]=m;p=p>>>(g&7)&1;g=m}n=p<>2]=n;l=l+1|0;if((k|0)!=(l|0)){continue}break}l=k}r=b+r|0;if(r>>>0>>0){continue}break}}Uf(c);g=1}a=i[e+36>>2];if(a){i[e+40>>2]=a;Wk(a)}a=i[e+24>>2];if(a){i[e+28>>2]=a;Wk(a)}a=i[e+8>>2];if(a){i[e+12>>2]=a;Wk(a)}F=e- -64|0;return g}function Gf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0;a:{b=i[a+32>>2];e=i[b+16>>2];h=i[b+12>>2];d=i[b+20>>2];b:{if((h|0)<(d|0)?1:(h|0)<=(d|0)?l[b+8>>2]<=e>>>0:0){break b}g=j[e+i[b>>2]|0];k=e+1|0;if(k>>>0<1){d=d+1|0}i[b+16>>2]=k;i[b+20>>2]=d;c:{if(!g){break c}while(1){if(I[i[i[a>>2]+16>>2]](a,c)|0){c=c+1|0;if((g|0)!=(c|0)){continue}break c}break}return 0}c=i[a+8>>2];d=i[a+12>>2];if((c|0)!=(d|0)){while(1){b=i[c>>2];if(!(I[i[i[b>>2]+8>>2]](b,a,i[a+4>>2])|0)){break b}c=c+4|0;if((d|0)!=(c|0)){continue}break}}d:{if(!g){break d}c=0;while(1){b=i[i[a+8>>2]+(c<<2)>>2];if(!(I[i[i[b>>2]+12>>2]](b,i[a+32>>2])|0)){break a}c=c+1|0;if((g|0)!=(c|0)){continue}break}if(!g){break d}h=a+20|0;while(1){c=0;k=m<<2;b=i[k+i[a+8>>2]>>2];d=I[i[i[b>>2]+24>>2]](b)|0;if((d|0)>0){while(1){b=i[i[a+8>>2]+k>>2];b=I[i[i[b>>2]+20>>2]](b,c)|0;n=i[a+20>>2];e=i[a+24>>2]-n>>2;e:{if(b>>>0>>0){break e}f=b+1|0;if(f>>>0>e>>>0){La(h,f-e|0);n=i[h>>2];break e}if(f>>>0>=e>>>0){break e}i[a+24>>2]=(f<<2)+n}i[(b<<2)+n>>2]=m;c=c+1|0;if((d|0)!=(c|0)){continue}break}}m=m+1|0;if((m|0)!=(g|0)){continue}break}}f=0;if(!(I[i[i[a>>2]+28>>2]](a)|0)){break b}f=I[i[i[a>>2]+32>>2]](a)|0}return f|0}return 0}function mj(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,o=0,p=0;d=F-32|0;F=d;i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;a:{e=i[a>>2];c=e;h=i[c+16>>2];k=l[c+8>>2]<=h>>>0;f=i[c+12>>2];c=i[c+20>>2];b:{if((f|0)<(c|0)?1:(f|0)<=(c|0)?k:0){break b}k=j[h+i[e>>2]|0];f=c;c=h+1|0;if(c>>>0<1){f=f+1|0}i[e+16>>2]=c;i[e+20>>2]=f;tk(d+16|0,k);if(k){f=i[a>>2];n=xk(d+16|0);m=i[f+12>>2];h=i[f+20>>2];p=i[f+16>>2];e=k;c=p+e|0;if(c>>>0>>0){h=h+1|0}if((m|0)<(h|0)?1:(m|0)<=(h|0)?l[f+8>>2]>>0:0){break b}Yk(n,p+i[f>>2]|0,k);h=i[f+20>>2];k=e+i[f+16>>2]|0;if(k>>>0>>0){h=h+1|0}c=f;i[c+16>>2]=k;i[c+20>>2]=h}i[d+12>>2]=0;c=lj(1,d+12|0,i[a>>2]);e=i[d+12>>2];if(!e|!c){break b}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;if((e|0)<=-1){break a}m=lk(e);i[d>>2]=m;c=e+m|0;i[d+8>>2]=c;p=Zk(m,0,e);i[d+4>>2]=c;c=i[a>>2];a=i[c+8>>2];o=i[c+12>>2];f=a;n=i[c+20>>2];h=i[c+16>>2];a=e;k=h+e|0;if(k>>>0>>0){n=n+1|0}o=(o|0)>(n|0)?1:(o|0)>=(n|0)?f>>>0>=k>>>0:0;if(o){Yk(p,h+i[c>>2]|0,e);e=c;k=c;f=i[c+20>>2];c=a+i[c+16>>2]|0;if(c>>>0>>0){f=f+1|0}i[k+16>>2]=c;i[e+20>>2]=f;xj(b,d+16|0,d);m=i[d>>2];if(!m){break b}}i[d+4>>2]=m;Wk(m)}if(g[d+27|0]<=-1){Wk(i[d+16>>2])}F=d+32|0;return o}Ak();x()}function gl(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;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{g=b;if(g){e=c;if(!e){break j}f=d;if(!f){break i}f=r(f)-r(g)|0;if(f>>>0<=31){break h}break b}if((d|0)==1&c>>>0>=0|d>>>0>1){break b}b=(a>>>0)/(c>>>0)|0;H=0;return b}e=d;if(!a){break g}if(!e){break f}if(e+ -1&e){break f}a=g>>>ml(e)|0;H=0;return a}if(!(e+ -1&e)){break e}j=(r(e)+33|0)-r(g)|0;h=0-j|0;break c}j=f+1|0;h=63-f|0;break c}a=(g>>>0)/(e>>>0)|0;H=0;return a}f=r(e)-r(g)|0;if(f>>>0<31){break d}break b}if((e|0)==1){break a}c=a;a=ml(e);d=a&31;if(32<=(a&63)>>>0){f=0;a=b>>>d|0}else{f=b>>>d|0;a=((1<>>d}H=f;return a}j=f+1|0;h=63-f|0}e=b;g=a;f=j&63;i=f&31;if(32<=(f&63)>>>0){f=0;l=e>>>i|0}else{f=e>>>i|0;l=((1<>>i}a=h&63;h=a&31;if(32<=(a&63)>>>0){e=g<>>32-h|b<>>31;f=e<<1|b>>>31;m=k;e=k;k=f;i=g-((h>>>0>>0)+e|0)|0;e=i>>31;i=i>>31;f=c&i;l=k-f|0;f=m-((d&e)+(k>>>0>>0)|0)|0;e=b<<1|a>>>31;a=n|a<<1;b=e|o;m=0;k=i&1;n=k;j=j+ -1|0;if(j){continue}break}}H=m|(b<<1|a>>>31);return k|a<<1}a=0;b=0}H=b;return a}function ze(a,b,c,d){var e=0,f=0,h=0,j=0,k=p(0),l=0,n=p(0),o=0,q=0;f=i[c>>2];o=a;a:{b:{e=i[b+4>>2];if(!e){break b}j=i[b>>2];l=kl(e);h=f&e+ -1;c:{if(l>>>0<=1){break c}c=f;h=c;if(c>>>0>>0){break c}h=(f>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+j>>2];if(!c){break b}q=e+ -1|0;l=l>>>0>1;while(1){c=i[c>>2];if(!c){break b}j=i[c+4>>2];if((f|0)!=(j|0)){d:{if(!l){j=j&q;break d}if(j>>>0>>0){break d}j=(j>>>0)%(e>>>0)|0}if((j|0)!=(h|0)){break b}}if((f|0)!=i[c+8>>2]){continue}break}b=0;break a}c=lk(16);d=i[i[d>>2]>>2];i[c+12>>2]=0;i[c+8>>2]=d;i[c+4>>2]=f;i[c>>2]=0;k=m[b+16>>2];n=p(i[b+12>>2]+1>>>0);e:{if(p(k*p(e>>>0))>>0<3|e<<1;d=b;k=p(v(p(n/k)));f:{if(k=p(0)){h=~~k>>>0;break f}h=0}qf(d,e>>>0>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=f&e+ -1;break e}if(f>>>0>>0){h=f;break e}h=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(h<<2)|0;d=i[f>>2];g:{h:{if(!d){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[f>>2]=b+8;d=i[c>>2];if(!d){break g}d=i[d+4>>2];f=e+ -1|0;i:{if(!(f&e)){d=d&f;break i}if(d>>>0>>0){break i}d=(d>>>0)%(e>>>0)|0}d=i[b>>2]+(d<<2)|0;break h}i[c>>2]=i[d>>2]}i[d>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[o+4|0]=b;i[a>>2]=c}function Lc(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;k=i[i[i[b+4>>2]+8>>2]+(d<<2)>>2];a:{b:{if((I[i[i[b>>2]+8>>2]](b)|0)!=1|c+ -1>>>0>5){break b}h=I[i[i[b>>2]+36>>2]](b)|0;f=I[i[i[b>>2]+44>>2]](b,d)|0;if(!(f?h:0)){i[a>>2]=0;return}g=f+12|0;j=I[i[i[b>>2]+40>>2]](b,d)|0;d=i[b+44>>2];if(j){if((c|0)!=6){break b}b=lk(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=j;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=j;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=5744;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=6308;break a}if((c|0)!=6){break b}b=lk(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=h;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=h;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=6748;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=7168;break a}i[a>>2]=0;return}gd(b+96|0);i[a>>2]=b}function yc(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,j=0,k=0,l=0,m=0,n=0;if((e|0)==2){i[a+8>>2]=2;i[a- -64>>2]=f;d=a+32|0;e=i[d>>2];f=i[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){La(d,2-g|0);break a}if((f|0)==8){break a}i[a+36>>2]=e+8}b:{d=i[a+56>>2];f=i[d+4>>2];d=i[d>>2];e=f-d|0;if((e|0)<1){f=0;break b}if((d|0)!=(f|0)){k=a+60|0;l=e>>2;f=d-f|0;e=((f|0)>(e|0)?f:e)>>>2|0;m=e>>>0>1?e:1;f=1;while(1){if(!zc(k,i[(h<<2)+d>>2],c,h)){break b}c:{if(i[a+8>>2]<1){break c}d=0;while(1){e=d<<2;f=i[(e+a|0)+68>>2];j=i[a+16>>2];d:{if((f|0)>(j|0)){g=i[a+32>>2];i[e+g>>2]=j;break d}g=i[a+32>>2];e=e+g|0;j=i[a+12>>2];if((f|0)<(j|0)){i[e>>2]=j;break d}i[e>>2]=f}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<1){break c}d=h<<3;j=d+c|0;n=b+d|0;while(1){f=e<<2;d=f+j|0;f=i[f+n>>2]+i[f+g>>2]|0;i[d>>2]=f;e:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break e}f=f+i[a+20>>2]|0}i[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}h=h+1|0;f=(h|0)<(l|0);if((h|0)==(m|0)){break b}e=i[a+56>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>h>>>0){continue}break}}Bk();x()}a=f^1}else{a=0}return a&1}function ec(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,j=0,k=0,l=0,m=0,n=0;if((e|0)==2){i[a+8>>2]=2;i[a- -64>>2]=f;d=a+32|0;e=i[d>>2];f=i[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){La(d,2-g|0);break a}if((f|0)==8){break a}i[a+36>>2]=e+8}b:{d=i[a+56>>2];f=i[d+4>>2];d=i[d>>2];e=f-d|0;if((e|0)<1){f=0;break b}if((d|0)!=(f|0)){k=a+60|0;l=e>>2;f=d-f|0;e=((f|0)>(e|0)?f:e)>>>2|0;m=e>>>0>1?e:1;f=1;while(1){if(!fc(k,i[(h<<2)+d>>2],c,h)){break b}c:{if(i[a+8>>2]<1){break c}d=0;while(1){e=d<<2;f=i[(e+a|0)+68>>2];j=i[a+16>>2];d:{if((f|0)>(j|0)){g=i[a+32>>2];i[e+g>>2]=j;break d}g=i[a+32>>2];e=e+g|0;j=i[a+12>>2];if((f|0)<(j|0)){i[e>>2]=j;break d}i[e>>2]=f}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<1){break c}d=h<<3;j=d+c|0;n=b+d|0;while(1){f=e<<2;d=f+j|0;f=i[f+n>>2]+i[f+g>>2]|0;i[d>>2]=f;e:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break e}f=f+i[a+20>>2]|0}i[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}h=h+1|0;f=(h|0)<(l|0);if((h|0)==(m|0)){break b}e=i[a+56>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>h>>>0){continue}break}}Bk();x()}a=f^1}else{a=0}return a&1}function Yk(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){E(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if((c|0)<1){c=a;break b}if(!(a&3)){c=a;break b}c=a;while(1){g[c|0]=j[b|0];b=b+1|0;c=c+1|0;if(c>>>0>=e>>>0){break b}if(c&3){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+ -64|0;if(c>>>0>f>>>0){break c}while(1){i[c>>2]=i[b>>2];i[c+4>>2]=i[b+4>>2];i[c+8>>2]=i[b+8>>2];i[c+12>>2]=i[b+12>>2];i[c+16>>2]=i[b+16>>2];i[c+20>>2]=i[b+20>>2];i[c+24>>2]=i[b+24>>2];i[c+28>>2]=i[b+28>>2];i[c+32>>2]=i[b+32>>2];i[c+36>>2]=i[b+36>>2];i[c+40>>2]=i[b+40>>2];i[c+44>>2]=i[b+44>>2];i[c+48>>2]=i[b+48>>2];i[c+52>>2]=i[b+52>>2];i[c+56>>2]=i[b+56>>2];i[c+60>>2]=i[b+60>>2];b=b- -64|0;c=c- -64|0;if(c>>>0<=f>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){i[c>>2]=i[b>>2];b=b+4|0;c=c+4|0;if(c>>>0>>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){g[c|0]=j[b|0];g[c+1|0]=j[b+1|0];g[c+2|0]=j[b+2|0];g[c+3|0]=j[b+3|0];b=b+4|0;c=c+4|0;if(c>>>0<=d>>>0){continue}break}}if(c>>>0>>0){while(1){g[c|0]=j[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function ib(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;g=F-16|0;F=g;if(Ja(a,b)){m=a+36|0;h=I[i[i[a>>2]+24>>2]](a)|0;e=i[a+40>>2];d=i[a+36>>2];c=e-d>>2;a:{if(h>>>0>c>>>0){jb(m,h-c|0);break a}if(h>>>0>=c>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e+ -4|0;c=i[e>>2];i[e>>2]=0;if(c){I[i[i[c>>2]+4>>2]](c)}if((e|0)!=(d|0)){continue}break}}i[a+40>>2]=d}b:{if((h|0)<1){break b}n=1;f=i[b+16>>2];d=i[b+12>>2];c=i[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<=f>>>0:0){break b}e=0;while(1){k=j[f+i[b>>2]|0];f=f+1|0;if(f>>>0<1){c=c+1|0}d=b;i[d+16>>2]=f;i[d+20>>2]=c;I[i[i[a>>2]+48>>2]](g+8|0,a,k);c=i[a+36>>2];d=i[g+8>>2];i[g+8>>2]=0;f=e<<2;k=c+f|0;c=i[k>>2];i[k>>2]=d;if(c){I[i[i[c>>2]+4>>2]](c)}c=i[g+8>>2];i[g+8>>2]=0;if(c){I[i[i[c>>2]+4>>2]](c)}c=i[i[m>>2]+f>>2];if(!c){break b}if(!(p=c,q=I[i[i[a>>2]+28>>2]](a)|0,r=I[i[i[a>>2]+20>>2]](a,e)|0,o=i[i[c>>2]+8>>2],I[o](p|0,q|0,r|0)|0)){break b}e=e+1|0;n=(e|0)<(h|0);if((e|0)==(h|0)){break b}f=i[b+16>>2];d=i[b+12>>2];c=i[b+20>>2];if((d|0)>(c|0)?1:(d|0)>=(c|0)?l[b+8>>2]>f>>>0:0){continue}break}}e=n^1}F=g+16|0;return e&1}function Ie(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=8340;b=a+368|0;d=i[b>>2];i[b>>2]=0;if(d){c=d+ -4|0;b=i[c>>2];if(b){b=d+(b<<4)|0;while(1){b=b+ -16|0;if((d|0)!=(b|0)){continue}break}}Wk(c)}d=i[a+216>>2];if(d){b=i[a+220>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=i[b+ -12>>2];if(c){i[b+ -8>>2]=c;Wk(c)}c=i[b+ -28>>2];if(c){i[b+ -24>>2]=c;Wk(c)}c=b+ -144|0;e=i[b+ -40>>2];if(e){i[b+ -36>>2]=e;Wk(e)}qe(b+ -140|0);b=c;if((d|0)!=(b|0)){continue}break}c=i[a+216>>2]}i[a+220>>2]=d;Wk(c)}b=i[a+196>>2];if(b){i[a+200>>2]=b;Wk(b)}b=i[a+184>>2];if(b){i[a+188>>2]=b;Wk(b)}b=i[a+172>>2];if(b){i[a+176>>2]=b;Wk(b)}b=i[a+160>>2];if(b){i[a+164>>2]=b;Wk(b)}b=i[a+144>>2];if(b){while(1){d=i[b>>2];Wk(b);b=d;if(b){continue}break}}b=i[a+136>>2];i[a+136>>2]=0;if(b){Wk(b)}b=i[a+120>>2];if(b){Wk(b)}b=i[a+108>>2];if(b){Wk(b)}b=i[a+96>>2];if(b){Wk(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;Wk(b)}b=i[a+60>>2];if(b){Wk(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}b=i[a+36>>2];if(b){i[a+40>>2]=b;Wk(b)}b=i[a+24>>2];if(b){i[a+28>>2]=b;Wk(b)}b=i[a+12>>2];if(b){i[a+16>>2]=b;Wk(b)}b=i[a+8>>2];i[a+8>>2]=0;if(b){pe(a+8|0,b)}return a|0}function Tb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;k=F-32|0;F=k;a:{b:{while(1){if(!Ub(1,k+28|0,b)){break b}c=i[k+28>>2];if(c){f=(o(d,12)+a|0)+60|0;Vb(f,c);h=gd(k+8|0);if(!hd(h,b)){break b}g=0;while(1){l=1<>2]+(g>>>3&536870908)|0;n=e;if(m){e=i[e>>2]|l}else{e=i[e>>2]&(l^-1)}i[n>>2]=e;g=g+1|0;if((c|0)!=(g|0)){continue}break}}d=d+1|0;if((d|0)!=4){continue}break}g=0;d=i[b+12>>2];l=d;c=i[b+20>>2];e=c;h=i[b+16>>2];f=h+4|0;if(f>>>0<4){c=c+1|0}n=i[b+8>>2];m=f;f=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?n>>>0>>0:0){break a}p=i[b>>2];c=p+h|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=m;i[b+20>>2]=f;c=e;e=h+8|0;if(e>>>0<8){c=c+1|0}f=e;e=c;if((l|0)<(c|0)?1:(l|0)<=(c|0)?n>>>0>>0:0){break a}c=m+p|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=e;if((d|0)>(c|0)){break a}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break a}g=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break a}i[a+24>>2]=c+ -1;break a}g=0}F=k+32|0;return g|0}function _(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,n=0,o=0;j=+m[b>>2];k=+m[b+4>>2];n=+m[b+8>>2];h=q(j)+q(k)+q(n);a:{if(h>1e-6^1){j=1;k=0;f=0;break a}h=1/h;k=h*k;j=h*j;f=h*n<0}h=k;g=i[a+16>>2];k=+(g|0);h=u(h*k+.5);b:{if(q(h)<2147483648){b=~~h;break b}b=-2147483648}l=(b|0)<0?b:0-b|0;j=u(j*k+.5);c:{if(q(j)<2147483648){e=~~j;break c}e=-2147483648}o=(e|0)<0;e=l+((o?e:0-e|0)+g|0)|0;l=(e|0)<0?0:e;f=f?0-l|0:l;b=b+(e>>31&((b|0)>0?e:0-e|0))|0;d:{if(!o){e=b+g|0;b=f+g|0;break d}e:{if((b|0)<=-1){e=f>>31;e=e+f^e;break e}e=i[a+8>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=b;b=b>>31;b=f+b^b;break d}b=i[a+8>>2]+((b|0)<0?b:0-b|0)|0}f:{if(!(b|e)){b=i[a+8>>2];a=b;break f}f=i[a+8>>2];g:{h:{i:{j:{if(!e){if((b|0)==(f|0)){a=b;break f}a=0;if(b|f){break j}b=0;break f}if((e|0)!=(f|0)|b){break i}b=e;a=b;break f}if((g|0)<(b|0)){b=(g<<1)-b|0;break f}if(f){break g}break h}if((e|0)!=(f|0)){break g}}f=e;if((g|0)<=(b|0)){break g}b=(g<<1)-b|0;a=e;break f}if(!((b|0)!=(f|0)|(g|0)<=(e|0))){a=(g<<1)-e|0;break f}if(b){a=e;break f}b=0;if((g|0)>=(e|0)){a=e;break f}a=(g<<1)-e|0}i[c>>2]=a;i[d>>2]=b}function Ij(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{if((b|0)<0){break a}c=i[a+12>>2];d=i[a+8>>2];if(c-d>>2>>>0<=b>>>0){break a}d=d+(b<<2)|0;f=i[d>>2];h=i[f+60>>2];g=i[f+56>>2];e=d+4|0;b:{if((e|0)!=(c|0)){while(1){j=i[e>>2];i[e>>2]=0;i[d>>2]=j;if(f){Ma(f)}d=d+4|0;e=e+4|0;if((e|0)!=(c|0)){f=i[d>>2];continue}break}c=i[a+12>>2];if((d|0)==(c|0)){break b}}while(1){c=c+ -4|0;f=i[c>>2];i[c>>2]=0;if(f){Ma(f)}if((c|0)!=(d|0)){continue}break}}i[a+12>>2]=d;c=i[a+4>>2];if(c){Jj(c,h)}c:{if((g|0)>4){break c}d:{d=o(g,12)+a|0;c=i[d+20>>2];f=d+24|0;d=i[f>>2];if((c|0)==(d|0)){break d}while(1){if(i[c>>2]==(b|0)){break d}c=c+4|0;if((d|0)!=(c|0)){continue}break}break c}if((c|0)==(d|0)){break c}e=c+4|0;d=d-e|0;if(d){_k(c,e,d)}i[f>>2]=c+d}d=0;while(1){c=o(d,12)+a|0;e=i[c+24>>2];f=i[c+20>>2];if((e|0)!=(f|0)){c=e-f|0;g=(c|0)>-1?c:-1;e=f-e|0;c=o((g|0)<1?g:1,((e|0)>(c|0)?e:c)>>>2|0);e=c>>>0>1?c:1;c=0;while(1){g=f+(c<<2)|0;h=i[g>>2];if((h|0)>(b|0)){i[g>>2]=h+ -1}c=c+1|0;if((e|0)!=(c|0)){continue}break}}d=d+1|0;if((d|0)!=5){continue}break}}}function rd(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);g[b+12|0]=c;a:{if(c){break a}while(1){d=i[b+8>>2];if(j[d+12|0]){break a}b:{c=i[d+8>>2];e=i[c>>2];if((e|0)==(d|0)){e=i[c+4>>2];if(!(!e|j[e+12|0])){break b}c:{if(i[d>>2]==(b|0)){b=d;break c}b=i[d+4>>2];e=i[b>>2];i[d+4>>2]=e;a=b;if(e){i[e+8>>2]=d;c=i[d+8>>2]}i[a+8>>2]=c;a=i[d+8>>2];i[(((d|0)!=i[a>>2])<<2)+a>>2]=b;i[b>>2]=d;i[d+8>>2]=b;c=i[b+8>>2]}g[b+12|0]=1;g[c+12|0]=0;a=i[c>>2];b=i[a+4>>2];i[c>>2]=b;if(b){i[b+8>>2]=c}i[a+8>>2]=i[c+8>>2];b=i[c+8>>2];i[((i[b>>2]!=(c|0))<<2)+b>>2]=a;i[a+4>>2]=c;i[c+8>>2]=a;return}if(!(j[e+12|0]|!e)){break b}d:{if(i[d>>2]!=(b|0)){b=d;break d}e=i[b+4>>2];i[d>>2]=e;a=b;if(e){i[e+8>>2]=d;c=i[d+8>>2]}i[a+8>>2]=c;a=i[d+8>>2];i[(((d|0)!=i[a>>2])<<2)+a>>2]=b;i[b+4>>2]=d;i[d+8>>2]=b;c=i[b+8>>2]}g[b+12|0]=1;g[c+12|0]=0;a=i[c+4>>2];b=i[a>>2];i[c+4>>2]=b;if(b){i[b+8>>2]=c}i[a+8>>2]=i[c+8>>2];b=i[c+8>>2];i[((i[b>>2]!=(c|0))<<2)+b>>2]=a;i[a>>2]=c;i[c+8>>2]=a;break a}b=e+12|0;g[d+12|0]=1;g[c+12|0]=(a|0)==(c|0);g[b|0]=1;b=c;if((a|0)!=(b|0)){continue}break}}}function Zb(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i[b+4>>2];f=i[b>>2];c=(i[c+4>>2]-g|0)+(i[c>>2]-f<<3)|0;a:{if((c|0)<=0){g=i[d+4>>2];break a}b:{if(!g){g=i[d+4>>2];break b}e=i[d+4>>2];j=32-e|0;l=32-g|0;h=(c|0)<(l|0)?c:l;k=j>>>0>>0?j:h;m=i[d>>2];f=i[f>>2]&(-1<>>l-h);i[m>>2]=i[m>>2]&(-1<>>j-k^-1)|(e>>>0>g>>>0?f<>>g-e|0);e=e+k|0;g=e&31;i[d+4>>2]=g;j=m+(e>>>3&536870908)|0;i[d>>2]=j;e=h-k|0;if((e|0)>=1){i[j>>2]=i[j>>2]&(-1>>>32-e^-1)|f>>>k+i[b+4>>2];i[d+4>>2]=e;g=e}c=c-h|0;f=i[b>>2]+4|0;i[b>>2]=f}k=-1<>2];f=i[f>>2];i[e>>2]=j&i[e>>2]|f<>2]=e+4;i[e+4>>2]=k&i[e+4>>2]|f>>>h;f=i[b>>2]+4|0;i[b>>2]=f;l=(c|0)>63;e=c+ -32|0;c=e;if(l){continue}break}}if((e|0)<1){break a}b=i[d>>2];c=(h|0)<(e|0)?h:e;j=i[b>>2]&(k&-1>>>h-c^-1);h=i[f>>2]&-1>>>32-e;i[b>>2]=j|h<>2]=g;f=b+(f>>>3&536870908)|0;i[d>>2]=f;b=e-c|0;if((b|0)<1){break a}i[f>>2]=i[f>>2]&(-1>>>32-b^-1)|h>>>c;i[d+4>>2]=b;g=b}b=i[d>>2];i[a+4>>2]=g;i[a>>2]=b}function Lg(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;e=F-16|0;F=e;m=i[a+80>>2];k=g[b+24|0];f=o(m,k);a:{b:{c:{a=i[b+28>>2];if(!(!j[b+84|0]|((a|0)!=6?(a|0)!=5:0))){l=i[b+48>>2];k=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;a=0;b=f<<2;d:{if(!b){break d}a=b>>2;if(a>>>0>=1073741824){break c}d=lk(b);h=d+(a<<2)|0;if((b|0)<1){a=d;break d}d=Yk(d,k+l|0,b);a=d;d=b+a|0}b=i[c>>2];if(b){i[c+4>>2]=b;Wk(b)}i[c+8>>2]=h;i[c+4>>2]=d;i[c>>2]=a;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(k){if((k|0)<=-1){break c}a=k<<2;h=lk(a);i[e>>2]=h;d=a+h|0;i[e+8>>2]=d;Zk(h,0,a);i[e+4>>2]=d}d=i[c>>2];a=i[c+4>>2]-d>>2;e:{if(f>>>0>a>>>0){fd(c,f-a|0);break e}if(f>>>0>=a>>>0){break e}i[c+4>>2]=d+(f<<2)}if(!m){break b}d=0;n=1;while(1){a=l;f=b;if(!j[b+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!Mg(f,a,g[b+24|0],h)){break b}if((k|0)>=1){f=i[c>>2];a=0;while(1){i[f+(d<<2)>>2]=i[(a<<2)+h>>2];d=d+1|0;a=a+1|0;if((k|0)!=(a|0)){continue}break}}l=l+1|0;n=l>>>0>>0;if((l|0)!=(m|0)){continue}break}break b}Ak();x()}if(h){Wk(h)}a=n^1}F=e+16|0;return a&1}function Jg(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;e=F-16|0;F=e;m=i[a+80>>2];k=g[b+24|0];f=o(m,k);a:{b:{c:{a=i[b+28>>2];if(!(!j[b+84|0]|((a|0)!=6?(a|0)!=5:0))){l=i[b+48>>2];k=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;a=0;b=f<<2;d:{if(!b){break d}a=b>>2;if(a>>>0>=1073741824){break c}d=lk(b);h=d+(a<<2)|0;if((b|0)<1){a=d;break d}d=Yk(d,k+l|0,b);a=d;d=b+a|0}b=i[c>>2];if(b){i[c+4>>2]=b;Wk(b)}i[c+8>>2]=h;i[c+4>>2]=d;i[c>>2]=a;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(k){if((k|0)<=-1){break c}a=k<<2;h=lk(a);i[e>>2]=h;d=a+h|0;i[e+8>>2]=d;Zk(h,0,a);i[e+4>>2]=d}d=i[c>>2];a=i[c+4>>2]-d>>2;e:{if(f>>>0>a>>>0){La(c,f-a|0);break e}if(f>>>0>=a>>>0){break e}i[c+4>>2]=d+(f<<2)}if(!m){break b}d=0;n=1;while(1){a=l;f=b;if(!j[b+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!Kg(f,a,g[b+24|0],h)){break b}if((k|0)>=1){f=i[c>>2];a=0;while(1){i[f+(d<<2)>>2]=i[(a<<2)+h>>2];d=d+1|0;a=a+1|0;if((k|0)!=(a|0)){continue}break}}l=l+1|0;n=l>>>0>>0;if((l|0)!=(m|0)){continue}break}break b}Ak();x()}if(h){Wk(h)}a=n^1}F=e+16|0;return a&1}function Ke(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=8392;Le(a+232|0);e=i[a+216>>2];if(e){c=e;b=i[a+220>>2];d=c;a:{if((c|0)==(b|0)){break a}while(1){c=i[b+ -12>>2];if(c){i[b+ -8>>2]=c;Wk(c)}c=i[b+ -28>>2];if(c){i[b+ -24>>2]=c;Wk(c)}c=b+ -144|0;d=i[b+ -40>>2];if(d){i[b+ -36>>2]=d;Wk(d)}qe(b+ -140|0);b=c;if((e|0)!=(b|0)){continue}break}d=i[a+216>>2]}c=d;i[a+220>>2]=e;Wk(c)}b=i[a+196>>2];if(b){i[a+200>>2]=b;Wk(b)}b=i[a+184>>2];if(b){i[a+188>>2]=b;Wk(b)}b=i[a+172>>2];if(b){i[a+176>>2]=b;Wk(b)}b=i[a+160>>2];if(b){i[a+164>>2]=b;Wk(b)}b=i[a+144>>2];if(b){while(1){c=i[b>>2];Wk(b);b=c;if(b){continue}break}}b=i[a+136>>2];i[a+136>>2]=0;if(b){Wk(b)}b=i[a+120>>2];if(b){Wk(b)}b=i[a+108>>2];if(b){Wk(b)}b=i[a+96>>2];if(b){Wk(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;Wk(b)}b=i[a+60>>2];if(b){Wk(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}b=i[a+36>>2];if(b){i[a+40>>2]=b;Wk(b)}b=i[a+24>>2];if(b){i[a+28>>2]=b;Wk(b)}b=i[a+12>>2];if(b){i[a+16>>2]=b;Wk(b)}b=i[a+8>>2];i[a+8>>2]=0;if(b){pe(a+8|0,b)}return a|0}function Cg(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;f=F-16|0;F=f;l=i[a+80>>2];h=g[b+24|0];a=o(l,h);a:{e=i[b+28>>2];b:{if(!(!j[b+84|0]|((e|0)!=2?(e|0)!=1:0))){e=i[b+48>>2];k=i[i[b>>2]>>2];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;b=0;if(a){if((a|0)<=-1){break a}b=lk(a);d=Yk(b,e+k|0,a)+a|0}a=i[c>>2];if(a){i[c+4>>2]=a;Wk(a)}i[c+8>>2]=d;i[c+4>>2]=d;i[c>>2]=b;a=1;break b}i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;if(h){if((h|0)<=-1){break a}d=lk(h);i[f>>2]=d;e=d+h|0;i[f+8>>2]=e;Zk(d,0,h);i[f+4>>2]=e}k=i[c>>2];e=i[c+4>>2]-k|0;c:{if(a>>>0>e>>>0){Wa(c,a-e|0);break c}if(a>>>0>=e>>>0){break c}i[c+4>>2]=a+k}if(l){a=0;m=1;e=0;while(1){d=e;k=b;if(!j[b+84|0]){d=i[i[b+68>>2]+(e<<2)>>2]}n=d;d=i[f>>2];if(Dg(k,n,g[b+24|0],d)){d:{if((h|0)<1){break d}g[i[c>>2]+a|0]=j[d|0];d=1;a=a+1|0;if((h|0)==1){break d}while(1){g[i[c>>2]+a|0]=j[i[f>>2]+d|0];a=a+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}e=e+1|0;m=e>>>0>>0;if((e|0)!=(l|0)){continue}}break}d=i[f>>2]}if(d){Wk(d)}a=m^1}F=f+16|0;return a&1}Ak();x()}function Ag(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;f=F-16|0;F=f;l=i[a+80>>2];h=g[b+24|0];a=o(l,h);a:{e=i[b+28>>2];b:{if(!(!j[b+84|0]|((e|0)!=2?(e|0)!=1:0))){e=i[b+48>>2];k=i[i[b>>2]>>2];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;b=0;if(a){if((a|0)<=-1){break a}b=lk(a);d=Yk(b,e+k|0,a)+a|0}a=i[c>>2];if(a){i[c+4>>2]=a;Wk(a)}i[c+8>>2]=d;i[c+4>>2]=d;i[c>>2]=b;a=1;break b}i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;if(h){if((h|0)<=-1){break a}d=lk(h);i[f>>2]=d;e=d+h|0;i[f+8>>2]=e;Zk(d,0,h);i[f+4>>2]=e}k=i[c>>2];e=i[c+4>>2]-k|0;c:{if(a>>>0>e>>>0){Wa(c,a-e|0);break c}if(a>>>0>=e>>>0){break c}i[c+4>>2]=a+k}if(l){a=0;m=1;e=0;while(1){d=e;k=b;if(!j[b+84|0]){d=i[i[b+68>>2]+(e<<2)>>2]}n=d;d=i[f>>2];if(Bg(k,n,g[b+24|0],d)){d:{if((h|0)<1){break d}g[i[c>>2]+a|0]=j[d|0];d=1;a=a+1|0;if((h|0)==1){break d}while(1){g[i[c>>2]+a|0]=j[i[f>>2]+d|0];a=a+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}e=e+1|0;m=e>>>0>>0;if((e|0)!=(l|0)){continue}}break}d=i[f>>2]}if(d){Wk(d)}a=m^1}F=f+16|0;return a&1}Ak();x()}function Hg(a,b,c){var d=0,e=0,f=0,l=0,m=0,n=0,p=0,q=0;e=F-16|0;F=e;p=i[a+80>>2];n=g[b+24|0];a=o(p,n);a:{b:{c:{d=i[b+28>>2];if(!(!j[b+84|0]|((d|0)!=4?(d|0)!=3:0))){l=i[b+48>>2];d=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=0;a=a<<1;if(a){if((a|0)<=-1){break c}b=lk(a);l=Yk(b,d+l|0,a);m=l+a|0;f=l+(a>>1<<1)|0}a=i[c>>2];if(a){i[c+4>>2]=a;Wk(a)}i[c+8>>2]=f;i[c+4>>2]=m;i[c>>2]=b;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(n){if((n|0)<=-1){break c}d=n<<1;m=lk(d);i[e>>2]=m;f=d+m|0;i[e+8>>2]=f;Zk(m,0,d);i[e+4>>2]=f}f=i[c>>2];d=i[c+4>>2]-f>>1;d:{if(a>>>0>d>>>0){Fg(c,a-d|0);break d}if(a>>>0>=d>>>0){break d}i[c+4>>2]=f+(a<<1)}if(!p){break b}f=0;q=1;while(1){a=l;d=b;if(!j[d+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!Ig(d,a,g[b+24|0],m)){break b}if((n|0)>=1){d=i[c>>2];a=0;while(1){h[d+(f<<1)>>1]=k[(a<<1)+m>>1];f=f+1|0;a=a+1|0;if((n|0)!=(a|0)){continue}break}}l=l+1|0;q=l>>>0

>>0;if((l|0)!=(p|0)){continue}break}break b}Ak();x()}if(m){Wk(m)}a=q^1}F=e+16|0;return a&1}function Eg(a,b,c){var d=0,e=0,f=0,l=0,m=0,n=0,p=0,q=0;e=F-16|0;F=e;p=i[a+80>>2];n=g[b+24|0];a=o(p,n);a:{b:{c:{d=i[b+28>>2];if(!(!j[b+84|0]|((d|0)!=4?(d|0)!=3:0))){l=i[b+48>>2];d=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=0;a=a<<1;if(a){if((a|0)<=-1){break c}b=lk(a);l=Yk(b,d+l|0,a);m=l+a|0;f=l+(a>>1<<1)|0}a=i[c>>2];if(a){i[c+4>>2]=a;Wk(a)}i[c+8>>2]=f;i[c+4>>2]=m;i[c>>2]=b;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(n){if((n|0)<=-1){break c}d=n<<1;m=lk(d);i[e>>2]=m;f=d+m|0;i[e+8>>2]=f;Zk(m,0,d);i[e+4>>2]=f}f=i[c>>2];d=i[c+4>>2]-f>>1;d:{if(a>>>0>d>>>0){Fg(c,a-d|0);break d}if(a>>>0>=d>>>0){break d}i[c+4>>2]=f+(a<<1)}if(!p){break b}f=0;q=1;while(1){a=l;d=b;if(!j[d+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!Gg(d,a,g[b+24|0],m)){break b}if((n|0)>=1){d=i[c>>2];a=0;while(1){h[d+(f<<1)>>1]=k[(a<<1)+m>>1];f=f+1|0;a=a+1|0;if((n|0)!=(a|0)){continue}break}}l=l+1|0;q=l>>>0

>>0;if((l|0)!=(p|0)){continue}break}break b}Ak();x()}if(m){Wk(m)}a=q^1}F=e+16|0;return a&1}function Z(a,b,c,d,e){var f=0,g=0,h=0,k=0,l=0,n=0,o=0,q=0;f=F-48|0;F=f;a=i[a+4>>2];a:{if(a+ -2>>>0>28){break a}l=i[i[e>>2]>>2]+i[e+48>>2]|0;i[f+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;i[f+24>>2]=a;i[f+32>>2]=(a|0)/2;m[f+28>>2]=p(2)/p(a|0);g=i[c>>2];if((g|0)!=i[c+4>>2]){a=0;e=0;while(1){d=i[(e<<2)+g>>2];g=f+36|0;n=i[i[b>>2]>>2];o=i[b+48>>2];h=i[b+44>>2];k=i[b+40>>2];q=k;if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}d=hl(q,h,d,0)+o|0;Yk(g,d+n|0,k);_(f+16|0,f+36|0,f+12|0,f+8|0);d=a<<2;i[d+l>>2]=i[f+12>>2];i[(d|4)+l>>2]=i[f+8>>2];h=1;a=a+2|0;e=e+1|0;g=i[c>>2];if(e>>>0>2]-g>>2>>>0){continue}break}break a}if(!d){h=1;break a}e=0;a=0;while(1){c=a;g=f+36|0;n=i[i[b>>2]>>2];o=i[b+48>>2];h=i[b+44>>2];k=i[b+40>>2];q=k;if(!j[b+84|0]){c=i[i[b+68>>2]+(a<<2)>>2]}c=hl(q,h,c,0)+o|0;Yk(g,c+n|0,k);_(f+16|0,f+36|0,f+12|0,f+8|0);c=e<<2;i[c+l>>2]=i[f+12>>2];i[(c|4)+l>>2]=i[f+8>>2];e=e+2|0;h=1;a=a+1|0;if((d|0)!=(a|0)){continue}break}}F=f+48|0;return h}function hd(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0;h=F-16|0;F=h;f=i[b+16>>2];d=i[b+12>>2];c=i[b+20>>2];a:{if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<=f>>>0:0){break a}g[a+12|0]=j[f+i[b>>2]|0];d=i[b+20>>2];c=i[b+16>>2]+1|0;if(c>>>0<1){d=d+1|0}i[b+16>>2]=c;i[b+20>>2]=d;if(!id(1,h+12|0,b)){break a}d=i[b+8>>2];m=i[b+16>>2];c=m;e=i[h+12>>2];f=e;k=d-c>>>0>>0;n=d>>>0>>0;d=i[b+20>>2];c=i[b+12>>2]-(n+d|0)|0;if(((c|0)<0?1:(c|0)<=0?k:0)|(e|0)<1){break a}c=m+i[b>>2]|0;i[a>>2]=c;o=e+ -1|0;p=o+c|0;k=j[p|0]>>>6|0;if((k|0)==3){break a}n=a;b:{c:{switch(k-1|0){default:i[a+4>>2]=o;a=j[p|0]&63;break b;case 0:if((e|0)<2){break a}i[a+4>>2]=e+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break b;case 1:break c}}if((e|0)<3){break a}i[a+4>>2]=e+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0]}a=a+4096|0;i[n+8>>2]=a;if(a>>>0>1048575){break a}a=d;d=f+m|0;if(d>>>0>>0){a=a+1|0}i[b+16>>2]=d;i[b+20>>2]=a;q=1}F=h+16|0;return q}function qa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,m=0,n=0;e=i[a+12>>2];d=i[a+8>>2];f=e-d>>2;b=g[b+24|0];a:{if(f>>>0>>0){ja(a+8|0,b-f|0);d=i[a+8>>2];e=i[a+12>>2];break a}if(f>>>0<=b>>>0){break a}e=(b<<2)+d|0;i[a+12>>2]=e}b=0;h=i[c+12>>2];f=i[c+20>>2];k=i[c+16>>2];m=e-d|0;e=m;n=k+e|0;if(n>>>0>>0){f=f+1|0}b:{if((h|0)<(f|0)?1:(h|0)<=(f|0)?l[c+8>>2]>>0:0){break b}Yk(d,k+i[c>>2]|0,m);d=i[c+20>>2];h=e+i[c+16>>2]|0;if(h>>>0>>0){d=d+1|0}e=h;i[c+16>>2]=e;i[c+20>>2]=d;f=i[c+12>>2];h=e+4|0;if(h>>>0<4){d=d+1|0}if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]>>0:0){break b}d=e+i[c>>2]|0;i[a+20>>2]=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);d=i[c+20>>2];e=d;k=i[c+16>>2];h=k+4|0;if(h>>>0<4){d=d+1|0}i[c+16>>2]=h;i[c+20>>2]=d;f=i[c+12>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=h>>>0:0){break b}f=j[h+i[c>>2]|0];d=e;e=k+5|0;if(e>>>0<5){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;if(f+ -1>>>0>29){break b}i[a+4>>2]=f;b=1}return b|0}function ej(a,b){var c=0,d=0,e=0,f=0,h=0,j=0;j=F-16|0;F=j;a:{b:{if(b){i[a+88>>2]=0;i[a+92>>2]=0;c=a+84|0;d=i[c>>2];i[c>>2]=0;if(d){Wk(d)}i[a+76>>2]=0;i[a+80>>2]=0;c=a+72|0;d=i[c>>2];i[c>>2]=0;if(d){Wk(d)}d=i[b>>2];c=i[b+4>>2];g[j+15|0]=0;ie(a,c-d>>2,j+15|0);c=b+28|0;d=i[c>>2];e=i[b+24>>2];g[j+14|0]=0;ie(a+12|0,d-e>>2,j+14|0);Xi(a+28|0,i[b+4>>2]-i[b>>2]>>2,11020);d=i[a+52>>2];e=i[c>>2]-i[b+24>>2]|0;c=e>>2;c:{if(i[a+60>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break b}f=i[a+56>>2];h=c<<2;c=lk(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){Yk(c,d,e)}i[a+60>>2]=h;i[a+56>>2]=f;i[a+52>>2]=c;if(!d){break c}Wk(d)}d=i[a+40>>2];e=i[b+28>>2]-i[b+24>>2]|0;c=e>>2;d:{if(i[a+48>>2]-d>>2>>>0>=c>>>0){break d}if(c>>>0>=1073741824){break a}f=i[a+44>>2];h=c<<2;c=lk(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){Yk(c,d,e)}i[a+48>>2]=h;i[a+44>>2]=f;i[a+40>>2]=c;if(!d){break d}Wk(d)}g[a+24|0]=1;i[a+64>>2]=b}F=j+16|0;return}va(11024);x()}va(11024);x()}function We(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i[a+12>>2];d=i[a+108>>2];e=i[d+80>>2];g[b+84|0]=0;f=i[b+68>>2];c=i[b+72>>2]-f>>2;a:{if(e>>>0>c>>>0){cb(b+68|0,e-c|0,9252);d=i[a+108>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=f+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}p=d>>>0>1?d:1;d=0;b:{while(1){c:{if((d|0)==1431655765){break c}c=i[n>>2]+(o(d,3)<<2)|0;j=i[c>>2];if((j|0)==-1){break c}f=o(d,12)+m|0;h=i[f>>2];if(h>>>0>=e>>>0){break c}l=i[i[a+112>>2]+12>>2];k=i[l+(j<<2)>>2];if(k>>>0>=e>>>0){break c}j=i[b+68>>2];i[j+(h<<2)>>2]=k;h=i[c+4>>2];if((h|0)==-1){break c}k=i[f+4>>2];if(k>>>0>=e>>>0){break c}h=i[(h<<2)+l>>2];if(h>>>0>=e>>>0){break c}i[j+(k<<2)>>2]=h;c=i[c+8>>2];if((c|0)==-1){break c}f=i[f+8>>2];if(f>>>0>=e>>>0){break c}c=i[(c<<2)+l>>2];if(c>>>0>=e>>>0){break c}i[j+(f<<2)>>2]=c;c=1;d=d+1|0;if((p|0)!=(d|0)){continue}break b}break}c=0}return c|0}function ff(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i[a+12>>2];d=i[a+68>>2];e=i[d+80>>2];g[b+84|0]=0;f=i[b+68>>2];c=i[b+72>>2]-f>>2;a:{if(e>>>0>c>>>0){cb(b+68|0,e-c|0,9252);d=i[a+68>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=f+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}p=d>>>0>1?d:1;d=0;b:{while(1){c:{if((d|0)==1431655765){break c}c=i[n>>2]+(o(d,3)<<2)|0;j=i[c>>2];if((j|0)==-1){break c}f=o(d,12)+m|0;h=i[f>>2];if(h>>>0>=e>>>0){break c}l=i[i[a+72>>2]+12>>2];k=i[l+(j<<2)>>2];if(k>>>0>=e>>>0){break c}j=i[b+68>>2];i[j+(h<<2)>>2]=k;h=i[c+4>>2];if((h|0)==-1){break c}k=i[f+4>>2];if(k>>>0>=e>>>0){break c}h=i[(h<<2)+l>>2];if(h>>>0>=e>>>0){break c}i[j+(k<<2)>>2]=h;c=i[c+8>>2];if((c|0)==-1){break c}f=i[f+8>>2];if(f>>>0>=e>>>0){break c}c=i[(c<<2)+l>>2];if(c>>>0>=e>>>0){break c}i[j+(f<<2)>>2]=c;c=1;d=d+1|0;if((p|0)!=(d|0)){continue}break b}break}c=0}return c|0}function Vb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F-16|0;F=e;a:{c=i[a+4>>2];b:{if(c>>>0>>0){d=i[a+8>>2];f=d<<5;g=b-c|0;c:{if(!(f>>>0>>0|c>>>0>f-g>>>0)){i[a+4>>2]=b;d=c&31;b=i[a>>2]+(c>>>3&536870908)|0;break c}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if((b|0)<=-1){break a}c=e;if(f>>>0<=1073741822){f=b+31&-32;b=d<<6;b=b>>>0>>0?f:b}else{b=2147483647}Xb(c,b);d=i[a+4>>2];i[e+4>>2]=d+g;h=i[a>>2];b=i[e>>2];d:{if((d|0)<1){d=0;break d}c=d>>>5|0;f=c<<2;b=_k(b,h,f)+f|0;d=d-(c<<5)|0;e:{if((d|0)<1){d=0;break e}c=-1>>>32-d|0;i[b>>2]=i[b>>2]&(c^-1)|c&i[f+h>>2]}h=i[a>>2]}i[a>>2]=i[e>>2];i[e>>2]=h;c=i[a+4>>2];i[a+4>>2]=i[e+4>>2];i[e+4>>2]=c;c=i[a+8>>2];i[a+8>>2]=i[e+8>>2];i[e+8>>2]=c;if(!h){break c}Wk(h)}if(!g){break b}if(d){c=32-d|0;a=c>>>0>g>>>0?g:c;i[b>>2]=i[b>>2]&(-1<>>c-a^-1);g=g-a|0;b=b+4|0}c=g>>>5<<2;a=Zk(b,0,c);b=g&31;if(!b){break b}a=a+c|0;i[a>>2]=i[a>>2]&(-1>>>32-b^-1);break b}i[a+4>>2]=b}F=e+16|0;return}Ak();x()}function Xe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=F-16|0;F=g;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+28>>2]-i[c+24>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];h=c<<2;c=lk(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){Yk(c,d,e)}i[b+8>>2]=h;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}Wk(d)}b=i[a+12>>2];d=i[b+28>>2];b=i[b+24>>2];i[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=i[c>>2];d=i[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}i[a+100>>2]=e+(b<<2)}e=a+8|0;b=i[a+116>>2];d:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){d=1;break d}b=0;while(1){d=Ye(e,i[(b<<2)+c>>2]);if(!d){break d}f=i[a+116>>2];c=i[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=i[a+12>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break d}b=0;while(1){d=Ye(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break d}if(d){continue}break}}F=g+16|0;return d|0}va(8944);x()}function mf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;j=i[a+12>>2];d=i[a+68>>2];e=i[d+80>>2];g[b+84|0]=0;h=i[b+68>>2];c=i[b+72>>2]-h>>2;a:{if(e>>>0>c>>>0){cb(b+68|0,e-c|0,9252);d=i[a+68>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=h+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}n=d>>>0>1?d:1;p=i[j+28>>2];d=0;b:{while(1){c:{c=(o(d,3)<<2)+p|0;h=i[c>>2];if((h|0)==-1){break c}j=o(d,12)+m|0;k=i[j>>2];if(k>>>0>=e>>>0){break c}f=h<<2;h=i[i[a+72>>2]+12>>2];f=i[f+h>>2];if(f>>>0>=e>>>0){break c}l=k<<2;k=i[b+68>>2];i[l+k>>2]=f;f=i[c+4>>2];if((f|0)==-1){break c}l=i[j+4>>2];if(l>>>0>=e>>>0){break c}f=i[h+(f<<2)>>2];if(f>>>0>=e>>>0){break c}i[k+(l<<2)>>2]=f;c=i[c+8>>2];if((c|0)==-1){break c}j=i[j+8>>2];if(j>>>0>=e>>>0){break c}c=i[h+(c<<2)>>2];if(c>>>0>=e>>>0){break c}i[k+(j<<2)>>2]=c;c=1;d=d+1|0;if((n|0)!=(d|0)){continue}break b}break}c=0}return c|0}function Gj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=a+8|0;d=i[a+12>>2];h=i[a+8>>2];f=d-h>>2;a:{if((f|0)>(b|0)){break a}e=b+1|0;if(e>>>0>f>>>0){Hj(j,e-f|0);break a}if(e>>>0>=f>>>0){break a}f=h+(e<<2)|0;if((f|0)!=(d|0)){while(1){d=d+ -4|0;e=i[d>>2];i[d>>2]=0;if(e){Ma(e)}if((d|0)!=(f|0)){continue}break}}i[a+12>>2]=f}b:{c:{d=i[i[c>>2]+56>>2];d:{if((d|0)>4){break d}d=o(d,12)+a|0;h=d+24|0;a=i[h>>2];k=d+28|0;if((a|0)!=i[k>>2]){i[a>>2]=b;i[h>>2]=a+4;break d}l=d+20|0;d=i[l>>2];f=a-d|0;g=f>>2;e=g+1|0;if(e>>>0>=1073741824){break c}a=f>>1;e=g>>>0<536870911?a>>>0>>0?e:a:1073741823;a=0;e:{if(!e){break e}if(e>>>0>=1073741824){break b}a=lk(e<<2)}g=a+(g<<2)|0;i[g>>2]=b;e=a+(e<<2)|0;g=g+4|0;if((f|0)>=1){Yk(a,d,f)}i[l>>2]=a;i[h>>2]=g;i[k>>2]=e;if(!d){break d}Wk(d)}d=i[c>>2];i[d+60>>2]=b;a=i[j>>2];i[c>>2]=0;b=a+(b<<2)|0;a=i[b>>2];i[b>>2]=d;if(a){Ma(a)}return}Ak();x()}va(11352);x()}function Ge(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if((e-c|0)/12>>>0>=b>>>0){if(b){b=o(b,12);c=Zk(c,0,b-((b+ -12>>>0)%12|0)|0)+b|0}i[a+4>>2]=c;return}a:{b:{c:{h=i[a>>2];f=(c-h|0)/12|0;d=f+b|0;if(d>>>0<357913942){f=o(f,12);e=(e-h|0)/12|0;g=e<<1;e=e>>>0<178956970?g>>>0>>0?d:g:357913941;if(e){if(e>>>0>=357913942){break c}j=lk(o(e,12))}d=f+j|0;b=o(b,12);f=Zk(d,0,b-((b+ -12>>>0)%12|0)|0);g=b+f|0;b=o(e,12)+j|0;if((c|0)==(h|0)){break b}while(1){d=d+ -12|0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;c=c+ -12|0;i[d>>2]=i[c>>2];i[d+4>>2]=i[c+4>>2];i[d+8>>2]=i[c+8>>2];i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;if((c|0)!=(h|0)){continue}break}i[a+8>>2]=b;b=i[a+4>>2];i[a+4>>2]=g;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=b+ -12|0;d=i[a>>2];if(d){i[b+ -8>>2]=d;Wk(d)}b=a;if((b|0)!=(c|0)){continue}break}break a}Ak();x()}va(8944);x()}i[a+8>>2]=b;i[a+4>>2]=g;i[a>>2]=f}if(c){Wk(c)}}function $(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=p(0),f=p(0),h=p(0),k=p(0),l=p(0),m=0,n=p(0),o=p(0),r=p(0),s=p(0),u=0;a:{if(i[c+28>>2]!=9|j[c+24|0]!=3){break a}a=i[a+4>>2];if(a+ -2>>>0>28){break a}u=1;m=i[c+80>>2];if(!m){break a}n=p(p(2)/p((1<>2]>>2]+i[c+48>>2]|0;a=i[i[b>>2]>>2]+i[b+48>>2]|0;b=0;while(1){h=p(0);o=p(0);r=p(0);e=p(p(n*p(i[a>>2]))+p(-1));f=p(p(n*p(i[a+4>>2]))+p(-1));l=p(p(p(1)-p(q(e)))-p(q(f)));k=p(t(p(-l),p(0)));s=p(-k);f=p(f+(f>>8;g[c+10|0]=d>>>16;g[c+11|0]=d>>>24;d=(ol(o),pl(2));g[c+4|0]=d;g[c+5|0]=d>>>8;g[c+6|0]=d>>>16;g[c+7|0]=d>>>24;d=(ol(h),pl(2));g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((m|0)!=(b|0)){continue}break}}return u|0}function rc(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+4>>2]=b;i[a>>2]=2776;b=c;e=i[b+8>>2];f=i[b+12>>2];h=i[b+16>>2];j=i[b+20>>2];k=i[b>>2];l=i[b+4>>2];i[a+40>>2]=0;g=a+32|0;i[g>>2]=0;i[g+4>>2]=0;i[a+24>>2]=h;i[a+28>>2]=j;i[a+16>>2]=e;i[a+20>>2]=f;i[a+8>>2]=k;i[a+12>>2]=l;a:{b=i[b+28>>2]-i[b+24>>2]|0;if(b){e=b>>2;if(e>>>0>=1073741824){break a}b=lk(b);i[a+32>>2]=b;i[a+36>>2]=b;i[a+40>>2]=b+(e<<2);e=a;f=i[c+24>>2];c=i[c+28>>2]-f|0;if((c|0)>=1){b=Yk(b,f,c)+c|0}i[e+36>>2]=b}i[a>>2]=4340;b=i[d+4>>2];i[a+44>>2]=i[d>>2];i[a+48>>2]=b;b=d+8|0;e=i[b+4>>2];i[a+52>>2]=i[b>>2];i[a+56>>2]=e;c=a- -64|0;i[c>>2]=0;i[c+4>>2]=0;i[a+60>>2]=5440;i[a>>2]=4856;c=i[d+4>>2];i[a+72>>2]=i[d>>2];i[a+76>>2]=c;c=i[b+4>>2];i[a+80>>2]=i[b>>2];i[a+84>>2]=c;i[a+104>>2]=1065353216;i[a+108>>2]=-1;i[a+96>>2]=-1;i[a+100>>2]=-1;i[a+88>>2]=1;i[a+92>>2]=-1;i[a+60>>2]=5076;gd(a+112|0);return}Ak();x()}function qc(a){var b=0,c=0,d=0;b=i[a+8>>2];d=i[a>>2];a:{if(j[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|i[i[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break e}b=i[i[i[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}i[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;i[a+8>>2]=b;if((b|0)!=-1){break b}}b=-1;c=i[a+4>>2];f:{if((c|0)==-1){break f}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|i[i[d>>2]+(c>>>3&536870908)>>2]>>>c&1){break f}d=i[i[i[d+64>>2]+12>>2]+(c<<2)>>2];if((d|0)==-1){break f}if((d>>>0)%3|0){b=d+ -1|0;break f}b=d+2|0}g[a+12|0]=0;i[a+8>>2]=b;return}if((b|0)!=i[a+4>>2]){break a}i[a+8>>2]=-1;return}c=-1;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)==-1|i[i[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=i[i[i[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break g}if((b>>>0)%3|0){c=b+ -1|0;break g}c=b+2|0}i[a+8>>2]=c}}function Hb(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+4>>2]=b;i[a>>2]=2776;b=c;e=i[b+8>>2];f=i[b+12>>2];h=i[b+16>>2];j=i[b+20>>2];k=i[b>>2];l=i[b+4>>2];i[a+40>>2]=0;g=a+32|0;i[g>>2]=0;i[g+4>>2]=0;i[a+24>>2]=h;i[a+28>>2]=j;i[a+16>>2]=e;i[a+20>>2]=f;i[a+8>>2]=k;i[a+12>>2]=l;a:{b=i[b+28>>2]-i[b+24>>2]|0;if(b){e=b>>2;if(e>>>0>=1073741824){break a}b=lk(b);i[a+32>>2]=b;i[a+36>>2]=b;i[a+40>>2]=b+(e<<2);e=a;f=i[c+24>>2];c=i[c+28>>2]-f|0;if((c|0)>=1){b=Yk(b,f,c)+c|0}i[e+36>>2]=b}i[a>>2]=2720;b=i[d+4>>2];i[a+44>>2]=i[d>>2];i[a+48>>2]=b;b=d+8|0;e=i[b+4>>2];i[a+52>>2]=i[b>>2];i[a+56>>2]=e;c=a- -64|0;i[c>>2]=0;i[c+4>>2]=0;i[a+60>>2]=3944;i[a>>2]=3316;c=i[d+4>>2];i[a+72>>2]=i[d>>2];i[a+76>>2]=c;c=i[b+4>>2];i[a+80>>2]=i[b>>2];i[a+84>>2]=c;i[a+104>>2]=1065353216;i[a+108>>2]=-1;i[a+96>>2]=-1;i[a+100>>2]=-1;i[a+88>>2]=1;i[a+92>>2]=-1;i[a+60>>2]=3552;gd(a+112|0);return}Ak();x()}function nd(a){var b=0,c=0,d=0,e=0;e=F-16|0;F=e;b=lk(32);i[e>>2]=b;i[e+4>>2]=26;i[e+8>>2]=-2147483616;g[b+26|0]=0;c=j[8009]|j[8010]<<8;g[b+24|0]=c;g[b+25|0]=c>>>8;d=j[8005]|j[8006]<<8|(j[8007]<<16|j[8008]<<24);c=j[8001]|j[8002]<<8|(j[8003]<<16|j[8004]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[7997]|j[7998]<<8|(j[7999]<<16|j[8e3]<<24);c=j[7993]|j[7994]<<8|(j[7995]<<16|j[7996]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[7989]|j[7990]<<8|(j[7991]<<16|j[7992]<<24);c=j[7985]|j[7986]<<8|(j[7987]<<16|j[7988]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ok(a+4|0,e);if(g[e+11|0]<=-1){Wk(i[e>>2])}F=e+16|0}function zd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;g=F-16|0;F=g;a:{if(!Kd(1,g+8|0,b)){break a}c=i[b+8>>2];d=i[b+16>>2];h=c-d|0;e=i[g+12>>2];k=i[b+20>>2];f=i[b+12>>2]-(k+(c>>>0>>0)|0)|0;c=i[g+8>>2];if((e|0)==(f|0)&c>>>0>h>>>0|e>>>0>f>>>0){break a}e=e+k|0;f=c+d|0;if(f>>>0>>0){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if((c|0)<1){break a}d=d+i[b>>2]|0;i[a+40>>2]=d;b=a;b:{c:{d:{e:{f:{f=c+ -1|0;h=d+f|0;switch((j[h|0]>>>6|0)-1|0){case 2:break c;case 1:break d;case 0:break e;default:break f}}i[a+44>>2]=f;a=j[h|0]&63;break b}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+d|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break b}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+d|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break b}i[a+44>>2]=c+ -4;a=(c+d|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+16384|0;i[b+48>>2]=a;l=a>>>0<4194304}F=g+16|0;return l}function rf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=lk(b<<2);d=i[a>>2];i[a>>2]=c;if(d){Wk(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=kl(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}k=b+ -1|0;l=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!l){e=e&k;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){e=c;c=i[c>>2];if(i[d+8>>2]==i[c+8>>2]?c:0){continue}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){Wk(b)}i[a+4>>2]=0}return}va(8944);x()}function rg(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=F-16|0;F=e;k=sg(a,b);a:{if(!k){break a}d=i[b+100>>2];f=i[b+96>>2];if((d|0)==(f|0)){break a}while(1){if(!(i[i[a+56>>2]+(j>>>3&536870908)>>2]>>>j&1)){d=o(j,3);ij(a,0,d);f=i[a+8>>2];h=i[a+12>>2];ij(a,1,d+1|0);g=i[a+20>>2];l=i[a+24>>2];ij(a,2,d+2|0);g=l-g>>2;f=h-f|0;h=f>>2;d=g>>>0>h>>>0;h=i[a+36>>2]-i[a+32>>2]>>2>>>0>(d?g:h)>>>0?2:d?1:f?0:-1;b:{if(i[a+68>>2]<1){break b}i[e+12>>2]=i[a+76>>2];i[e+8>>2]=c;tg(e+8|0,e+12|0);f=e;g=i[((h<<2)+a|0)+44>>2];d=-1;c:{if((g|0)<0){break c}d=(g>>>0)/3|0;d=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(g-o(d,3)<<2)>>2]}i[f+12>>2]=d;i[e+8>>2]=c;tg(e+8|0,e+12|0);f=i[a+72>>2]+2|0;i[a+72>>2]=f;if(!(f&1)){break b}i[e+12>>2]=d;i[e+8>>2]=c;tg(e+8|0,e+12|0);i[a+72>>2]=i[a+72>>2]+1}ug(a,h,c);f=i[b+96>>2];d=i[b+100>>2]}j=j+1|0;if(j>>>0<(d-f|0)/12>>>0){continue}break}}F=e+16|0;return k}function Ce(a){i[a>>2]=8392;Zk(a+4|0,0,80);i[a+96>>2]=0;i[a+100>>2]=0;i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+148>>2]=0;i[a+156>>2]=0;i[a+160>>2]=0;i[a+152>>2]=1065353216;i[a+164>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;i[a+196>>2]=0;i[a+200>>2]=0;i[a+204>>2]=0;i[a+208>>2]=0;i[a+212>>2]=-1;i[a+216>>2]=0;i[a+220>>2]=0;i[a+224>>2]=0;Pf(a+232|0);Pf(a+272|0);gd(a+312|0);Pf(a+328|0);i[a+392>>2]=0;i[a+396>>2]=0;i[a+384>>2]=0;i[a+388>>2]=0;i[a+376>>2]=0;i[a+380>>2]=0;i[a+368>>2]=0;i[a+372>>2]=0;i[a+416>>2]=0;i[a+420>>2]=0;i[a+408>>2]=2;i[a+412>>2]=7;i[a+400>>2]=-1;i[a+404>>2]=-1;i[a+424>>2]=0;i[a+428>>2]=0;i[a+432>>2]=0;i[a+436>>2]=0}function na(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,n=0,r=0,s=0,t=0,v=0,w=0,x=p(0),y=0,z=0,A=p(0),B=0,C=0,D=0,E=0;r=F-16|0;F=r;e=i[a+4>>2];h=i[d+48>>2];l=i[i[d>>2]>>2];k=g[b+24|0];f=_f(r+8|0);$f(f,m[a+20>>2],-1<>2];e=i[c+4>>2];if((n|0)!=(e|0)){y=h+l|0;c=e-n|0;h=(c|0)>-1?c:-1;e=n-e|0;c=o((h|0)<1?h:1,((e|0)>(c|0)?e:c)>>>2|0);z=c>>>0>1?c:1;A=m[f>>2];B=i[b>>2];e=i[b+48>>2];C=i[b+68>>2];h=i[b+44>>2];l=i[b+40>>2];D=l;c=0;E=j[b+84|0];while(1){b=i[(s<<2)+n>>2];f=d;t=i[B>>2];v=l;w=h;if(!E){b=i[(b<<2)+C>>2]}b=hl(v,w,b,0)+e|0;v=Yk(f,b+t|0,D);if((k|0)>=1){w=i[a+8>>2];b=0;while(1){t=y+(c<<2)|0;f=b<<2;x=p(u(p(p(A*p(m[f+v>>2]-m[f+w>>2]))+p(.5))));a:{if(p(q(x))>2]=f;c=c+1|0;b=b+1|0;if((k|0)!=(b|0)){continue}break}}s=s+1|0;if((z|0)!=(s|0)){continue}break}}Wk(d);F=r+16|0}function ba(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0;l=d-c|0;if((l|0)<1){return}a:{e=i[a+8>>2];m=i[a+4>>2];if((l|0)<=(e-m|0)){k=m-b|0;if((l|0)<=(k|0)){e=m;h=d;break a}e=m;h=c+k|0;if((h|0)!=(d|0)){f=h;while(1){g[e|0]=j[f|0];e=e+1|0;f=f+1|0;if((f|0)!=(d|0)){continue}break}}i[a+4>>2]=e;if((k|0)>=1){break a}return}h=i[a>>2];d=(m-h|0)+l|0;if((d|0)>-1){k=b-h|0;n=k;f=e-h|0;e=f<<1;e=f>>>0<1073741823?e>>>0>>0?d:e:2147483647;d=0;b:{if(!e){break b}d=lk(e)}c=Yk(n+d|0,c,l);if((k|0)>=1){Yk(d,h,k)}e=d+e|0;c=c+l|0;f=m-b|0;if((f|0)>=1){c=Yk(c,b,f)+f|0}i[a+8>>2]=e;i[a+4>>2]=c;i[a>>2]=d;if(h){Wk(h)}return}Ak();x()}k=e-(b+l|0)|0;f=e;d=e-l|0;if(d>>>0>>0){while(1){g[f|0]=j[d|0];f=f+1|0;d=d+1|0;if(d>>>0>>0){continue}break}}i[a+4>>2]=f;if(k){_k(e-k|0,b,k)}if((c|0)==(h|0)){return}f=b;while(1){g[f|0]=j[c|0];f=f+1|0;c=c+1|0;if((h|0)!=(c|0)){continue}break}}function Fa(a,b){var c=0,d=0,e=0,f=0,h=0;if(!i[a+64>>2]){e=lk(32);c=Mf(e);d=i[a+64>>2];i[a+64>>2]=e;e=a;if(d){c=i[d>>2];if(c){i[d+4>>2]=c;Wk(c)}Wk(d);c=i[a+64>>2]}Ba(e,c,0,0)}a:{b:{if(!Aa(a,b)){break b}g[a+84|0]=j[b+84|0];i[a+80>>2]=i[b+80>>2];if((a|0)!=(b|0)){Ga(a+68|0,i[b+68>>2],i[b+72>>2])}d=i[b+88>>2];if(d){b=lk(40);c=i[d>>2];i[b+16>>2]=0;i[b+8>>2]=0;i[b+12>>2]=0;i[b>>2]=c;e=i[d+12>>2]-i[d+8>>2]|0;if(e){if((e|0)<=-1){break a}c=lk(e);i[b+8>>2]=c;i[b+12>>2]=c;i[b+16>>2]=c+e;e=b;h=i[d+8>>2];f=i[d+12>>2]-h|0;if((f|0)>=1){c=Yk(c,h,f)+f|0}i[e+12>>2]=c}c=i[d+36>>2];i[b+32>>2]=i[d+32>>2];i[b+36>>2]=c;c=i[d+28>>2];i[b+24>>2]=i[d+24>>2];i[b+28>>2]=c;c=i[a+88>>2];i[a+88>>2]=b;if(!c){break b}a=i[c+8>>2];if(a){i[c+12>>2]=a;Wk(a)}Wk(c);return}b=i[a+88>>2];i[a+88>>2]=0;if(!b){break b}a=i[b+8>>2];if(a){i[b+12>>2]=a;Wk(a)}Wk(b)}return}Ak();x()}function Bd(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=F+ -64|0;F=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!yd(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!zd(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>16383){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<16384){continue}break}}e=b&4095;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>12|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=zd(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;Wk(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;Wk(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;Wk(a)}F=d- -64|0;return e}function od(a,b){var c=0,d=0,e=0;e=F-16|0;F=e;i[e+12>>2]=b;b=lk(32);i[e>>2]=b;i[e+4>>2]=24;i[e+8>>2]=-2147483616;g[b+24|0]=0;c=j[8053]|j[8054]<<8|(j[8055]<<16|j[8056]<<24);d=j[8049]|j[8050]<<8|(j[8051]<<16|j[8052]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[8045]|j[8046]<<8|(j[8047]<<16|j[8048]<<24);d=j[8041]|j[8042]<<8|(j[8043]<<16|j[8044]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[8037]|j[8038]<<8|(j[8039]<<16|j[8040]<<24);d=j[8033]|j[8034]<<8|(j[8035]<<16|j[8036]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;Xf(pd(a,e+12|0),e);if(g[e+11|0]<=-1){Wk(i[e>>2])}F=e+16|0}function gj(a,b){var c=0,d=0,e=0,f=0,h=0,j=0;e=i[a>>2];c=e+(b>>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>2];f=(b|0)==-1;c=-1;a:{if(f){break a}d=b+1|0;d=(d>>>0)%3|0?d:b+ -2|0;c=-1;if((d|0)==-1){break a}c=i[i[h>>2]+(d<<2)>>2]}d=i[a+12>>2];j=(c>>>3&536870908)+d|0;i[j>>2]=i[j>>2]|1<>>0)%3|0?-1:2)+b|0;if((f|0)!=-1){c=i[i[h>>2]+(f<<2)>>2]}f=d+(c>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<>2]+(b<<2)>>2];if((b|0)==-1){break b}g[a+24|0]=0;a=(b>>>3&536870908)+e|0;i[a>>2]=i[a>>2]|1<>>0)%3|0?e:b+ -2|0;if((e|0)!=-1){c=i[i[h>>2]+(e<<2)>>2]}e=d+(c>>>3&536870908)|0;i[e>>2]=i[e>>2]|1<>>0)%3|0?-1:2)|0;if((b|0)!=-1){a=i[i[h>>2]+(b<<2)>>2]}b=1<>>3&536870908)|0;c=i[a>>2];break c}a=d+536870908|0;b=i[d+536870908>>2];c=-2147483648}i[a>>2]=b|c}}function Ng(a,b,c,d,e){var f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0;h=F-16|0;F=h;a:{b:{switch(c+ -1|0){case 0:f=Og(a,b,d,e);break a;case 2:f=Pg(a,b,d,e);break a;case 4:f=Qg(a,b,d,e);break a;case 1:f=Rg(a,b,d,e);break a;case 3:f=Sg(a,b,d,e);break a;case 5:f=Tg(a,b,d,e);break a;case 8:break b;default:break a}}l=g[b+24|0];m=l<<2;a=i[a+80>>2];if((o(m,a)|0)!=(d|0)){break a}c=i[b+28>>2];d=i[2663];i[h+8>>2]=i[2662];i[h+12>>2]=d;d=i[2661];i[h>>2]=i[2660];i[h+4>>2]=d;c:{if(!a){break c}d=0;p=(c|0)!=9;k=1;while(1){c=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!p){k=i[b+48>>2];q=i[i[b>>2]>>2];n=i[b+40>>2];c=hl(n,i[b+44>>2],c,0)+k|0;Yk(h,q+c|0,n);break d}if(!yg(b,c,g[b+24|0],h)){break c}}if((l|0)>=1){Yk((d<<2)+e|0,h,m);d=d+l|0}f=f+1|0;k=f>>>0>>0;if((a|0)!=(f|0)){continue}break}}f=k^1}F=h+16|0;return f&1}function Tg(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;h=F-16|0;F=h;a:{m=i[a+80>>2];k=g[b+24|0];f=k<<2;e=0;b:{if((o(m,f)|0)!=(c|0)){break b}n=i[b+28>>2]!=6;if(!(n|!j[b+84|0])){Yk(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;a=0;if(k){if((k|0)<=-1){break a}a=lk(f);i[h>>2]=a;c=(k<<2)+a|0;i[h+8>>2]=c;Zk(a,0,f);i[h+4>>2]=c}c:{if(!m){break c}c=0;l=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!n){p=i[i[b>>2]>>2];l=i[b+40>>2];e=i[b+48>>2]+hl(l,i[b+44>>2],e,0)|0;Yk(a,p+e|0,l);break d}if(!Mg(b,e,g[b+24|0],a)){break c}}e=0;if((k|0)>=1){while(1){i[(c<<2)+d>>2]=i[(e<<2)+a>>2];c=c+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}f=f+1|0;l=f>>>0>>0;if((f|0)!=(m|0)){continue}break}}if(a){Wk(a)}e=l^1}F=h+16|0;return e&1}Ak();x()}function Sg(a,b,c,d){var e=0,f=0,l=0,m=0,n=0,p=0,q=0,r=0;l=F-16|0;F=l;a:{p=i[a+80>>2];m=g[b+24|0];f=m<<1;e=0;b:{if((o(p,f)|0)!=(c|0)){break b}q=i[b+28>>2]!=4;if(!(q|!j[b+84|0])){Yk(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[l+8>>2]=0;i[l>>2]=0;i[l+4>>2]=0;a=0;if(m){if((m|0)<=-1){break a}a=lk(f);i[l>>2]=a;c=(m<<1)+a|0;i[l+8>>2]=c;Zk(a,0,f);i[l+4>>2]=c}c:{if(!p){break c}c=0;n=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!q){r=i[i[b>>2]>>2];n=i[b+40>>2];e=i[b+48>>2]+hl(n,i[b+44>>2],e,0)|0;Yk(a,r+e|0,n);break d}if(!Ig(b,e,g[b+24|0],a)){break c}}e=0;if((m|0)>=1){while(1){h[(c<<1)+d>>1]=k[(e<<1)+a>>1];c=c+1|0;e=e+1|0;if((m|0)!=(e|0)){continue}break}}f=f+1|0;n=f>>>0

>>0;if((f|0)!=(p|0)){continue}break}}if(a){Wk(a)}e=n^1}F=l+16|0;return e&1}Ak();x()}function Qg(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;h=F-16|0;F=h;a:{m=i[a+80>>2];k=g[b+24|0];f=k<<2;e=0;b:{if((o(m,f)|0)!=(c|0)){break b}n=i[b+28>>2]!=5;if(!(n|!j[b+84|0])){Yk(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;a=0;if(k){if((k|0)<=-1){break a}a=lk(f);i[h>>2]=a;c=(k<<2)+a|0;i[h+8>>2]=c;Zk(a,0,f);i[h+4>>2]=c}c:{if(!m){break c}c=0;l=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!n){p=i[i[b>>2]>>2];l=i[b+40>>2];e=i[b+48>>2]+hl(l,i[b+44>>2],e,0)|0;Yk(a,p+e|0,l);break d}if(!Kg(b,e,g[b+24|0],a)){break c}}e=0;if((k|0)>=1){while(1){i[(c<<2)+d>>2]=i[(e<<2)+a>>2];c=c+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}f=f+1|0;l=f>>>0>>0;if((f|0)!=(m|0)){continue}break}}if(a){Wk(a)}e=l^1}F=h+16|0;return e&1}Ak();x()}function Pg(a,b,c,d){var e=0,f=0,l=0,m=0,n=0,p=0,q=0,r=0;l=F-16|0;F=l;a:{p=i[a+80>>2];m=g[b+24|0];f=m<<1;e=0;b:{if((o(p,f)|0)!=(c|0)){break b}q=i[b+28>>2]!=3;if(!(q|!j[b+84|0])){Yk(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[l+8>>2]=0;i[l>>2]=0;i[l+4>>2]=0;a=0;if(m){if((m|0)<=-1){break a}a=lk(f);i[l>>2]=a;c=(m<<1)+a|0;i[l+8>>2]=c;Zk(a,0,f);i[l+4>>2]=c}c:{if(!p){break c}c=0;n=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!q){r=i[i[b>>2]>>2];n=i[b+40>>2];e=i[b+48>>2]+hl(n,i[b+44>>2],e,0)|0;Yk(a,r+e|0,n);break d}if(!Gg(b,e,g[b+24|0],a)){break c}}e=0;if((m|0)>=1){while(1){h[(c<<1)+d>>1]=k[(e<<1)+a>>1];c=c+1|0;e=e+1|0;if((m|0)!=(e|0)){continue}break}}f=f+1|0;n=f>>>0

>>0;if((f|0)!=(p|0)){continue}break}}if(a){Wk(a)}e=n^1}F=l+16|0;return e&1}Ak();x()}function vb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=F-16|0;F=f;l=i[c+8>>2];h=i[c+16>>2];k=i[c+12>>2];d=k;j=i[c+20>>2];e=j;a:{if((d|0)<(e|0)?1:(d|0)<=(e|0)?l>>>0<=h>>>0:0){break a}m=i[c>>2];n=g[m+h|0];d=j;e=h+1|0;if(e>>>0<1){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;b:{if((n|0)==-2){break b}if((k|0)<(d|0)?1:(k|0)<=(d|0)?l>>>0<=e>>>0:0){break a}e=g[e+m|0];h=h+2|0;if(h>>>0<2){j=j+1|0}d=c;i[d+16>>2]=h;i[d+20>>2]=j;if((e+1&255)>>>0>4){break a}I[i[i[a>>2]+40>>2]](f+8|0,a,n,e);j=i[f+8>>2];i[f+8>>2]=0;d=i[a+20>>2];i[a+20>>2]=j;if(!d){break b}I[i[i[d>>2]+4>>2]](d);d=i[f+8>>2];i[f+8>>2]=0;if(!d){break b}I[i[i[d>>2]+4>>2]](d)}d=i[a+20>>2];if(d){if(!(I[i[i[a>>2]+28>>2]](a,d)|0)){break a}}o=I[i[i[a>>2]+36>>2]](a,b,c)|0}F=f+16|0;return o|0}function Ec(a){var b=0,c=0,d=0;b=i[a+8>>2];d=i[a>>2];a:{if(j[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=i[i[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}i[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;i[a+8>>2]=b;if((b|0)!=-1){break b}}c=i[a+4>>2];b=-1;f:{if((c|0)==-1){break f}c=c+((c>>>0)%3|0?-1:2)|0;b=-1;if((c|0)==-1){break f}c=i[i[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}g[a+12|0]=0;i[a+8>>2]=b;return}if((b|0)!=i[a+4>>2]){break a}i[a+8>>2]=-1;return}c=-1;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;c=-1;if((b|0)==-1){break g}b=i[i[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break g}c=b+ -1|0;if((b>>>0)%3|0){break g}c=b+2|0}i[a+8>>2]=c}}function mc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=i[b+12>>2];g=d;c=i[b+20>>2];f=c;a:{h=i[b+16>>2];e=h+4|0;if(e>>>0<4){c=c+1|0}l=i[b+8>>2];k=e;e=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?l>>>0>>0:0){break a}m=i[b>>2];c=m+h|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=k;i[b+20>>2]=e;c=f;f=h+8|0;if(f>>>0<8){c=c+1|0}e=f;f=c;if((g|0)<(c|0)?1:(g|0)<=(c|0)?l>>>0>>0:0){break a}c=k+m|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=e;i[b+20>>2]=f;if((d|0)>(c|0)){break a}i[a+16>>2]=c;i[a+12>>2]=d;g=d;d=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-g|0;if(!d&c>>>0>2147483646|d>>>0>0){break a}c=c+1|0;i[a+20>>2]=c;d=(c|0)/2|0;i[a+24>>2]=d;i[a+28>>2]=0-d;if(!(c&1)){i[a+24>>2]=d+ -1}return hd(a+112|0,b)|0}return 0}function _k(a,b,c){var d=0;a:{if((a|0)==(b|0)){break a}if((b-a|0)-c>>>0<=0-(c<<1)>>>0){return Yk(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}g[d|0]=j[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(a+c&3){while(1){if(!c){break a}c=c+ -1|0;d=c+a|0;g[d|0]=j[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c+ -4|0;i[c+a>>2]=i[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c+ -1|0;g[c+a|0]=j[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){i[d>>2]=i[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){g[d|0]=j[b|0];d=d+1|0;b=b+1|0;c=c+ -1|0;if(c){continue}break}}return a}function gg(a,b){var c=0,d=0,e=0,f=0,h=0;a:{b:{c:{e=i[a>>2];h=(i[a+4>>2]-e|0)/12|0;c=h+1|0;if(c>>>0<357913942){e=(i[a+8>>2]-e|0)/12|0;f=e<<1;c=e>>>0<178956970?f>>>0>>0?c:f:357913941;d=0;d:{if(!c){break d}if(c>>>0>=357913942){break c}d=lk(o(c,12))}e=d+o(c,12)|0;d=ok(d+o(h,12)|0,b);h=d+12|0;b=i[a+4>>2];c=i[a>>2];if((b|0)==(c|0)){break b}while(1){b=b+ -12|0;f=i[b+4>>2];d=d+ -12|0;i[d>>2]=i[b>>2];i[d+4>>2]=f;f=b+8|0;i[d+8>>2]=i[f>>2];i[b>>2]=0;i[b+4>>2]=0;i[f>>2]=0;if((b|0)!=(c|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=h;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=b+ -12|0;if(g[b+ -1|0]<=-1){Wk(i[a>>2])}b=a;if((a|0)!=(c|0)){continue}break}break a}Ak();x()}va(10656);x()}i[a+8>>2]=e;i[a+4>>2]=h;i[a>>2]=d}if(c){Wk(c)}}function fg(a,b,c){var d=0,e=0,f=0,h=0,j=0;a:{if(i[a+12>>2]==(b|0)){break a}d=i[a>>2];e=i[a+4>>2];if((d|0)!=(e|0)){while(1){f=e+ -12|0;if(g[e+ -1|0]<=-1){Wk(i[f>>2])}e=f;if((e|0)!=(d|0)){continue}break}}i[a+12>>2]=b;i[a+4>>2]=d;e=i[b>>2];f=b+4|0;if((e|0)==(f|0)){break a}while(1){b=e+16|0;b:{if(i[a+8>>2]!=(d|0)){h=a,j=ok(d,b)+12|0,i[h+4>>2]=j;break b}gg(a,b)}d=i[e+4>>2];c:{if(!d){b=i[e+8>>2];if(i[b>>2]==(e|0)){break c}e=e+8|0;while(1){d=i[e>>2];e=d+8|0;b=i[d+8>>2];if((d|0)!=i[b>>2]){continue}break}break c}while(1){b=d;d=i[d>>2];if(d){continue}break}}if((b|0)==(f|0)){break a}d=i[a+4>>2];e=b;continue}}d=0;d:{if((c|0)<0){break d}b=i[a+4>>2];a=i[a>>2];if((b-a|0)/12>>>0<=c>>>0){break d}d=a+o(c,12)|0;if(g[d+11|0]>-1){break d}d=i[d>>2]}return d}function oj(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=F-16|0;F=d;g=i[a+24>>2];n=i[a+28>>2];a:{if((g|0)!=(n|0)){p=d+8|0;while(1){i[p>>2]=0;i[d>>2]=0;i[d+4>>2]=0;e=wj(i[g>>2],b,d);a=j[d+11|0];l=a<<24>>24;m=3;b:{c:{d:{if(!e){break d}m=0;e=j[c+11|0];f=e<<24>>24;k=(l|0)<0?i[d+4>>2]:a;if((k|0)!=(((f|0)<0?i[c+4>>2]:e)|0)){break d}h=(f|0)<0?i[c>>2]:c;f=i[d>>2];e=(l|0)<0;e:{if(!e){if(!k){break e}e=d;if(j[h|0]!=(f&255)){break d}while(1){a=a+ -1|0;if(!a){break e}f=j[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==j[e|0]){continue}break}break d}if(!k){break e}if(Lj(e?f:d,h,k)){break c}}o=i[g>>2];m=1}if((l|0)>-1){break b}}Wk(i[d>>2])}f:{switch(m|0){case 0:case 3:break f;default:break a}}g=g+4|0;if((n|0)!=(g|0)){continue}break}}o=0}F=d+16|0;return o}function Rg(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;e=F-16|0;F=e;a:{m=i[a+80>>2];f=g[b+24|0];k=0;b:{if((o(m,f)|0)!=(c|0)){break b}k=i[b+28>>2]!=2;if(!(k|!j[b+84|0])){Yk(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);k=1;break b}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(f){if((f|0)<=-1){break a}h=lk(f);i[e>>2]=h;a=f+h|0;i[e+8>>2]=a;Zk(h,0,f);i[e+4>>2]=a}c:{if(!m){break c}c=0;l=1;while(1){a=n;a=j[b+84|0]?a:i[i[b+68>>2]+(a<<2)>>2];d:{if(!k){p=i[i[b>>2]>>2];l=i[b+40>>2];a=i[b+48>>2]+hl(l,i[b+44>>2],a,0)|0;Yk(h,p+a|0,l);break d}if(!Dg(b,a,g[b+24|0],h)){break c}}a=0;if((f|0)>=1){while(1){g[c+d|0]=j[a+h|0];c=c+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}n=n+1|0;l=n>>>0>>0;if((n|0)!=(m|0)){continue}break}}if(h){Wk(h)}k=l^1}F=e+16|0;return k&1}Ak();x()}function Og(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;e=F-16|0;F=e;a:{m=i[a+80>>2];f=g[b+24|0];k=0;b:{if((o(m,f)|0)!=(c|0)){break b}k=i[b+28>>2]!=1;if(!(k|!j[b+84|0])){Yk(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);k=1;break b}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(f){if((f|0)<=-1){break a}h=lk(f);i[e>>2]=h;a=f+h|0;i[e+8>>2]=a;Zk(h,0,f);i[e+4>>2]=a}c:{if(!m){break c}c=0;l=1;while(1){a=n;a=j[b+84|0]?a:i[i[b+68>>2]+(a<<2)>>2];d:{if(!k){p=i[i[b>>2]>>2];l=i[b+40>>2];a=i[b+48>>2]+hl(l,i[b+44>>2],a,0)|0;Yk(h,p+a|0,l);break d}if(!Bg(b,a,g[b+24|0],h)){break c}}a=0;if((f|0)>=1){while(1){g[c+d|0]=j[a+h|0];c=c+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}n=n+1|0;l=n>>>0>>0;if((n|0)!=(m|0)){continue}break}}if(h){Wk(h)}k=l^1}F=e+16|0;return k&1}Ak();x()}function Ob(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;d=i[b+12>>2];k=d;c=i[b+20>>2];f=c;g=i[b+16>>2];e=g+4|0;if(e>>>0<4){c=c+1|0}l=i[b+8>>2];h=e;e=c;a:{if((d|0)<(c|0)?1:(d|0)<=(c|0)?l>>>0>>0:0){break a}m=i[b>>2];c=m+g|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=e;c=f;f=g+8|0;if(f>>>0<8){c=c+1|0}e=f;f=c;if((k|0)<(c|0)?1:(k|0)<=(c|0)?l>>>0>>0:0){break a}c=h+m|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=e;i[b+20>>2]=f;if((d|0)>(c|0)){break a}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break a}n=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break a}i[a+24>>2]=c+ -1}return n|0}function je(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[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?h>>>0>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=lk(e<<2)}d=(f<<2)+j|0;f=b<<2;b=Zk(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){I[i[i[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}Ak();x()}va(8944);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){Wk(c)}}function jb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[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?h>>>0>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=lk(e<<2)}d=(f<<2)+j|0;f=b<<2;b=Zk(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){I[i[i[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}Ak();x()}va(1876);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){Wk(c)}}function Ae(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i[a+8>>2];d=i[a+4>>2];if((e-d|0)/12>>>0>=b>>>0){f=a;if(b){a=o(b,12)+d|0;while(1){b=i[c+4>>2];i[d>>2]=i[c>>2];i[d+4>>2]=b;i[d+8>>2]=i[c+8>>2];d=d+12|0;if((a|0)!=(d|0)){continue}break}d=a}i[f+4>>2]=d;return}a:{g=i[a>>2];j=d-g|0;h=(j|0)/12|0;f=h+b|0;if(f>>>0<357913942){d=o(b,12);e=(e-g|0)/12|0;k=e<<1;e=e>>>0<178956970?k>>>0>>0?f:k:357913941;f=0;b:{if(!e){break b}if(e>>>0>=357913942){break a}f=lk(o(e,12))}b=f+o(h,12)|0;h=d+b|0;d=b;while(1){k=i[c+4>>2];i[d>>2]=i[c>>2];i[d+4>>2]=k;i[d+8>>2]=i[c+8>>2];d=d+12|0;if((h|0)!=(d|0)){continue}break}c=f+o(e,12)|0;b=b+o((j|0)/-12|0,12)|0;if((j|0)>=1){Yk(b,g,j)}i[a+8>>2]=c;i[a+4>>2]=h;i[a>>2]=b;if(g){Wk(g)}return}Ak();x()}va(8944);x()}function ma(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,n=0,o=0,r=0,s=0,t=0,v=0,w=p(0),x=0,y=p(0),z=0,A=0,B=0,C=0,D=0;n=F-16|0;F=n;h=i[a+4>>2];o=i[d+48>>2];d=i[i[d>>2]>>2];f=g[b+24|0];k=_f(n+8|0);$f(k,m[a+20>>2],-1<>2];z=i[b>>2];o=i[b+48>>2];A=i[b+68>>2];k=i[b+44>>2];v=i[b+40>>2];B=v;d=0;C=j[b+84|0];D=(f|0)<1;while(1){b=l;e=h;r=i[z>>2];s=v;t=k;if(!C){b=i[(l<<2)+A>>2]}b=hl(s,t,b,0)+o|0;s=Yk(e,b+r|0,B);if(!D){t=i[a+8>>2];b=0;while(1){r=(d<<2)+x|0;e=b<<2;w=p(u(p(p(y*p(m[e+s>>2]-m[e+t>>2]))+p(.5))));a:{if(p(q(w))>2]=e;d=d+1|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}l=l+1|0;if((l|0)!=(c|0)){continue}break}}Wk(h);F=n+16|0}function eb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i[b>>2];h=i[b+4>>2];p=i[i[a+8>>2]+40>>2];j=p;q=lk((j|0)>-1?j:-1);k=1;m=h-g|0;a:{if((m|0)<1){break a}b=0;n=i[c+12>>2];k=0;d=0+i[c+20>>2]|0;o=i[c+16>>2];e=p;f=o+e|0;if(f>>>0>>0){d=d+1|0}e=f;f=d;if((n|0)<(d|0)?1:(n|0)<=(d|0)?l[c+8>>2]>>0:0){break a}k=m>>2;d=g-h|0;d=((d|0)>(m|0)?d:m)>>>2|0;n=d>>>0>1?d:1;g=0;while(1){b:{d=Yk(q,o+i[c>>2]|0,j);i[c+16>>2]=e;i[c+20>>2]=f;Yk(i[i[i[a+8>>2]+64>>2]>>2]+b|0,d,j);g=g+1|0;if((n|0)==(g|0)){break b}b=b+j|0;h=i[c+12>>2];d=r+i[c+20>>2]|0;o=i[c+16>>2];f=p;e=o+f|0;if(e>>>0>>0){d=d+1|0}f=d;if((h|0)>(d|0)?1:(h|0)>=(d|0)?l[c+8>>2]>=e>>>0:0){continue}}break}k=(g|0)>=(k|0)}Wk(q);return k|0}function Yb(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;e=F-32|0;F=e;h=i[c>>2];g=i[b>>2];j=i[c+4>>2];c=i[b+4>>2];b=(h-g<<3)+(j-c|0)|0;d=i[a+4>>2];f=b+d|0;i[a+4>>2]=f;a:{if(!(!d|(f+ -1^d+ -1)>>>0>31)){a=i[a>>2];break a}a=i[a>>2];if(f>>>0<=32){i[a>>2]=0;break a}i[(f+ -1>>>3&536870908)+a>>2]=0}a=(d>>>3&536870908)+a|0;d=d&31;b:{if((d|0)==(c|0)){if((b|0)<1){break b}if(c){f=32-c|0;d=(b|0)<(f|0)?b:f;f=-1<>>f-d;i[a>>2]=i[a>>2]&(f^-1)|f&i[g>>2];b=b-d|0;g=g+4|0;a=a+(c+d>>>3&536870908)|0}d=a;c=(b|0)/32|0;a=c<<2;d=_k(d,g,a);b=b-(c<<5)|0;if((b|0)<1){break b}c=a+d|0;b=-1>>>32-b|0;i[c>>2]=i[c>>2]&(b^-1)|b&i[a+g>>2];break b}i[e+28>>2]=c;i[e+24>>2]=g;i[e+20>>2]=j;i[e+16>>2]=h;i[e+12>>2]=d;i[e+8>>2]=a;Zb(e,e+24|0,e+16|0,e+8|0)}F=e+32|0}function Zk(a,b,c){var d=0,e=0,f=0,h=0;a:{if(!c){break a}d=a+c|0;g[d+ -1|0]=b;g[a|0]=b;if(c>>>0<3){break a}g[d+ -2|0]=b;g[a+1|0]=b;g[d+ -3|0]=b;g[a+2|0]=b;if(c>>>0<7){break a}g[d+ -4|0]=b;g[a+3|0]=b;if(c>>>0<9){break a}d=0-a&3;e=d+a|0;b=o(b&255,16843009);i[e>>2]=b;c=c-d&-4;d=c+e|0;i[d+ -4>>2]=b;if(c>>>0<9){break a}i[e+8>>2]=b;i[e+4>>2]=b;i[d+ -8>>2]=b;i[d+ -12>>2]=b;if(c>>>0<25){break a}i[e+24>>2]=b;i[e+20>>2]=b;i[e+16>>2]=b;i[e+12>>2]=b;i[d+ -16>>2]=b;i[d+ -20>>2]=b;i[d+ -24>>2]=b;i[d+ -28>>2]=b;h=e&4|24;c=c-h|0;if(c>>>0<32){break a}d=b;f=b;b=e+h|0;while(1){i[b+24>>2]=f;i[b+28>>2]=d;i[b+16>>2]=f;i[b+20>>2]=d;i[b+8>>2]=f;i[b+12>>2]=d;i[b>>2]=f;i[b+4>>2]=d;b=b+32|0;c=c+ -32|0;if(c>>>0>31){continue}break}}return a}function Hj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[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?h>>>0>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=lk(e<<2)}d=(f<<2)+j|0;f=b<<2;b=Zk(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){Ma(a)}if((b|0)!=(c|0)){continue}break}break a}Ak();x()}va(11352);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){Wk(c)}}function jj(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=i[i[i[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=i[(i[i[a>>2]+96>>2]+o(e,12)|0)+(c-o(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=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(c-o(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=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(b-o(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=i[i[a>>2]+96>>2];a=(b>>>0)/3|0;e=i[(c+o(a,12)|0)+(b-o(a,3)<<2)>>2]}c=(d|0)==(e|0)?f:-1}return c}function nf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+56>>2]-i[c+52>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];g=c<<2;c=lk(e);g=g+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){Yk(c,d,e)}i[b+8>>2]=g;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}Wk(d)}e=a+8|0;b=i[a+76>>2];c:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){return 1}b=0;while(1){d=of(e,i[(b<<2)+c>>2]);if(!d){break c}f=i[a+76>>2];c=i[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break c}d=1;a=i[i[a+12>>2]+64>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){d=of(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break c}if(d){continue}break}}return d|0}va(8944);x()}function qj(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{e=i[a>>2];f=i[a+4>>2]-e>>2;c=f+1|0;if(c>>>0<1073741824){e=i[a+8>>2]-e|0;g=e>>1;c=e>>2>>>0<536870911?g>>>0>>0?c:g:1073741823;if(c){if(c>>>0>=1073741824){break c}d=lk(c<<2)}e=i[b>>2];i[b>>2]=0;b=(f<<2)+d|0;i[b>>2]=e;e=(c<<2)+d|0;f=b+4|0;d=i[a+4>>2];c=i[a>>2];if((d|0)==(c|0)){break b}while(1){d=d+ -4|0;g=i[d>>2];i[d>>2]=0;b=b+ -4|0;i[b>>2]=g;if((d|0)!=(c|0)){continue}break}i[a+8>>2]=e;d=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=b;if((d|0)==(c|0)){break a}while(1){d=d+ -4|0;a=i[d>>2];i[d>>2]=0;if(a){Jf(a+12|0,i[a+16>>2]);Kf(a,i[a+4>>2]);Wk(a)}if((d|0)!=(c|0)){continue}break}break a}Ak();x()}va(11228);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){Wk(c)}}function gf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+28>>2]-i[c+24>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];g=c<<2;c=lk(e);g=g+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){Yk(c,d,e)}i[b+8>>2]=g;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}Wk(d)}e=a+8|0;b=i[a+76>>2];c:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){return 1}b=0;while(1){d=hf(e,i[(b<<2)+c>>2]);if(!d){break c}f=i[a+76>>2];c=i[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break c}d=1;a=i[a+12>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){d=hf(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break c}if(d){continue}break}}return d|0}va(8944);x()}function Xi(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=i[a+8>>2];e=i[a>>2];if(d-e>>2>>>0>=b>>>0){f=i[a+4>>2];g=f-e>>2;h=g>>>0>>0?g:b;if(h){d=e;while(1){i[d>>2]=i[c>>2];d=d+4|0;h=h+ -1|0;if(h){continue}break}}if(g>>>0>>0){d=a;a=b-g|0;if(a){a=(a<<2)+f|0;while(1){i[f>>2]=i[c>>2];f=f+4|0;if((a|0)!=(f|0)){continue}break}}else{a=f}i[d+4>>2]=a;return}i[a+4>>2]=(b<<2)+e;return}if(e){i[a+4>>2]=e;Wk(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(b>>>0>=1073741824){break a}e=d>>1;d=d>>2>>>0<536870911?e>>>0>>0?b:e:1073741823;if(d>>>0>=1073741824){break a}e=d<<2;d=lk(e);i[a>>2]=d;i[a+8>>2]=d+e;b=(b<<2)+d|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}i[a+4>>2]=b;return}Ak();x()}function xb(a,b,c,d,e){var f=0,g=0,h=0,j=0;if((b|0)==-2){i[a>>2]=0;return}f=i[i[i[d+4>>2]+8>>2]+(c<<2)>>2];a:{b:{if((I[i[i[d>>2]+8>>2]](d)|0)==1){g=b;b=k[d+36>>1];Eb(a,d,g,c,e,(b<<24|b<<8&16711680)>>>16|0);if(i[a>>2]){break b}i[a>>2]=0}b=lk(44);i[b+4>>2]=f;i[b>>2]=2776;c=i[e+8>>2];d=i[e+12>>2];f=i[e+16>>2];g=i[e+20>>2];h=i[e>>2];j=i[e+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=f;i[b+28>>2]=g;i[b+16>>2]=c;i[b+20>>2]=d;i[b+8>>2]=h;i[b+12>>2]=j;f=i[e+24>>2];e=i[e+28>>2]-f|0;if(e){d=e>>2;if(d>>>0>=1073741824){break a}c=lk(e);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((e|0)>=1){c=Yk(c,f,e)+e|0}i[d+36>>2]=c}i[b>>2]=5468;i[a>>2]=b}return}Ak();x()}function hj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=F-16|0;F=d;h=Cj(b);a:{if(!h){i[a>>2]=0;break a}c=i[b+100>>2];k=i[b+96>>2];i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;c=c-k|0;e=(c|0)/12|0;b:{if(!c){break b}if(e>>>0<357913942){g=lk(c);i[d>>2]=g;f=g+o(e,12)|0;i[d+8>>2]=f;b=0;m=Zk(g,0,c-((c+ -12>>>0)%12|0)|0);i[d+4>>2]=f;n=e>>>0>1?e:1;p=j[h+84|0];while(1){l=o(b,12);c=l+k|0;e=i[c>>2];c:{if(p){g=c+8|0;c=c+4|0;break c}f=i[h+68>>2];g=f+(i[c+8>>2]<<2)|0;e=i[f+(e<<2)>>2];c=f+(i[c+4>>2]<<2)|0}f=i[c>>2];c=m+l|0;i[c+8>>2]=i[g>>2];i[c+4>>2]=f;i[c>>2]=e;b=b+1|0;if((n|0)!=(b|0)){continue}break}break b}Ak();x()}Ni(a,d);a=i[d>>2];if(!a){break a}i[d+4>>2]=a;Wk(a)}F=d+16|0}function uf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=F-32|0;F=d;i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;a:{f=o(b,3);if(f){if(f>>>0>=1073741824){break a}g=o(b,12);e=lk(g);i[d+16>>2]=e;c=(f<<2)+e|0;i[d+24>>2]=c;Zk(e,0,g);i[d+20>>2]=c}k=vd(f,1,i[a+32>>2],e);if(!(!k|!b)){g=0;f=0;c=0;while(1){l=d+8|0;i[l>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=c;e=(f<<2)+e|0;c=i[e>>2];j=c>>>1|0;c=h+(c&1?0-j|0:j)|0;i[d>>2]=c;h=c;c=i[e+4>>2];j=c>>>1|0;c=h+(c&1?0-j|0:j)|0;i[d+4>>2]=c;h=c;e=i[e+8>>2];c=e>>>1|0;c=h+(e&1?0-c|0:c)|0;i[l>>2]=c;vf(i[a+44>>2]+96|0,d);g=g+1|0;if((g|0)!=(b|0)){f=f+3|0;e=i[d+16>>2];continue}break}e=i[d+16>>2]}if(e){i[d+20>>2]=e;Wk(e)}F=d+32|0;return k}Ak();x()}function wf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;f=F-16|0;F=f;g=lk(64);c=lk(12);i[c+8>>2]=i[i[a+4>>2]+80>>2];i[c>>2]=10164;i[c+4>>2]=0;i[f+8>>2]=c;hb(g,f+8|0);a:{if((b|0)>=0){h=a+8|0;c=i[a+12>>2];j=i[a+8>>2];d=c-j>>2;b:{if((d|0)>(b|0)){break b}e=b+1|0;if(d>>>0<=b>>>0){je(h,e-d|0);break b}if(e>>>0>=d>>>0){break b}e=j+(e<<2)|0;if((e|0)!=(c|0)){while(1){c=c+ -4|0;d=i[c>>2];i[c>>2]=0;if(d){I[i[i[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}i[a+12>>2]=e}c=i[h>>2]+(b<<2)|0;a=i[c>>2];i[c>>2]=g;if(!a){break a}I[i[i[a>>2]+4>>2]](a);break a}I[i[i[g>>2]+4>>2]](g)}a=i[f+8>>2];i[f+8>>2]=0;if(a){I[i[i[a>>2]+4>>2]](a)}F=f+16|0;return(b^-1)>>>31|0}function ie(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=F-16|0;F=e;i[a+4>>2]=0;a:{b:{if(!b){break b}f=i[a+8>>2];d=f<<5;c:{if(d>>>0>=b>>>0){i[a+4>>2]=b;break c}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if((b|0)<=-1){break a}h=e;if(d>>>0<=1073741822){g=b+31&-32;d=f<<6;d=d>>>0>>0?g:d}else{d=2147483647}Xb(h,d);d=i[a>>2];i[a>>2]=i[e>>2];i[e>>2]=d;f=i[a+4>>2];i[a+4>>2]=b;i[e+4>>2]=f;f=i[a+8>>2];i[a+8>>2]=i[e+8>>2];i[e+8>>2]=f;if(!d){break c}Wk(d)}d=b>>>5|0;f=d<<2;a=i[a>>2];if(j[c|0]){a=Zk(a,255,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;i[a>>2]=i[a>>2]|-1>>>32-b;break b}a=Zk(a,0,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;i[a>>2]=i[a>>2]&(-1>>>32-b^-1)}F=e+16|0;return}Ak();x()}function ka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0;i[b>>2]=1;f=b+8|0;c=i[b+8>>2];d=i[b+12>>2]-c|0;if(d>>>0<=4294967291){Of(f,d+4|0);c=i[f>>2]}c=c+d|0;d=i[a+4>>2];g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;c=i[a+8>>2];if((c|0)!=i[a+12>>2]){d=0;while(1){h=(d<<2)+c|0;c=i[b+8>>2];e=i[b+12>>2]-c|0;if(e>>>0<=4294967291){Of(f,e+4|0);c=i[f>>2]}c=c+e|0;e=i[h>>2];g[c|0]=e;g[c+1|0]=e>>>8;g[c+2|0]=e>>>16;g[c+3|0]=e>>>24;d=d+1|0;c=i[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=i[b+12>>2];b=i[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){Of(f,c+4|0);b=i[f>>2]}b=b+c|0;a=i[a+20>>2];g[b|0]=a;g[b+1|0]=a>>>8;g[b+2|0]=a>>>16;g[b+3|0]=a>>>24}function be(a){i[a>>2]=8340;Zk(a+4|0,0,80);i[a+96>>2]=0;i[a+100>>2]=0;i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+148>>2]=0;i[a+156>>2]=0;i[a+160>>2]=0;i[a+152>>2]=1065353216;i[a+164>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;i[a+196>>2]=0;i[a+200>>2]=0;i[a+204>>2]=0;i[a+208>>2]=0;i[a+212>>2]=-1;i[a+216>>2]=0;i[a+220>>2]=0;i[a+224>>2]=0;Pf(a+232|0);Pf(a+272|0);gd(a+312|0);Pf(a+328|0);i[a+376>>2]=0;i[a+368>>2]=0;i[a+372>>2]=0}function Oi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=F-16|0;F=f;i[a+80>>2]=0;i[a+84>>2]=0;c=a+76|0;d=i[c>>2];i[c>>2]=0;if(d){Wk(d)}i[a+68>>2]=0;i[a+72>>2]=0;c=a- -64|0;d=i[c>>2];i[c>>2]=0;if(d){Wk(d)}c=i[b+4>>2];d=i[b>>2];e=o((c-d|0)/12|0,3);h=i[a>>2];g=i[a+4>>2]-h>>2;a:{if(e>>>0>g>>>0){Pi(a,e-g|0);d=i[b>>2];c=i[b+4>>2];break a}if(e>>>0>=g>>>0){break a}i[a+4>>2]=h+(e<<2)}if((c|0)!=(d|0)){b=(c-d|0)/12|0;g=b>>>0>1?b:1;h=i[a>>2];b=0;while(1){e=o(b,12);c=e+h|0;e=d+e|0;i[c>>2]=i[e>>2];i[c+4>>2]=i[e+4>>2];i[c+8>>2]=i[e+8>>2];b=b+1|0;if((g|0)!=(b|0)){continue}break}}i[f+12>>2]=-1;b=Qi(a,f+12|0);if(b){Ri(a);Si(a,i[f+12>>2])}F=f+16|0;return b}function xd(a,b,c){var d=0,e=0,f=0,g=0;a:{b:{d=i[b+16>>2];f=i[b+12>>2];e=i[b+20>>2];c:{if((f|0)<(e|0)?1:(f|0)<=(e|0)?l[b+8>>2]<=d>>>0:0){break c}f=j[d+i[b>>2]|0];d=d+1|0;if(d>>>0<1){e=e+1|0}i[b+16>>2]=d;i[b+20>>2]=e;d:{e:{f:{g:{h:{i:{j:{switch(f+ -1|0){case 0:case 1:case 2:case 3:case 5:case 6:case 7:break b;case 13:case 14:case 15:case 16:break a;case 9:break h;case 8:break i;case 4:break j;case 17:break d;case 12:break e;case 11:break f;case 10:break g;default:break c}}return Bd(a,b,c)}return Cd(a,b,c)}return Dd(a,b,c)}return Ed(a,b,c)}return Fd(a,b,c)}return Gd(a,b,c)}g=Hd(a,b,c)}return g}return Ad(a,b,c)}return Hd(a,b,c)}function ia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0;d=i[b+88>>2];if(!(!d|i[d>>2]!=1)){c=i[d+8>>2];i[a+4>>2]=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);f=a+8|0;h=i[a+8>>2];e=i[a+12>>2]-h>>2;c=g[b+24|0];a:{if(e>>>0>>0){ja(f,c-e|0);c=j[b+24|0];break a}if(e>>>0<=c>>>0){break a}i[a+12>>2]=h+(c<<2)}h=1;e=i[d+8>>2];b:{if(c<<24>>24<1){b=4;break b}b=c&255;k=b>>>0>1?b:1;f=i[f>>2];c=0;b=4;while(1){d=b+e|0;m[f+(c<<2)>>2]=(ql(2,j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24)),rl());b=b+4|0;c=c+1|0;if((k|0)!=(c|0)){continue}break}}c=a;a=b+e|0;m[c+20>>2]=(ql(2,j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24)),rl())}return h|0}function oa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=p(0),n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0;h=F-16|0;F=h;if(i[c+28>>2]==9){d=i[a+4>>2];e=g[c+24|0];j=e<<2;k=lk((e&1073741823)!=(e|0)?-1:j);n=_f(h+8|0);f=n;l=m[a+20>>2];d=-1<=1){m[f>>2]=l/p(d|0)}f=(d|0)>0;a:{if(!f){break a}o=i[c+80>>2];if(!o){break a}t=i[i[b>>2]>>2]+i[b+48>>2]|0;u=(e|0)<1;d=0;while(1){if(!u){v=i[a+8>>2];l=m[n>>2];b=0;while(1){q=b<<2;m[q+k>>2]=p(l*p(i[(d<<2)+t>>2]))+m[v+q>>2];d=d+1|0;b=b+1|0;if((e|0)!=(b|0)){continue}break}}Yk(i[i[c+64>>2]>>2]+r|0,k,j);r=j+r|0;s=s+1|0;if((s|0)!=(o|0)){continue}break}}Wk(k)}F=h+16|0;return f|0}function Ga(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=i[a+8>>2];e=i[a>>2];if(g>>>0<=d-e>>2>>>0){f=i[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){i[e>>2]=i[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)>=1){f=Yk(f,d,b)+b|0}i[a+4>>2]=f;return}i[a+4>>2]=e;return}if(e){i[a+4>>2]=e;Wk(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(g>>>0>=1073741824){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=lk(e);i[a>>2]=c;i[a+4>>2]=c;i[a+8>>2]=c+e;if((f|0)>=1){c=Yk(c,b,f)+f|0}i[a+4>>2]=c;return}Ak();x()}function og(a,b,c){var d=0,e=0,f=0,h=0;d=F-32|0;F=d;a:{h=$k(b);if(h>>>0<4294967280){b:{c:{if(h>>>0>=11){e=h+16&-16;f=lk(e);i[d+24>>2]=e|-2147483648;i[d+16>>2]=f;i[d+20>>2]=h;break c}g[d+27|0]=h;f=d+16|0;if(!h){break b}}Yk(f,b,h)}g[f+h|0]=0;e=$k(c);if(e>>>0>=4294967280){break a}d:{e:{if(e>>>0>=11){b=e+16&-16;f=lk(b);i[d+8>>2]=b|-2147483648;i[d>>2]=f;i[d+4>>2]=e;break e}g[d+11|0]=e;f=d;if(!e){break d}}Yk(f,c,e)}g[e+f|0]=0;c=i[a+4>>2];b=-1;f:{if(!c){break f}c=oj(c,d+16|0,d);b=-1;if(!c){break f}b=Ej(a,i[c+24>>2])}a=b;if(g[d+11|0]<=-1){Wk(i[d>>2])}if(g[d+27|0]<=-1){Wk(i[d+16>>2])}F=d+32|0;return a}nk();x()}nk();x()}function Rc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;c=i[b+12>>2];h=c;e=c;c=i[b+20>>2];f=c;a:{g=i[b+16>>2];d=g+4|0;if(d>>>0<4){c=c+1|0}k=i[b+8>>2];l=d;d=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?k>>>0>>0:0){break a}c=g+i[b>>2]|0;e=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=l;i[b+20>>2]=d;c=f;d=g+8|0;if(d>>>0<8){c=c+1|0}f=d;d=c;if((h|0)<(c|0)?1:(h|0)<=(c|0)?k>>>0>>0:0){break a}i[b+16>>2]=f;i[b+20>>2]=d;if(!(e&1)){break a}c=r(e)^31;if(c+ -1>>>0>28){break a}i[a+8>>2]=c+1;c=-2<>2]=d;i[a+12>>2]=c^-1;i[a+24>>2]=(d|0)/2;m[a+20>>2]=p(2)/p(d|0);return hd(a+96|0,b)|0}return 0}function Ze(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;d=(c>>>0)/3|0;_e(i[a+12>>2],i[(i[i[a+8>>2]+96>>2]+o(d,12)|0)+(c-o(d,3)<<2)>>2]);f=i[a+4>>2];d=i[f+4>>2];a:{b:{c:{if((d|0)!=i[f+8>>2]){i[d>>2]=c;i[f+4>>2]=d+4;break c}h=i[f>>2];j=d-h|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break b}d=j>>1;e=g>>>0<536870911?d>>>0>>0?e:d:1073741823;d=0;d:{if(!e){break d}if(e>>>0>=1073741824){break a}d=lk(e<<2)}g=d+(g<<2)|0;i[g>>2]=c;c=d+(e<<2)|0;e=g+4|0;if((j|0)>=1){Yk(d,h,j)}i[f+8>>2]=c;i[f+4>>2]=e;i[f>>2]=d;if(!h){break c}Wk(h)}a=i[a+4>>2];i[i[a+12>>2]+(b<<2)>>2]=i[a+24>>2];i[a+24>>2]=i[a+24>>2]+1;return}Ak();x()}va(8944);x()}function Yc(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,j=0,k=0,l=0,m=0,n=0,o=0;f=F-32|0;F=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=Zk(lk(h),0,h);g=i[b>>2];j=i[b+4>>2];l=i[h+4>>2];i[f+16>>2]=i[h>>2];i[f+20>>2]=l;i[f+8>>2]=g;i[f+12>>2]=j;j=a+8|0;Tc(f+24|0,j,f+16|0,f+8|0);i[c>>2]=i[f+24>>2];i[c+4>>2]=i[f+28>>2];if((e|0)<(d|0)){l=0-e<<2;a=e;while(1){g=a<<2;k=g+b|0;n=i[k>>2];k=i[k+4>>2];g=c+g|0;m=g+l|0;o=i[m+4>>2];i[f+16>>2]=i[m>>2];i[f+20>>2]=o;i[f+8>>2]=n;i[f+12>>2]=k;Tc(f+24|0,j,f+16|0,f+8|0);i[g>>2]=i[f+24>>2];i[g+4>>2]=i[f+28>>2];a=a+e|0;if((a|0)<(d|0)){continue}break}}Wk(h);F=f+32|0;return 1}function Uc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,n=0;c=i[b+12>>2];h=c;e=c;c=i[b+20>>2];f=c;g=i[b+16>>2];d=g+4|0;if(d>>>0<4){c=c+1|0}k=i[b+8>>2];l=d;d=c;a:{if((e|0)<(c|0)?1:(e|0)<=(c|0)?k>>>0>>0:0){break a}c=g+i[b>>2]|0;e=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=l;i[b+20>>2]=d;c=f;d=g+8|0;if(d>>>0<8){c=c+1|0}f=d;d=c;if((h|0)<(c|0)?1:(h|0)<=(c|0)?k>>>0>>0:0){break a}i[b+16>>2]=f;i[b+20>>2]=d;if(!(e&1)){break a}b=r(e)^31;if(b+ -1>>>0>28){break a}n=1;i[a+8>>2]=b+1;b=-2<>2]=c;i[a+12>>2]=b^-1;i[a+24>>2]=(c|0)/2;m[a+20>>2]=p(2)/p(c|0)}return n|0}function cb(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=i[a+8>>2];d=i[a+4>>2];if(f-d>>2>>>0>=b>>>0){e=a;if(b){a=(b<<2)+d|0;while(1){i[d>>2]=i[c>>2];d=d+4|0;if((a|0)!=(d|0)){continue}break}}else{a=d}i[e+4>>2]=a;return}a:{g=i[a>>2];h=d-g|0;e=h>>2;d=e+b|0;if(d>>>0<1073741824){j=e<<2;f=f-g|0;e=f>>1;f=f>>2>>>0<536870911?e>>>0>>0?d:e:1073741823;e=0;b:{if(!f){break b}if(f>>>0>=1073741824){break a}e=lk(f<<2)}d=j+e|0;b=d+(b<<2)|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}c=e+(f<<2)|0;if((h|0)>=1){Yk(e,g,h)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=e;if(g){Wk(g)}return}Ak();x()}va(1660);x()}function Na(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=i[a+8>>2];d=i[a+4>>2];if(f-d>>2>>>0>=b>>>0){e=a;if(b){a=(b<<2)+d|0;while(1){i[d>>2]=i[c>>2];d=d+4|0;if((a|0)!=(d|0)){continue}break}}else{a=d}i[e+4>>2]=a;return}a:{g=i[a>>2];h=d-g|0;e=h>>2;d=e+b|0;if(d>>>0<1073741824){j=e<<2;f=f-g|0;e=f>>1;f=f>>2>>>0<536870911?e>>>0>>0?d:e:1073741823;e=0;b:{if(!f){break b}if(f>>>0>=1073741824){break a}e=lk(f<<2)}d=j+e|0;b=d+(b<<2)|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}c=e+(f<<2)|0;if((h|0)>=1){Yk(e,g,h)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=e;if(g){Wk(g)}return}Ak();x()}va(1496);x()}function Ti(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){d=a;if(b){a=(b<<2)+c|0;while(1){i[c>>2]=i[2707];c=c+4|0;if((a|0)!=(c|0)){continue}break}}else{a=c}i[d+4>>2]=a;return}a:{f=i[a>>2];g=c-f|0;d=g>>2;c=d+b|0;if(c>>>0<1073741824){h=d<<2;e=e-f|0;d=e>>1;e=e>>2>>>0<536870911?d>>>0>>0?c:d:1073741823;d=0;b:{if(!e){break b}if(e>>>0>=1073741824){break a}d=lk(e<<2)}c=h+d|0;b=c+(b<<2)|0;h=i[2707];while(1){i[c>>2]=h;c=c+4|0;if((b|0)!=(c|0)){continue}break}c=d+(e<<2)|0;if((g|0)>=1){Yk(d,f,g)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=d;if(f){Wk(f)}return}Ak();x()}va(10832);x()}function zg(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,n=0;d=F-16|0;F=d;k=i[a+80>>2];l=g[b+24|0];a=i[2663];i[d+8>>2]=i[2662];i[d+12>>2]=a;a=i[2661];i[d>>2]=i[2660];i[d+4>>2]=a;a=o(k,l);f=i[c>>2];e=i[c+4>>2]-f>>2;a:{if(a>>>0>e>>>0){ja(c,a-e|0);break a}if(a>>>0>=e>>>0){break a}i[c+4>>2]=f+(a<<2)}b:{if(!k){f=0;break b}f=1;while(1){a=h;e=b;if(!j[e+84|0]){a=i[i[b+68>>2]+(h<<2)>>2]}if(!yg(e,a,g[b+24|0],d)){break b}if((l|0)>=1){e=i[c>>2];a=0;while(1){m[e+(n<<2)>>2]=m[(a<<2)+d>>2];n=n+1|0;a=a+1|0;if((l|0)!=(a|0)){continue}break}}h=h+1|0;f=h>>>0>>0;if((k|0)!=(h|0)){continue}break}}F=d+16|0;return(f^-1)&1}function bj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){d=a;if(b){a=(b<<2)+c|0;while(1){i[c>>2]=1;c=c+4|0;if((a|0)!=(c|0)){continue}break}}else{a=c}i[d+4>>2]=a;return}a:{f=i[a>>2];g=c-f|0;d=g>>2;c=d+b|0;if(c>>>0<1073741824){h=d<<2;e=e-f|0;d=e>>1;e=e>>2>>>0<536870911?d>>>0>>0?c:d:1073741823;d=0;b:{if(!e){break b}if(e>>>0>=1073741824){break a}d=lk(e<<2)}c=h+d|0;b=c+(b<<2)|0;while(1){i[c>>2]=1;c=c+4|0;if((b|0)!=(c|0)){continue}break}c=d+(e<<2)|0;if((g|0)>=1){Yk(d,f,g)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=d;if(f){Wk(f)}return}Ak();x()}va(10952);x()}function Vd(a){a=a|0;var b=0,c=0,d=0,e=0;b=i[a+32>>2];d=i[b+16>>2];e=i[b+12>>2];c=i[b+20>>2];if((e|0)>(c|0)?1:(e|0)>=(c|0)?l[b+8>>2]>d>>>0:0){e=j[d+i[b>>2]|0];d=d+1|0;if(d>>>0<1){c=c+1|0}i[b+16>>2]=d;i[b+20>>2]=c;b=i[a+48>>2];i[a+48>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}a:{b:{c:{switch(e|0){case 0:c=lk(384);be(c);b=i[a+48>>2];i[a+48>>2]=c;if(!b){break a}I[i[i[b>>2]+4>>2]](b);break b;case 2:break c;default:break b}}c=lk(440);Ce(c);b=i[a+48>>2];i[a+48>>2]=c;if(!b){break a}I[i[i[b>>2]+4>>2]](b)}c=i[a+48>>2];if(c){break a}return 0}a=I[i[i[c>>2]+8>>2]](c,a)|0}else{a=0}return a|0}function ud(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0;f=a+4|0;a:{a=i[a+4>>2];if(a){e=j[c+11|0];d=e<<24>>24<0;k=d?i[c>>2]:c;e=d?i[c+4>>2]:e;while(1){c=j[a+27|0];d=c<<24>>24<0;c=d?i[a+20>>2]:c;l=c>>>0>>0;b:{c:{d:{e:{f:{h=l?c:e;g:{if(h){g=a+16|0;d=d?i[g>>2]:g;g=Lj(k,d,h);if(!g){if(e>>>0>>0){break g}break f}if((g|0)>-1){break f}break g}if(e>>>0>=c>>>0){break e}}c=i[a>>2];if(c){break b}i[b>>2]=a;return a}c=Lj(d,k,h);if(c){break d}}if(l){break c}break a}if((c|0)>-1){break a}}f=a+4|0;c=i[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}i[b>>2]=f;return f}i[b>>2]=a;return f}function Da(a,b){var c=0;c=i[b+4>>2];i[a>>2]=i[b>>2];i[a+4>>2]=c;c=i[b+60>>2];i[a+56>>2]=i[b+56>>2];i[a+60>>2]=c;c=i[b+52>>2];i[a+48>>2]=i[b+48>>2];i[a+52>>2]=c;c=i[b+44>>2];i[a+40>>2]=i[b+40>>2];i[a+44>>2]=c;c=i[b+36>>2];i[a+32>>2]=i[b+32>>2];i[a+36>>2]=c;c=i[b+28>>2];i[a+24>>2]=i[b+24>>2];i[a+28>>2]=c;c=i[b+20>>2];i[a+16>>2]=i[b+16>>2];i[a+20>>2]=c;c=i[b+12>>2];i[a+8>>2]=i[b+8>>2];i[a+12>>2]=c;i[a+88>>2]=0;i[a+64>>2]=0;i[a+68>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;g[a+77|0]=0;g[a+78|0]=0;g[a+79|0]=0;g[a+80|0]=0;g[a+81|0]=0;g[a+82|0]=0;g[a+83|0]=0;g[a+84|0]=0;return a}function Kc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=F-32|0;F=e;a:{if((d|0)==3){d=i[b+4>>2];f=i[b+12>>2];i[e+24>>2]=-1;i[e+16>>2]=-1;i[e+20>>2]=1065353216;i[e+8>>2]=-1;i[e+12>>2]=-1;b=0;b:{if((c|0)==-2){break b}g=i[i[i[d+4>>2]+8>>2]+(f<<2)>>2];if((I[i[i[d>>2]+8>>2]](d)|0)==1){b=k[d+36>>1];Lc(e,d,c,f,e+8|0,(b<<24|b<<8&16711680)>>>16|0);b=i[e>>2];if(b){break b}i[e>>2]=0}b=lk(28);i[b+4>>2]=g;c=i[e+12>>2];i[b+8>>2]=i[e+8>>2];i[b+12>>2]=c;c=i[e+20>>2];i[b+16>>2]=i[e+16>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+24>>2];i[b>>2]=7580}i[a>>2]=b;break a}i[a>>2]=0}F=e+32|0}function Yf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;g=a+4|0;a=i[a+4>>2];a:{b:{if(!a){break b}d=j[b+11|0];c=d<<24>>24<0;k=c?i[b>>2]:b;e=c?i[b+4>>2]:d;c=g;while(1){b=j[a+27|0];l=b<<24>>24<0;h=l?i[a+20>>2]:b;f=e>>>0>>0;d=f?e:h;c:{if(d){b=a+16|0;b=Lj(l?i[b>>2]:b,k,d);if(b){break c}}b=h>>>0>>0?-1:f}c=(b|0)<0?c:a;a=i[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=j[c+27|0];f=a<<24>>24<0;d:{d=f?i[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=Lj(k,f?i[a>>2]:a,b);if(a){break d}}if(e>>>0>>0){break b}break a}if((a|0)>-1){break a}}c=g}return c}function sj(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0;h=F-16|0;F=h;l=a;j=ud(b,h+12|0,c);c=i[j>>2];if(c){b=0}else{c=lk(40);e=d+8|0;i[c+24>>2]=i[e>>2];f=i[d+4>>2];i[c+16>>2]=i[d>>2];i[c+20>>2]=f;i[d>>2]=0;i[d+4>>2]=0;i[e>>2]=0;i[c+36>>2]=0;i[c+28>>2]=0;i[c+32>>2]=0;f=i[d+12>>2];k=i[d+16>>2]-f|0;e=0;a:{if(!k){break a}e=c+28|0;Wa(e,k);f=i[d+12>>2];m=i[d+16>>2]-f|0;e=i[e>>2]}Yk(e,f,m);i[c+8>>2]=i[h+12>>2];i[c>>2]=0;i[c+4>>2]=0;i[j>>2]=c;e=i[i[b>>2]>>2];d=c;b:{if(!e){break b}i[b>>2]=e;d=i[j>>2]}rd(i[b+4>>2],d);i[b+8>>2]=i[b+8>>2]+1;b=1}g[l+4|0]=b;i[a>>2]=c;F=h+16|0}function Se(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=i[a+8>>2];e=i[a>>2];if(g>>>0<=d-e>>2>>>0){d=i[a+4>>2]-e|0;f=d>>2;d=g>>>0>f>>>0?b+d|0:c;h=d-b|0;if(h){_k(e,b,h)}if(g>>>0>f>>>0){b=i[a+4>>2];c=c-d|0;if((c|0)>=1){b=Yk(b,d,c)+c|0}i[a+4>>2]=b;return}i[a+4>>2]=e+h;return}if(e){i[a+4>>2]=e;Wk(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(g>>>0>=1073741824){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=lk(e);i[a>>2]=c;i[a+4>>2]=c;i[a+8>>2]=c+e;if((f|0)>=1){c=Yk(c,b,f)+f|0}i[a+4>>2]=c;return}Ak();x()}function vf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){e=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=e;i[c+8>>2]=i[b+8>>2];i[a+4>>2]=c+12;return}a:{e=i[a>>2];g=c-e|0;c=(g|0)/12|0;d=c+1|0;if(d>>>0<357913942){h=c<<1;d=c>>>0<178956970?h>>>0>>0?d:h:357913941;f=0;b:{if(!d){break b}if(d>>>0>=357913942){break a}f=lk(o(d,12))}c=f+o(c,12)|0;h=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=h;i[c+8>>2]=i[b+8>>2];b=c+o((g|0)/-12|0,12)|0;f=f+o(d,12)|0;c=c+12|0;if((g|0)>=1){Yk(b,e,g)}i[a+8>>2]=f;i[a+4>>2]=c;i[a>>2]=b;if(e){Wk(e)}return}Ak();x()}va(10088);x()}function Jj(a,b){var c=0,d=0,e=0,f=0;a:{if((b|0)<0){break a}c=i[a+24>>2];d=i[a+28>>2];if((c|0)==(d|0)){break a}while(1){f=c+4|0;e=i[c>>2];if(i[e+24>>2]==(b|0)){b:{if((d|0)!=(f|0)){while(1){b=i[f>>2];i[f>>2]=0;i[c>>2]=b;if(e){Jf(e+12|0,i[e+16>>2]);Kf(e,i[e+4>>2]);Wk(e)}c=c+4|0;f=f+4|0;if((d|0)!=(f|0)){e=i[c>>2];continue}break}d=i[a+28>>2];if((d|0)==(c|0)){break b}}while(1){d=d+ -4|0;b=i[d>>2];i[d>>2]=0;if(b){Jf(b+12|0,i[b+16>>2]);Kf(b,i[b+4>>2]);Wk(b)}if((c|0)!=(d|0)){continue}break}}i[a+28>>2]=c;return}c=f;if((d|0)!=(c|0)){continue}break}}}function Wi(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=o(b,3);Xi(a,d,10824);Xi(a+12|0,d,10828);d=i[a+24>>2];c:{if(i[a+32>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break a}e=i[a+28>>2];f=c<<2;c=lk(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>=1){Yk(c,d,e)}i[a+32>>2]=f;i[a+28>>2]=g;i[a+24>>2]=c;if(!d){break c}Wk(d)}i[a+80>>2]=0;i[a+84>>2]=0;d=a+76|0;c=i[d>>2];i[d>>2]=0;if(c){Wk(c)}i[a+68>>2]=0;i[a+72>>2]=0;c=a- -64|0;a=i[c>>2];i[c>>2]=0;if(!a){break b}Wk(a)}a=b>>>0<1431655766}else{a=0}return a}va(10832);x()}function Lk(a){var b=0,c=0,d=0,e=0;b=F+ -64|0;F=b;d=i[a>>2];c=i[d+ -4>>2];d=i[d+ -8>>2];i[b+20>>2]=0;i[b+16>>2]=12424;i[b+12>>2]=a;i[b+8>>2]=12472;Zk(b+24|0,0,39);a=a+d|0;a:{if(Jk(c,12472,0)){i[b+56>>2]=1;I[i[i[c>>2]+20>>2]](c,b+8|0,a,a,1,0);e=i[b+32>>2]==1?a:0;break a}I[i[i[c>>2]+24>>2]](c,b+8|0,a,1,0);b:{switch(i[b+44>>2]){case 0:e=i[b+48>>2]==1?i[b+36>>2]==1?i[b+40>>2]==1?i[b+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(i[b+32>>2]!=1){if(i[b+48>>2]|i[b+36>>2]!=1|i[b+40>>2]!=1){break a}}e=i[b+24>>2]}F=b- -64|0;return e}function nj(a,b,c){var d=0,e=0,f=0;e=F-16|0;F=e;a:{b:{if(!c){break b}i[a>>2]=b;i[e+12>>2]=0;d=0;if(!lj(1,e+12|0,b)){break a}c:{f=i[e+12>>2];if(f){b=0;while(1){if(!lj(1,e+8|0,i[a>>2])){break b}d=lk(28);i[d+4>>2]=0;i[d+8>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d>>2]=d+4;i[d+12>>2]=d+16;i[d+24>>2]=i[e+8>>2];if(!kj(a,d)){break c}i[e>>2]=d;pj(c,e);d=i[e>>2];i[e>>2]=0;if(d){Jf(d+12|0,i[d+16>>2]);Kf(d,i[d+4>>2]);Wk(d)}b=b+1|0;if((f|0)!=(b|0)){continue}break}}d=kj(a,c);break a}Jf(d+12|0,i[d+16>>2]);Kf(d,i[d+4>>2]);Wk(d)}d=0}F=e+16|0;return d}function kb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=i[a+60>>2];a:{if(!c){break a}i[c+4>>2]=a+48;if(!(I[i[i[c>>2]+12>>2]](c)|0)){break a}b:{d=I[i[i[a>>2]+24>>2]](a)|0;if((d|0)<1){break b}c=0;while(1){c:{f=i[(I[i[i[a>>2]+28>>2]](a)|0)+4>>2];g=I[i[i[a>>2]+20>>2]](a,c)|0;e=i[a+60>>2];if(!(I[i[i[e>>2]+8>>2]](e,i[i[f+8>>2]+(g<<2)>>2])|0)){break c}c=c+1|0;if((d|0)!=(c|0)){continue}break b}break}return 0}if(!(I[i[i[a>>2]+36>>2]](a,b)|0)){break a}if(!(I[i[i[a>>2]+40>>2]](a,b)|0)){break a}h=I[i[i[a>>2]+44>>2]](a)|0}return h|0}function Nf(a,b,c,d){var e=0,f=0,g=0;a:{if(!b){if((d|0)<0?1:(d|0)<=0?c>>>0<0:0){return 0}d=i[a>>2];b=i[a+4>>2]-d|0;if(b>>>0>>0){Wa(a,c-b|0);break a}if(b>>>0<=c>>>0){break a}i[a+4>>2]=c+d;break a}if((d|0)<0?1:(d|0)<=0?c>>>0<0:0){return 0}e=c;g=i[a>>2];f=i[a+4>>2]-g|0;b:{c:{if(0>(d|0)?1:0>=(d|0)?f>>>0>=c>>>0:0){break c}if(f>>>0>>0){Wa(a,e-f|0);break b}if(f>>>0<=e>>>0){break c}i[a+4>>2]=e+g}if(!e){break a}}_k(i[a>>2],b,e)}b=a+24|0;c=b;d=b;a=i[b+4>>2];b=i[b>>2]+1|0;if(b>>>0<1){a=a+1|0}i[d>>2]=b;i[c+4>>2]=a;return 1}function de(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=i[a+216>>2];if((c|0)!=i[a+220>>2]){while(1){a:{c=i[o(e,144)+c>>2];if((c|0)<0){break a}f=i[a+4>>2];d=i[f+8>>2];if((c|0)>=i[f+12>>2]-d>>2){break a}c=i[d+(c<<2)>>2];if((I[i[i[c>>2]+24>>2]](c)|0)<1){break a}d=0;while(1){if((I[i[i[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((d|0)<(I[i[i[c>>2]+24>>2]](c)|0)){continue}break a}break}a=i[a+216>>2]+o(e,144)|0;return(j[a+100|0]?a+4|0:0)|0}e=e+1|0;c=i[a+216>>2];if(e>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}return 0}function Rk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Jk(a,i[b+8>>2],e)){Qk(b,c,d);return}a:{if(Jk(a,i[b>>2],e)){if(!(i[b+20>>2]!=(c|0)?i[b+16>>2]!=(c|0):0)){if((d|0)!=1){break a}i[b+32>>2]=1;return}i[b+32>>2]=d;b:{if(i[b+44>>2]==4){break b}h[b+52>>1]=0;a=i[a+8>>2];I[i[i[a>>2]+20>>2]](a,b,c,c,1,e);if(j[b+53|0]){i[b+44>>2]=3;if(!j[b+52|0]){break b}break a}i[b+44>>2]=4}i[b+20>>2]=c;i[b+40>>2]=i[b+40>>2]+1;if(i[b+36>>2]!=1|i[b+24>>2]!=2){break a}g[b+54|0]=1;return}a=i[a+8>>2];I[i[i[a>>2]+24>>2]](a,b,c,d,e)}}function Eb(a,b,c,d,e,f){var g=0,h=0,j=0;f=F-32|0;F=f;h=i[i[i[b+4>>2]+8>>2]+(d<<2)>>2];a:{b:{if((I[i[i[b>>2]+8>>2]](b)|0)!=1|c+ -1>>>0>5){break b}j=I[i[i[b>>2]+36>>2]](b)|0;g=I[i[i[b>>2]+44>>2]](b,d)|0;if(!(g?j:0)){i[a>>2]=0;break a}d=I[i[i[b>>2]+40>>2]](b,d)|0;if(d){b=i[b+44>>2];i[f+12>>2]=d;i[f+8>>2]=b;i[f+20>>2]=g;i[f+16>>2]=g+12;Fb(a,c,h,e,f+8|0);if(!i[a>>2]){break b}break a}b=i[b+44>>2];i[f+12>>2]=j;i[f+8>>2]=b;i[f+20>>2]=g;i[f+16>>2]=g+12;Gb(a,c,h,e,f+8|0);if(i[a>>2]){break a}}i[a>>2]=0}F=f+32|0}function xj(a,b,c){var d=0,e=0,f=0,h=0;d=F-48|0;F=d;f=Yf(a,b);if((f|0)!=(a+4|0)){rj(a,f)}f=0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=i[c>>2];e=i[c+4>>2]-h|0;if(e){Wa(d,e);h=i[c>>2];c=i[d>>2]}else{c=0}Yk(c,h,e);h=ok(d+16|0,b);i[d+36>>2]=0;i[d+28>>2]=0;i[d+32>>2]=0;c=i[d>>2];e=i[d+4>>2]-c|0;b=0;a:{if(!e){break a}Wa(d+28|0,e);c=i[d>>2];f=i[d+4>>2]-c|0;b=i[d+28>>2]}Yk(b,c,f);sj(d+40|0,a,h,d+16|0);a=i[d+28>>2];if(a){i[d+32>>2]=a;Wk(a)}if(g[d+27|0]<=-1){Wk(i[d+16>>2])}a=i[d>>2];if(a){i[d+4>>2]=a;Wk(a)}F=d+48|0}function Xb(a,b){var c=0,d=0;c=F-32|0;F=c;a:{b:{if(i[a+8>>2]<<5>>>0>=b>>>0){break b}i[c+24>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;if((b|0)<=-1){break a}b=(b+ -1>>>5|0)+1|0;d=lk(b<<2);i[c+24>>2]=b;i[c+20>>2]=0;i[c+16>>2]=d;b=i[a>>2];i[c+12>>2]=0;i[c+8>>2]=b;d=i[a+4>>2];i[c+4>>2]=d&31;i[c>>2]=b+(d>>>3&536870908);Yb(c+16|0,c+8|0,c);b=i[a>>2];i[a>>2]=i[c+16>>2];i[c+16>>2]=b;d=i[a+4>>2];i[a+4>>2]=i[c+20>>2];i[c+20>>2]=d;d=i[a+8>>2];i[a+8>>2]=i[c+24>>2];i[c+24>>2]=d;if(!b){break b}Wk(b)}F=c+32|0;return}Ak();x()}function ee(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=i[a+216>>2];if((c|0)!=i[a+220>>2]){while(1){a:{c=i[o(e,144)+c>>2];if((c|0)<0){break a}f=i[a+4>>2];d=i[f+8>>2];if((c|0)>=i[f+12>>2]-d>>2){break a}c=i[d+(c<<2)>>2];if((I[i[i[c>>2]+24>>2]](c)|0)<1){break a}d=0;while(1){if((I[i[i[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((d|0)<(I[i[i[c>>2]+24>>2]](c)|0)){continue}break a}break}return(i[a+216>>2]+o(e,144)|0)+104|0}e=e+1|0;c=i[a+216>>2];if(e>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}return a+184|0}function bb(a){var b=0,c=0,d=0,e=0,f=0;b=i[a+8>>2];a:{if(j[b+84|0]){break a}c=i[a+16>>2];if(!c|!j[c+84|0]){break a}d=i[b+72>>2];e=i[b+68>>2];g[c+84|0]=0;d=d-e>>2;f=i[c+68>>2];e=i[c+72>>2]-f>>2;b:{if(d>>>0>e>>>0){cb(c+68|0,d-e|0,1656);b=i[a+8>>2];break b}if(d>>>0>=e>>>0){break b}i[c+72>>2]=f+(d<<2)}if(j[b+84|0]){break a}c=i[b+68>>2];b=i[b+72>>2]-c|0;if(!b){break a}d=b>>2;e=i[i[a+16>>2]+68>>2];b=0;while(1){f=b<<2;i[f+e>>2]=i[c+f>>2];b=b+1|0;if(b>>>0>>0){continue}break}}return i[a+16>>2]}function zf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;a:{c=i[a+8>>2];b:{if((c|0)<0){break b}d=i[a+4>>2];b=i[d>>2];e=i[d+4>>2]-b>>2;c:{if(c>>>0>e>>>0){Af(d,c-e|0);f=i[a+8>>2];break c}f=c;if(c>>>0>=e>>>0){break c}i[d+4>>2]=b+(c<<2);f=c}g=f;if((f|0)<1){break b}a=i[a+4>>2];b=i[a+4>>2];d=i[a>>2];a=b-d|0;e=(a|0)>-1?a:-1;b=d-b|0;b=o((e|0)<1?e:1,((b|0)>(a|0)?b:a)>>>2|0);a=0;while(1){if((a|0)==(b|0)){break a}i[d+(a<<2)>>2]=a;a=a+1|0;if((a|0)<(g|0)){continue}break}}return(c^-1)>>>31|0}Bk();x()}function yj(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=F-16|0;F=e;f=a+12|0;j=Yf(f,b);k=a+16|0;a:{if((j|0)!=(k|0)){break a}g=ud(f,e+12|0,b);d=i[g>>2];if(!d){d=lk(32);ok(d+16|0,b);i[d+28>>2]=0;i[d+8>>2]=i[e+12>>2];i[d>>2]=0;i[d+4>>2]=0;i[g>>2]=d;b=i[i[f>>2]>>2];h=d;b:{if(!b){break b}i[f>>2]=b;h=i[g>>2]}b=h;rd(i[a+16>>2],b);a=a+20|0;i[a>>2]=i[a>>2]+1}b=i[c>>2];i[c>>2]=0;c=d+28|0;a=i[c>>2];i[c>>2]=b;if(!a){break a}Jf(a+12|0,i[a+16>>2]);Kf(a,i[a+4>>2]);Wk(a)}F=e+16|0;return(j|0)==(k|0)}function qg(a,b){var c=0,d=0;c=F-96|0;F=c;Zk(c+16|0,0,76);i[c+92>>2]=-1;i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;a:{if(rg(c+16|0,a,c)){a=i[b>>2];if(a){i[b+4>>2]=a;Wk(a)}i[b>>2]=i[c>>2];i[b+4>>2]=i[c+4>>2];i[b+8>>2]=i[c+8>>2];d=i[c+84>>2];break a}a=i[c>>2];if(!a){break a}i[c+4>>2]=a;Wk(a)}a=i[c+72>>2];if(a){Wk(a)}a=i[c+48>>2];if(a){i[c+52>>2]=a;Wk(a)}a=i[c+36>>2];if(a){i[c+40>>2]=a;Wk(a)}a=i[c+24>>2];if(a){i[c+28>>2]=a;Wk(a)}a=i[c+20>>2];i[c+20>>2]=0;if(a){pe(c+16|4,a)}F=c+96|0;return d}function _i(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11304;b=i[a+68>>2];if(b){i[a+72>>2]=b;Wk(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;Wk(b)}b=i[a+44>>2];if(b){i[a+48>>2]=b;Wk(b)}b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}b=i[a+20>>2];if(b){i[a+24>>2]=b;Wk(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){Ma(b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;Wk(b)}b=i[a+4>>2];i[a+4>>2]=0;if(b){Ef(b)}return a|0}function te(a){var b=0,c=0,d=0,e=0;c=1;d=i[a+140>>2];a:{if((d|0)<1){break a}b=d<<4;c=lk((d|0)!=(d&268435455)?-1:b|4);i[c>>2]=d;c=c+4|0;d=c+b|0;b=c;while(1){b=gd(b)+16|0;if((d|0)!=(b|0)){continue}break}e=i[a+136>>2];i[a+136>>2]=c;if(e){d=e+ -4|0;c=i[d>>2];if(c){b=e+(c<<4)|0;while(1){b=b+ -16|0;if((e|0)!=(b|0)){continue}break}}Wk(d)}c=1;if(i[a+140>>2]<1){break a}b=0;while(1){c=hd(i[a+136>>2]+(b<<4)|0,a);if(!c){break a}b=b+1|0;if((b|0)>2]){continue}break}}return c}function tg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a>>2];a=i[e+4>>2];d=i[e+8>>2];if(a>>>0>>0){i[a>>2]=i[b>>2];i[e+4>>2]=a+4;return}a:{f=i[e>>2];g=a-f|0;a=g>>2;c=a+1|0;if(c>>>0<1073741824){h=a<<2;d=d-f|0;a=d>>1;c=d>>2>>>0<536870911?a>>>0>>0?c:a:1073741823;a=0;b:{if(!c){break b}if(c>>>0>=1073741824){break a}a=lk(c<<2)}d=h+a|0;i[d>>2]=i[b>>2];b=a+(c<<2)|0;c=d+4|0;if((g|0)>=1){Yk(a,f,g)}i[e+8>>2]=b;i[e+4>>2]=c;i[e>>2]=a;if(f){Wk(f)}return}Ak();x()}va(10656);x()}function Xa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a=i[a+4>>2];if(a){c=j[b+11|0];d=c<<24>>24<0;g=d?i[b>>2]:b;b=d?i[b+4>>2]:c;while(1){c=j[a+27|0];d=c<<24>>24<0;c=d?i[a+20>>2]:c;h=c>>>0>>0;a:{b:{f=h?c:b;c:{if(f){e=a+16|0;d=d?i[e>>2]:e;e=Lj(g,d,f);d:{if(!e){if(b>>>0>=c>>>0){break d}break a}if((e|0)<=-1){break a}}c=Lj(d,g,f);if(!c){break c}if((c|0)<=-1){break b}return 1}if(b>>>0>>0){break a}}if(h){break b}return 1}a=a+4|0}a=i[a>>2];if(a){continue}break}}return 0}function Pi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=lk(d<<2)}b=b<<2;b=Zk(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){Yk(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}va(10832);x()}function Af(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=lk(d<<2)}b=b<<2;b=Zk(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){Yk(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}va(10088);x()}function ja(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=lk(d<<2)}b=b<<2;b=Zk(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){Yk(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}va(1244);x()}function fd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=lk(d<<2)}b=b<<2;b=Zk(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){Yk(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}va(7888);x()}function La(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=lk(d<<2)}b=b<<2;b=Zk(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){Yk(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}va(1496);x()}function ng(a,b){var c=0,d=0,e=0,f=0;c=F-32|0;F=c;d=$k(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){f=d+16&-16;e=lk(f);i[c+24>>2]=f|-2147483648;i[c+16>>2]=e;i[c+20>>2]=d;break b}g[c+27|0]=d;e=c+16|0;if(!d){break a}}Yk(e,b,d)}g[d+e|0]=0;g[c+4|0]=0;i[c>>2]=1701667182;g[c+11|0]=4;d=i[a+4>>2];b=-1;c:{if(!d){break c}d=oj(d,c,c+16|0);b=-1;if(!d){break c}b=Ej(a,i[d+24>>2])}if(g[c+11|0]<=-1){Wk(i[c>>2])}if(g[c+27|0]<=-1){Wk(i[c+16>>2])}F=c+32|0;return b}nk();x()}function xg(a,b,c){var d=0,e=0,f=0,h=0,j=0;d=F-32|0;F=d;f=g[a+24|0];e=i[2663];i[d+24>>2]=i[2662];i[d+28>>2]=e;e=i[2661];i[d+16>>2]=i[2660];i[d+20>>2]=e;a:{e=yg(a,b,f,d+16|0);if(e){i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a=0;if(f){if((f|0)<=-1){break a}b=f<<2;a=lk(b);i[d>>2]=a;h=(f<<2)+a|0;i[d+8>>2]=h;Yk(a,d+16|0,b);i[d+4>>2]=h;j=h}b=i[c>>2];if(b){i[c+4>>2]=b;Wk(b);h=i[d+8>>2];j=i[d+4>>2];a=i[d>>2]}i[c+8>>2]=h;i[c+4>>2]=j;i[c>>2]=a}F=d+32|0;return e}Ak();x()}function Jd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>3;d=g+b|0;if(d>>>0<536870912){c=0;g=g<<3;e=e-f|0;j=e>>2;d=e>>3>>>0<268435455?j>>>0>>0?d:j:536870911;if(d){if(d>>>0>=536870912){break a}c=lk(d<<3)}b=b<<3;b=Zk(c+g|0,0,b)+b|0;d=(d<<3)+c|0;if((h|0)>=1){Yk(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}va(8058);x()}function pb(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=1736;b=i[a+60>>2];i[a+60>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}d=i[a+36>>2];if(d){b=d;c=i[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+36>>2]}b=e;i[a+40>>2]=d;Wk(b)}i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;Wk(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;Wk(b)}return a|0}function qb(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=1736;b=i[a+60>>2];i[a+60>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}d=i[a+36>>2];if(d){b=d;c=i[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+36>>2]}b=e;i[a+40>>2]=d;Wk(b)}i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;Wk(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;Wk(b)}Wk(a)}function Le(a){var b=0,c=0,d=0,e=0;b=i[a+196>>2];if(b){i[a+200>>2]=b;Wk(b)}b=i[a+184>>2];if(b){c=i[a+188>>2];d=b;a:{if((b|0)==(c|0)){break a}while(1){d=c+ -12|0;e=i[d>>2];if(e){i[c+ -8>>2]=e;Wk(e)}c=d;if((c|0)!=(b|0)){continue}break}d=i[a+184>>2]}i[a+188>>2]=b;Wk(d)}b=i[a+156>>2];if(b){i[a+160>>2]=b;Wk(b)}b=i[a+136>>2];i[a+136>>2]=0;if(b){c=b+ -4|0;a=i[c>>2];if(a){a=b+(a<<4)|0;while(1){a=a+ -16|0;if((b|0)!=(a|0)){continue}break}}Wk(c)}}function ye(a,b){var c=0,d=0,e=0,f=0,g=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){i[c>>2]=i[b>>2];i[a+4>>2]=c+4;return}a:{f=i[a>>2];g=c-f|0;e=g>>2;d=e+1|0;if(d>>>0<1073741824){c=g>>1;d=e>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}c=lk(d<<2)}e=c+(e<<2)|0;i[e>>2]=i[b>>2];b=c+(d<<2)|0;d=e+4|0;if((g|0)>=1){Yk(c,f,g)}i[a+8>>2]=b;i[a+4>>2]=d;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}va(8944);x()} - - - -function cg(a,b,c){var d=0,e=0,f=0,h=0;d=F-32|0;F=d;e=$k(b);if(e>>>0<4294967280){a:{b:{if(e>>>0>=11){h=e+16&-16;f=lk(h);i[d+24>>2]=h|-2147483648;i[d+16>>2]=f;i[d+20>>2]=e;break b}g[d+27|0]=e;f=d+16|0;if(!e){break a}}Yk(f,b,e)}g[e+f|0]=0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;uj(a,d+16|0,d);a=i[c>>2];if(a){i[c+4>>2]=a;Wk(a)}i[c>>2]=i[d>>2];i[c+4>>2]=i[d+4>>2];i[c+8>>2]=i[d+8>>2];if(g[d+27|0]<=-1){Wk(i[d+16>>2])}F=d+32|0;return}nk();x()}function pa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=F-16|0;F=d;e=i[a+4>>2];a:{if((e|0)==-1){break a}c=i[b+20>>2];if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>0:0){break a}ba(b,i[b+4>>2],i[a+8>>2],i[a+12>>2]);c=i[b+20>>2];if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>=1:0){break a}c=a+20|0;ba(b,i[b+4>>2],c,c+4|0);c=i[b+20>>2];f=i[b+16>>2];g[d+15|0]=i[a+4>>2];if((c|0)>0?1:(c|0)>=0?f>>>0>0:0){break a}ba(b,i[b+4>>2],d+15|0,d+16|0)}F=d+16|0;return(e|0)!=-1|0}function Vi(a,b){var c=0,d=0,e=0,f=0,g=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){i[c>>2]=i[b>>2];i[a+4>>2]=c+4;return}a:{f=i[a>>2];g=c-f|0;e=g>>2;d=e+1|0;if(d>>>0<1073741824){c=g>>1;d=e>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}c=lk(d<<2)}e=c+(e<<2)|0;i[e>>2]=i[b>>2];b=c+(d<<2)|0;d=e+4|0;if((g|0)>=1){Yk(c,f,g)}i[a+8>>2]=b;i[a+4>>2]=d;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}va(10832);x()}function Fg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>1>>>0>=b>>>0){if(b){b=b<<1;c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];g=c-f|0;h=g>>1;d=h+b|0;if((d|0)>-1){c=0;e=e-f|0;d=e>>1>>>0<1073741823?e>>>0>>0?d:e:2147483647;if(d){if((d|0)<=-1){break a}c=lk(d<<1)}b=b<<1;b=Zk((h<<1)+c|0,0,b)+b|0;d=(d<<1)+c|0;if((g|0)>=1){Yk(c,f,g)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}va(10656);x()}function _e(a,b){var c=0,d=0,e=0,f=0,g=0;d=i[a+4>>2];a=i[d+4>>2];if((a|0)!=i[d+8>>2]){i[a>>2]=b;i[d+4>>2]=a+4;return}a:{f=i[d>>2];g=a-f|0;e=g>>2;c=e+1|0;if(c>>>0<1073741824){a=g>>1;c=e>>>0<536870911?a>>>0>>0?c:a:1073741823;a=0;b:{if(!c){break b}if(c>>>0>=1073741824){break a}a=lk(c<<2)}e=a+(e<<2)|0;i[e>>2]=b;b=a+(c<<2)|0;c=e+4|0;if((g|0)>=1){Yk(a,f,g)}i[d+8>>2]=b;i[d+4>>2]=c;i[d>>2]=a;if(f){Wk(f)}return}Ak();x()}va(8944);x()}function Aa(a,b){var c=0;g[a+24|0]=j[b+24|0];i[a+28>>2]=i[b+28>>2];g[a+32|0]=j[b+32|0];c=i[b+44>>2];i[a+40>>2]=i[b+40>>2];i[a+44>>2]=c;c=i[b+52>>2];i[a+48>>2]=i[b+48>>2];i[a+52>>2]=c;i[a+56>>2]=i[b+56>>2];c=i[b+12>>2];i[a+8>>2]=i[b+8>>2];i[a+12>>2]=c;c=i[b+20>>2];i[a+16>>2]=i[b+16>>2];i[a+20>>2]=c;i[a+60>>2]=i[b+60>>2];b=i[b>>2];if(!b){i[a>>2]=0;return 1}a=i[a>>2];if(!a){return 0}c=a;a=i[b>>2];Nf(c,a,i[b+4>>2]-a|0,0);return 1}function Ui(a,b,c){var d=0,e=0,f=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;a:{b:{if(!b){break b}if((b|0)<=-1){break a}e=b+ -1>>>5|0;f=e+1|0;d=lk(f<<2);i[a+8>>2]=f;i[a>>2]=d;f=j[c|0];i[a+4>>2]=b;i[(b>>>0<33?d:d+(e<<2)|0)>>2]=0;c=b>>>5|0;e=c<<2;if(f){d=Zk(d,255,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;i[c>>2]=i[c>>2]|-1>>>32-b;return a}d=Zk(d,0,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;i[c>>2]=i[c>>2]&(-1>>>32-b^-1)}return a}Ak();x()}function Ni(a,b){var c=0,d=0,e=0;d=F-16|0;F=d;e=lk(88);c=e;i[c>>2]=0;i[c+4>>2]=0;i[c+64>>2]=0;i[c+68>>2]=0;i[c+56>>2]=0;i[c+48>>2]=0;i[c+52>>2]=0;i[c+40>>2]=0;i[c+44>>2]=0;i[c+32>>2]=0;i[c+36>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+72>>2]=0;i[c+76>>2]=0;i[c+80>>2]=0;i[c+84>>2]=0;i[c+60>>2]=c;a:{if(Oi(c,b)){i[a>>2]=e;break a}i[a>>2]=0;i[d+8>>2]=0;pe(d+8|0,e)}F=d+16|0}function qf(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Pj(b)}d=i[a+4>>2];if(c>>>0>d>>>0){rf(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(kl(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Pj(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}rf(a,b)}}function Xf(a,b){var c=0,d=0,e=0,f=0;d=F-16|0;F=d;yk(d);e=ud(a,d+12|0,b);c=i[e>>2];if(!c){c=lk(40);ok(c+16|0,b);i[c+36>>2]=0;i[c+28>>2]=0;i[c+32>>2]=0;i[c+8>>2]=i[d+12>>2];i[c>>2]=0;i[c+4>>2]=0;i[e>>2]=c;b=i[i[a>>2]>>2];f=c;a:{if(!b){break a}i[a>>2]=b;f=i[e>>2]}b=f;rd(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}a=c+28|0;if(g[c+39|0]<=-1){Wk(i[a>>2])}b=i[d+4>>2];i[a>>2]=i[d>>2];i[a+4>>2]=b;i[a+8>>2]=i[d+8>>2];F=d+16|0}function Tf(a,b,c){var d=0,e=0,f=0,h=0,j=0;a:{if(a>>>0>10){break a}e=i[c+16>>2];f=i[c+12>>2];d=i[c+20>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=e>>>0:0){break a}f=g[e+i[c>>2]|0];e=e+1|0;if(e>>>0<1){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;e=b;h=b;d=f;b:{if((d|0)<=-1){if(!Tf(a+1|0,b,c)){break a}a=i[b+4>>2];b=i[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}i[h>>2]=b;i[e+4>>2]=a;j=1}return j}function Kd(a,b,c){var d=0,e=0,f=0,h=0,j=0;a:{if(a>>>0>10){break a}e=i[c+16>>2];f=i[c+12>>2];d=i[c+20>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=e>>>0:0){break a}f=g[e+i[c>>2]|0];e=e+1|0;if(e>>>0<1){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;e=b;h=b;d=f;b:{if((d|0)<=-1){if(!Kd(a+1|0,b,c)){break a}a=i[b+4>>2];b=i[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}i[h>>2]=b;i[e+4>>2]=a;j=1}return j}function we(a,b){var c=0,d=0,e=0,f=0;d=i[a+12>>2];c=i[a+16>>2]-d>>2;a:{if(c>>>0>>0){La(a+12|0,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+16>>2]=d+(b<<2)}b:{c=i[a>>2];c:{if(i[a+8>>2]-c>>2>>>0>=b>>>0){break c}if(b>>>0>=1073741824){break b}d=i[a+4>>2];e=b<<2;b=lk(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>=1){Yk(b,c,d)}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b;if(!c){break c}Wk(c)}return}va(8944);x()}function Re(a,b){var c=0,d=0,e=0;a:{if((a|0)!=(b|0)){e=a;c=i[b+4>>2];d=0;b:{if(!c){break b}c:{if(c>>>0<=i[a+8>>2]<<5>>>0){d=i[a>>2];break c}d=i[a>>2];if(d){Wk(d);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;c=i[b+4>>2]}if((c|0)<=-1){break a}c=(c+ -1>>>5|0)+1|0;d=lk(c<<2);i[a+8>>2]=c;i[a+4>>2]=0;i[a>>2]=d;c=i[b+4>>2]}_k(d,i[b>>2],(c+ -1>>>3&536870908)+4|0);d=i[b+4>>2]}i[e+4>>2]=d}return}Ak();x()}function uj(a,b,c){var d=0,e=0,f=0;a:{b=Yf(a,b);b:{if((b|0)==(a+4|0)){break b}a=i[b+28>>2];d=i[b+32>>2];if((a|0)==(d|0)){break b}a=d-a|0;if(a&3){break b}d=a>>>2|0;e=i[c+4>>2];a=i[c>>2];f=e-a>>2;c:{if(d>>>0>f>>>0){La(c,d-f|0);a=i[c>>2];e=i[c+4>>2];break c}if(d>>>0>=f>>>0){break c}e=(d<<2)+a|0;i[c+4>>2]=e}if((a|0)==(e|0)){break a}c=a;a=i[b+28>>2];Yk(c,a,i[b+32>>2]-a|0)}return}Bk();x()}function ke(a,b){var c=0;c=i[b+8>>2];i[a+12>>2]=i[b+4>>2];i[a+16>>2]=c;i[a+28>>2]=i[b+20>>2];c=i[b+16>>2];i[a+20>>2]=i[b+12>>2];i[a+24>>2]=c;Re(a+32|0,b+24|0);Re(a+44|0,b+36|0);if((a+8|0)==(b|0)){i[a+92>>2]=i[b+84>>2];return}Ga(a+56|0,i[b+48>>2],i[b+52>>2]);Ga(a+68|0,i[b+60>>2],i[b- -64>>2]);Ga(a+80|0,i[b+72>>2],i[b+76>>2]);i[a+92>>2]=i[b+84>>2];Se(a+96|0,i[b+88>>2],i[b+92>>2])}function rj(a,b){var c=0,d=0,e=0;c=i[b+4>>2];a:{if(!c){d=i[b+8>>2];if(i[d>>2]==(b|0)){break a}e=b+8|0;while(1){c=i[e>>2];e=c+8|0;d=i[c+8>>2];if((c|0)!=i[d>>2]){continue}break}break a}while(1){d=c;c=i[c>>2];if(c){continue}break}}if(i[a>>2]==(b|0)){i[a>>2]=d}i[a+8>>2]=i[a+8>>2]+ -1;zj(i[a+4>>2],b);a=i[b+28>>2];if(a){i[b+32>>2]=a;Wk(a)}if(g[b+27|0]<=-1){Wk(i[b+16>>2])}Wk(b)}function Yd(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=8232;b=i[a+48>>2];i[a+48>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=10228;b=i[a+20>>2];if(b){i[a+24>>2]=b;Wk(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;Wk(b)}return a|0}function Zd(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=8232;b=i[a+48>>2];i[a+48>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=10228;b=i[a+20>>2];if(b){i[a+24>>2]=b;Wk(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;Wk(b)}Wk(a)}function dg(a,b){var c=0,d=0,e=0,f=0,h=0;c=F-32|0;F=c;i[c+24>>2]=0;i[c+28>>2]=0;d=$k(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){e=d+16&-16;f=lk(e);i[c+16>>2]=e|-2147483648;i[c+8>>2]=f;i[c+12>>2]=d;e=c+8|0;break b}g[c+19|0]=d;e=c+8|0;f=e;if(!d){break a}}Yk(f,b,d)}g[d+f|0]=0;vj(a,c+8|0,c+24|0);h=n[c+24>>3];if(g[e+11|0]<=-1){Wk(i[c+8>>2])}F=c+32|0;return h}nk();x()}function sk(a,b,c,d,e,f,h){var j=0,k=0,l=0;j=F-16|0;F=j;if((b^-1)+ -17>>>0>=c>>>0){k=ak(a);a:{if(2147483623>b>>>0){i[j+8>>2]=b<<1;i[j+12>>2]=b+c;c=fk(i[Wj(j+12|0,j+8|0)>>2]);break a}c=-18}l=c+1|0;c=gk(l);if(f){Vj(c,h,f)}d=d-e|0;h=d;if(d){Vj(c+f|0,e+k|0,h)}if((b|0)!=10){Wk(k)}hk(a,c);ik(a,l);b=a;a=d+f|0;dk(b,a);g[j+7|0]=0;ck(a+c|0,j+7|0);F=j+16|0;return}nk();x()}function eg(a,b,c){var d=0,e=0,f=0,h=0;d=F-16|0;F=d;e=$k(c);if(e>>>0<4294967280){a:{b:{if(e>>>0>=11){h=e+16&-16;f=lk(h);i[d+8>>2]=h|-2147483648;i[d>>2]=f;i[d+4>>2]=e;break b}g[d+11|0]=e;f=d;if(!e){break a}}Yk(f,c,e)}g[e+f|0]=0;a=a+16|0;c=0;c:{if(!wj(b,d,a)){break c}c=i[a>>2];if(g[a+11|0]<=-1){break c}c=a}if(g[d+11|0]<=-1){Wk(i[d>>2])}F=d+16|0;return c}nk();x()}function Wa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>>0>=b>>>0){if(b){c=Zk(c,0,b)+b|0}i[a+4>>2]=c;return}f=i[a>>2];g=c-f|0;d=g+b|0;if((d|0)>-1){c=0;e=e-f|0;h=e<<1;d=e>>>0<1073741823?h>>>0>>0?d:h:2147483647;if(d){c=lk(d)}d=c+d|0;b=Zk(c+g|0,0,b)+b|0;if((g|0)>=1){Yk(c,f,g)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){Wk(f)}return}Ak();x()}function Pk(a,b,c,d){g[a+53|0]=1;a:{if(i[a+4>>2]!=(c|0)){break a}g[a+52|0]=1;c=i[a+16>>2];if(!c){i[a+36>>2]=1;i[a+24>>2]=d;i[a+16>>2]=b;if((d|0)!=1|i[a+48>>2]!=1){break a}g[a+54|0]=1;return}if((b|0)==(c|0)){c=i[a+24>>2];if((c|0)==2){i[a+24>>2]=d;c=d}if(i[a+48>>2]!=1|(c|0)!=1){break a}g[a+54|0]=1;return}g[a+54|0]=1;i[a+36>>2]=i[a+36>>2]+1}}function vg(a,b,c){var d=0,e=0,f=0,g=0;a:{if(l[a+80>>2]>65535){break a}f=i[a+96>>2];d=i[a+100>>2]-f|0;a=(d|0)/12|0;e=o(a,6);g=(e|0)==(b|0);if(!d|(b|0)!=(e|0)){break a}g=1;e=a>>>0>1?a:1;a=0;while(1){b=o(a,6)+c|0;d=o(a,12)+f|0;h[b>>1]=i[d>>2];h[b+2>>1]=i[d+4>>2];h[b+4>>1]=i[d+8>>2];a=a+1|0;if((e|0)!=(a|0)){continue}break}}return g}function bg(a,b){var c=0,d=0,e=0,f=0;c=F-16|0;F=c;i[c+12>>2]=0;d=$k(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){e=d+16&-16;f=lk(e);i[c+8>>2]=e|-2147483648;i[c>>2]=f;i[c+4>>2]=d;e=c;break b}g[c+11|0]=d;e=c;f=c;if(!d){break a}}Yk(f,b,d)}g[d+f|0]=0;tj(a,c,c+12|0);a=i[c+12>>2];if(g[e+11|0]<=-1){Wk(i[c>>2])}F=c+16|0;return a}nk();x()}function le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F-16|0;F=d;i[a+4>>2]=b;b=i[b+64>>2];e=i[b>>2];b=i[b+4>>2];g[d+15|0]=0;ie(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=i[a+4>>2];e=i[b+56>>2];b=i[b+52>>2];g[d+14|0]=0;ie(a+36|0,e-b>>2,d+14|0);b=i[c+12>>2];i[a+16>>2]=i[c+8>>2];i[a+20>>2]=b;b=i[c+4>>2];i[a+8>>2]=i[c>>2];i[a+12>>2]=b;F=d+16|0}function db(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=1;a:{if((I[i[i[b>>2]+20>>2]](b)|0)<1){break a}d=0;while(1){c=Bj(i[i[a+4>>2]+4>>2],I[i[i[b>>2]+24>>2]](b,e)|0);if((c|0)==-1){break a}c=If(i[a+4>>2],c);if(!c){break a}if(!(I[i[i[b>>2]+28>>2]](b,c)|0)){break a}e=e+1|0;if((e|0)<(I[i[i[b>>2]+20>>2]](b)|0)){continue}break}d=1}return d|0}function $k(a){var b=0,c=0,d=0;a:{b:{b=a;if(!(b&3)){break b}if(!j[a|0]){return 0}while(1){b=b+1|0;if(!(b&3)){break b}if(j[b|0]){continue}break}break a}while(1){c=b;b=b+4|0;d=i[c>>2];if(!((d^-1)&d+ -16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=j[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function wb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=F-48|0;F=e;a:{if((d|0)!=1){i[a>>2]=0;break a}d=i[b+4>>2];b=i[b+12>>2];i[e+40>>2]=0;f=e+32|0;i[f>>2]=0;i[f+4>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;xb(e,c,b,d,e+8|0);b=i[f>>2];if(b){i[e+36>>2]=b;Wk(b)}i[a>>2]=i[e>>2]}F=e+48|0}function Kk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F+ -64|0;F=d;e=1;a:{if(Jk(a,b,0)){break a}e=0;if(!b){break a}b=Lk(b);e=0;if(!b){break a}Zk(d+8|4,0,52);i[d+56>>2]=1;i[d+20>>2]=-1;i[d+16>>2]=a;i[d+8>>2]=b;I[i[i[b>>2]+28>>2]](b,d+8|0,i[c>>2],1);a=i[d+32>>2];if((a|0)==1){i[c>>2]=i[d+24>>2]}e=(a|0)==1}a=e;F=d- -64|0;return a|0}function mb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=I[i[i[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<1){break a}d=i[i[a+36>>2]>>2];f=a+48|0;c=0;if(!(I[i[i[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=i[i[a+36>>2]+(c<<2)>>2];if(I[i[i[g>>2]+20>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function lb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=I[i[i[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<1){break a}d=i[i[a+36>>2]>>2];f=a+48|0;c=0;if(!(I[i[i[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=i[i[a+36>>2]+(c<<2)>>2];if(I[i[i[g>>2]+16>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function zb(a,b,c){var d=0,e=0,f=0,h=0;d=F-80|0;F=d;e=ya(d+16|0);f=i[i[a+8>>2]+56>>2];h=c<<24>>24;c=o(Vf(5),c);za(e,f,h,5,0,c,c>>31);c=lk(96);e=Da(c,e);i[d+8>>2]=c;g[c+84|0]=1;i[c+72>>2]=i[c+68>>2];Ea(e,b);i[d+8>>2]=0;b=i[a+16>>2];i[a+16>>2]=c;a:{if(!b){break a}Ma(b);a=i[d+8>>2];i[d+8>>2]=0;if(!a){break a}Ma(a)}F=d+80|0}function vd(a,b,c,d){var e=0,f=0,g=0,h=0;if(!a){return 1}e=i[c+16>>2];g=i[c+12>>2];f=i[c+20>>2];a:{if((g|0)<(f|0)?1:(g|0)<=(f|0)?l[c+8>>2]<=e>>>0:0){break a}g=j[e+i[c>>2]|0];e=e+1|0;if(e>>>0<1){f=f+1|0}i[c+16>>2]=e;i[c+20>>2]=f;b:{switch(g|0){case 0:return wd(a,b,c,d);case 1:break b;default:break a}}h=xd(a,c,d)}return h}function dj(a){i[a>>2]=0;i[a+4>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;g[a+24|0]=1;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+36>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;i[a+80>>2]=0;i[a+84>>2]=0;i[a+88>>2]=0;i[a+92>>2]=0;i[a+68>>2]=a}function Sk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Jk(a,i[b+8>>2],e)){Qk(b,c,d);return}a:{if(!Jk(a,i[b>>2],e)){break a}if(!(i[b+20>>2]!=(c|0)?i[b+16>>2]!=(c|0):0)){if((d|0)!=1){break a}i[b+32>>2]=1;return}i[b+20>>2]=c;i[b+32>>2]=d;i[b+40>>2]=i[b+40>>2]+1;if(!(i[b+36>>2]!=1|i[b+24>>2]!=2)){g[b+54|0]=1}i[b+44>>2]=4}}function Oj(a){var b=0,c=0,d=0,e=0,f=0;while(1){b=a;a=b+1|0;c=g[b|0];if((c|0)==32|c+ -9>>>0<5){continue}break}a:{b:{c:{c=g[b|0];switch(c+ -43|0){case 0:break b;case 2:break c;default:break a}}e=1}c=g[a|0];b=a;f=e}if(Nj(c)){while(1){d=(o(d,10)-g[b|0]|0)+48|0;a=g[b+1|0];b=b+1|0;if(Nj(a)){continue}break}}return f?d:0-d|0}function sg(a,b){var c=0,d=0,e=0,f=0;c=F-16|0;F=c;i[a+68>>2]=0;i[a+72>>2]=0;i[a>>2]=b;hj(c+8|0,b);d=i[c+8>>2];i[c+8>>2]=0;e=i[a+4>>2];i[a+4>>2]=d;if(e){f=a+4|0;pe(f,e);d=i[c+8>>2];i[c+8>>2]=0;if(d){pe(c+8|0,d)}d=i[f>>2]}if(d){e=i[b+100>>2];b=i[b+96>>2];g[c+7|0]=0;ie(a+56|0,(e-b|0)/12|0,c+7|0)}F=c+16|0;return(d|0)!=0}function Qe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F-16|0;F=d;i[a+4>>2]=b;e=i[b>>2];b=i[b+4>>2];g[d+15|0]=0;ie(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=i[a+4>>2];e=i[b+28>>2];b=i[b+24>>2];g[d+14|0]=0;ie(a+36|0,e-b>>2,d+14|0);b=i[c+12>>2];i[a+16>>2]=i[c+8>>2];i[a+20>>2]=b;b=i[c+4>>2];i[a+8>>2]=i[c>>2];i[a+12>>2]=b;F=d+16|0}function tf(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!tf(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function oe(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!oe(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function lj(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!lj(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function id(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!id(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Ub(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Ub(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Ka(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Ka(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Id(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Id(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Mi(a){var b=0;i[a>>2]=0;i[a+4>>2]=0;i[a+56>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+32>>2]=0;i[a+36>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;b=a- -64|0;i[b>>2]=0;i[b+4>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;i[a+80>>2]=0;i[a+84>>2]=0;i[a+60>>2]=a}function Ef(a){var b=0,c=0,d=0,e=0;if(a){d=i[a+24>>2];if(d){b=d;c=i[a+28>>2];e=b;a:{if((c|0)==(b|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){Jf(b+12|0,i[b+16>>2]);Kf(b,i[b+4>>2]);Wk(b)}if((c|0)!=(d|0)){continue}break}e=i[a+24>>2]}b=e;i[a+28>>2]=d;Wk(b)}Jf(a+12|0,i[a+16>>2]);Kf(a,i[a+4>>2]);Wk(a)}}function ag(a,b){var c=0,d=0,e=0,f=0;c=F-16|0;F=c;d=$k(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){e=d+16&-16;f=lk(e);i[c+8>>2]=e|-2147483648;i[c>>2]=f;i[c+4>>2]=d;e=c;break b}g[c+11|0]=d;e=c;f=c;if(!d){break a}}Yk(f,b,d)}g[d+f|0]=0;a=Xa(a,c);if(g[e+11|0]<=-1){Wk(i[c>>2])}F=c+16|0;return(a|0)!=0}nk();x()}function aj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F-16|0;F=d;e=i[c>>2];i[c>>2]=0;i[d+8>>2]=e;Gj(a,b,d+8|0);c=i[d+8>>2];i[d+8>>2]=0;if(c){Ma(c)}e=i[a+84>>2];c=i[a+88>>2]-e>>2;a:{if((c|0)>(b|0)){break a}b=b+1|0;if(b>>>0>c>>>0){bj(a+84|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}i[a+88>>2]=e+(b<<2)}F=d+16|0}function Td(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=10228;b=i[a+20>>2];if(b){i[a+24>>2]=b;Wk(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;Wk(b)}return a|0}function wk(a,b,c,d,e){var f=0,g=0,h=0;f=F-16|0;F=f;if(-17-b>>>0>=c>>>0){g=ak(a);a:{if(2147483623>b>>>0){i[f+8>>2]=b<<1;i[f+12>>2]=b+c;c=fk(i[Wj(f+12|0,f+8|0)>>2]);break a}c=-18}h=c+1|0;c=gk(h);if(e){Vj(c,g,e)}d=d-e|0;if(d){Vj(c+e|0,e+g|0,d)}if((b|0)!=10){Wk(g)}hk(a,c);ik(a,h);F=f+16|0;return}nk();x()}function ca(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,k=0;h=i[c+8>>2];f=i[c+16>>2];g=i[c+12>>2];d=g;e=i[c+20>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?h>>>0>f>>>0:0){b=j[f+i[c>>2]|0];d=e;k=f+1|0;if(k>>>0<1){d=d+1|0}i[c+16>>2]=k;i[c+20>>2]=d;i[a+4>>2]=b}return((g|0)>(e|0)?1:(g|0)>=(e|0)?h>>>0>f>>>0:0)|0}function xf(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=10228;b=i[a+20>>2];if(b){i[a+24>>2]=b;Wk(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;Wk(b)}Wk(a)}function xa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,h=0,j=0;e=F+ -64|0;F=e;f=I[i[i[b>>2]+44>>2]](b,c)|0;b=I[i[i[b>>2]+40>>2]](b,c)|0;h=ya(e);j=i[c+56>>2];c=b;b=o(Vf(b),f);za(h,j,f<<24>>24,c,0,b,b>>31);b=lk(96);c=Da(b,h);i[a>>2]=b;Ea(c,d);g[b+84|0]=1;i[b+72>>2]=i[b+68>>2];F=e- -64|0}function Ue(a){a=a|0;var b=0;i[a+8>>2]=9264;i[a>>2]=9052;b=i[a+96>>2];if(b){i[a+100>>2]=b;Wk(b)}b=i[a+80>>2];if(b){i[a+84>>2]=b;Wk(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;Wk(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;Wk(b)}i[a+8>>2]=9500;b=i[a+44>>2];if(b){Wk(b)}b=i[a+32>>2];if(b){Wk(b)}return a|0}function Ea(a,b){var c=0,d=0,e=0;a:{if(i[a+64>>2]){break a}d=lk(32);Mf(d);c=i[a+64>>2];i[a+64>>2]=d;if(!c){break a}d=i[c>>2];if(d){i[c+4>>2]=d;Wk(d)}Wk(c)}c=Vf(i[a+28>>2]);c=o(c,g[a+24|0]);d=c;c=c>>31;e=Nf(i[a+64>>2],0,hl(d,c,b,0),H);if(e){Ba(a,i[a+64>>2],d,c);i[a+80>>2]=b}return e}function Ve(a){a=a|0;var b=0;i[a+8>>2]=9264;i[a>>2]=9052;b=i[a+96>>2];if(b){i[a+100>>2]=b;Wk(b)}b=i[a+80>>2];if(b){i[a+84>>2]=b;Wk(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;Wk(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;Wk(b)}i[a+8>>2]=9500;b=i[a+44>>2];if(b){Wk(b)}b=i[a+32>>2];if(b){Wk(b)}Wk(a)}function wg(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=i[a+96>>2];e=i[a+100>>2]-g|0;a=(e|0)/12|0;if(!(!e|(b|0)!=(e|0))){h=a>>>0>1?a:1;a=0;while(1){d=o(a,12);f=d+c|0;d=d+g|0;i[f>>2]=i[d>>2];i[f+4>>2]=i[d+4>>2];i[f+8>>2]=i[d+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}return(b|0)==(e|0)}function Dj(a,b){var c=0,d=0,e=0;d=i[a+8>>2];c=i[a+12>>2];a:{if((d|0)!=(c|0)){a=c-d|0;e=(a|0)>-1?a:-1;c=d-c|0;a=o((e|0)<1?e:1,((c|0)>(a|0)?c:a)>>>2|0);e=a>>>0>1?a:1;a=0;while(1){c=i[(a<<2)+d>>2];if(i[c+60>>2]==(b|0)){break a}a=a+1|0;if((e|0)!=(a|0)){continue}break}}c=0}return c}function kk(a,b,c){var d=0,e=0,f=0,h=0;f=F-16|0;F=f;e=c-b|0;if(e>>>0<=4294967279){a:{if(e>>>0<=10){ek(a,e);d=a;break a}h=fk(e)+1|0;d=gk(h);hk(a,d);ik(a,h);dk(a,e)}while(1){if((b|0)!=(c|0)){ck(d,b);d=d+1|0;b=b+1|0;continue}break}g[f+15|0]=0;ck(d,f+15|0);F=f+16|0;return}nk();x()}function Ug(a,b){var c=0,d=0;c=i[a+4>>2];if(!c){return 0}b=i[i[i[a+8>>2]+(b<<2)>>2]+60>>2];if((b|0)<0){return 0}a=i[c+24>>2];c=i[c+28>>2];if((a|0)==(c|0)){return 0}a:{while(1){d=i[a>>2];if((b|0)==i[d+24>>2]){break a}a=a+4|0;if((c|0)!=(a|0)){continue}break}return 0}return d}function Te(a){a=a|0;var b=0;i[a>>2]=9264;b=i[a+88>>2];if(b){i[a+92>>2]=b;Wk(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;Wk(b)}b=i[a+60>>2];if(b){i[a- -64>>2]=b;Wk(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}i[a>>2]=9500;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}return a|0}function Sh(a){a=a|0;var b=0,c=0,d=0,e=0;if(a){if(g[a+27|0]<=-1){Wk(i[a+16>>2])}c=i[a>>2];if(c){b=c;d=i[a+4>>2];e=b;a:{if((d|0)==(b|0)){break a}while(1){b=d+ -12|0;if(g[d+ -1|0]<=-1){Wk(i[b>>2])}d=b;if((b|0)!=(c|0)){continue}break}e=i[a>>2]}b=e;i[a+4>>2]=c;Wk(b)}Wk(a)}}function $e(a){a=a|0;var b=0;i[a>>2]=9264;b=i[a+88>>2];if(b){i[a+92>>2]=b;Wk(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;Wk(b)}b=i[a+60>>2];if(b){i[a- -64>>2]=b;Wk(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}i[a>>2]=9500;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}Wk(a)}function qd(a,b,c,d){var e=0;e=F-16|0;F=e;c=td(a,b,e+12|0,e+8|0,c);if(!i[c>>2]){b=lk(40);ok(b+16|0,d);ok(b+28|0,d+12|0);i[b+8>>2]=i[e+12>>2];i[b>>2]=0;i[b+4>>2]=0;i[c>>2]=b;d=i[i[a>>2]>>2];if(d){i[a>>2]=d;b=i[c>>2]}rd(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}F=e+16|0}function ob(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{switch(c|0){case 0:b=lk(20);Ya(b);break a;case 1:b=lk(24);sb(b);break a;case 2:b=lk(48);Zc(b);break a;case 3:b=lk(32);sb(b);i[b+28>>2]=-1;i[b+24>>2]=1032;i[b>>2]=5628;break a;default:break b}}i[a>>2]=0;return}i[a>>2]=b}function qe(a){var b=0;b=i[a+84>>2];if(b){i[a+88>>2]=b;Wk(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;Wk(b)}b=i[a+52>>2];if(b){i[a+56>>2]=b;Wk(b)}b=i[a+40>>2];if(b){i[a+44>>2]=b;Wk(b)}b=i[a+28>>2];if(b){i[a+32>>2]=b;Wk(b)}b=i[a+12>>2];if(b){Wk(b)}a=i[a>>2];if(a){Wk(a)}}function pe(a,b){if(b){a=i[b+76>>2];if(a){i[b+80>>2]=a;Wk(a)}a=i[b- -64>>2];if(a){i[b+68>>2]=a;Wk(a)}a=i[b+48>>2];if(a){i[b+52>>2]=a;Wk(a)}a=i[b+24>>2];if(a){i[b+28>>2]=a;Wk(a)}a=i[b+12>>2];if(a){i[b+16>>2]=a;Wk(a)}a=i[b>>2];if(a){i[b+4>>2]=a;Wk(a)}Wk(b)}}function jd(a){var b=0,c=0,d=0,e=0,f=0;d=j[a+12|0];c=i[a+8>>2];a:{if(c>>>0>4095){break a}b=i[a+4>>2];if((b|0)<1){break a}b=b+ -1|0;i[a+4>>2]=b;c=j[b+i[a>>2]|0]|c<<8}d=0-d&255;b=o(d,c>>>8|0);e=c&255;f=e>>>0>>0;i[a+8>>2]=f?b+e|0:(c-d|0)-b|0;return f}function fl(a,b,c,d){var e=0,f=0,g=0,h=0;e=b;f=e>>31;e=e>>31;a=a^e;g=a-e|0;h=(b^f)-((a>>>0>>0)+f|0)|0;e=d;f=e>>31;e=e>>31;a=c^e;e=jl(g,h,a-e|0,(d^f)-((a>>>0>>0)+f|0)|0);b=b^d;c=b>>31;a=b>>31;b=e^a;d=b-a|0;H=(c^H)-((b>>>0>>0)+c|0)|0;return d}function vj(a,b,c){var d=0;a:{d=a+4|0;a=Yf(a,b);if((d|0)==(a|0)){break a}b=i[a+32>>2];a=i[a+28>>2];if((b-a|0)!=8){break a}b=j[a+4|0]|j[a+5|0]<<8|(j[a+6|0]<<16|j[a+7|0]<<24);i[c>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24);i[c+4>>2]=b}}function Tj(a,b,c){var d=0,e=0,f=0,g=0;e=F-16|0;F=e;b=b-a>>2;while(1){if(b){i[e+12>>2]=a;d=e+12|0;f=d;g=i[d>>2];d=b>>>1|0;i[f>>2]=g+(d<<2);f=(d^-1)+b|0;b=d;d=Uj(i[e+12>>2],c);b=d?f:b;a=d?i[e+12>>2]+4|0:a;continue}break}F=e+16|0;return a}function pg(a,b,c){var d=0,e=0,f=0;d=F-16|0;F=d;a=i[a+96>>2];i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;e=lk(12);f=e+12|0;a=Yk(e,a+o(b,12)|0,12);b=a;e=a+12|0;a=i[c>>2];if(a){i[c+4>>2]=a;Wk(a)}i[c+8>>2]=f;i[c+4>>2]=e;i[c>>2]=b;F=d+16|0;return 1}function Ma(a){a=a|0;var b=0,c=0;if(a){b=i[a+88>>2];i[a+88>>2]=0;if(b){c=i[b+8>>2];if(c){i[b+12>>2]=c;Wk(c)}Wk(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;Wk(b)}b=i[a+64>>2];i[a+64>>2]=0;if(b){c=i[b>>2];if(c){i[b+4>>2]=c;Wk(c)}Wk(b)}Wk(a)}}function dd(a){a=a|0;var b=0;i[a+24>>2]=1140;i[a>>2]=7764;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}i[a>>2]=1952;b=i[a+20>>2];i[a+20>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=1572;b=i[a+16>>2];i[a+16>>2]=0;if(b){Ma(b)}return a|0}function Fj(a,b){var c=0,d=0,e=0,f=0;c=F-16|0;F=c;d=i[a+12>>2];e=i[a+8>>2];f=i[b>>2];i[b>>2]=0;i[c+8>>2]=f;I[i[i[a>>2]+8>>2]](a,d-e>>2,c+8|0);b=i[c+8>>2];i[c+8>>2]=0;if(b){Ma(b)}F=c+16|0;return(i[a+12>>2]-i[a+8>>2]>>2)+ -1|0}function el(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=o(e,f);g=c&65535;h=a&65535;i=o(g,h);f=(i>>>16|0)+o(f,g)|0;e=(f&65535)+o(e,h)|0;a=(o(b,c)+j|0)+o(a,d)+(f>>>16)+(e>>>16)|0;b=i&65535|e<<16;H=a;return b}function ed(a){a=a|0;var b=0;i[a+24>>2]=1140;i[a>>2]=7764;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}i[a>>2]=1952;b=i[a+20>>2];i[a+20>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=1572;b=i[a+16>>2];i[a+16>>2]=0;if(b){Ma(b)}Wk(a)}function Pf(a){h[a+38>>1]=0;i[a>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;g[a+29|0]=0;g[a+30|0]=0;g[a+31|0]=0;g[a+32|0]=0;g[a+33|0]=0;g[a+34|0]=0;g[a+35|0]=0;g[a+36|0]=0;return a}function aa(a,b){a=a|0;b=b|0;var c=0,d=0;c=F-16|0;F=c;a=i[a+4>>2];a:{if((a|0)==-1){break a}g[c+15|0]=a;d=i[b+20>>2];if((d|0)>0?1:(d|0)>=0?l[b+16>>2]>0:0){break a}ba(b,i[b+4>>2],c+15|0,c+16|0)}F=c+16|0;return(a|0)!=-1|0}function Of(a,b){var c=0,d=0;d=i[a>>2];c=i[a+4>>2]-d|0;a:{if(c>>>0>>0){Wa(a,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+4>>2]=b+d}b=a+24|0;c=b;d=b;a=i[b+4>>2];b=i[b>>2]+1|0;if(b>>>0<1){a=a+1|0}i[d>>2]=b;i[c+4>>2]=a}function pk(a,b,c){var d=0,e=0,f=0;d=F-16|0;F=d;if(4294967279>=c>>>0){a:{if(c>>>0<=10){ek(a,c);e=a;break a}f=fk(c)+1|0;e=gk(f);hk(a,e);ik(a,f);dk(a,c)}Vj(e,b,c);g[d+15|0]=0;ck(c+e|0,d+15|0);F=d+16|0;return}nk();x()}function Hf(a){a=a|0;var b=0,c=0,d=0;b=i[a+8>>2];d=i[a+12>>2];if((b|0)==(d|0)){return 1}while(1){a:{c=i[b>>2];c=I[i[i[c>>2]+16>>2]](c,i[a+32>>2])|0;b=b+4|0;if((d|0)==(b|0)){break a}if(c){continue}}break}return c|0}function Mk(a,b,c){var d=0;d=i[a+16>>2];if(!d){i[a+36>>2]=1;i[a+24>>2]=c;i[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(i[a+24>>2]!=2){break a}i[a+24>>2]=c;return}g[a+54|0]=1;i[a+24>>2]=2;i[a+36>>2]=i[a+36>>2]+1}}function X(a,b){a=a|0;b=b|0;var c=0,d=0;i[b>>2]=2;c=i[b+8>>2];d=i[b+12>>2]-c|0;if(d>>>0<=4294967291){b=b+8|0;Of(b,d+4|0);c=i[b>>2]}b=c+d|0;a=i[a+4>>2];g[b|0]=a;g[b+1|0]=a>>>8;g[b+2|0]=a>>>16;g[b+3|0]=a>>>24}function Uf(a){var b=0,c=0,d=0,e=0,f=0,h=0;g[a+36|0]=0;d=i[a+20>>2];e=a;f=a;h=i[a+16>>2];a=i[a+32>>2]+7|0;if(a>>>0<7){b=1}c=b>>>3|0;a=b<<29|a>>>3;b=h+a|0;c=c+d|0;i[f+16>>2]=b;i[e+20>>2]=b>>>0>>0?c+1|0:c}function tc(a){a=a|0;var b=0;i[a>>2]=4396;b=i[a+96>>2];if(b){Wk(b)}b=i[a+84>>2];if(b){Wk(b)}b=i[a+72>>2];if(b){Wk(b)}b=i[a+60>>2];if(b){Wk(b)}i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}return a|0}function Qb(a){a=a|0;var b=0;i[a>>2]=2832;b=i[a+96>>2];if(b){Wk(b)}b=i[a+84>>2];if(b){Wk(b)}b=i[a+72>>2];if(b){Wk(b)}b=i[a+60>>2];if(b){Wk(b)}i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}return a|0}function rk(a,b,c){var d=0,e=0,f=0,h=0;e=F-16|0;F=e;d=_j(a);a:{if(d>>>0>=c>>>0){f=ak(a);h=f;d=c;if(c){_k(h,b,d)}g[e+15|0]=0;ck(c+f|0,e+15|0);jk(a,c);break a}f=a;a=Zj(a);sk(f,d,c-d|0,a,a,c,b)}F=e+16|0}function uc(a){a=a|0;var b=0;i[a>>2]=4396;b=i[a+96>>2];if(b){Wk(b)}b=i[a+84>>2];if(b){Wk(b)}b=i[a+72>>2];if(b){Wk(b)}b=i[a+60>>2];if(b){Wk(b)}i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}Wk(a)}function Rb(a){a=a|0;var b=0;i[a>>2]=2832;b=i[a+96>>2];if(b){Wk(b)}b=i[a+84>>2];if(b){Wk(b)}b=i[a+72>>2];if(b){Wk(b)}b=i[a+60>>2];if(b){Wk(b)}i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}Wk(a)}function uk(a,b){var c=0,d=0,e=0,f=0;e=F-16|0;F=e;if(b){d=_j(a);c=Zj(a);f=c+b|0;if(d-c>>>0>>0){wk(a,d,f-d|0,c,c)}d=c;c=ak(a);d=d+c|0;if(b){Zk(d,0,b)}jk(a,f);g[e+15|0]=0;ck(c+f|0,e+15|0)}F=e+16|0}function wj(a,b,c){var d=0,e=0;d=a+4|0;a=Yf(a,b);if((d|0)==(a|0)){return 0}b=i[a+32>>2];d=i[a+28>>2];if((b|0)!=(d|0)){tk(c,b-d|0);e=xk(c);c=i[a+28>>2];Yk(e,c,i[a+32>>2]-c|0)}return(b|0)!=(d|0)}function If(a,b){var c=0,d=0;a:{if((b|0)<0){break a}c=i[a+4>>2];if(i[c+12>>2]-i[c+8>>2]>>2<=(b|0)){break a}a=i[i[a+8>>2]+(i[i[a+20>>2]+(b<<2)>>2]<<2)>>2];d=I[i[i[a>>2]+32>>2]](a,b)|0}return d}function Ca(a){ya(a);i[a+64>>2]=0;i[a+68>>2]=0;i[a+88>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;g[a+77|0]=0;g[a+78|0]=0;g[a+79|0]=0;g[a+80|0]=0;g[a+81|0]=0;g[a+82|0]=0;g[a+83|0]=0;g[a+84|0]=0;return a}function Ba(a,b,c,d){var e=0;i[a>>2]=b;e=i[b+20>>2];i[a+8>>2]=i[b+16>>2];i[a+12>>2]=e;e=i[b+24>>2];b=i[b+28>>2];i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=c;i[a+44>>2]=d;i[a+16>>2]=e;i[a+20>>2]=b}function ya(a){i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+28>>2]=9;g[a+24|0]=1;i[a+56>>2]=-1;i[a+60>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;return a}function mg(a,b,c,d){var e=0,f=0;e=F+ -64|0;F=e;f=Pf(e+8|0);Qf(f,b,c);md(e+48|0,a,f,d);i[a+24>>2]=i[e+48>>2];qk(a+28|0,e+48|4);a=a+24|0;if(g[e+63|0]<=-1){Wk(i[e+52>>2])}F=e- -64|0;return a}function Yj(a,b){var c=0,d=0;c=j[a|0];d=j[b|0];a:{if(!c|(c|0)!=(d|0)){break a}while(1){d=j[b+1|0];c=j[a+1|0];if(!c){break a}b=b+1|0;a=a+1|0;if((c|0)==(d|0)){continue}break}}return c-d|0}function Ej(a,b){var c=0,d=0;c=i[a+8>>2];a=i[a+12>>2];if((c|0)!=(a|0)){d=a-c>>2;a=0;while(1){if(i[i[(a<<2)+c>>2]+60>>2]==(b|0)){return a}a=a+1|0;if(a>>>0>>0){continue}break}}return-1}function cj(a,b){a=a|0;b=b|0;var c=0,d=0;Ij(a,b);a:{if((b|0)<0){break a}c=i[a+88>>2];d=i[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){_k(b,d,c)}i[a+88>>2]=b+c}}function Xk(a){var b=0,c=0;b=i[3154];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?(c|0)>=1:0){break a}if(a>>>0>tl()<<16>>>0){if(!(D(a|0)|0)){break a}}i[3154]=a;return b}i[3155]=48;return-1}function Jf(a,b){var c=0;if(b){Jf(a,i[b>>2]);Jf(a,i[b+4>>2]);c=b+28|0;a=i[c>>2];i[c>>2]=0;if(a){Jf(a+12|0,i[a+16>>2]);Kf(a,i[a+4>>2]);Wk(a)}if(g[b+27|0]<=-1){Wk(i[b+16>>2])}Wk(b)}}function Sf(a,b,c){var d=0;a:{if(b){b=0;if(!Tf(1,c,a)){break a}}g[a+36|0]=1;i[a+32>>2]=0;b=i[a+16>>2];c=b+i[a>>2]|0;i[a+24>>2]=c;d=a;a=i[a+8>>2];i[d+28>>2]=c+(a-b|0);b=1}return b}function tj(a,b,c){var d=0;a:{d=a+4|0;a=Yf(a,b);if((d|0)==(a|0)){break a}b=i[a+32>>2];a=i[a+28>>2];if((b-a|0)!=4){break a}i[c>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24)}}function rb(a,b){a=a|0;b=b|0;var c=0,d=0;d=i[a+16>>2];c=0;a:{if(i[a+20>>2]-d>>2<=(b|0)){break a}b=i[(b<<2)+d>>2];c=0;if((b|0)<0){break a}c=bb(i[i[a+36>>2]+(b<<2)>>2])}return c|0}function ok(a,b){var c=0,d=0,e=0;d=F-16|0;F=d;c=a;a:{if(!$j(b)){i[c+8>>2]=i[b+8>>2];e=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=e;break a}pk(a,i[b>>2],i[b+4>>2])}F=d+16|0;return a}function kg(a,b,c){var d=0;d=F+ -64|0;F=d;Qf(Pf(d+8|0),b,c);nd(d+48|0);i[a+24>>2]=i[d+48>>2];qk(a+28|0,d+48|4);a=a+24|0;if(g[d+63|0]<=-1){Wk(i[d+52>>2])}F=d- -64|0;return a}function kf(a){a=a|0;var b=0;i[a+8>>2]=8680;i[a>>2]=9812;b=i[a+56>>2];if(b){i[a+60>>2]=b;Wk(b)}i[a+8>>2]=8932;b=i[a+44>>2];if(b){Wk(b)}b=i[a+32>>2];if(b){Wk(b)}return a|0}function df(a){a=a|0;var b=0;i[a+8>>2]=9684;i[a>>2]=9520;b=i[a+56>>2];if(b){i[a+60>>2]=b;Wk(b)}i[a+8>>2]=9500;b=i[a+44>>2];if(b){Wk(b)}b=i[a+32>>2];if(b){Wk(b)}return a|0}function Lj(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}while(1){d=j[a|0];e=j[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}f=d-e|0}return f}function $a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=i[a+8>>2];if(g[d+24|0]<1){break a}if(!Ea(d,i[b+4>>2]-i[b>>2]>>2)){break a}return I[i[i[a>>2]+32>>2]](a,b,c)|0}return 0}function yk(a){var b=0,c=0,d=0,e=0;b=F-32|0;F=b;c=b+8|0;d=b+32|0;e=b+21|0;a:{if((d|0)==(e|0)){break a}}zk(c,e,d);c=F-16|0;F=c;kk(a,b+21|0,i[b+8>>2]);F=c+16|0;F=b+32|0}function lf(a){a=a|0;var b=0;i[a+8>>2]=8680;i[a>>2]=9812;b=i[a+56>>2];if(b){i[a+60>>2]=b;Wk(b)}i[a+8>>2]=8932;b=i[a+44>>2];if(b){Wk(b)}b=i[a+32>>2];if(b){Wk(b)}Wk(a)}function ef(a){a=a|0;var b=0;i[a+8>>2]=9684;i[a>>2]=9520;b=i[a+56>>2];if(b){i[a+60>>2]=b;Wk(b)}i[a+8>>2]=9500;b=i[a+44>>2];if(b){Wk(b)}b=i[a+32>>2];if(b){Wk(b)}Wk(a)}function wa(a,b){var c=0;c=lk(40);i[c>>2]=-1;Mf(c+8|0);I[i[i[a>>2]+16>>2]](a,c);a=i[b+88>>2];i[b+88>>2]=c;if(a){b=i[a+8>>2];if(b){i[a+12>>2]=b;Wk(b)}Wk(a)}return 1}function W(a,b){a=a|0;b=b|0;var c=0;b=i[b+88>>2];if(!(!b|i[b>>2]!=2)){c=a;a=i[b+8>>2];i[c+4>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24);c=1}return c|0}function Bb(a){a=a|0;var b=0;i[a>>2]=1952;b=i[a+20>>2];i[a+20>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=1572;b=i[a+16>>2];i[a+16>>2]=0;if(b){Ma(b)}return a|0}function kc(a){a=a|0;a:{if(!i[a- -64>>2]|!i[a+68>>2]|(!i[a+44>>2]|!i[a+48>>2])){break a}if(!i[a+52>>2]|!i[a+56>>2]){break a}return i[a+92>>2]!=-1|0}return 0}function Qa(a,b){a=a|0;b=b|0;a:{if(!(I[i[i[a>>2]+36>>2]](a,b)|0)){break a}if(!(I[i[i[a>>2]+40>>2]](a,b)|0)){break a}return I[i[i[a>>2]+44>>2]](a)|0}return 0}function Bf(a){i[a+40>>2]=0;i[a>>2]=10228;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;h[a+36>>1]=0}function vk(a,b){var c=0,d=0;c=F-16|0;F=c;a:{if($j(a)){d=i[a>>2];g[c+15|0]=0;ck(b+d|0,c+15|0);dk(a,b);break a}g[c+14|0]=0;ck(a+b|0,c+14|0);ek(a,b)}F=c+16|0}function hb(a,b){var c=0;Ha(a);i[a+36>>2]=0;i[a+40>>2]=0;i[a>>2]=1736;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;c=i[b>>2];i[b>>2]=0;i[a+60>>2]=c}function Oc(a){a=a|0;a:{if(!i[a+48>>2]|!i[a+52>>2]|(!i[a+28>>2]|!i[a+32>>2])){break a}if(!i[a+36>>2]|!i[a+40>>2]){break a}return i[a+76>>2]!=-1|0}return 0}function me(a){a=a|0;var b=0;i[a>>2]=8680;b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}i[a>>2]=8932;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}return a|0}function cf(a){a=a|0;var b=0;i[a>>2]=9684;b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}i[a>>2]=9500;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}return a|0}function Cb(a){a=a|0;var b=0;i[a>>2]=1952;b=i[a+20>>2];i[a+20>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=1572;b=i[a+16>>2];i[a+16>>2]=0;if(b){Ma(b)}Wk(a)}function Zf(a,b){var c=0;b=Yf(a,b);a:{if((b|0)==(a+4|0)){break a}a=b+28|0;if(g[b+39|0]<=-1){a=i[a>>2]}a=Oj(a);if((a|0)==-1){break a}c=(a|0)!=0}return c}function zk(a,b,c){var d=0,e=0;e=a;d=c-b|0;a:{if(!((1-(l[3032]>1)|0)>(d|0)?(d|0)<=9:0)){g[b|0]=49;i[a>>2]=b+1;a=0;break a}i[a>>2]=c;a=61}i[e+4>>2]=a}function jf(a){a=a|0;var b=0;i[a>>2]=9684;b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}i[a>>2]=9500;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}Wk(a)}function Ne(a){a=a|0;var b=0;i[a>>2]=8680;b=i[a+48>>2];if(b){i[a+52>>2]=b;Wk(b)}i[a>>2]=8932;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}Wk(a)}function pj(a,b){var c=0,d=0;a:{d=i[b>>2];if(!d){break a}c=i[a+28>>2];if(c>>>0>2]){i[b>>2]=0;i[c>>2]=d;i[a+28>>2]=c+4;break a}qj(a+24|0,b)}}function Tk(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(Jk(a,i[b+8>>2],f)){Pk(b,c,d,e);return}a=i[a+8>>2];I[i[i[a>>2]+20>>2]](a,b,c,d,e,f)}function lg(a,b,c){var d=0;d=F-16|0;F=d;md(d,a,b,c);i[a+24>>2]=i[d>>2];qk(a+28|0,d|4);a=a+24|0;if(g[d+15|0]<=-1){Wk(i[d+4>>2])}F=d+16|0;return a}function $c(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(j[i[a+4>>2]+36|0]>=2){b=0;if(!(I[i[i[a>>2]+52>>2]](a)|0)){break a}}b=wa(a+24|0,i[a+16>>2])}return b|0}function Lf(a,b,c){var d=0,e=0,f=0;if((b|0)>0){while(1){e=d<<2;f=i[e+a>>2];i[c+e>>2]=0-(f&1)^f>>>1;d=d+1|0;if((d|0)!=(b|0)){continue}break}}}function Cj(a){var b=0,c=0;b=i[a+20>>2];a:{if((i[a+24>>2]-b|0)<1){break a}b=i[b>>2];if((b|0)==-1){break a}c=i[i[a+8>>2]+(b<<2)>>2]}return c}function Bj(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=o(b,12)+a|0;a=i[b+20>>2];if((i[b+24>>2]-a|0)<1){break a}c=i[a>>2]}return c}function za(a,b,c,d,e,f,h){i[a>>2]=0;i[a+56>>2]=b;i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=f;i[a+44>>2]=h;g[a+32|0]=e;i[a+28>>2]=d;g[a+24|0]=c}function gd(a){i[a>>2]=0;i[a+4>>2]=0;g[a+5|0]=0;g[a+6|0]=0;g[a+7|0]=0;g[a+8|0]=0;g[a+9|0]=0;g[a+10|0]=0;g[a+11|0]=0;g[a+12|0]=0;return a}function Zi(a){a=a|0;var b=0;i[a>>2]=10908;b=i[a+96>>2];if(b){i[a+100>>2]=b;Wk(b)}b=i[a+84>>2];if(b){i[a+88>>2]=b;Wk(b)}_i(a);return a|0}function Ic(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(j[i[a+4>>2]+36|0]>=2){b=0;if(!ca(a+24|0,bb(a),c)){break a}}b=wa(a+24|0,i[a+16>>2])}return b|0}function jg(a){var b=0;b=F-16|0;F=b;nd(b);i[a+24>>2]=i[b>>2];qk(a+28|0,b|4);a=a+24|0;if(g[b+15|0]<=-1){Wk(i[b+4>>2])}F=b+16|0;return a}function hg(a){var b=0;Wf(a);b=a+16|0;i[b>>2]=0;i[b+4>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+12>>2]=b;i[a+32>>2]=0;i[a+36>>2]=0;return a}function Gc(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(!tb(a,b,c)){break a}a=i[a+8>>2];if(j[a+24|0]!=3){break a}return i[a+28>>2]==9|0}return 0}function $i(a){a=a|0;var b=0;i[a>>2]=10908;b=i[a+96>>2];if(b){i[a+100>>2]=b;Wk(b)}b=i[a+84>>2];if(b){i[a+88>>2]=b;Wk(b)}_i(a);Wk(a)}function Kf(a,b){if(b){Kf(a,i[b>>2]);Kf(a,i[b+4>>2]);a=i[b+28>>2];if(a){i[b+32>>2]=a;Wk(a)}if(g[b+27|0]<=-1){Wk(i[b+16>>2])}Wk(b)}}function Ha(a){i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=1360;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0}function wc(a){a=a|0;var b=0;i[a>>2]=4632;b=i[a+76>>2];if(b){Wk(b)}i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}return a|0}function _b(a){a=a|0;var b=0;i[a>>2]=3080;b=i[a+76>>2];if(b){Wk(b)}i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}return a|0}function Kh(){var a=0;a=lk(28);i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;return a|0}function mk(a,b){var c=0,d=0,e=0,f=0;c=$k(b);d=lk(c+13|0);i[d+8>>2]=0;i[d+4>>2]=c;i[d>>2]=c;e=a,f=Yk(d+12|0,b,c+1|0),i[e>>2]=f}function Oa(a){a=a|0;var b=0;i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;Wk(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;Wk(b)}return a|0}function sd(a,b){if(b){sd(a,i[b>>2]);sd(a,i[b+4>>2]);if(g[b+39|0]<=-1){Wk(i[b+28>>2])}if(g[b+27|0]<=-1){Wk(i[b+16>>2])}Wk(b)}}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Jk(a,i[b+8>>2],0)){Mk(b,c,d);return}a=i[a+8>>2];I[i[i[a>>2]+28>>2]](a,b,c,d)}function xc(a){a=a|0;var b=0;i[a>>2]=4632;b=i[a+76>>2];if(b){Wk(b)}i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}Wk(a)}function Yi(a){Aj(a);i[a+84>>2]=0;i[a+88>>2]=0;i[a>>2]=10908;i[a+92>>2]=0;i[a+96>>2]=0;i[a+100>>2]=0;i[a+104>>2]=0;return a}function $b(a){a=a|0;var b=0;i[a>>2]=3080;b=i[a+76>>2];if(b){Wk(b)}i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}Wk(a)}function lk(a){var b=0;a=a?a:1;a:{while(1){b=Vk(a);if(b){break a}b=i[3156];if(b){I[b|0]();continue}break}C();x()}return b}function uh(){var a=0;a=lk(24);i[a+4>>2]=0;i[a+8>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a>>2]=a+4;i[a+12>>2]=a+16;return a|0}function la(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(i[c>>2]==i[c+4>>2]){ma(a,b,i[d+80>>2],d);return 1}na(a,b,c,d);return 1}function kh(){var a=0;a=lk(24);i[a+8>>2]=0;i[a+12>>2]=0;i[a+4>>2]=-1;i[a>>2]=1140;i[a+16>>2]=0;i[a+20>>2]=0;return a|0}function _c(a,b,c){a=a|0;b=b|0;c=c|0;if(tb(a,b,c)){a=i[i[i[i[b+4>>2]+8>>2]+(c<<2)>>2]+28>>2]==9}else{a=0}return a|0}function Zc(a){sb(a);i[a+32>>2]=0;i[a+36>>2]=0;i[a+28>>2]=-1;i[a+24>>2]=1140;i[a>>2]=7764;i[a+40>>2]=0;i[a+44>>2]=0}function Za(a,b,c){a=a|0;b=b|0;c=c|0;i[a+4>>2]=b;b=i[i[i[b+4>>2]+8>>2]+(c<<2)>>2];i[a+12>>2]=c;i[a+8>>2]=b;return 1}function bc(a){a=a|0;var b=0;if(!(!i[a+60>>2]|!i[a+44>>2]|(!i[a+48>>2]|!i[a+52>>2]))){b=i[a+56>>2]!=0}return b|0}function ig(a){var b=0;b=F-32|0;F=b;ld(b+8|0,a);a=i[b+24>>2];if(g[b+23|0]<=-1){Wk(i[b+12>>2])}F=b+32|0;return a}function Jk(a,b,c){if(!c){return i[a+4>>2]==i[b+4>>2]}if((a|0)==(b|0)){return 1}return!Yj(i[a+4>>2],i[b+4>>2])}function Mf(a){i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;return a}function Fk(a){var b=0,c=0;a:{b=i[a>>2]+ -12|0;c=b+8|0;a=i[c>>2]+ -1|0;i[c>>2]=a;if((a|0)>-1){break a}Wk(b)}}function va(a){var b=0;b=A(8)|0;i[b>>2]=12228;i[b>>2]=12272;mk(b+4|0,a);i[b>>2]=12320;B(b|0,12352,13);x()}function si(a){a=a|0;if(a){if(g[a+39|0]<=-1){Wk(i[a+28>>2])}ti(a+12|0,i[a+16>>2]);sd(a,i[a+4>>2]);Wk(a)}}function bd(a){a=a|0;var b=0,c=0;c=a+24|0;b=bb(a);if(!b){b=i[a+8>>2]}return qa(c,b,i[i[a+4>>2]+32>>2])|0}function hc(a){a=a|0;var b=0;i[a>>2]=3316;i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}return a|0}function Ac(a){a=a|0;var b=0;i[a>>2]=4856;i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}return a|0}function af(a){a=a|0;var b=0;i[a>>2]=9500;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}return a|0}function Oe(a){a=a|0;var b=0;i[a>>2]=8932;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}return a|0}function Lb(a){a=a|0;var b=0;if(!(!i[a+52>>2]|(!i[a+44>>2]|!i[a+48>>2]))){b=i[a+56>>2]!=0}return b|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;if(Jk(a,i[b+8>>2],f)){Pk(b,c,d,e)}} - - - -function ic(a){a=a|0;var b=0;i[a>>2]=3316;i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}Wk(a)}function cc(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|!b|j[b+24|0]!=3)){i[a+60>>2]=b;c=1}return c|0}function Bc(a){a=a|0;var b=0;i[a>>2]=4856;i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}Wk(a)}function lc(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a- -64>>2]=b;c=1}return c|0}function bf(a){a=a|0;var b=0;i[a>>2]=9500;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}Wk(a)}function Pe(a){a=a|0;var b=0;i[a>>2]=8932;b=i[a+36>>2];if(b){Wk(b)}b=i[a+24>>2];if(b){Wk(b)}Wk(a)}function Pc(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a+48>>2]=b;c=1}return c|0}function Rf(a,b,c,d){h[a+38>>1]=d;i[a>>2]=b;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=c;i[a+12>>2]=0}function fk(a){var b=0;if(a>>>0>=11){b=a+16&-16;a=b+ -1|0;a=(a|0)==11?b:a}else{a=10}return a}function fb(a){a=a|0;var b=0;i[a>>2]=1572;b=i[a+16>>2];i[a+16>>2]=0;if(b){Ma(b)}return a|0}function Ib(a){a=a|0;var b=0;i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}return a|0}function ra(a){a=a|0;var b=0;i[a>>2]=1140;b=i[a+8>>2];if(b){i[a+12>>2]=b;Wk(b)}return a|0}function kl(a){var b=0,c=0;while(1){c=b;if(a){a=a-1&a;b=b+1|0;continue}break}return c}function gb(a){a=a|0;var b=0;i[a>>2]=1572;b=i[a+16>>2];i[a+16>>2]=0;if(b){Ma(b)}Wk(a)}function Jb(a){a=a|0;var b=0;i[a>>2]=2776;b=i[a+32>>2];if(b){i[a+36>>2]=b;Wk(b)}Wk(a)}function sa(a){a=a|0;var b=0;i[a>>2]=1140;b=i[a+8>>2];if(b){i[a+12>>2]=b;Wk(b)}Wk(a)}function ni(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 Ng(b,c,d,e,f)|0}function ub(a,b){a=a|0;b=b|0;return I[i[i[a>>2]+48>>2]](a,i[b+4>>2]-i[b>>2]>>2)|0}function ti(a,b){if(b){ti(a,i[b>>2]);ti(a,i[b+4>>2]);sd(b+20|0,i[b+24>>2]);Wk(b)}}function Qf(a,b,c){i[a+16>>2]=0;i[a+20>>2]=0;i[a>>2]=b;i[a+8>>2]=c;i[a+12>>2]=0}function Ya(a){i[a+12>>2]=-1;i[a+16>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=1572}function $g(a){a=a|0;var b=0;if(a){b=i[a+8>>2];if(b){i[a+12>>2]=b;Wk(b)}Wk(a)}}function Nk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Jk(a,i[b+8>>2],0)){Mk(b,c,d)}}function Sd(a){a=a|0;if(i[a+44>>2]){return I[i[i[a>>2]+48>>2]](a)|0}return 0}function zh(){var a=0;a=lk(12);i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;return a|0}function xh(a){a=a|0;var b=0;b=a+4|0;if(g[a+15|0]<=-1){b=i[b>>2]}return b|0}function tk(a,b){var c=0;c=Zj(a);if(c>>>0>>0){uk(a,b-c|0);return}vk(a,b)}function ae(a,b){a=a|0;b=b|0;a=i[a+48>>2];return I[i[i[a>>2]+16>>2]](a,b)|0}function Ud(a,b){a=a|0;b=b|0;a=i[a+48>>2];return I[i[i[a>>2]+20>>2]](a,b)|0}function Ch(a){a=a|0;var b=0;if(a){b=i[a>>2];if(b){i[a+4>>2]=b;Wk(b)}Wk(a)}}function $d(a,b){a=a|0;b=b|0;a=i[a+48>>2];return I[i[i[a>>2]+12>>2]](a,b)|0}function ll(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function _j(a){if($j(a)){a=(i[a+8>>2]&2147483647)+ -1|0}else{a=10}return a}function Y(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Z(a,b,c,i[d+80>>2],d)|0}function Xj(a,b){var c=0,d=0;c=F-16|0;F=c;d=Uj(a,b);F=c+16|0;return d?b:a}function Vf(a){a=a+ -1|0;if(a>>>0<=10){return i[(a<<2)+10596>>2]}return-1}function yf(a,b){a=a|0;b=b|0;g[b+84|0]=1;i[b+72>>2]=i[b+68>>2];return 1}function vh(a){a=a|0;if(a){Jf(a+12|0,i[a+16>>2]);Kf(a,i[a+4>>2]);Wk(a)}}function pc(a,b){a=a|0;b=b|0;if(b>>>0<=1){i[a+28>>2]=b}return b>>>0<2|0}function Ia(a,b,c){a=a|0;b=b|0;c=c|0;i[a+32>>2]=c;i[a+28>>2]=b;return 1}function Qk(a,b,c){if(!(i[a+28>>2]==1|i[a+4>>2]!=(b|0))){i[a+28>>2]=c}}function Rj(a,b,c){var d=0;d=F-16|0;F=d;a=Tj(a,b,c);F=d+16|0;return a}function ph(){var a=0;a=lk(8);i[a+4>>2]=-1;i[a>>2]=1032;return a|0}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;return i[i[b+8>>2]+(c<<2)>>2]}function yh(a){a=a|0;if(a){if(g[a+15|0]<=-1){Wk(i[a+4>>2])}Wk(a)}}function _d(a){a=a|0;a=i[a+48>>2];return I[i[i[a>>2]+36>>2]](a)|0}function Xd(a){a=a|0;a=i[a+48>>2];return I[i[i[a>>2]+28>>2]](a)|0}function Wd(a){a=a|0;a=i[a+48>>2];return I[i[i[a>>2]+24>>2]](a)|0}function Vh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return mg(a,b,c,d)|0}function cd(a,b){a=a|0;b=b|0;return oa(a+24|0,bb(a),i[a+8>>2])|0}function mi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Lg(b,c,d)|0}function li(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Hg(b,c,d)|0}function ki(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Eg(b,c,d)|0}function ji(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Cg(b,c,d)|0}function ii(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ag(b,c,d)|0}function hi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jg(b,c,d)|0}function gi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return zg(b,c,d)|0}function fi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return xg(b,c,d)|0}function ei(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wg(b,c,d)|0}function di(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return vg(b,c,d)|0}function bi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return pg(b,c,d)|0}function _a(a,b){a=a|0;b=b|0;i[a+12>>2]=-1;i[a+8>>2]=b;return 1}function Yh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return og(b,c,d)|0}function Uh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kg(a,b,c)|0}function Jc(a,b){a=a|0;b=b|0;return $(a+24|0,bb(a),i[a+8>>2])|0}function lh(a,b){a=a|0;b=b|0;return I[i[i[a>>2]+12>>2]](a,b)|0}function gk(a){if(4294967295>>0){va(11830);x()}return lk(a)}function dl(a,b){a=a|0;b=b|0;if(!i[3281]){i[3282]=b;i[3281]=a}}function ad(a,b){a=a|0;b=b|0;return I[i[i[a>>2]+56>>2]](a,b)|0}function Zg(){var a=0;a=lk(40);i[a>>2]=-1;Mf(a+8|0);return a|0}function mh(a,b){a=a|0;b=b|0;return p(m[i[a+8>>2]+(b<<2)>>2])}function Wf(a){i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=a+4;return a}function Ah(a,b){a=a|0;b=b|0;return p(m[i[a>>2]+(b<<2)>>2])}function th(a){a=a|0;return(i[a+100>>2]-i[a+96>>2]|0)/12|0}function Zj(a){if($j(a)){return i[a+4>>2]}return j[a+11|0]}function Ra(a,b){a=a|0;b=b|0;return i[i[a+4>>2]+(b<<2)>>2]}function ml(a){if(a){return 31-r(a+ -1^a)|0}return 32} - - - -function Jh(a,b){a=a|0;b=b|0;return i[i[a>>2]+(b<<2)>>2]}function Ih(a,b){a=a|0;b=b|0;return k[i[a>>2]+(b<<1)>>1]}function Gh(a,b){a=a|0;b=b|0;return h[i[a>>2]+(b<<1)>>1]}function tb(a,b,c){a=a|0;b=b|0;c=c|0;return Za(a,b,c)|0}function ri(a,b,c){a=a|0;b=b|0;c=c|0;return lg(a,b,c)|0}function Rh(a,b,c){a=a|0;b=b|0;c=c|0;return fg(a,b,c)|0}function Ph(a,b,c){a=a|0;b=b|0;c=c|0;return eg(a,b,c)|0}function Hc(a,b,c){a=a|0;b=b|0;c=c|0;return yb(a,b,c)|0}function Ek(a){a=a|0;i[a>>2]=12272;Fk(a+4|0);return a|0}function Nh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cg(b,c,d)}function xk(a){if(Zj(a)>>>0<=0){Sj();x()}return ak(a)}function ci(a,b,c){a=a|0;b=b|0;c=c|0;return qg(b,c)|0}function ai(a,b,c){a=a|0;b=b|0;c=c|0;return Ug(b,c)|0}function _h(a,b,c){a=a|0;b=b|0;c=c|0;return Dj(b,c)|0}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;return ng(b,c)|0}function Wh(a,b,c){a=a|0;b=b|0;c=c|0;return Bj(b,c)|0}function Mh(a,b,c){a=a|0;b=b|0;c=c|0;return bg(b,c)|0}function Lh(a,b,c){a=a|0;b=b|0;c=c|0;return ag(b,c)|0}function qk(a,b){if((a|0)!=(b|0)){rk(a,ak(b),Zj(b))}}function Aj(a){i[a>>2]=11304;Zk(a+4|0,0,80);return a}function rh(a){a=a|0;return i[a+12>>2]-i[a+8>>2]>>2}function qi(a,b,c){a=a|0;b=b|0;c=c|0;return jg(a)|0}function Oh(a,b,c){a=a|0;b=b|0;c=c|0;return+dg(b,c)}function Sa(a){a=a|0;return i[a+8>>2]-i[a+4>>2]>>2}function Fh(a,b){a=a|0;b=b|0;return j[i[a>>2]+b|0]}function Dh(a,b){a=a|0;b=b|0;return g[i[a>>2]+b|0]}function oh(a){a=a|0;if(a){I[i[i[a>>2]+4>>2]](a)}}function jk(a,b){if($j(a)){dk(a,b);return}ek(a,b)}function ce(a,b){a=a|0;b=b|0;i[a+4>>2]=b;return 1}function ak(a){if($j(a)){return i[a>>2]}return a}function Hh(a){a=a|0;return i[a+4>>2]-i[a>>2]>>1}function Bh(a){a=a|0;return i[a+4>>2]-i[a>>2]>>2}function Eh(a){a=a|0;return i[a+4>>2]-i[a>>2]|0}function sb(a){Ya(a);i[a+20>>2]=0;i[a>>2]=1952}function Yg(a,b,c){a=a|0;b=b|0;c=c|0;Qf(a,b,c)}function Rd(a){Bf(a);i[a+44>>2]=0;i[a>>2]=8136}function ua(a,b){a=a|0;b=b|0;return g[b+24|0]}function cl(a){a=a|0;a=F-a&-16;F=a;return a|0}function ab(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Qh(a,b){a=a|0;b=b|0;return i[b+8>>2]}function Db(a){a=a|0;return g[i[a+8>>2]+24|0]}function $h(a,b){a=a|0;b=b|0;return i[b+4>>2]}function Vc(a){a=a|0;i[a>>2]=6748;return a|0}function Mc(a){a=a|0;i[a>>2]=5744;return a|0}function pi(a,b){a=a|0;b=b|0;return ig(b)|0}function jl(a,b,c,d){a=gl(a,b,c,d);return a}function il(a,b,c,d){a=fl(a,b,c,d);return a}function hl(a,b,c,d){a=el(a,b,c,d);return a}function _f(a){i[a>>2]=1065353216;return a}function nh(a){a=a|0;return p(m[a+20>>2])}function ik(a,b){i[a+8>>2]=b|-2147483648}function Wc(a){a=a|0;i[a>>2]=6748;Wk(a)}function Uj(a,b){return l[a>>2]>2]}function Nc(a){a=a|0;i[a>>2]=5744;Wk(a)}function jh(a){a=a|0;return i[a+60>>2]}function ih(a){a=a|0;return i[a+48>>2]}function hh(a){a=a|0;return i[a+40>>2]}function eh(a){a=a|0;return i[a+56>>2]}function dh(a){a=a|0;return i[a+88>>2]}function ch(a){a=a|0;return i[a+80>>2]}function Ta(a){a=a|0;return i[a+28>>2]}function wh(a){a=a|0;return!i[a>>2]|0}function ha(a,b){a=a|0;b=b|0;return 2}function gh(a){a=a|0;return j[a+32|0]}function ga(a,b){a=a|0;b=b|0;return 6}function fh(a){a=a|0;return g[a+24|0]}function Va(a,b){a=a|0;b=b|0;return 1}function Ua(a,b){a=a|0;b=b|0;return 0}function Nb(a,b){a=a|0;b=b|0;return-1}function Kb(a){a=a|0;return i[a+4>>2]}function Hk(a){a=a|0;return i[a+4>>2]}function Be(a){a=a|0;return i[a+8>>2]}function $j(a){return j[a+11|0]>>>7|0}function oi(a,b){a=a|0;b=b|0;od(a,b)}function _g(a){a=a|0;return i[a>>2]}function Vj(a,b,c){if(c){Yk(a,b,c)}}function Qj(a,b,c){return Rj(a,b,c)}function Nj(a){return a+ -48>>>0<10}function $f(a,b,c){m[a>>2]=p(c|0)/b}function sh(){return Yi(lk(108))|0}function qh(){return Aj(lk(84))|0}function bh(){return Ca(lk(96))|0}function ah(){return ya(lk(64))|0}function Xg(){return Pf(lk(40))|0}function Wg(a){a=a|0;if(a){Wk(a)}}function Th(){return hg(lk(40))|0}function Dk(a){a=a|0;return 12205}function Ik(a){a=a|0;Ek(a);Wk(a)}function da(a){a=a|0;return a|0}function Wj(a,b){return Xj(a,b)}function ck(a,b){g[a|0]=j[b|0]}function Me(a){a=a|0;Wk(Ke(a))}function Kj(a){a=a|0;Wk(_i(a))}function Je(a){a=a|0;Wk(Ie(a))}function Gk(a){a=a|0;Wk(Ek(a))}function ta(a){a=a|0;return 1}function jc(a){a=a|0;return 6}function fa(a){a=a|0;return 2}function ac(a){a=a|0;return 5}function Sb(a){a=a|0;return 4}function Qc(a){a=a|0;return 3}function Mb(a){a=a|0;return 0}function ek(a,b){g[a+11|0]=b}function dk(a,b){i[a+4>>2]=b}function nk(){va(12104);x()}function Ak(){va(12168);x()}function hk(a,b){i[a>>2]=b}function ea(a){a=a|0;Wk(a)}function Vg(){return 10724}function Mj(){return 12620}function bl(a){a=a|0;F=a}function al(){return F|0}function Pa(a){a=a|0;x()}function Hi(){return 12}function Gi(){return 11}function Fi(){return 10}function zi(){return 4}function yi(){return 3}function xi(){return 2}function wi(){return 1}function vi(){return 0}function ui(){return-1}function Li(){return-5}function Ki(){return-4}function Ji(){return-3}function Ii(){return-2}function Ei(){return 9}function Di(){return 8}function Ci(){return 7}function Bk(){Sj();x()}function Bi(){return 6}function Ai(){return 5}function Sj(){C();x()}function bk(a){a=a|0}function Ck(){x()}function V(){} +function oc(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;if(!a){return 1}i=F[c+16>>2];g=F[c+20>>2];o=F[c+12>>2];a:{if((g|0)>(o|0)?1:(g|0)>=(o|0)?i>>>0>=I[c+8>>2]:0){break a}o=G[i+F[c>>2]|0];i=i+1|0;g=i>>>0<1?g+1|0:g;F[c+16>>2]=i;F[c+20>>2]=g;b:{switch(o|0){case 0:m=a;g=b;l=ba+-64|0;ba=l;F[l+56>>2]=0;F[l+48>>2]=0;F[l+52>>2]=0;F[l+40>>2]=0;F[l+44>>2]=0;F[l+32>>2]=0;F[l+36>>2]=0;F[l+24>>2]=0;F[l+28>>2]=0;F[l+16>>2]=0;F[l+20>>2]=0;F[l+8>>2]=0;F[l+12>>2]=0;c:{if(!nc(l+8|0,c)){break c}if(!Pd(l+8|0,c)|(F[l+20>>2]?0:m)){break c}hc(c,0,0);d:{if(!m){break d}s=F[l+36>>2];q=F[l+48>>2];t=F[l+24>>2];if((g|0)<=0){n=F[l+56>>2];while(1){e:{if(n>>>0>16383){break e}a=F[l+52>>2];while(1){if((a|0)<1){break e}a=a-1|0;F[l+52>>2]=a;n=G[a+q|0]|n<<8;F[l+56>>2]=n;if(n>>>0<16384){continue}break}}a=n&4095;b=(F[(a<<2)+t>>2]<<3)+s|0;n=(L(F[b>>2],n>>>12|0)+a|0)-F[b+4>>2]|0;F[l+56>>2]=n;f=f+g|0;if(m>>>0>f>>>0){continue}break}break d}f:{if(G[c+36|0]){x=g<<2;o=F[l+56>>2];while(1){g:{if(o>>>0>16383){break g}a=F[l+52>>2];while(1){if((a|0)<1){break g}a=a-1|0;F[l+52>>2]=a;o=G[a+q|0]|o<<8;F[l+56>>2]=o;if(o>>>0<16384){continue}break}}a=o&4095;r=F[(a<<2)+t>>2];b=(r<<3)+s|0;o=(L(F[b>>2],o>>>12|0)+a|0)-F[b+4>>2]|0;F[l+56>>2]=o;if(r>>>0>32){break f}h:{if(!r){ra((e<<2)+d|0,0,x);p=e+g|0;break h}i=r&-2;y=r&1;p=e+g|0;b=F[c+32>>2];u=F[c+28>>2];v=F[c+24>>2];while(1){n=0;a=b;f=0;j=i;if((r|0)!=1){while(1){k=v+(a>>>3|0)|0;i:{if(k>>>0>=u>>>0){k=0;break i}k=G[k|0];b=a+1|0;F[c+32>>2]=b;k=(k>>>(a&7)&1)<>>3|0)|0;j:{if(k>>>0>=u>>>0){k=0;break j}k=G[k|0];b=a+1|0;F[c+32>>2]=b;k=(k>>>(a&7)&1)<<(n|1);a=b}n=n+2|0;f=f|k;j=j-2|0;if(j){continue}break}}k=(e<<2)+d|0;if(y){j=v+(a>>>3|0)|0;w=0;k:{if(j>>>0>=u>>>0){break k}j=G[j|0];b=a+1|0;F[c+32>>2]=b;w=(j>>>(a&7)&1)<>2]=f;e=e+1|0;if((p|0)!=(e|0)){continue}break}}e=p;h=g+h|0;if(m>>>0>h>>>0){continue}break}break d}n=F[l+56>>2];l:{if(n>>>0>16383){break l}a=F[l+52>>2];while(1){if((a|0)<1){break l}a=a-1|0;F[l+52>>2]=a;n=G[a+q|0]|n<<8;F[l+56>>2]=n;if(n>>>0<16384){continue}break}}a=n&4095;b=(F[(a<<2)+t>>2]<<3)+s|0;F[l+56>>2]=(L(F[b>>2],n>>>12|0)+a|0)-F[b+4>>2]}n=0;break c}D[c+36|0]=0;d=F[c+20>>2];b=c;a=0;c=F[b+32>>2]+7|0;a=c>>>0<7?1:a;j=a<<29|c>>>3;c=j+F[b+16>>2]|0;a=(a>>>3|0)+d|0;F[b+16>>2]=c;F[b+20>>2]=c>>>0>>0?a+1|0:a;n=1}a=F[l+36>>2];if(a){F[l+40>>2]=a;oa(a)}a=F[l+24>>2];if(a){F[l+28>>2]=a;oa(a)}a=F[l+8>>2];if(a){F[l+12>>2]=a;oa(a)}ba=l- -64|0;return n;case 1:break b;default:break a}}b=0;f=F[c+16>>2];g=F[c+20>>2];e=F[c+12>>2];m:{if((e|0)<(g|0)?1:(g|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break m}e=G[f+F[c>>2]|0];f=f+1|0;g=f>>>0<1?g+1|0:g;F[c+16>>2]=f;F[c+20>>2]=g;n:{switch(e-1|0){case 4:g=ba+-64|0;ba=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;o:{if(!nc(g+8|0,c)|(F[g+20>>2]?0:a)){break o}if(!Pd(g+8|0,c)){break o}if(!a){b=1;break o}c=F[g+36>>2];j=F[g+48>>2];f=F[g+24>>2];k=F[g+56>>2];while(1){p:{if(k>>>0>16383){break p}b=F[g+52>>2];while(1){if((b|0)<1){break p}b=b-1|0;F[g+52>>2]=b;k=G[b+j|0]|k<<8;F[g+56>>2]=k;if(k>>>0<16384){continue}break}}b=k&4095;m=F[f+(b<<2)>>2];e=c+(m<<3)|0;k=(L(F[e>>2],k>>>12|0)+b|0)-F[e+4>>2]|0;F[g+56>>2]=k;F[(h<<2)+d>>2]=m;b=1;h=h+1|0;if((h|0)!=(a|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;oa(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;oa(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;oa(a)}ba=g- -64|0;break m;case 8:p=a;j=0;e=ba+-64|0;ba=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;q:{r:{if(!H[c+38>>1]){break r}if(!Wa(1,e+12|0,c)){break r}h=F[e+12>>2];b=F[e>>2];a=F[e+4>>2]-b>>2;s:{if(h>>>0>a>>>0){za(e,h-a|0);h=F[e+12>>2];break s}if(a>>>0<=h>>>0){break s}F[e+4>>2]=b+(h<<2)}if(!h){k=1;break r}r=F[c+8>>2];n=F[c+12>>2];while(1){b=F[c+16>>2];g=F[c+20>>2];a=g;if((a|0)>(n|0)?1:(a|0)>=(n|0)?b>>>0>=r>>>0:0){break r}s=F[c>>2];o=G[s+b|0];b=b+1|0;g=b>>>0<1?g+1|0:g;a=c;l=b;F[a+16>>2]=b;a=g;F[c+20>>2]=a;f=o>>>2|0;i=0;t:{u:{v:{w:{g=o&3;switch(g|0){case 0:break u;case 3:break w;default:break v}}a=f+j|0;b=0;if(a>>>0>=h>>>0){break q}ra(F[e>>2]+(j<<2)|0,0,(o&252)+4|0);j=a;break t}while(1){b=0;if((a|0)>(n|0)?1:(a|0)>=(n|0)?l>>>0>=r>>>0:0){break q}h=G[l+s|0];l=l+1|0;a=l>>>0<1?a+1|0:a;b=c;F[b+16>>2]=l;F[b+20>>2]=a;f=h<<(i<<3|6)|f;i=i+1|0;if((g|0)!=(i|0)){continue}break}}F[F[e>>2]+(j<<2)>>2]=f}j=j+1|0;h=F[e+12>>2];if(j>>>0>>0){continue}break}k=e+16|0;g=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;j=b>>2;x:{if(j>>>0<=8191){za(k,8192-j|0);break x}if((b|0)==32768){break x}F[e+20>>2]=a+32768}y:{a=e+28|0;j=F[a>>2];b=F[e+32>>2]-j>>3;if(b>>>0>>0){db(a,h-b|0);j=F[a>>2];break y}if(b>>>0>h>>>0){F[e+32>>2]=(h<<3)+j}if(h){break y}b=0;break q}a=F[g>>2];f=0;F[j+4>>2]=0;F[j>>2]=a;b=F[g>>2];a=1;z:{if(b>>>0>8192){break z}i=0;A:{while(1){a=b;B:{if(a>>>0<=f>>>0){break B}n=a+(f^-1)|0;l=F[k>>2];b=a-f&7;if(b){while(1){F[l+(f<<2)>>2]=i;f=f+1|0;b=b-1|0;if(b){continue}break}}if(n>>>0<=6){break B}while(1){b=l+(f<<2)|0;F[b>>2]=i;F[b+28>>2]=i;F[b+24>>2]=i;F[b+20>>2]=i;F[b+16>>2]=i;F[b+12>>2]=i;F[b+8>>2]=i;F[b+4>>2]=i;f=f+8|0;if((a|0)!=(f|0)){continue}break}}i=i+1|0;if((h|0)!=(i|0)){b=g+(i<<2)|0;f=F[b>>2];l=(i<<3)+j|0;F[l+4>>2]=a;F[l>>2]=f;f=a;b=a+F[b>>2]|0;if(b>>>0>8192){break A}continue}break}b=a}a=h>>>0>i>>>0}b=!a&(b|0)==8192;break q}b=k}C:{if(!b|(F[e+12>>2]?0:p)){break C}if(!Ra(1,e+56|0,c)){break C}a=F[c+8>>2];f=F[c+16>>2];b=f;g=a-b|0;i=F[e+60>>2];h=F[c+20>>2];b=F[c+12>>2]-(h+(a>>>0>>0)|0)|0;a=F[e+56>>2];if((i|0)==(b|0)&g>>>0>>0|b>>>0>>0){break C}g=h+i|0;b=c;k=a+f|0;F[b+16>>2]=k;F[b+20>>2]=a>>>0>k>>>0?g+1|0:g;if((a|0)<1){break C}c=f+F[c>>2]|0;F[e+40>>2]=c;b=e;D:{E:{F:{G:{H:{f=a-1|0;g=c+f|0;switch((G[g|0]>>>6|0)-1|0){case 2:break F;case 1:break G;case 0:break H;default:break E}}if((a|0)<2){break C}f=a-2|0;F[e+44>>2]=f;a=(a+c|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break D}if((a|0)<3){break C}f=a-3|0;F[e+44>>2]=f;a=(a+c|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break D}f=a-4|0;F[e+44>>2]=f;a=(a+c|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0];break D}F[e+44>>2]=f;a=G[g|0]&63}h=a+32768|0;F[b+48>>2]=h;if(h>>>0>8388607){break C}if(!p){m=1;break C}a=F[e+28>>2];k=0;b=F[e+16>>2];while(1){I:{if(h>>>0>32767){break I}while(1){if((f|0)<1){break I}f=f-1|0;F[e+44>>2]=f;h=G[c+f|0]|h<<8;F[e+48>>2]=h;if(h>>>0<32768){continue}break}}g=h&8191;j=F[b+(g<<2)>>2];m=a+(j<<3)|0;h=(L(F[m>>2],h>>>13|0)+g|0)-F[m+4>>2]|0;F[e+48>>2]=h;F[(k<<2)+d>>2]=j;m=1;k=k+1|0;if((p|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;oa(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;oa(a)}a=F[e>>2];if(a){F[e+4>>2]=a;oa(a)}ba=e- -64|0;b=m;break m;case 9:p=a;j=0;e=ba+-64|0;ba=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;J:{K:{if(!H[c+38>>1]){break K}if(!Wa(1,e+12|0,c)){break K}h=F[e+12>>2];b=F[e>>2];a=F[e+4>>2]-b>>2;L:{if(h>>>0>a>>>0){za(e,h-a|0);h=F[e+12>>2];break L}if(a>>>0<=h>>>0){break L}F[e+4>>2]=b+(h<<2)}if(!h){k=1;break K}o=F[c+8>>2];n=F[c+12>>2];while(1){f=F[c+16>>2];a=F[c+20>>2];if((a|0)>(n|0)?1:(a|0)>=(n|0)?f>>>0>=o>>>0:0){break K}r=F[c>>2];g=G[r+f|0];f=f+1|0;a=f>>>0<1?a+1|0:a;b=c;l=f;F[b+16>>2]=f;F[b+20>>2]=a;f=g>>>2|0;i=0;M:{N:{O:{P:{s=g&3;switch(s|0){case 0:break N;case 3:break P;default:break O}}a=f+j|0;q=0;if(a>>>0>=h>>>0){break J}ra(F[e>>2]+(j<<2)|0,0,(g&252)+4|0);j=a;break M}while(1){q=0;if((a|0)>(n|0)?1:(a|0)>=(n|0)?l>>>0>=o>>>0:0){break J}h=G[l+r|0];g=a;a=l+1|0;g=a>>>0<1?g+1|0:g;l=a;F[c+16>>2]=a;a=g;F[b+20>>2]=a;f=h<<(i<<3|6)|f;i=i+1|0;if((s|0)!=(i|0)){continue}break}}F[F[e>>2]+(j<<2)>>2]=f}j=j+1|0;h=F[e+12>>2];if(j>>>0>>0){continue}break}k=e+16|0;g=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;j=b>>2;Q:{if(j>>>0<=32767){za(k,32768-j|0);break Q}if((b|0)==131072){break Q}F[e+20>>2]=a+131072}R:{a=e+28|0;j=F[a>>2];b=F[e+32>>2]-j>>3;if(b>>>0>>0){db(a,h-b|0);j=F[a>>2];break R}if(b>>>0>h>>>0){F[e+32>>2]=(h<<3)+j}if(h){break R}q=0;break J}a=F[g>>2];f=0;F[j+4>>2]=0;F[j>>2]=a;b=F[g>>2];a=1;S:{if(b>>>0>32768){break S}i=0;T:{while(1){a=b;U:{if(a>>>0<=f>>>0){break U}n=a+(f^-1)|0;l=F[k>>2];b=a-f&7;if(b){while(1){F[l+(f<<2)>>2]=i;f=f+1|0;b=b-1|0;if(b){continue}break}}if(n>>>0<=6){break U}while(1){b=l+(f<<2)|0;F[b>>2]=i;F[b+28>>2]=i;F[b+24>>2]=i;F[b+20>>2]=i;F[b+16>>2]=i;F[b+12>>2]=i;F[b+8>>2]=i;F[b+4>>2]=i;f=f+8|0;if((a|0)!=(f|0)){continue}break}}i=i+1|0;if((h|0)!=(i|0)){b=g+(i<<2)|0;f=F[b>>2];l=(i<<3)+j|0;F[l+4>>2]=a;F[l>>2]=f;f=a;b=a+F[b>>2]|0;if(b>>>0>32768){break T}continue}break}b=a}a=h>>>0>i>>>0}q=!a&(b|0)==32768;break J}q=k}V:{if(!q|(F[e+12>>2]?0:p)){break V}if(!Ra(1,e+56|0,c)){break V}a=F[c+8>>2];f=F[c+16>>2];b=f;g=a-b|0;i=F[e+60>>2];h=F[c+20>>2];a=F[c+12>>2]-(h+(a>>>0>>0)|0)|0;b=F[e+56>>2];if((i|0)==(a|0)&g>>>0>>0|a>>>0>>0){break V}a=h+i|0;k=b+f|0;F[c+16>>2]=k;F[c+20>>2]=b>>>0>k>>>0?a+1|0:a;if((b|0)<1){break V}c=f+F[c>>2]|0;F[e+40>>2]=c;a=e;W:{X:{Y:{Z:{_:{f=b-1|0;g=c+f|0;switch((G[g|0]>>>6|0)-1|0){case 2:break Y;case 1:break Z;case 0:break _;default:break X}}if((b|0)<2){break V}f=b-2|0;F[e+44>>2]=f;b=(b+c|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break W}if((b|0)<3){break V}f=b-3|0;F[e+44>>2]=f;b=(b+c|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break W}f=b-4|0;F[e+44>>2]=f;b=(b+c|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0];break W}F[e+44>>2]=f;b=G[g|0]&63}h=b+131072|0;F[a+48>>2]=h;if(h>>>0>33554431){break V}if(!p){m=1;break V}a=F[e+28>>2];k=0;b=F[e+16>>2];while(1){$:{if(h>>>0>131071){break $}while(1){if((f|0)<1){break $}f=f-1|0;F[e+44>>2]=f;h=G[c+f|0]|h<<8;F[e+48>>2]=h;if(h>>>0<131072){continue}break}}g=h&32767;j=F[b+(g<<2)>>2];m=a+(j<<3)|0;h=(L(F[m>>2],h>>>15|0)+g|0)-F[m+4>>2]|0;F[e+48>>2]=h;F[(k<<2)+d>>2]=j;m=1;k=k+1|0;if((p|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;oa(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;oa(a)}a=F[e>>2];if(a){F[e+4>>2]=a;oa(a)}ba=e- -64|0;b=m;break m;case 10:p=a;j=0;e=ba+-64|0;ba=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;aa:{ba:{if(!H[c+38>>1]){break ba}if(!Wa(1,e+12|0,c)){break ba}h=F[e+12>>2];b=F[e>>2];a=F[e+4>>2]-b>>2;ca:{if(h>>>0>a>>>0){za(e,h-a|0);h=F[e+12>>2];break ca}if(a>>>0<=h>>>0){break ca}F[e+4>>2]=b+(h<<2)}if(!h){k=1;break ba}r=F[c+8>>2];n=F[c+12>>2];while(1){b=F[c+16>>2];g=F[c+20>>2];a=g;if((a|0)>(n|0)?1:(a|0)>=(n|0)?b>>>0>=r>>>0:0){break ba}s=F[c>>2];o=G[s+b|0];b=b+1|0;g=b>>>0<1?g+1|0:g;a=c;l=b;F[a+16>>2]=b;a=g;F[c+20>>2]=a;f=o>>>2|0;i=0;da:{ea:{fa:{ga:{q=o&3;switch(q|0){case 0:break ea;case 3:break ga;default:break fa}}a=f+j|0;b=0;if(a>>>0>=h>>>0){break aa}ra(F[e>>2]+(j<<2)|0,0,(o&252)+4|0);j=a;break da}while(1){b=0;if((a|0)>(n|0)?1:(a|0)>=(n|0)?l>>>0>=r>>>0:0){break aa}h=G[l+s|0];g=a;a=l+1|0;g=a>>>0<1?g+1|0:g;b=c;l=a;F[b+16>>2]=a;a=g;F[b+20>>2]=a;f=h<<(i<<3|6)|f;i=i+1|0;if((q|0)!=(i|0)){continue}break}}F[F[e>>2]+(j<<2)>>2]=f}j=j+1|0;h=F[e+12>>2];if(j>>>0>>0){continue}break}k=e+16|0;g=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;j=b>>2;ha:{if(j>>>0<=65535){za(k,65536-j|0);break ha}if((b|0)==262144){break ha}F[e+20>>2]=a+262144}ia:{a=e+28|0;j=F[a>>2];b=F[e+32>>2]-j>>3;if(b>>>0>>0){db(a,h-b|0);j=F[a>>2];break ia}if(b>>>0>h>>>0){F[e+32>>2]=(h<<3)+j}if(h){break ia}b=0;break aa}a=F[g>>2];f=0;F[j+4>>2]=0;F[j>>2]=a;b=F[g>>2];a=1;ja:{if(b>>>0>65536){break ja}i=0;ka:{while(1){a=b;la:{if(a>>>0<=f>>>0){break la}n=a+(f^-1)|0;l=F[k>>2];b=a-f&7;if(b){while(1){F[l+(f<<2)>>2]=i;f=f+1|0;b=b-1|0;if(b){continue}break}}if(n>>>0<=6){break la}while(1){b=l+(f<<2)|0;F[b>>2]=i;F[b+28>>2]=i;F[b+24>>2]=i;F[b+20>>2]=i;F[b+16>>2]=i;F[b+12>>2]=i;F[b+8>>2]=i;F[b+4>>2]=i;f=f+8|0;if((a|0)!=(f|0)){continue}break}}i=i+1|0;if((h|0)!=(i|0)){b=g+(i<<2)|0;f=F[b>>2];l=(i<<3)+j|0;F[l+4>>2]=a;F[l>>2]=f;f=a;b=a+F[b>>2]|0;if(b>>>0>65536){break ka}continue}break}b=a}a=h>>>0>i>>>0}b=!a&(b|0)==65536;break aa}b=k}ma:{if(!b|(F[e+12>>2]?0:p)){break ma}if(!Ra(1,e+56|0,c)){break ma}a=F[c+8>>2];f=F[c+16>>2];b=f;g=a-b|0;i=F[e+60>>2];h=F[c+20>>2];b=F[c+12>>2]-(h+(a>>>0>>0)|0)|0;a=F[e+56>>2];if((i|0)==(b|0)&g>>>0>>0|b>>>0>>0){break ma}g=h+i|0;b=c;k=a+f|0;F[b+16>>2]=k;F[b+20>>2]=a>>>0>k>>>0?g+1|0:g;if((a|0)<1){break ma}c=f+F[c>>2]|0;F[e+40>>2]=c;b=e;na:{oa:{pa:{qa:{ra:{f=a-1|0;g=c+f|0;switch((G[g|0]>>>6|0)-1|0){case 2:break pa;case 1:break qa;case 0:break ra;default:break oa}}if((a|0)<2){break ma}f=a-2|0;F[e+44>>2]=f;a=(a+c|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break na}if((a|0)<3){break ma}f=a-3|0;F[e+44>>2]=f;a=(a+c|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break na}f=a-4|0;F[e+44>>2]=f;a=(a+c|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0];break na}F[e+44>>2]=f;a=G[g|0]&63}h=a+262144|0;F[b+48>>2]=h;if(h>>>0>67108863){break ma}if(!p){m=1;break ma}a=F[e+28>>2];k=0;b=F[e+16>>2];while(1){sa:{if(h>>>0>262143){break sa}while(1){if((f|0)<1){break sa}f=f-1|0;F[e+44>>2]=f;h=G[c+f|0]|h<<8;F[e+48>>2]=h;if(h>>>0<262144){continue}break}}g=h&65535;j=F[b+(g<<2)>>2];m=a+(j<<3)|0;h=(L(F[m>>2],h>>>16|0)+g|0)-F[m+4>>2]|0;F[e+48>>2]=h;F[(k<<2)+d>>2]=j;m=1;k=k+1|0;if((p|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;oa(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;oa(a)}a=F[e>>2];if(a){F[e+4>>2]=a;oa(a)}ba=e- -64|0;b=m;break m;case 11:p=a;j=0;e=ba+-64|0;ba=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;ta:{ua:{if(!H[c+38>>1]){break ua}if(!Wa(1,e+12|0,c)){break ua}h=F[e+12>>2];b=F[e>>2];a=F[e+4>>2]-b>>2;va:{if(h>>>0>a>>>0){za(e,h-a|0);h=F[e+12>>2];break va}if(a>>>0<=h>>>0){break va}F[e+4>>2]=b+(h<<2)}if(!h){k=1;break ua}r=F[c+8>>2];n=F[c+12>>2];while(1){b=F[c+16>>2];g=F[c+20>>2];a=g;if((a|0)>(n|0)?1:(a|0)>=(n|0)?b>>>0>=r>>>0:0){break ua}s=F[c>>2];o=G[s+b|0];b=b+1|0;g=b>>>0<1?g+1|0:g;a=c;l=b;F[a+16>>2]=b;a=g;F[c+20>>2]=a;f=o>>>2|0;i=0;wa:{xa:{ya:{za:{g=o&3;switch(g|0){case 0:break xa;case 3:break za;default:break ya}}a=f+j|0;b=0;if(a>>>0>=h>>>0){break ta}ra(F[e>>2]+(j<<2)|0,0,(o&252)+4|0);j=a;break wa}while(1){b=0;if((a|0)>(n|0)?1:(a|0)>=(n|0)?l>>>0>=r>>>0:0){break ta}h=G[l+s|0];l=l+1|0;a=l>>>0<1?a+1|0:a;b=c;F[b+16>>2]=l;F[b+20>>2]=a;f=h<<(i<<3|6)|f;i=i+1|0;if((g|0)!=(i|0)){continue}break}}F[F[e>>2]+(j<<2)>>2]=f}j=j+1|0;h=F[e+12>>2];if(j>>>0>>0){continue}break}k=e+16|0;g=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;j=b>>2;Aa:{if(j>>>0<=262143){za(k,262144-j|0);break Aa}if((b|0)==1048576){break Aa}F[e+20>>2]=a- -1048576}Ba:{a=e+28|0;j=F[a>>2];b=F[e+32>>2]-j>>3;if(b>>>0>>0){db(a,h-b|0);j=F[a>>2];break Ba}if(b>>>0>h>>>0){F[e+32>>2]=(h<<3)+j}if(h){break Ba}b=0;break ta}a=F[g>>2];f=0;F[j+4>>2]=0;F[j>>2]=a;b=F[g>>2];a=1;Ca:{if(b>>>0>262144){break Ca}i=0;Da:{while(1){a=b;Ea:{if(a>>>0<=f>>>0){break Ea}n=a+(f^-1)|0;l=F[k>>2];b=a-f&7;if(b){while(1){F[l+(f<<2)>>2]=i;f=f+1|0;b=b-1|0;if(b){continue}break}}if(n>>>0<=6){break Ea}while(1){b=l+(f<<2)|0;F[b>>2]=i;F[b+28>>2]=i;F[b+24>>2]=i;F[b+20>>2]=i;F[b+16>>2]=i;F[b+12>>2]=i;F[b+8>>2]=i;F[b+4>>2]=i;f=f+8|0;if((a|0)!=(f|0)){continue}break}}i=i+1|0;if((h|0)!=(i|0)){b=g+(i<<2)|0;f=F[b>>2];l=(i<<3)+j|0;F[l+4>>2]=a;F[l>>2]=f;f=a;b=a+F[b>>2]|0;if(b>>>0>262144){break Da}continue}break}b=a}a=h>>>0>i>>>0}b=!a&(b|0)==262144;break ta}b=k}Fa:{if(!b|(F[e+12>>2]?0:p)){break Fa}if(!Ra(1,e+56|0,c)){break Fa}a=F[c+8>>2];f=F[c+16>>2];b=f;g=a-b|0;i=F[e+60>>2];h=F[c+20>>2];b=F[c+12>>2]-(h+(a>>>0>>0)|0)|0;a=F[e+56>>2];if((i|0)==(b|0)&g>>>0>>0|b>>>0>>0){break Fa}g=h+i|0;b=c;k=a+f|0;F[b+16>>2]=k;F[b+20>>2]=a>>>0>k>>>0?g+1|0:g;if((a|0)<1){break Fa}c=f+F[c>>2]|0;F[e+40>>2]=c;b=e;Ga:{Ha:{Ia:{Ja:{Ka:{f=a-1|0;g=c+f|0;switch((G[g|0]>>>6|0)-1|0){case 2:break Ia;case 1:break Ja;case 0:break Ka;default:break Ha}}if((a|0)<2){break Fa}f=a-2|0;F[e+44>>2]=f;a=(a+c|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break Ga}if((a|0)<3){break Fa}f=a-3|0;F[e+44>>2]=f;a=(a+c|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break Ga}f=a-4|0;F[e+44>>2]=f;a=(a+c|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0];break Ga}F[e+44>>2]=f;a=G[g|0]&63}h=a- -1048576|0;F[b+48>>2]=h;if(h>>>0>268435455){break Fa}if(!p){m=1;break Fa}a=F[e+28>>2];k=0;b=F[e+16>>2];while(1){La:{if(h>>>0>1048575){break La}while(1){if((f|0)<1){break La}f=f-1|0;F[e+44>>2]=f;h=G[c+f|0]|h<<8;F[e+48>>2]=h;if(h>>>0<1048576){continue}break}}g=h&262143;j=F[b+(g<<2)>>2];m=a+(j<<3)|0;h=(L(F[m>>2],h>>>18|0)+g|0)-F[m+4>>2]|0;F[e+48>>2]=h;F[(k<<2)+d>>2]=j;m=1;k=k+1|0;if((p|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;oa(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;oa(a)}a=F[e>>2];if(a){F[e+4>>2]=a;oa(a)}ba=e- -64|0;b=m;break m;case 12:p=a;j=0;e=ba+-64|0;ba=e;F[e+48>>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;F[e>>2]=0;F[e+4>>2]=0;Ma:{Na:{if(!H[c+38>>1]){break Na}if(!Wa(1,e+12|0,c)){break Na}h=F[e+12>>2];b=F[e>>2];a=F[e+4>>2]-b>>2;Oa:{if(h>>>0>a>>>0){za(e,h-a|0);h=F[e+12>>2];break Oa}if(a>>>0<=h>>>0){break Oa}F[e+4>>2]=b+(h<<2)}if(!h){k=1;break Na}o=F[c+8>>2];n=F[c+12>>2];while(1){f=F[c+16>>2];a=F[c+20>>2];if((a|0)>(n|0)?1:(a|0)>=(n|0)?f>>>0>=o>>>0:0){break Na}r=F[c>>2];g=G[r+f|0];f=f+1|0;a=f>>>0<1?a+1|0:a;b=c;l=f;F[b+16>>2]=f;F[b+20>>2]=a;f=g>>>2|0;i=0;Pa:{Qa:{Ra:{Sa:{s=g&3;switch(s|0){case 0:break Qa;case 3:break Sa;default:break Ra}}a=f+j|0;q=0;if(a>>>0>=h>>>0){break Ma}ra(F[e>>2]+(j<<2)|0,0,(g&252)+4|0);j=a;break Pa}while(1){q=0;if((a|0)>(n|0)?1:(a|0)>=(n|0)?l>>>0>=o>>>0:0){break Ma}h=G[l+r|0];g=a;a=l+1|0;g=a>>>0<1?g+1|0:g;l=a;F[c+16>>2]=a;a=g;F[b+20>>2]=a;f=h<<(i<<3|6)|f;i=i+1|0;if((s|0)!=(i|0)){continue}break}}F[F[e>>2]+(j<<2)>>2]=f}j=j+1|0;h=F[e+12>>2];if(j>>>0>>0){continue}break}k=e+16|0;g=F[e>>2];a=F[e+16>>2];b=F[e+20>>2]-a|0;j=b>>2;Ta:{if(j>>>0<=524287){za(k,524288-j|0);break Ta}if((b|0)==2097152){break Ta}F[e+20>>2]=a+2097152}Ua:{a=e+28|0;j=F[a>>2];b=F[e+32>>2]-j>>3;if(b>>>0>>0){db(a,h-b|0);j=F[a>>2];break Ua}if(b>>>0>h>>>0){F[e+32>>2]=(h<<3)+j}if(h){break Ua}q=0;break Ma}a=F[g>>2];f=0;F[j+4>>2]=0;F[j>>2]=a;b=F[g>>2];a=1;Va:{if(b>>>0>524288){break Va}i=0;Wa:{while(1){a=b;Xa:{if(a>>>0<=f>>>0){break Xa}n=a+(f^-1)|0;l=F[k>>2];b=a-f&7;if(b){while(1){F[l+(f<<2)>>2]=i;f=f+1|0;b=b-1|0;if(b){continue}break}}if(n>>>0<=6){break Xa}while(1){b=l+(f<<2)|0;F[b>>2]=i;F[b+28>>2]=i;F[b+24>>2]=i;F[b+20>>2]=i;F[b+16>>2]=i;F[b+12>>2]=i;F[b+8>>2]=i;F[b+4>>2]=i;f=f+8|0;if((a|0)!=(f|0)){continue}break}}i=i+1|0;if((h|0)!=(i|0)){b=g+(i<<2)|0;f=F[b>>2];l=(i<<3)+j|0;F[l+4>>2]=a;F[l>>2]=f;f=a;b=a+F[b>>2]|0;if(b>>>0>524288){break Wa}continue}break}b=a}a=h>>>0>i>>>0}q=!a&(b|0)==524288;break Ma}q=k}Ya:{if(!q|(F[e+12>>2]?0:p)){break Ya}if(!Ra(1,e+56|0,c)){break Ya}a=F[c+8>>2];f=F[c+16>>2];b=f;g=a-b|0;i=F[e+60>>2];h=F[c+20>>2];a=F[c+12>>2]-(h+(a>>>0>>0)|0)|0;b=F[e+56>>2];if((i|0)==(a|0)&g>>>0>>0|a>>>0>>0){break Ya}a=h+i|0;k=b+f|0;F[c+16>>2]=k;F[c+20>>2]=b>>>0>k>>>0?a+1|0:a;if((b|0)<1){break Ya}c=f+F[c>>2]|0;F[e+40>>2]=c;a=e;Za:{_a:{$a:{ab:{bb:{f=b-1|0;g=c+f|0;switch((G[g|0]>>>6|0)-1|0){case 2:break $a;case 1:break ab;case 0:break bb;default:break _a}}if((b|0)<2){break Ya}f=b-2|0;F[e+44>>2]=f;b=(b+c|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break Za}if((b|0)<3){break Ya}f=b-3|0;F[e+44>>2]=f;b=(b+c|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break Za}f=b-4|0;F[e+44>>2]=f;b=(b+c|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0];break Za}F[e+44>>2]=f;b=G[g|0]&63}h=b+2097152|0;F[a+48>>2]=h;if(h>>>0>536870911){break Ya}if(!p){m=1;break Ya}a=F[e+28>>2];k=0;b=F[e+16>>2];while(1){cb:{if(h>>>0>2097151){break cb}while(1){if((f|0)<1){break cb}f=f-1|0;F[e+44>>2]=f;h=G[c+f|0]|h<<8;F[e+48>>2]=h;if(h>>>0<2097152){continue}break}}g=h&524287;j=F[b+(g<<2)>>2];m=a+(j<<3)|0;h=(L(F[m>>2],h>>>19|0)+g|0)-F[m+4>>2]|0;F[e+48>>2]=h;F[(k<<2)+d>>2]=j;m=1;k=k+1|0;if((p|0)!=(k|0)){continue}break}}a=F[e+28>>2];if(a){F[e+32>>2]=a;oa(a)}a=F[e+16>>2];if(a){F[e+20>>2]=a;oa(a)}a=F[e>>2];if(a){F[e+4>>2]=a;oa(a)}ba=e- -64|0;b=m;break m;case 17:b=Od(a,c,d);break m;case 0:case 1:case 2:case 3:case 5:case 6:case 7:j=0;m=ba+-64|0;ba=m;F[m+48>>2]=0;F[m+40>>2]=0;F[m+44>>2]=0;F[m+32>>2]=0;F[m+36>>2]=0;F[m+24>>2]=0;F[m+28>>2]=0;F[m+16>>2]=0;F[m+20>>2]=0;F[m+8>>2]=0;F[m+12>>2]=0;F[m>>2]=0;F[m+4>>2]=0;db:{if(!nc(m,c)|(F[m+12>>2]?0:a)){break db}if(!Ra(1,m+56|0,c)){break db}b=F[c+8>>2];e=F[c+16>>2];f=b-e|0;i=F[m+60>>2];h=F[c+20>>2];g=F[c+12>>2]-(h+(b>>>0>>0)|0)|0;b=F[m+56>>2];if((i|0)==(g|0)&f>>>0>>0|g>>>0>>0){break db}g=h+i|0;p=b+e|0;F[c+16>>2]=p;F[c+20>>2]=b>>>0>p>>>0?g+1|0:g;if((b|0)<1){break db}g=e+F[c>>2]|0;F[m+40>>2]=g;c=m;eb:{fb:{gb:{hb:{ib:{f=b-1|0;k=g+f|0;switch((G[k|0]>>>6|0)-1|0){case 2:break gb;case 1:break hb;case 0:break ib;default:break fb}}if((b|0)<2){break db}f=b-2|0;F[m+44>>2]=f;b=(b+g|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break eb}if((b|0)<3){break db}f=b-3|0;F[m+44>>2]=f;b=(b+g|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break eb}f=b-4|0;F[m+44>>2]=f;b=(b+g|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0];break eb}F[m+44>>2]=f;b=G[k|0]&63}k=b+16384|0;F[c+48>>2]=k;if(k>>>0>4194303){break db}if(!a){j=1;break db}b=F[m+28>>2];c=F[m+16>>2];while(1){jb:{if(k>>>0>16383){break jb}while(1){if((f|0)<1){break jb}f=f-1|0;F[m+44>>2]=f;k=G[f+g|0]|k<<8;F[m+48>>2]=k;if(k>>>0<16384){continue}break}}j=k&4095;e=F[c+(j<<2)>>2];p=b+(e<<3)|0;k=(L(F[p>>2],k>>>12|0)+j|0)-F[p+4>>2]|0;F[m+48>>2]=k;F[(l<<2)+d>>2]=e;j=1;l=l+1|0;if((l|0)!=(a|0)){continue}break}}a=F[m+28>>2];if(a){F[m+32>>2]=a;oa(a)}a=F[m+16>>2];if(a){F[m+20>>2]=a;oa(a)}a=F[m>>2];if(a){F[m+4>>2]=a;oa(a)}ba=m- -64|0;b=j;break m;case 13:case 14:case 15:case 16:break n;default:break m}}b=Od(a,c,d)}j=b}return j}function hh(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;p=ba+-64|0;ba=p;F[a+132>>2]=0;if(F[a+148>>2]){d=F[a+144>>2];if(d){while(1){h=F[d>>2];oa(d);d=h;if(h){continue}break}}d=0;F[a+144>>2]=0;h=F[a+140>>2];a:{if(!h){break a}c=h&3;if(h-1>>>0>=3){f=h&-4;while(1){h=d<<2;F[h+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(h|4)>>2]=0;F[F[a+136>>2]+(h|8)>>2]=0;F[F[a+136>>2]+(h|12)>>2]=0;d=d+4|0;f=f-4|0;if(f){continue}break}}if(!c){break a}while(1){F[F[a+136>>2]+(d<<2)>>2]=0;d=d+1|0;c=c-1|0;if(c){continue}break}}F[a+148>>2]=0}b:{c:{if(!Fa(1,p+60|0,F[F[a+4>>2]+32>>2])){break c}F[a+156>>2]=F[p+60>>2];if(!Fa(1,p+56|0,F[F[a+4>>2]+32>>2])){break c}c=F[p+56>>2];if(c>>>0>1431655765|I[a+156>>2]>L(c,3)>>>0){break c}h=F[F[a+4>>2]+32>>2];g=F[h+16>>2];i=F[h+12>>2];d=F[h+20>>2];if((i|0)<(d|0)?1:(i|0)<=(d|0)?I[h+8>>2]<=g>>>0:0){break c}r=G[g+F[h>>2]|0];g=g+1|0;d=g>>>0<1?d+1|0:d;F[h+16>>2]=g;F[h+20>>2]=d;if(!Fa(1,p+52|0,h)){break c}m=F[p+52>>2];if(m>>>0>c>>>0|c>>>0>m+((m>>>0)/3|0)>>>0){break c}if(!Fa(1,p+48|0,F[F[a+4>>2]+32>>2])){break c}d=F[p+48>>2];if(d>>>0>m>>>0){break c}F[a+28>>2]=F[a+24>>2];i=pa(88);ad(i);h=F[a+8>>2];F[a+8>>2]=i;if(h){Va(h);if(!F[a+8>>2]){break c}}F[a+164>>2]=F[a+160>>2];Mb(a+160|0,c);F[a+176>>2]=F[a+172>>2];Mb(a+172|0,c);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];t=a+216|0;Ed(t);Dd(t,r);if(!_c(F[a+8>>2],c,d+F[a+156>>2]|0)){break c}h=F[a+156>>2];D[p+8|0]=1;Ga(a+120|0,d+h|0,p+8|0);if((Cd(a,F[F[a+4>>2]+32>>2])|0)==-1){break c}g=a+232|0;Bd(g,a);A=a,B=da[F[F[a>>2]+36>>2]](a)|0,F[A+380>>2]=B;F[a+372>>2]=r;F[a+384>>2]=d+F[a+156>>2];r=p+8|0;E[r+38>>1]=0;F[r>>2]=0;d=r;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;i=d;f=ba-16|0;ba=f;d:{if(!Oa(g+80|0,g)){break d}if(!yd(g)){break d}d=F[g+4>>2];F[i>>2]=F[g>>2];F[i+4>>2]=d;d=F[g+36>>2];F[i+32>>2]=F[g+32>>2];F[i+36>>2]=d;d=F[g+28>>2];F[i+24>>2]=F[g+24>>2];F[i+28>>2]=d;d=F[g+20>>2];F[i+16>>2]=F[g+16>>2];F[i+20>>2]=d;d=F[g+12>>2];F[i+8>>2]=F[g+8>>2];F[i+12>>2]=d;F[g+176>>2]=2;F[g+180>>2]=7;d=F[g+152>>2];if((d|0)<0){break d}F[f+12>>2]=0;h=g+184|0;b=F[g+156>>2];c=F[g+160>>2]-b>>2;e:{if(c>>>0>>0){Ha(g+156|0,d-c|0,f+12|0);d=F[g+180>>2]-F[g+176>>2]|0;break e}if(d>>>0>>0){F[g+160>>2]=b+(d<<2)}d=5}c=d+1|0;d=F[g+188>>2];l=F[g+184>>2];b=(d-l|0)/12|0;f:{if(c>>>0>b>>>0){b=c-b|0;j=F[h+8>>2];d=F[h+4>>2];g:{if(b>>>0<=(j-d|0)/12>>>0){e=h;if(b){c=d;d=L((L(b,12)-12>>>0)/12|0,12)+12|0;d=ra(c,0,d)+d|0}F[e+4>>2]=d;break g}h:{i:{j:{l=F[h>>2];k=(d-l|0)/12|0;c=k+b|0;if(c>>>0<357913942){j=(j-l|0)/12|0;n=j<<1;j=j>>>0<178956970?c>>>0>n>>>0?c:n:357913941;if(j){if(j>>>0>=357913942){break j}e=pa(L(j,12))}c=L(k,12)+e|0;k=L((L(b,12)-12>>>0)/12|0,12)+12|0;b=ra(c,0,k);k=b+k|0;j=L(j,12)+e|0;if((d|0)==(l|0)){break i}while(1){c=c-12|0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=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];F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if((d|0)!=(l|0)){continue}break}F[h+8>>2]=j;e=F[h+4>>2];F[h+4>>2]=k;d=F[h>>2];F[h>>2]=c;if((d|0)==(e|0)){break h}while(1){c=e-12|0;b=F[c>>2];if(b){F[e-8>>2]=b;oa(b)}e=c;if((d|0)!=(c|0)){continue}break}break h}break b}ta(8944);V()}F[h+8>>2]=j;F[h+4>>2]=k;F[h>>2]=b}if(d){oa(d)}}c=F[g+188>>2];break f}if(b>>>0<=c>>>0){c=d;break f}c=l+L(c,12)|0;if((c|0)!=(d|0)){while(1){e=d-12|0;b=F[e>>2];if(b){F[d-8>>2]=b;oa(b)}d=e;if((d|0)!=(c|0)){continue}break}}F[g+188>>2]=c}l=g+196|0;b=F[g+184>>2];d=(c-b|0)/12|0;j=F[g+196>>2];e=F[g+200>>2]-j>>2;k:{if(d>>>0>e>>>0){Ca(l,d-e|0);b=F[g+184>>2];c=F[g+188>>2];break k}if(d>>>0>=e>>>0){break k}F[g+200>>2]=j+(d<<2)}if((b|0)==(c|0)){b=1;break d}d=0;while(1){l:{if(!Fa(1,f+8|0,i)){break l}e=F[g+148>>2];c=(F[e+4>>2]-F[e>>2]>>2>>>0)/3|0;e=F[f+8>>2];if(c>>>0>>0){break l}if(e){c=F[h>>2];n=L(d,12);b=c+n|0;j=F[b>>2];k=F[b+4>>2]-j>>2;m:{if(k>>>0>>0){za(b,e-k|0);c=F[h>>2];break m}if(e>>>0>=k>>>0){break m}F[b+4>>2]=j+(e<<2)}oc(e,1,i,F[c+n>>2]);F[F[l>>2]+(d<<2)>>2]=e}b=1;d=d+1|0;if(d>>>0<(F[g+188>>2]-F[g+184>>2]|0)/12>>>0){continue}break d}break}b=0}ba=f+16|0;n:{if(!b){break n}d=0;j=ba-96|0;ba=j;F[j+72>>2]=0;F[j+64>>2]=0;F[j+68>>2]=0;F[j+48>>2]=0;F[j+52>>2]=0;F[j+40>>2]=0;F[j+44>>2]=0;F[j+56>>2]=1065353216;F[j+32>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;o=1;h=a;u=F[a+124>>2];o:{p:{q:{r:{if((m|0)<1){break r}s=h+232|0;x=F[h+216>>2]!=F[h+220>>2];while(1){i=d;d=d+1|0;s:{t:{u:{v:{w:{x:{a=F[h+404>>2];y:{z:{if((a|0)!=-1){e=-1;c=F[h+428>>2]+(a<<2)|0;b=F[c>>2];a=b-1|0;F[c>>2]=a;if((b|0)<1){break q}a=F[F[F[h+416>>2]+L(F[h+404>>2],12)>>2]+(a<<2)>>2];c=F[(a<<2)+9024>>2];F[h+400>>2]=c;if(!a){b=F[j+68>>2];if((b|0)==F[j+64>>2]){break q}c=-1;g=F[h+8>>2];k=F[g+24>>2];f=k;n=b-4|0;e=F[n>>2];a=-1;A:{if((e|0)==-1){break A}b=e+1|0;b=(b>>>0)%3|0?b:e-2|0;a=-1;if((b|0)==-1){break A}a=F[F[g>>2]+(b<<2)>>2]}b=F[f+(a<<2)>>2];if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b-2|0}b=F[g+12>>2];f=L(i,3);i=f+1|0;F[b+(e<<2)>>2]=i;o=i<<2;F[o+b>>2]=e;l=f+2|0;F[b+(c<<2)>>2]=l;q=l<<2;F[q+b>>2]=c;b=-1;i=-1;B:{if((e|0)==-1){break B}e=e+((e>>>0)%3|0?-1:2)|0;i=-1;if((e|0)==-1){break B}i=F[F[g>>2]+(e<<2)>>2]}C:{if((c|0)==-1){break C}e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if((e|0)==-1){break C}b=F[F[g>>2]+(e<<2)>>2]}e=-1;if((a|0)==(i|0)|(a|0)==(b|0)){break q}e=F[g>>2];F[e+(f<<2)>>2]=a;F[e+o>>2]=b;F[e+q>>2]=i;if((i|0)!=-1){F[k+(i<<2)>>2]=l}e=F[h+120>>2]+(a>>>3&536870908)|0;i=F[e>>2];A=e,B=li(a)&i,F[A>>2]=B;F[n>>2]=f;kc(s,f);break s}D:{switch(c-1|0){case 2:case 4:g=F[j+68>>2];if((g|0)==F[j+64>>2]){break q}b=F[h+8>>2];k=F[b+12>>2];c=L(i,3);f=(a|0)==3;l=c+(f?2:1)|0;n=l<<2;a=F[g-4>>2];F[k+n>>2]=a;F[k+(a<<2)>>2]=l;Ua(b+24|0);k=F[h+8>>2];g=F[k+24>>2];if((u|0)>2]-g>>2){break q}e=F[k>>2];b=F[b+28>>2]-F[b+24>>2]|0;k=(b>>2)-1|0;F[e+n>>2]=k;if(b){F[g+(k<<2)>>2]=l}b=f?c:c+2|0;k=e+(c+f<<2)|0;E:{F:{G:{if((a|0)!=-1){f=a+((a>>>0)%3|0?-1:2)|0;if((f|0)==-1){break G}f=F[e+(f<<2)>>2];F[e+(b<<2)>>2]=f;if((f|0)==-1){break F}F[g+(f<<2)>>2]=b;break F}F[e+(b<<2)>>2]=-1;b=-1;break E}F[e+(b<<2)>>2]=-1}g=a+1|0;a=(g>>>0)%3|0?g:a-2|0;b=-1;if((a|0)==-1){break E}b=F[e+(a<<2)>>2]}F[k>>2]=b;e=F[j+68>>2];F[e-4>>2]=c;break y;case 6:break z;case 0:break D;default:break q}}g=F[j+68>>2];c=F[j+64>>2];if((g|0)==(c|0)){break q}a=g-4|0;l=F[a>>2];F[j+68>>2]=a;k=F[j+44>>2];if(!k){break x}f=ki(k)>>>0>1;H:{if(!f){b=i&k+2147483647;break H}b=i;if(k>>>0>b>>>0){break H}b=(i>>>0)%(k>>>0)|0}e=F[F[j+40>>2]+(b<<2)>>2];if(!e){break x}e=F[e>>2];if(!e){break x}I:{if(!f){f=k-1|0;while(1){k=F[e+4>>2];J:{if((k|0)!=(i|0)){if((f&k)!=(b|0)){break x}break J}if((i|0)==F[e+8>>2]){break I}}e=F[e>>2];if(e){continue}break}break x}while(1){f=F[e+4>>2];K:{if((f|0)!=(i|0)){if(f>>>0>=k>>>0){f=(f>>>0)%(k>>>0)|0}if((b|0)!=(f|0)){break x}break K}if((i|0)==F[e+8>>2]){break I}}e=F[e>>2];if(e){continue}break}break x}if((a|0)!=F[j+72>>2]){F[a>>2]=F[e+12>>2];F[j+68>>2]=g;a=c;break w}b=a-c|0;g=b>>2;f=g+1|0;if(f>>>0>=1073741824){break b}k=b>>1;f=g>>>0<536870911?f>>>0>k>>>0?f:k:1073741823;a=0;L:{if(!f){break L}if(f>>>0>=1073741824){break p}a=pa(f<<2)}g=a+(g<<2)|0;F[g>>2]=F[e+12>>2];g=g+4|0;if((b|0)>=1){qa(a,c,b)}F[j+72>>2]=(f<<2)+a;F[j+68>>2]=g;F[j+64>>2]=a;if(!c){break w}oa(c);g=F[j+68>>2];a=F[j+64>>2];break w}F[h+400>>2]=7}b=F[h+8>>2];Ua(b+24|0);e=-1;a=F[h+8>>2];c=L(i,3);g=F[b+28>>2]-F[b+24>>2]|0;b=g>>2;l=b-1|0;F[F[a>>2]+(c<<2)>>2]=l;Ua(a+24|0);f=c+1|0;F[F[a>>2]+(f<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[h+8>>2];Ua(a+24|0);k=c+2|0;F[F[a>>2]+(k<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;n=F[h+8>>2];a=F[n+24>>2];if((u|0)>2]-a>>2){break q}M:{N:{if(!g){F[(b<<2)+a>>2]=f;a=a+4|0;break N}F[(l<<2)+a>>2]=c;if((g|0)==-4){break N}F[(b<<2)+a>>2]=f;e=b+1|0;if((e|0)==-1){break M}a=(e<<2)+a|0}F[a>>2]=k}a=F[j+68>>2];if((a|0)!=F[j+72>>2]){F[a>>2]=c;e=a+4|0;F[j+68>>2]=e;break y}b=F[j+64>>2];g=a-b|0;e=g>>2;f=e+1|0;if(f>>>0>=1073741824){break b}l=g>>1;f=e>>>0<536870911?f>>>0>l>>>0?f:l:1073741823;a=0;O:{if(!f){break O}if(f>>>0>=1073741824){break p}a=pa(f<<2)}e=a+(e<<2)|0;F[e>>2]=c;e=e+4|0;if((g|0)>=1){qa(a,b,g)}F[j+72>>2]=a+(f<<2);F[j+68>>2]=e;F[j+64>>2]=a;if(!b){break y}oa(b);e=F[j+68>>2]}kc(s,F[e-4>>2]);e=F[h+40>>2];if((e|0)==F[h+36>>2]){break s}i=m+(i^-1)|0;while(1){a=F[e-8>>2];if(a>>>0>i>>>0){break v}if((a|0)!=(i|0)){break s}c=G[e-4|0];a=e-12|0;e=F[a>>2];F[h+40>>2]=a;if((e|0)<0){break v}a=F[F[j+68>>2]-4>>2];F[j+20>>2]=m+(e^-1);F[j+88>>2]=j+20;xd(j,j+40|0,j+20|0,j+88|0);b=F[j>>2];P:{if(c&1){c=-1;if((a|0)==-1){break P}e=a+1|0;c=(e>>>0)%3|0?e:a-2|0;break P}c=-1;if((a|0)==-1){break P}c=a-1|0;if((a>>>0)%3|0){break P}c=a+2|0}F[b+12>>2]=c;e=F[h+40>>2];if((e|0)!=F[h+36>>2]){continue}break}break s}g=a;a=c}if((a|0)==(g|0)){break v}a=F[g-4>>2];c=(a|0)==-1;k=F[h+8>>2];if(F[F[k+12>>2]+(a<<2)>>2]!=-1?!c:0){break v}q=(l|0)==-1;n=F[k+12>>2];if(F[n+(l<<2)>>2]!=-1?!q:0){break v}o=L(i,3);e=o+2|0;F[n+(a<<2)>>2]=e;i=e<<2;F[i+n>>2]=a;b=o+1|0;F[n+(l<<2)>>2]=b;y=b<<2;F[y+n>>2]=l;if(c){break u}f=-1;b=-1;c=F[k>>2];z=c+(o<<2)|0;v=a+((a>>>0)%3|0?-1:2)|0;if((v|0)!=-1){b=F[(v<<2)+c>>2]}F[z>>2]=b;v=a+1|0;a=(v>>>0)%3|0?v:a-2|0;if((a|0)==-1){break t}f=F[(a<<2)+c>>2];break t}e=-1;if(o){break q}break r}b=-1;c=F[k>>2];F[c+(o<<2)>>2]=-1;f=-1}F[c+y>>2]=f;Q:{R:{S:{if(!q){a=l+((l>>>0)%3|0?-1:2)|0;if((a|0)==-1){break S}a=F[(a<<2)+c>>2];F[c+i>>2]=a;if((a|0)==-1){break R}F[F[k+24>>2]+(a<<2)>>2]=e;break R}e=-1;F[c+i>>2]=-1;a=-1;break Q}F[c+i>>2]=-1}e=-1;i=l+1|0;i=(i>>>0)%3|0?i:l-2|0;a=-1;if((i|0)==-1){break Q}e=i;a=F[(e<<2)+c>>2]}i=F[h+388>>2];f=b<<2;l=i+f|0;q=i;i=a;a=a<<2;F[l>>2]=F[l>>2]+F[q+a>>2];l=F[k+24>>2];a=l+a|0;if((b|0)!=-1){F[f+l>>2]=F[a>>2]}T:{if((e|0)==-1){break T}while(1){F[(e<<2)+c>>2]=b;f=e+1|0;e=(f>>>0)%3|0?f:e-2|0;if((e|0)==-1){break T}e=F[n+(e<<2)>>2];if((e|0)==-1){break T}f=e+1|0;e=(f>>>0)%3|0?f:e-2|0;if((e|0)!=-1){continue}break}}F[a>>2]=-1;U:{if(x){break U}a=F[j+28>>2];if((a|0)!=F[j+32>>2]){F[a>>2]=i;F[j+28>>2]=a+4;break U}V:{e=F[j+24>>2];c=a-e|0;f=c>>2;b=f+1|0;if(b>>>0<1073741824){l=c>>1;b=f>>>0<536870911?b>>>0>l>>>0?b:l:1073741823;a=0;W:{if(!b){break W}if(b>>>0>=1073741824){break V}a=pa(b<<2)}f=a+(f<<2)|0;F[f>>2]=i;if((c|0)>=1){qa(a,e,c)}F[j+32>>2]=a+(b<<2);F[j+28>>2]=f+4;F[j+24>>2]=a;if(!e){break U}oa(e);g=F[j+68>>2];break U}break b}break p}F[g-4>>2]=o;kc(s,o)}o=(d|0)<(m|0);if((d|0)!=(m|0)){continue}break}d=m}e=-1;b=F[h+8>>2];if((u|0)>2]-F[b+24>>2]>>2){break q}f=F[j+68>>2];if((f|0)!=F[j+64>>2]){i=h+60|0;u=h+312|0;while(1){a=f-4|0;k=F[a>>2];F[j+68>>2]=a;X:{if(Ia(u)){o=F[h+8>>2];n=F[o>>2];if(((F[o+4>>2]-n>>2>>>0)/3|0)<=(d|0)){break q}a=-1;c=-1;f=F[o+24>>2];b=f;l=-1;Y:{if((k|0)==-1){break Y}m=k+1|0;m=(m>>>0)%3|0?m:k-2|0;l=-1;if((m|0)==-1){break Y}l=F[n+(m<<2)>>2]}b=F[b+(l<<2)>>2];Z:{if((b|0)==-1){break Z}g=b+1|0;b=(g>>>0)%3|0?g:b-2|0;if((b|0)==-1){break Z}a=b+1|0;a=(a>>>0)%3|0?a:b-2|0;if((a|0)!=-1){c=F[n+(a<<2)>>2]}a=b}b=-1;g=-1;f=F[f+(c<<2)>>2];m=-1;_:{if((f|0)==-1){break _}s=f+1|0;f=(s>>>0)%3|0?s:f-2|0;m=-1;if((f|0)==-1){break _}m=f+1|0;m=(m>>>0)%3|0?m:f-2|0;if((m|0)!=-1){g=F[n+(m<<2)>>2]}m=f}f=F[o+12>>2];o=L(d,3);s=o<<2;F[f+s>>2]=k;F[f+(k<<2)>>2]=o;k=o+1|0;x=k<<2;F[x+f>>2]=a;F[f+(a<<2)>>2]=k;a=o+2|0;q=a<<2;F[q+f>>2]=m;F[f+(m<<2)>>2]=a;F[n+s>>2]=c;m=n+x|0;F[m>>2]=g;g=n+q|0;F[g>>2]=l;f=k>>>0>>0?-1:c;c=F[h+120>>2];l=(f>>>3&536870908)+c|0;n=F[l>>2];A=l,B=li(f)&n,F[A>>2]=B;b=(k|0)!=-1?F[m>>2]:b;m=c+(b>>>3&536870908)|0;f=F[m>>2];A=m,B=li(b)&f,F[A>>2]=B;f=-1;f=(a|0)!=-1?F[g>>2]:f;a=c+(f>>>3&536870908)|0;c=F[a>>2];A=a,B=li(f)&c,F[A>>2]=B;f=F[h+64>>2];c=F[h+68>>2];if((f|0)==c<<5){if((f+1|0)<=-1){break b}a=i;if(f>>>0<=1073741822){b=f+32&-32;c=c<<6;c=b>>>0>c>>>0?b:c}else{c=2147483647}Xa(a,c);f=F[h+64>>2]}d=d+1|0;F[h+64>>2]=f+1;a=F[h+60>>2]+(f>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>2];if((a|0)!=F[h+80>>2]){F[a>>2]=o;F[h+76>>2]=a+4;break X}c=F[h+72>>2];b=a-c|0;m=b>>2;g=m+1|0;if(g>>>0>=1073741824){break b}f=b>>1;g=m>>>0<536870911?f>>>0>>0?g:f:1073741823;a=0;$:{if(!g){break $}if(g>>>0>=1073741824){break p}a=pa(g<<2)}m=a+(m<<2)|0;F[m>>2]=o;if((b|0)>=1){qa(a,c,b)}F[h+80>>2]=a+(g<<2);F[h+76>>2]=m+4;F[h+72>>2]=a;if(!c){break X}oa(c);break X}a=F[h+64>>2];b=F[h+68>>2];if((a|0)==b<<5){if((a+1|0)<=-1){break b}c=i;if(a>>>0<=1073741822){a=a+32&-32;b=b<<6;a=a>>>0>b>>>0?a:b}else{a=2147483647}Xa(c,a);a=F[h+64>>2]}F[h+64>>2]=a+1;c=F[h+60>>2]+(a>>>3&536870908)|0;b=F[c>>2];A=c,B=li(a)&b,F[A>>2]=B;a=F[h+76>>2];if((a|0)!=F[h+80>>2]){F[a>>2]=k;F[h+76>>2]=a+4;break X}c=F[h+72>>2];b=a-c|0;m=b>>2;g=m+1|0;if(g>>>0>=1073741824){break b}f=b>>1;g=m>>>0<536870911?f>>>0>>0?g:f:1073741823;a=0;aa:{if(!g){break aa}if(g>>>0>=1073741824){break p}a=pa(g<<2)}m=a+(m<<2)|0;F[m>>2]=k;if((b|0)>=1){qa(a,c,b)}F[h+80>>2]=a+(g<<2);F[h+76>>2]=m+4;F[h+72>>2]=a;if(!c){break X}oa(c)}f=F[j+68>>2];if((f|0)!=F[j+64>>2]){continue}break}b=F[h+8>>2]}if(((F[b+4>>2]-F[b>>2]>>2>>>0)/3|0)!=(d|0)){break q}d=F[b+24>>2];e=F[b+28>>2]-d>>2;c=F[j+24>>2];m=F[j+28>>2];if((c|0)==(m|0)){break q}while(1){i=F[c>>2];f=e-1|0;a=(f<<2)+d|0;if(F[a>>2]==-1){while(1){f=e-2|0;e=e-1|0;a=(f<<2)+d|0;if(F[a>>2]==-1){continue}break}}if(f>>>0>=i>>>0){F[j>>2]=b;a=F[a>>2];D[j+12|0]=1;F[j+8>>2]=a;F[j+4>>2]=a;if((a|0)!=-1){F[F[b>>2]+(a<<2)>>2]=i;sb(j);d=F[j+8>>2];if((d|0)!=-1){while(1){F[F[F[h+8>>2]>>2]+(d<<2)>>2]=i;sb(j);d=F[j+8>>2];if((d|0)!=-1){continue}break}}b=F[h+8>>2]}d=F[b+24>>2];a=d+(f<<2)|0;if((i|0)!=-1){F[(i<<2)+d>>2]=F[a>>2]}F[a>>2]=-1;a=1<>2];i=g+(i>>>3&536870908)|0;k=i;g=g+(f>>>3&536870908)|0;f=1<>2];ba:{if(F[g>>2]&f){break ba}l=F[i>>2]&(a^-1)}F[k>>2]=l;F[g>>2]=F[g>>2]&(f^-1);e=e-1|0}c=c+4|0;if((m|0)!=(c|0)){continue}break}}a=F[j+24>>2];if(a){F[j+28>>2]=a;oa(a)}a=F[j+48>>2];if(a){while(1){d=F[a>>2];oa(a);a=d;if(a){continue}break}}a=F[j+40>>2];F[j+40>>2]=0;if(a){oa(a)}a=F[j+64>>2];if(a){F[j+68>>2]=a;oa(a)}ba=j+96|0;break o}ta(8944);V()}if((e|0)==-1){break n}a=F[r+16>>2];d=a+F[r>>2]|0;i=F[r+8>>2];i=i-a|0;a=F[F[h+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=d;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=i;F[a+12>>2]=0;ca:{if(F[h+216>>2]==F[h+220>>2]){break ca}a=F[h+8>>2];if(F[a+4>>2]==F[a>>2]){break ca}d=0;while(1){if(Ad(h,d)){d=d+3|0;a=F[h+8>>2];if(d>>>0>2]-F[a>>2]>>2>>>0){continue}break ca}break}break n}if(G[h+308|0]){D[h+308|0]=0;c=F[h+292>>2];a=h;d=0;i=F[a+304>>2]+7|0;d=i>>>0<7?1:d;g=d<<29|i>>>3;i=g+F[a+288>>2]|0;d=(d>>>3|0)+c|0;F[a+288>>2]=i;F[a+292>>2]=g>>>0>i>>>0?d+1|0:d}d=F[h+216>>2];if((d|0)!=F[h+220>>2]){while(1){i=L(w,144);Yc((i+d|0)+4|0,F[h+8>>2]);a=F[t>>2];d=a+i|0;c=F[d+132>>2];b=F[d+136>>2];if((c|0)!=(b|0)){yb(d+4|0,F[c>>2]);d=c+4|0;if((b|0)!=(d|0)){while(1){yb((i+F[t>>2]|0)+4|0,F[d>>2]);d=d+4|0;if((b|0)!=(d|0)){continue}break}}a=F[t>>2]}Xc((a+i|0)+4|0);w=w+1|0;d=F[h+216>>2];if(w>>>0<(F[h+220>>2]-d|0)/144>>>0){continue}break}}a=F[h+8>>2];Lb(h+184|0,F[a+28>>2]-F[a+24>>2]>>2);f=F[h+216>>2];if((f|0)!=F[h+220>>2]){d=0;while(1){a=L(d,144)+f|0;i=F[a+60>>2]-F[a+56>>2]>>2;c=a+104|0;a=F[h+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Lb(c,(a|0)>(i|0)?a:i);d=d+1|0;f=F[h+216>>2];if(d>>>0<(F[h+220>>2]-f|0)/144>>>0){continue}break}}w=zd(h,e)}}ba=p- -64|0;return w|0}sa();V()}function kh(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;q=ba+-64|0;ba=q;F[a+132>>2]=0;if(F[a+148>>2]){g=F[a+144>>2];if(g){while(1){b=F[g>>2];oa(g);g=b;if(b){continue}break}}g=0;F[a+144>>2]=0;b=F[a+140>>2];a:{if(!b){break a}i=b&3;if(b-1>>>0>=3){f=b&-4;while(1){b=g<<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;g=g+4|0;f=f-4|0;if(f){continue}break}}if(!i){break a}while(1){F[F[a+136>>2]+(g<<2)>>2]=0;g=g+1|0;i=i-1|0;if(i){continue}break}}F[a+148>>2]=0}b:{if(!Fa(1,q+60|0,F[F[a+4>>2]+32>>2])){break b}F[a+156>>2]=F[q+60>>2];if(!Fa(1,q+56|0,F[F[a+4>>2]+32>>2])){break b}i=F[q+56>>2];if(i>>>0>1431655765|I[a+156>>2]>L(i,3)>>>0){break b}g=F[F[a+4>>2]+32>>2];c=F[g+16>>2];d=F[g+12>>2];b=F[g+20>>2];if((d|0)<(b|0)?1:(d|0)<=(b|0)?I[g+8>>2]<=c>>>0:0){break b}e=G[c+F[g>>2]|0];c=c+1|0;b=c>>>0<1?b+1|0:b;d=g;F[d+16>>2]=c;F[d+20>>2]=b;if(!Fa(1,q+52|0,d)){break b}m=F[q+52>>2];if(m>>>0>i>>>0|i>>>0>m+((m>>>0)/3|0)>>>0){break b}if(!Fa(1,q+48|0,F[F[a+4>>2]+32>>2])){break b}g=F[q+48>>2];if(g>>>0>m>>>0){break b}F[a+28>>2]=F[a+24>>2];d=pa(88);ad(d);b=F[a+8>>2];F[a+8>>2]=d;if(b){Va(b);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Mb(a+160|0,i);F[a+176>>2]=F[a+172>>2];Mb(a+172|0,i);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];u=a+216|0;Ed(u);Dd(u,e);if(!_c(F[a+8>>2],i,g+F[a+156>>2]|0)){break b}b=F[a+156>>2];D[q+8|0]=1;Ga(a+120|0,b+g|0,q+8|0);if((Cd(a,F[F[a+4>>2]+32>>2])|0)==-1){break b}d=a+232|0;Bd(d,a);F[a+372>>2]=e;t=q+8|0;E[t+38>>1]=0;F[t>>2]=0;g=t;F[g+8>>2]=0;F[g+12>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;D[g+29|0]=0;D[g+30|0]=0;D[g+31|0]=0;D[g+32|0]=0;D[g+33|0]=0;D[g+34|0]=0;D[g+35|0]=0;D[g+36|0]=0;i=g;g=0;h=ba-16|0;ba=h;b=F[d+4>>2];F[d+40>>2]=F[d>>2];F[d+44>>2]=b;b=F[d+36>>2];F[d+72>>2]=F[d+32>>2];F[d+76>>2]=b;c=F[d+28>>2];b=d- -64|0;F[b>>2]=F[d+24>>2];F[b+4>>2]=c;b=F[d+20>>2];F[d+56>>2]=F[d+16>>2];F[d+60>>2]=b;b=F[d+12>>2];F[d+48>>2]=F[d+8>>2];F[d+52>>2]=b;c:{d:{if(hc(d+40|0,1,h+8|0)){b=F[d+44>>2];F[d>>2]=F[d+40>>2];F[d+4>>2]=b;b=F[d+76>>2];F[d+32>>2]=F[d+72>>2];F[d+36>>2]=b;b=F[d+68>>2];F[d+24>>2]=F[d+64>>2];F[d+28>>2]=b;c=F[d+60>>2];f=c;b=F[d+56>>2];F[d+16>>2]=b;F[d+20>>2]=c;e=F[d+52>>2];c=F[d+48>>2];F[d+8>>2]=c;F[d+12>>2]=e;n=c-b|0;l=F[h+12>>2];k=l;c=e-((b>>>0>c>>>0)+f|0)|0;e=F[h+8>>2];if((k|0)==(c|0)&n>>>0>=e>>>0|c>>>0>k>>>0){break d}}break c}j=b+e|0;e=f+l|0;F[d+16>>2]=j;F[d+20>>2]=b>>>0>j>>>0?e+1|0:e;if(!Oa(d+80|0,d)){break c}if(!yd(d)){break c}g=F[d+4>>2];F[i>>2]=F[d>>2];F[i+4>>2]=g;g=F[d+36>>2];F[i+32>>2]=F[d+32>>2];F[i+36>>2]=g;g=F[d+28>>2];F[i+24>>2]=F[d+24>>2];F[i+28>>2]=g;g=F[d+20>>2];F[i+16>>2]=F[d+16>>2];F[i+20>>2]=g;g=F[d+12>>2];F[i+8>>2]=F[d+8>>2];F[i+12>>2]=g;g=1}ba=h+16|0;e:{if(!g){break e}g=0;j=ba-96|0;ba=j;F[j+72>>2]=0;F[j+64>>2]=0;F[j+68>>2]=0;F[j+48>>2]=0;F[j+52>>2]=0;F[j+40>>2]=0;F[j+44>>2]=0;F[j+56>>2]=1065353216;F[j+32>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;n=1;d=a;o=F[a+124>>2];f:{g:{h:{i:{j:{k:{l:{m:{if((m|0)<1){break m}s=F[d+216>>2]!=F[d+220>>2];while(1){i=g;g=g+1|0;n:{o:{p:{q:{r:{s:{t:{u:{v:{w:{x:{if(!G[d+308|0]){break x}y:{z:{e=F[d+296>>2];b=F[d+304>>2];a=e+(b>>>3|0)|0;f=F[d+300>>2];if(a>>>0>=f>>>0){break z}a=G[a|0];c=b+1|0;F[d+304>>2]=c;if(!(a>>>(b&7)&1)){break z}a=0;h=c>>>3|0;l=e+h|0;A:{if(l>>>0>=f>>>0){b=c;break A}a=G[l|0];b=b+2|0;F[d+304>>2]=b;h=b>>>3|0;a=a>>>(c&7)&1}c=e+h|0;if(c>>>0>>0){c=G[c|0];F[d+304>>2]=b+1;a=c>>>(b&7)<<1&2|a}a=a<<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}}a=F[j+68>>2];if((a|0)==F[j+64>>2]){b=-1;break l}n=-1;e=F[d+8>>2];l=F[e+24>>2];h=l;k=a-4|0;b=F[k>>2];c=-1;B:{if((b|0)==-1){break B}a=b+1|0;a=(a>>>0)%3|0?a:b-2|0;c=-1;if((a|0)==-1){break B}c=F[F[e>>2]+(a<<2)>>2]}a=F[h+(c<<2)>>2];if((a|0)!=-1){h=a+1|0;n=(h>>>0)%3|0?h:a-2|0}a=F[e+12>>2];h=L(i,3);i=h+1|0;F[a+(b<<2)>>2]=i;p=i<<2;F[p+a>>2]=b;f=h+2|0;F[a+(n<<2)>>2]=f;r=f<<2;F[r+a>>2]=n;a=-1;i=-1;C:{if((b|0)==-1){break C}b=b+((b>>>0)%3|0?-1:2)|0;i=-1;if((b|0)==-1){break C}i=F[F[e>>2]+(b<<2)>>2]}D:{if((n|0)==-1){break D}b=n+1|0;b=(b>>>0)%3|0?b:n-2|0;if((b|0)==-1){break D}a=F[F[e>>2]+(b<<2)>>2]}b=-1;if((c|0)==(i|0)|(a|0)==(c|0)){break l}b=F[e>>2];F[b+(h<<2)>>2]=c;F[b+p>>2]=a;F[b+r>>2]=i;if((i|0)!=-1){F[l+(i<<2)>>2]=f}a=F[d+120>>2]+(c>>>3&536870908)|0;b=F[a>>2];z=a,A=li(c)&b,F[z>>2]=A;F[k>>2]=h;break n}b=F[j+68>>2];if((b|0)==F[j+64>>2]){b=-1;break l}e=F[d+8>>2];h=F[e+12>>2];c=L(i,3);f=(a|1)==5;l=c+(f?2:1)|0;p=l<<2;a=F[b-4>>2];F[h+p>>2]=a;F[h+(a<<2)>>2]=l;Ua(e+24|0);b=-1;k=F[d+8>>2];h=F[k+24>>2];if((o|0)>2]-h>>2){break l}b=F[k>>2];e=F[e+28>>2]-F[e+24>>2]|0;k=(e>>2)-1|0;F[b+p>>2]=k;if(e){F[h+(k<<2)>>2]=l}e=f?c:c+2|0;l=b+(c+f<<2)|0;E:{F:{G:{if((a|0)!=-1){f=a+((a>>>0)%3|0?-1:2)|0;if((f|0)==-1){break G}f=F[b+(f<<2)>>2];F[b+(e<<2)>>2]=f;if((f|0)==-1){break F}F[h+(f<<2)>>2]=e;break F}F[b+(e<<2)>>2]=-1;e=-1;break E}F[b+(e<<2)>>2]=-1}h=a+1|0;a=(h>>>0)%3|0?h:a-2|0;e=-1;if((a|0)==-1){break E}e=F[b+(a<<2)>>2]}F[l>>2]=e;F[F[j+68>>2]-4>>2]=c;break v}h=F[j+68>>2];c=F[j+64>>2];if((h|0)==(c|0)){b=-1;break l}a=h-4|0;l=F[a>>2];F[j+68>>2]=a;k=F[j+44>>2];if(!k){break s}f=ki(k)>>>0>1;b=i&k+2147483647;H:{if(!f){break H}e=i;b=e;if(e>>>0>>0){break H}b=(i>>>0)%(k>>>0)|0}e=b;b=F[F[j+40>>2]+(e<<2)>>2];if(!b){break s}b=F[b>>2];if(!b){break s}I:{if(!f){f=k-1|0;while(1){k=F[b+4>>2];J:{if((k|0)!=(i|0)){if((f&k)!=(e|0)){break s}break J}if((i|0)==F[b+8>>2]){break I}}b=F[b>>2];if(b){continue}break}break s}while(1){f=F[b+4>>2];K:{if((f|0)!=(i|0)){if(f>>>0>=k>>>0){f=(f>>>0)%(k>>>0)|0}if((e|0)!=(f|0)){break s}break K}if((i|0)==F[b+8>>2]){break I}}b=F[b>>2];if(b){continue}break}break s}if((a|0)!=F[j+72>>2]){F[a>>2]=F[b+12>>2];F[j+68>>2]=h;a=c;break r}e=a-c|0;h=e>>2;f=h+1|0;if(f>>>0>=1073741824){break u}k=e>>1;f=h>>>0<536870911?f>>>0>k>>>0?f:k:1073741823;a=0;L:{if(!f){break L}if(f>>>0>=1073741824){break g}a=pa(f<<2)}h=a+(h<<2)|0;F[h>>2]=F[b+12>>2];h=h+4|0;if((e|0)>=1){qa(a,c,e)}F[j+72>>2]=(f<<2)+a;F[j+68>>2]=h;F[j+64>>2]=a;if(!c){break r}oa(c);h=F[j+68>>2];a=F[j+64>>2];break r}e=F[d+8>>2];Ua(e+24|0);b=-1;a=F[d+8>>2];c=L(i,3);h=F[e+28>>2]-F[e+24>>2]|0;e=h>>2;l=e-1|0;F[F[a>>2]+(c<<2)>>2]=l;Ua(a+24|0);f=c+1|0;F[F[a>>2]+(f<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[d+8>>2];Ua(a+24|0);k=c+2|0;F[F[a>>2]+(k<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;p=F[d+8>>2];a=F[p+24>>2];if((o|0)>2]-a>>2){break l}M:{N:{if(!h){F[(e<<2)+a>>2]=f;a=a+4|0;break N}F[(l<<2)+a>>2]=c;if((h|0)==-4){break N}F[(e<<2)+a>>2]=f;b=e+1|0;if((b|0)==-1){break M}a=(b<<2)+a|0}F[a>>2]=k}a=F[j+68>>2];if((a|0)!=F[j+72>>2]){F[a>>2]=c;F[j+68>>2]=a+4;break v}b=F[j+64>>2];e=a-b|0;f=e>>2;h=f+1|0;if(h>>>0>=1073741824){break t}l=e>>1;h=f>>>0<536870911?h>>>0>l>>>0?h:l:1073741823;a=0;O:{if(!h){break O}if(h>>>0>=1073741824){break g}a=pa(h<<2)}f=a+(f<<2)|0;F[f>>2]=c;if((e|0)>=1){qa(a,b,e)}F[j+72>>2]=a+(h<<2);F[j+68>>2]=f+4;F[j+64>>2]=a;if(!b){break v}oa(b)}b=F[d+40>>2];if((b|0)==F[d+36>>2]){break n}i=m+(i^-1)|0;while(1){a=F[b-8>>2];if(a>>>0>i>>>0){break q}if((a|0)!=(i|0)){break n}c=G[b-4|0];a=b-12|0;b=F[a>>2];F[d+40>>2]=a;if((b|0)<0){break q}a=F[F[j+68>>2]-4>>2];F[j+20>>2]=m+(b^-1);F[j+88>>2]=j+20;xd(j,j+40|0,j+20|0,j+88|0);e=F[j>>2];P:{if(c&1){c=-1;if((a|0)==-1){break P}b=a+1|0;c=(b>>>0)%3|0?b:a-2|0;break P}c=-1;if((a|0)==-1){break P}c=a-1|0;if((a>>>0)%3|0){break P}c=a+2|0}F[e+12>>2]=c;b=F[d+40>>2];if((b|0)!=F[d+36>>2]){continue}break}break n}sa();V()}sa();V()}h=a;a=c}if((a|0)==(h|0)){break q}a=F[h-4>>2];e=(a|0)==-1;c=F[d+8>>2];if(F[F[c+12>>2]+(a<<2)>>2]!=-1?!e:0){break q}r=(l|0)==-1;k=F[c+12>>2];if(F[k+(l<<2)>>2]!=-1?!r:0){break q}i=L(i,3);p=i+2|0;F[k+(a<<2)>>2]=p;b=p<<2;F[b+k>>2]=a;f=i+1|0;F[k+(l<<2)>>2]=f;v=f<<2;F[v+k>>2]=l;if(e){break p}f=-1;e=-1;n=F[c>>2];y=n+(i<<2)|0;w=a+((a>>>0)%3|0?-1:2)|0;if((w|0)!=-1){e=F[(w<<2)+n>>2]}F[y>>2]=e;w=a+1|0;a=(w>>>0)%3|0?w:a-2|0;if((a|0)==-1){break o}f=F[(a<<2)+n>>2];break o}b=-1;if(n&1){break l}break m}e=-1;n=F[c>>2];F[n+(i<<2)>>2]=-1;f=-1}F[n+v>>2]=f;Q:{R:{S:{if(!r){a=l+((l>>>0)%3|0?-1:2)|0;if((a|0)==-1){break S}a=F[(a<<2)+n>>2];F[b+n>>2]=a;if((a|0)==-1){break R}F[F[c+24>>2]+(a<<2)>>2]=p;break R}F[b+n>>2]=-1;f=-1;b=-1;break Q}F[b+n>>2]=-1}f=-1;a=l+1|0;a=(a>>>0)%3|0?a:l-2|0;b=-1;if((a|0)==-1){break Q}f=F[(a<<2)+n>>2];b=a}c=F[c+24>>2];a=c+(f<<2)|0;if((e|0)!=-1){F[c+(e<<2)>>2]=F[a>>2]}T:{if((b|0)==-1){break T}while(1){F[(b<<2)+n>>2]=e;c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break T}b=F[k+(b<<2)>>2];if((b|0)==-1){break T}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)!=-1){continue}break}}F[a>>2]=-1;U:{if(s){break U}a=F[j+28>>2];if((a|0)!=F[j+32>>2]){F[a>>2]=f;F[j+28>>2]=a+4;break U}V:{b=F[j+24>>2];c=a-b|0;n=c>>2;e=n+1|0;if(e>>>0<1073741824){l=c>>1;e=n>>>0<536870911?e>>>0>l>>>0?e:l:1073741823;a=0;W:{if(!e){break W}if(e>>>0>=1073741824){break V}a=pa(e<<2)}n=a+(n<<2)|0;F[n>>2]=f;if((c|0)>=1){qa(a,b,c)}F[j+32>>2]=a+(e<<2);F[j+28>>2]=n+4;F[j+24>>2]=a;if(!b){break U}oa(b);h=F[j+68>>2];break U}sa();V()}break g}F[h-4>>2]=i}n=(g|0)<(m|0);if((g|0)!=(m|0)){continue}break}g=m}b=-1;i=F[d+8>>2];if((o|0)>2]-F[i+24>>2]>>2){break l}f=F[j+68>>2];if((f|0)!=F[j+64>>2]){i=d+60|0;p=d+312|0;while(1){a=f-4|0;l=F[a>>2];F[j+68>>2]=a;X:{if(Ia(p)){o=F[d+8>>2];k=F[o>>2];if(((F[o+4>>2]-k>>2>>>0)/3|0)<=(g|0)){break l}a=-1;e=-1;h=F[o+24>>2];c=h;m=-1;Y:{if((l|0)==-1){break Y}f=l+1|0;f=(f>>>0)%3|0?f:l-2|0;m=-1;if((f|0)==-1){break Y}m=F[k+(f<<2)>>2]}c=F[c+(m<<2)>>2];Z:{if((c|0)==-1){break Z}f=c+1|0;c=(f>>>0)%3|0?f:c-2|0;if((c|0)==-1){break Z}a=c+1|0;a=(a>>>0)%3|0?a:c-2|0;if((a|0)!=-1){e=F[k+(a<<2)>>2]}a=c}n=-1;f=-1;h=F[h+(e<<2)>>2];c=-1;_:{if((h|0)==-1){break _}s=h+1|0;h=(s>>>0)%3|0?s:h-2|0;c=-1;if((h|0)==-1){break _}c=h+1|0;c=(c>>>0)%3|0?c:h-2|0;if((c|0)!=-1){f=F[k+(c<<2)>>2]}c=h}o=F[o+12>>2];h=L(g,3);s=h<<2;F[o+s>>2]=l;F[o+(l<<2)>>2]=h;l=h+1|0;r=l<<2;F[r+o>>2]=a;F[o+(a<<2)>>2]=l;a=h+2|0;v=a<<2;F[v+o>>2]=c;F[o+(c<<2)>>2]=a;F[k+s>>2]=e;o=k+r|0;F[o>>2]=f;k=k+v|0;F[k>>2]=m;c=F[d+120>>2];e=h>>>0>l>>>0?-1:e;m=c+(e>>>3&536870908)|0;f=F[m>>2];z=m,A=li(e)&f,F[z>>2]=A;n=(l|0)!=-1?F[o>>2]:n;e=c+(n>>>3&536870908)|0;m=F[e>>2];z=e,A=li(n)&m,F[z>>2]=A;f=-1;f=(a|0)!=-1?F[k>>2]:f;a=c+(f>>>3&536870908)|0;c=F[a>>2];z=a,A=li(f)&c,F[z>>2]=A;f=F[d+64>>2];c=F[d+68>>2];if((f|0)==c<<5){if((f+1|0)<=-1){break k}a=i;if(f>>>0<=1073741822){e=f+32&-32;c=c<<6;c=c>>>0>>0?e:c}else{c=2147483647}Xa(a,c);f=F[d+64>>2]}g=g+1|0;F[d+64>>2]=f+1;a=F[d+60>>2]+(f>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>2];if((a|0)!=F[d+80>>2]){F[a>>2]=h;F[d+76>>2]=a+4;break X}c=F[d+72>>2];e=a-c|0;f=e>>2;m=f+1|0;if(m>>>0>=1073741824){break j}n=e>>1;m=f>>>0<536870911?n>>>0>>0?m:n:1073741823;a=0;$:{if(!m){break $}if(m>>>0>=1073741824){break g}a=pa(m<<2)}f=a+(f<<2)|0;F[f>>2]=h;if((e|0)>=1){qa(a,c,e)}F[d+80>>2]=a+(m<<2);F[d+76>>2]=f+4;F[d+72>>2]=a;if(!c){break X}oa(c);break X}a=F[d+64>>2];e=F[d+68>>2];if((a|0)==e<<5){if((a+1|0)<=-1){break k}c=i;if(a>>>0<=1073741822){a=a+32&-32;e=e<<6;a=a>>>0>e>>>0?a:e}else{a=2147483647}Xa(c,a);a=F[d+64>>2]}F[d+64>>2]=a+1;c=F[d+60>>2]+(a>>>3&536870908)|0;e=F[c>>2];z=c,A=li(a)&e,F[z>>2]=A;a=F[d+76>>2];if((a|0)!=F[d+80>>2]){F[a>>2]=l;F[d+76>>2]=a+4;break X}c=F[d+72>>2];e=a-c|0;m=e>>2;h=m+1|0;if(h>>>0>=1073741824){break j}f=e>>1;h=m>>>0<536870911?f>>>0>>0?h:f:1073741823;a=0;aa:{if(!h){break aa}if(h>>>0>=1073741824){break i}a=pa(h<<2)}m=a+(m<<2)|0;F[m>>2]=l;if((e|0)>=1){qa(a,c,e)}F[d+80>>2]=a+(h<<2);F[d+76>>2]=m+4;F[d+72>>2]=a;if(!c){break X}oa(c)}f=F[j+68>>2];if((f|0)!=F[j+64>>2]){continue}break}i=F[d+8>>2]}if(((F[i+4>>2]-F[i>>2]>>2>>>0)/3|0)!=(g|0)){break l}f=F[i+24>>2];b=F[i+28>>2]-f>>2;e=F[j+24>>2];m=F[j+28>>2];if((e|0)==(m|0)){break l}while(1){c=F[e>>2];g=b-1|0;a=(g<<2)+f|0;if(F[a>>2]==-1){while(1){g=b-2|0;b=b-1|0;a=(g<<2)+f|0;if(F[a>>2]==-1){continue}break}}if(c>>>0<=g>>>0){F[j>>2]=i;a=F[a>>2];D[j+12|0]=1;F[j+8>>2]=a;F[j+4>>2]=a;if((a|0)!=-1){F[F[i>>2]+(a<<2)>>2]=c;sb(j);f=F[j+8>>2];if((f|0)!=-1){while(1){F[F[F[d+8>>2]>>2]+(f<<2)>>2]=c;sb(j);f=F[j+8>>2];if((f|0)!=-1){continue}break}}i=F[d+8>>2]}f=F[i+24>>2];a=f+(g<<2)|0;if((c|0)!=-1){F[(c<<2)+f>>2]=F[a>>2]}F[a>>2]=-1;a=1<>2];c=h+(c>>>3&536870908)|0;l=c;h=h+(g>>>3&536870908)|0;g=1<>2];ba:{if(F[h>>2]&g){break ba}k=F[c>>2]&(a^-1)}F[l>>2]=k;F[h>>2]=F[h>>2]&(g^-1);b=b-1|0}e=e+4|0;if((m|0)!=(e|0)){continue}break}}a=F[j+24>>2];if(a){F[j+28>>2]=a;oa(a)}a=F[j+48>>2];if(a){while(1){g=F[a>>2];oa(a);a=g;if(a){continue}break}}a=F[j+40>>2];F[j+40>>2]=0;if(a){oa(a)}a=F[j+64>>2];if(a){F[j+68>>2]=a;oa(a)}ba=j+96|0;break f}sa();V()}sa();V()}ta(8944)}V()}ta(8944);V()}if((b|0)==-1){break e}a=F[t+16>>2];g=a+F[t>>2]|0;i=F[t+8>>2];i=i-a|0;a=F[F[d+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=g;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=i;F[a+12>>2]=0;ca:{if(F[d+216>>2]==F[d+220>>2]){break ca}a=F[d+8>>2];if(F[a+4>>2]==F[a>>2]){break ca}g=0;while(1){if(Ad(d,g)){g=g+3|0;a=F[d+8>>2];if(g>>>0>2]-F[a>>2]>>2>>>0){continue}break ca}break}break e}if(G[d+308|0]){D[d+308|0]=0;i=F[d+292>>2];a=d;g=0;c=F[a+304>>2]+7|0;g=c>>>0<7?1:g;e=g>>>3|0;c=g<<29|c>>>3;g=c+F[a+288>>2]|0;e=e+i|0;F[a+288>>2]=g;F[a+292>>2]=c>>>0>g>>>0?e+1|0:e}g=F[d+216>>2];if((g|0)!=F[d+220>>2]){while(1){i=L(x,144);Yc((i+g|0)+4|0,F[d+8>>2]);a=F[u>>2];g=a+i|0;c=F[g+132>>2];e=F[g+136>>2];if((c|0)!=(e|0)){yb(g+4|0,F[c>>2]);g=c+4|0;if((e|0)!=(g|0)){while(1){yb((i+F[u>>2]|0)+4|0,F[g>>2]);g=g+4|0;if((e|0)!=(g|0)){continue}break}}a=F[u>>2]}Xc((a+i|0)+4|0);x=x+1|0;g=F[d+216>>2];if(x>>>0<(F[d+220>>2]-g|0)/144>>>0){continue}break}}a=F[d+8>>2];Lb(d+184|0,F[a+28>>2]-F[a+24>>2]>>2);f=F[d+216>>2];if((f|0)!=F[d+220>>2]){g=0;while(1){a=L(g,144)+f|0;i=F[a+60>>2]-F[a+56>>2]>>2;c=a+104|0;a=F[d+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Lb(c,(a|0)>(i|0)?a:i);g=g+1|0;f=F[d+216>>2];if(g>>>0<(F[d+220>>2]-f|0)/144>>>0){continue}break}}x=zd(d,b)}}ba=q- -64|0;return x|0}function rf(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;a=b;h=c;a:{b:{c:{d:{e:{switch(d-1|0){case 0:b=0;k=ba-16|0;ba=k;n=F[a+80>>2];c=D[h+24|0];f:{if((L(n,c)|0)!=(e|0)){break f}d=F[h+28>>2]!=1;if(!(d|!G[h+84|0])){qa(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);j=1;break f}a=0;F[k+8>>2]=0;F[k>>2]=0;F[k+4>>2]=0;if(c){if((c|0)<=-1){break d}g=pa(c);F[k>>2]=g;F[k+8>>2]=c+g;ra(g,0,c)}g:{h:{if(!n){break h}if(!d){if((c|0)>=1){d=c&-4;e=c&3;o=c-1>>>0<3;while(1){c=a;b=F[F[h>>2]>>2];p=F[h+40>>2];a=F[h+48>>2]+hi(p,F[h+44>>2],G[h+84|0]?a:F[F[h+68>>2]+(a<<2)>>2],0)|0;i=qa(g,b+a|0,p);j=0;b=d;if(!o){while(1){a=f+l|0;D[a|0]=G[i+j|0];D[a+1|0]=G[i+(j|1)|0];D[a+2|0]=G[i+(j|2)|0];D[a+3|0]=G[i+(j|3)|0];j=j+4|0;l=l+4|0;b=b-4|0;if(b){continue}break}}a=e;if(a){while(1){D[f+l|0]=G[i+j|0];j=j+1|0;l=l+1|0;a=a-1|0;if(a){continue}break}}j=1;a=c+1|0;if((n|0)!=(a|0)){continue}break}break g}m=F[h>>2];c=F[h+48>>2];p=F[h+68>>2];q=G[h+84|0];d=F[h+44>>2];e=F[h+40>>2];r=e;if((n|0)!=1){b=n&-2;while(1){f=j|1;h=F[m>>2];i=hi(e,d,q?j:F[p+(j<<2)>>2],0)+c|0;l=qa(g,h+i|0,r);o=F[m>>2];h=e;i=d;if(!q){f=F[p+(f<<2)>>2]}h=hi(h,i,f,0)+c|0;qa(l,h+o|0,r);j=j+2|0;b=b-2|0;if(b){continue}break}}if(!(n&1)){break h}b=g;f=F[m>>2];if(!q){j=F[p+(j<<2)>>2]}h=b;b=hi(e,d,j,0)+c|0;qa(h,b+f|0,r);break h}a=1;if((c|0)<1){while(1){if(!Ib(h,G[h+84|0]?j:F[F[h+68>>2]+(j<<2)>>2],D[h+24|0],g)){break h}j=j+1|0;a=n>>>0>j>>>0;if((j|0)!=(n|0)){continue}break}break h}d=c&-4;e=c&3;o=c-1>>>0<3;while(1){if(!Ib(h,G[h+84|0]?b:F[F[h+68>>2]+(b<<2)>>2],D[h+24|0],g)){break h}j=0;a=d;if(!o){while(1){c=f+l|0;D[c|0]=G[g+j|0];D[c+1|0]=G[(j|1)+g|0];D[c+2|0]=G[(j|2)+g|0];D[c+3|0]=G[(j|3)+g|0];j=j+4|0;l=l+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){D[f+l|0]=G[g+j|0];j=j+1|0;l=l+1|0;a=a-1|0;if(a){continue}break}}b=b+1|0;a=n>>>0>b>>>0;if((b|0)!=(n|0)){continue}break}j=b>>>0>=n>>>0;break g}j=a^1;if(!g){break f}}oa(g)}break c;case 2:d=ba-16|0;ba=d;g=D[h+24|0];b=g<<1;m=F[a+80>>2];i:{if((L(b,m)|0)!=(e|0)){break i}c=F[h+28>>2]!=3;if(!(c|!G[h+84|0])){qa(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);i=1;break i}a=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(g){if((g|0)<=-1){break d}k=pa(b);F[d>>2]=k;F[d+8>>2]=(g<<1)+k;ra(k,0,b)}j:{k:{if(!m){break k}if(!c){p=F[h>>2];b=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];c=F[h+44>>2];e=F[h+40>>2];s=e;if((g|0)<=0){if((m|0)!=1){a=m&-2;while(1){f=i|1;g=F[p>>2];h=hi(e,c,r?i:F[q+(i<<2)>>2],0)+b|0;j=qa(k,g+h|0,s);l=F[p>>2];g=e;h=c;if(!r){f=F[q+(f<<2)>>2]}g=hi(g,h,f,0)+b|0;qa(j,g+l|0,s);i=i+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(m&1)){break k}f=k;g=F[p>>2];if(!r){i=F[q+(i<<2)>>2]}c=hi(e,c,i,0)+b|0;qa(f,c+g|0,s);break k}h=g&-4;l=g&3;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];i=hi(e,c,r?g:F[q+(g<<2)>>2],0)+b|0;o=qa(k,a+i|0,s);i=0;a=h;if(!u){while(1){n=(j<<1)+f|0;t=i<<1;E[n>>1]=H[t+o>>1];E[n+2>>1]=H[o+(t|2)>>1];E[n+4>>1]=H[o+(t|4)>>1];E[n+6>>1]=H[o+(t|6)>>1];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=l;if(a){while(1){E[(j<<1)+f>>1]=H[o+(i<<1)>>1];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}i=1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break j}a=1;if((g|0)<1){while(1){if(!Gb(h,G[h+84|0]?i:F[F[h+68>>2]+(i<<2)>>2],D[h+24|0],k)){break k}i=i+1|0;a=m>>>0>i>>>0;if((i|0)!=(m|0)){continue}break}break k}c=g&-4;e=g&3;o=g-1>>>0<3;g=0;while(1){if(!Gb(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],k)){break k}i=0;a=c;if(!o){while(1){b=(j<<1)+f|0;l=i<<1;E[b>>1]=H[l+k>>1];E[b+2>>1]=H[(l|2)+k>>1];E[b+4>>1]=H[(l|4)+k>>1];E[b+6>>1]=H[(l|6)+k>>1];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){E[(j<<1)+f>>1]=H[(i<<1)+k>>1];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=m>>>0>g>>>0;if((g|0)!=(m|0)){continue}break}i=g>>>0>=m>>>0;break j}i=a^1;if(!k){break i}}oa(k)}break b;case 4:d=ba-16|0;ba=d;g=D[h+24|0];b=g<<2;m=F[a+80>>2];l:{if((L(b,m)|0)!=(e|0)){break l}c=F[h+28>>2]!=5;if(!(c|!G[h+84|0])){qa(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);i=1;break l}a=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(g){if((g|0)<=-1){break d}k=pa(b);F[d>>2]=k;F[d+8>>2]=(g<<2)+k;ra(k,0,b)}m:{n:{if(!m){break n}if(!c){p=F[h>>2];b=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];c=F[h+44>>2];e=F[h+40>>2];s=e;if((g|0)<=0){if((m|0)!=1){a=m&-2;while(1){f=i|1;g=F[p>>2];h=hi(e,c,r?i:F[q+(i<<2)>>2],0)+b|0;j=qa(k,g+h|0,s);l=F[p>>2];g=e;h=c;if(!r){f=F[q+(f<<2)>>2]}g=hi(g,h,f,0)+b|0;qa(j,g+l|0,s);i=i+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(m&1)){break n}f=k;g=F[p>>2];if(!r){i=F[q+(i<<2)>>2]}c=hi(e,c,i,0)+b|0;qa(f,c+g|0,s);break n}h=g&-4;l=g&3;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];i=hi(e,c,r?g:F[q+(g<<2)>>2],0)+b|0;o=qa(k,a+i|0,s);i=0;a=h;if(!u){while(1){n=(j<<2)+f|0;t=i<<2;F[n>>2]=F[t+o>>2];F[n+4>>2]=F[o+(t|4)>>2];F[n+8>>2]=F[o+(t|8)>>2];F[n+12>>2]=F[o+(t|12)>>2];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=l;if(a){while(1){F[(j<<2)+f>>2]=F[o+(i<<2)>>2];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}i=1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break m}a=1;if((g|0)<1){while(1){if(!Eb(h,G[h+84|0]?i:F[F[h+68>>2]+(i<<2)>>2],D[h+24|0],k)){break n}i=i+1|0;a=m>>>0>i>>>0;if((i|0)!=(m|0)){continue}break}break n}c=g&-4;e=g&3;o=g-1>>>0<3;g=0;while(1){if(!Eb(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],k)){break n}i=0;a=c;if(!o){while(1){b=(j<<2)+f|0;l=i<<2;F[b>>2]=F[l+k>>2];F[b+4>>2]=F[(l|4)+k>>2];F[b+8>>2]=F[(l|8)+k>>2];F[b+12>>2]=F[(l|12)+k>>2];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){F[(j<<2)+f>>2]=F[(i<<2)+k>>2];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=m>>>0>g>>>0;if((g|0)!=(m|0)){continue}break}i=g>>>0>=m>>>0;break m}i=a^1;if(!k){break l}}oa(k)}break b;case 1:b=0;k=ba-16|0;ba=k;n=F[a+80>>2];c=D[h+24|0];o:{if((L(n,c)|0)!=(e|0)){break o}d=F[h+28>>2]!=2;if(!(d|!G[h+84|0])){qa(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);j=1;break o}a=0;F[k+8>>2]=0;F[k>>2]=0;F[k+4>>2]=0;if(c){if((c|0)<=-1){break d}g=pa(c);F[k>>2]=g;F[k+8>>2]=c+g;ra(g,0,c)}p:{q:{if(!n){break q}if(!d){if((c|0)>=1){d=c&-4;e=c&3;o=c-1>>>0<3;while(1){c=a;b=F[F[h>>2]>>2];p=F[h+40>>2];a=F[h+48>>2]+hi(p,F[h+44>>2],G[h+84|0]?a:F[F[h+68>>2]+(a<<2)>>2],0)|0;i=qa(g,b+a|0,p);j=0;b=d;if(!o){while(1){a=f+l|0;D[a|0]=G[i+j|0];D[a+1|0]=G[i+(j|1)|0];D[a+2|0]=G[i+(j|2)|0];D[a+3|0]=G[i+(j|3)|0];j=j+4|0;l=l+4|0;b=b-4|0;if(b){continue}break}}a=e;if(a){while(1){D[f+l|0]=G[i+j|0];j=j+1|0;l=l+1|0;a=a-1|0;if(a){continue}break}}j=1;a=c+1|0;if((n|0)!=(a|0)){continue}break}break p}m=F[h>>2];c=F[h+48>>2];p=F[h+68>>2];q=G[h+84|0];d=F[h+44>>2];e=F[h+40>>2];r=e;if((n|0)!=1){b=n&-2;while(1){f=j|1;h=F[m>>2];i=hi(e,d,q?j:F[p+(j<<2)>>2],0)+c|0;l=qa(g,h+i|0,r);o=F[m>>2];h=e;i=d;if(!q){f=F[p+(f<<2)>>2]}h=hi(h,i,f,0)+c|0;qa(l,h+o|0,r);j=j+2|0;b=b-2|0;if(b){continue}break}}if(!(n&1)){break q}b=g;f=F[m>>2];if(!q){j=F[p+(j<<2)>>2]}h=b;b=hi(e,d,j,0)+c|0;qa(h,b+f|0,r);break q}a=1;if((c|0)<1){while(1){if(!Hb(h,G[h+84|0]?j:F[F[h+68>>2]+(j<<2)>>2],D[h+24|0],g)){break q}j=j+1|0;a=n>>>0>j>>>0;if((j|0)!=(n|0)){continue}break}break q}d=c&-4;e=c&3;o=c-1>>>0<3;while(1){if(!Hb(h,G[h+84|0]?b:F[F[h+68>>2]+(b<<2)>>2],D[h+24|0],g)){break q}j=0;a=d;if(!o){while(1){c=f+l|0;D[c|0]=G[g+j|0];D[c+1|0]=G[(j|1)+g|0];D[c+2|0]=G[(j|2)+g|0];D[c+3|0]=G[(j|3)+g|0];j=j+4|0;l=l+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){D[f+l|0]=G[g+j|0];j=j+1|0;l=l+1|0;a=a-1|0;if(a){continue}break}}b=b+1|0;a=n>>>0>b>>>0;if((b|0)!=(n|0)){continue}break}j=b>>>0>=n>>>0;break p}j=a^1;if(!g){break o}}oa(g)}break c;case 3:d=ba-16|0;ba=d;g=D[h+24|0];b=g<<1;m=F[a+80>>2];r:{if((L(b,m)|0)!=(e|0)){break r}c=F[h+28>>2]!=4;if(!(c|!G[h+84|0])){qa(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);i=1;break r}a=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(g){if((g|0)<=-1){break d}k=pa(b);F[d>>2]=k;F[d+8>>2]=(g<<1)+k;ra(k,0,b)}s:{t:{if(!m){break t}if(!c){p=F[h>>2];b=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];c=F[h+44>>2];e=F[h+40>>2];s=e;if((g|0)<=0){if((m|0)!=1){a=m&-2;while(1){f=i|1;g=F[p>>2];h=hi(e,c,r?i:F[q+(i<<2)>>2],0)+b|0;j=qa(k,g+h|0,s);l=F[p>>2];g=e;h=c;if(!r){f=F[q+(f<<2)>>2]}g=hi(g,h,f,0)+b|0;qa(j,g+l|0,s);i=i+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(m&1)){break t}f=k;g=F[p>>2];if(!r){i=F[q+(i<<2)>>2]}c=hi(e,c,i,0)+b|0;qa(f,c+g|0,s);break t}h=g&-4;l=g&3;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];i=hi(e,c,r?g:F[q+(g<<2)>>2],0)+b|0;o=qa(k,a+i|0,s);i=0;a=h;if(!u){while(1){n=(j<<1)+f|0;t=i<<1;E[n>>1]=H[t+o>>1];E[n+2>>1]=H[o+(t|2)>>1];E[n+4>>1]=H[o+(t|4)>>1];E[n+6>>1]=H[o+(t|6)>>1];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=l;if(a){while(1){E[(j<<1)+f>>1]=H[o+(i<<1)>>1];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}i=1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break s}a=1;if((g|0)<1){while(1){if(!Fb(h,G[h+84|0]?i:F[F[h+68>>2]+(i<<2)>>2],D[h+24|0],k)){break t}i=i+1|0;a=m>>>0>i>>>0;if((i|0)!=(m|0)){continue}break}break t}c=g&-4;e=g&3;o=g-1>>>0<3;g=0;while(1){if(!Fb(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],k)){break t}i=0;a=c;if(!o){while(1){b=(j<<1)+f|0;l=i<<1;E[b>>1]=H[l+k>>1];E[b+2>>1]=H[(l|2)+k>>1];E[b+4>>1]=H[(l|4)+k>>1];E[b+6>>1]=H[(l|6)+k>>1];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){E[(j<<1)+f>>1]=H[(i<<1)+k>>1];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=m>>>0>g>>>0;if((g|0)!=(m|0)){continue}break}i=g>>>0>=m>>>0;break s}i=a^1;if(!k){break r}}oa(k)}break b;case 5:d=ba-16|0;ba=d;g=D[h+24|0];b=g<<2;m=F[a+80>>2];u:{if((L(b,m)|0)!=(e|0)){break u}c=F[h+28>>2]!=6;if(!(c|!G[h+84|0])){qa(f,F[F[h>>2]>>2]+F[h+48>>2]|0,e);i=1;break u}a=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(g){if((g|0)<=-1){break d}k=pa(b);F[d>>2]=k;F[d+8>>2]=(g<<2)+k;ra(k,0,b)}v:{w:{if(!m){break w}if(!c){p=F[h>>2];b=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];c=F[h+44>>2];e=F[h+40>>2];s=e;if((g|0)<=0){if((m|0)!=1){a=m&-2;while(1){f=i|1;g=F[p>>2];h=hi(e,c,r?i:F[q+(i<<2)>>2],0)+b|0;j=qa(k,g+h|0,s);l=F[p>>2];g=e;h=c;if(!r){f=F[q+(f<<2)>>2]}g=hi(g,h,f,0)+b|0;qa(j,g+l|0,s);i=i+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(m&1)){break w}f=k;g=F[p>>2];if(!r){i=F[q+(i<<2)>>2]}c=hi(e,c,i,0)+b|0;qa(f,c+g|0,s);break w}h=g&-4;l=g&3;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];i=hi(e,c,r?g:F[q+(g<<2)>>2],0)+b|0;o=qa(k,a+i|0,s);i=0;a=h;if(!u){while(1){n=(j<<2)+f|0;t=i<<2;F[n>>2]=F[t+o>>2];F[n+4>>2]=F[o+(t|4)>>2];F[n+8>>2]=F[o+(t|8)>>2];F[n+12>>2]=F[o+(t|12)>>2];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=l;if(a){while(1){F[(j<<2)+f>>2]=F[o+(i<<2)>>2];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}i=1;g=g+1|0;if((m|0)!=(g|0)){continue}break}break v}a=1;if((g|0)<1){while(1){if(!Db(h,G[h+84|0]?i:F[F[h+68>>2]+(i<<2)>>2],D[h+24|0],k)){break w}i=i+1|0;a=m>>>0>i>>>0;if((i|0)!=(m|0)){continue}break}break w}c=g&-4;e=g&3;o=g-1>>>0<3;g=0;while(1){if(!Db(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],k)){break w}i=0;a=c;if(!o){while(1){b=(j<<2)+f|0;l=i<<2;F[b>>2]=F[l+k>>2];F[b+4>>2]=F[(l|4)+k>>2];F[b+8>>2]=F[(l|8)+k>>2];F[b+12>>2]=F[(l|12)+k>>2];i=i+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){F[(j<<2)+f>>2]=F[(i<<2)+k>>2];i=i+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=m>>>0>g>>>0;if((g|0)!=(m|0)){continue}break}i=g>>>0>=m>>>0;break v}i=a^1;if(!k){break u}}oa(k)}break b;case 8:break e;default:break a}}b=0;c=0;m=ba-16|0;ba=m;g=D[h+24|0];d=g<<2;n=F[a+80>>2];x:{if((L(d,n)|0)!=(e|0)){break x}e=F[h+28>>2];a=0;F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;y:{z:{A:{B:{if(!g){break B}if((g|0)<=-1){break A}c=pa(d);F[m>>2]=c;i=(g<<2)+c|0;F[m+8>>2]=i;d=d-4|0;j=(d>>>2|0)+1&7;C:{if(!j){b=c;break C}b=c;while(1){F[b>>2]=-1073741824;b=b+4|0;j=j-1|0;if(j){continue}break}}if(d>>>0<28){break B}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((i|0)!=(b|0)){continue}break}}if(!n){break z}if((e|0)==9){b=0;p=F[h>>2];d=F[h+48>>2];q=F[h+68>>2];r=G[h+84|0];e=F[h+44>>2];h=F[h+40>>2];s=h;if((g|0)<=0){if((n|0)!=1){a=n&-2;while(1){f=b|1;g=F[p>>2];i=hi(h,e,r?b:F[q+(b<<2)>>2],0)+d|0;k=qa(c,g+i|0,s);j=F[p>>2];g=h;i=e;if(!r){f=F[q+(f<<2)>>2]}g=hi(g,i,f,0)+d|0;qa(k,g+j|0,s);b=b+2|0;a=a-2|0;if(a){continue}break}}a=0;if(!(n&1)){break z}f=c;g=F[p>>2];if(!r){b=F[q+(b<<2)>>2]}b=hi(h,e,b,0)+d|0;qa(f,b+g|0,s);break z}i=g&-4;k=g&3;j=0;u=g-1>>>0<3;g=0;while(1){a=F[p>>2];b=hi(h,e,r?g:F[q+(g<<2)>>2],0)+d|0;l=qa(c,a+b|0,s);b=0;a=i;if(!u){while(1){o=(j<<2)+f|0;t=b<<2;J[o>>2]=J[t+l>>2];J[o+4>>2]=J[l+(t|4)>>2];J[o+8>>2]=J[l+(t|8)>>2];J[o+12>>2]=J[l+(t|12)>>2];b=b+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=k;if(a){while(1){J[(j<<2)+f>>2]=J[l+(b<<2)>>2];b=b+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}b=1;g=g+1|0;if((n|0)!=(g|0)){continue}break}break y}a=1;if((g|0)<1){b=0;while(1){if(!ob(h,G[h+84|0]?b:F[F[h+68>>2]+(b<<2)>>2],D[h+24|0],c)){break z}b=b+1|0;a=n>>>0>b>>>0;if((b|0)!=(n|0)){continue}break}break z}d=g&-4;e=g&3;j=0;l=g-1>>>0<3;g=0;while(1){if(!ob(h,G[h+84|0]?g:F[F[h+68>>2]+(g<<2)>>2],D[h+24|0],c)){break z}b=0;a=d;if(!l){while(1){i=(j<<2)+f|0;k=b<<2;J[i>>2]=J[k+c>>2];J[i+4>>2]=J[(k|4)+c>>2];J[i+8>>2]=J[(k|8)+c>>2];J[i+12>>2]=J[(k|12)+c>>2];b=b+4|0;j=j+4|0;a=a-4|0;if(a){continue}break}}a=e;if(a){while(1){J[(j<<2)+f>>2]=J[(b<<2)+c>>2];b=b+1|0;j=j+1|0;a=a-1|0;if(a){continue}break}}g=g+1|0;a=n>>>0>g>>>0;if((g|0)!=(n|0)){continue}break}b=g>>>0>=n>>>0;break y}sa();V()}b=a^1;if(!c){break x}}oa(c)}ba=m+16|0;i=b&1;break a}sa();V()}ba=k+16|0;i=j&1;break a}ba=d+16|0;i=i&1}return i|0}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,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,O=0;z=c;c=0;n=ba-96|0;ba=n;ra(n+16|0,0,76);F[n+92>>2]=-1;F[n+8>>2]=0;F[n>>2]=0;F[n+4>>2]=0;q=ba-16|0;ba=q;k=n+16|0;F[k+68>>2]=0;F[k+72>>2]=0;F[k>>2]=b;B=q+8|0;s=ba-16|0;ba=s;u=b;a=F[b+20>>2];a:{if((F[b+24>>2]-a|0)<1){break a}a=F[a>>2];if((a|0)==-1){break a}c=F[F[u+8>>2]+(a<<2)>>2]}b:{c:{d:{if(!c){F[B>>2]=0;break d}a=F[u+100>>2];b=F[u+96>>2];F[s+8>>2]=0;F[s>>2]=0;F[s+4>>2]=0;d=a-b|0;a=(d|0)/12|0;e:{if(!d){break e}if(a>>>0>=357913942){break c}f=pa(d);F[s>>2]=f;F[s+8>>2]=f+L(a,12);h=f;f=L((d-12>>>0)/12|0,12)+12|0;d=ra(h,0,f);F[s+4>>2]=d+f;if(G[c+84|0]){c=a>>>0>1?a:1;h=c&1;if(a>>>0>=2){a=c&-2;while(1){f=L(g,12);c=f+b|0;e=F[c+4>>2];j=F[c>>2];f=d+f|0;F[f+8>>2]=F[c+8>>2];F[f>>2]=j;F[f+4>>2]=e;f=L(g|1,12);c=f+b|0;e=F[c+8>>2];j=F[c+4>>2];f=d+f|0;F[f>>2]=F[c>>2];F[f+4>>2]=j;F[f+8>>2]=e;g=g+2|0;a=a-2|0;if(a){continue}break}}if(!h){break e}a=b;b=L(g,12);a=a+b|0;c=F[a+4>>2];g=F[a>>2];b=b+d|0;F[b+8>>2]=F[a+8>>2];F[b>>2]=g;F[b+4>>2]=c;break e}h=a>>>0>1?a:1;c=F[c+68>>2];a=0;while(1){f=L(a,12);g=f+b|0;e=F[c+(F[g>>2]<<2)>>2];j=F[c+(F[g+4>>2]<<2)>>2];f=d+f|0;F[f+8>>2]=F[c+(F[g+8>>2]<<2)>>2];F[f+4>>2]=j;F[f>>2]=e;a=a+1|0;if((h|0)!=(a|0)){continue}break}}C=ba-16|0;ba=C;e=pa(88);F[e>>2]=0;F[e+4>>2]=0;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;a=e- -64|0;F[a>>2]=0;F[a+4>>2]=0;F[e+72>>2]=0;F[e+76>>2]=0;F[e+80>>2]=0;F[e+84>>2]=0;F[e+60>>2]=e;A=ba-16|0;ba=A;F[e+80>>2]=0;F[e+84>>2]=0;a=F[e+76>>2];F[e+76>>2]=0;if(a){oa(a)}F[e+68>>2]=0;F[e+72>>2]=0;b=e- -64|0;a=F[b>>2];F[b>>2]=0;if(a){oa(a)}f:{g:{h:{g=F[s>>2];i=F[s+4>>2]-g|0;c=(i|0)/12|0;b=L(c,3);a=F[e>>2];d=F[e+4>>2]-a>>2;i:{if(b>>>0>d>>>0){j:{d=b-d|0;f=F[e+8>>2];a=F[e+4>>2];if(d>>>0<=f-a>>2>>>0){b=e;if(d){c=a;a=d<<2;a=ra(c,0,a)+a|0}F[b+4>>2]=a;break j}k:{b=a;a=F[e>>2];g=b-a|0;h=g>>2;b=h+d|0;if(b>>>0<1073741824){c=0;f=f-a|0;j=f>>1;b=f>>2>>>0<536870911?b>>>0>j>>>0?b:j:1073741823;if(b){if(b>>>0>=1073741824){break k}c=pa(b<<2)}d=d<<2;d=ra((h<<2)+c|0,0,d)+d|0;if((g|0)>=1){qa(c,a,g)}F[e+8>>2]=(b<<2)+c;F[e+4>>2]=d;F[e>>2]=c;if(a){oa(a)}break j}break h}break g}g=F[s>>2];i=F[s+4>>2]-g|0;c=(i|0)/12|0;break i}if(b>>>0>=d>>>0){break i}F[e+4>>2]=a+(b<<2)}if(i){d=c>>>0>1?c:1;f=F[e>>2];a=0;while(1){c=L(a,12);b=c+f|0;c=c+g|0;F[b>>2]=F[c>>2];F[b+4>>2]=F[c+4>>2];F[b+8>>2]=F[c+8>>2];a=a+1|0;if((d|0)!=(a|0)){continue}break}}F[A+12>>2]=-1;i=0;h=ba-48|0;ba=h;t=A+12|0;l:{if(!t){break l}w=e+12|0;f=F[e+4>>2];o=F[e>>2];a=f-o|0;d=a>>2;c=F[e+12>>2];b=F[e+16>>2]-c>>2;m:{if(d>>>0>b>>>0){$c(w,d-b|0);f=F[e+4>>2];o=F[e>>2];a=f-o|0;d=a>>2;break m}if(b>>>0<=d>>>0){break m}F[e+16>>2]=c+(d<<2)}F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;n:{if(!a){c=0;break n}if((a|0)>-1){c=pa(a);F[h+36>>2]=c;F[h+32>>2]=c;F[h+40>>2]=(d<<2)+c;b=c;a=0;while(1){g=F[(a<<2)+o>>2];b=b-c>>2;o:{if(g>>>0>>0){break o}F[h+16>>2]=0;d=g+1|0;if(d>>>0>b>>>0){Ha(h+32|0,d-b|0,h+16|0);o=F[e>>2];f=F[e+4>>2];c=F[h+32>>2];break o}if(b>>>0<=d>>>0){break o}F[h+36>>2]=(d<<2)+c}b=(g<<2)+c|0;F[b>>2]=F[b>>2]+1;a=a+1|0;i=f-o|0;d=i>>2;if(a>>>0>=d>>>0){break n}b=F[h+36>>2];continue}}break g}F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;if(i){if(d>>>0>=536870912){break h}a=pa(i<<1);F[h+16>>2]=a;b=d<<3;g=b+a|0;F[h+24>>2]=g;ra(a,255,b);F[h+20>>2]=g}f=0;F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;b=F[h+36>>2]-c|0;x=b>>2;p:{if(!b){break p}if((b|0)<=-1){break h}l=pa(b);F[h>>2]=l;F[h+8>>2]=(x<<2)+l;a=0;g=ra(l,0,b);F[h+4>>2]=g+b;b=L(b>>>2|0,(b|0)<1?b:1);b=b>>>0>1?b:1;j=b&3;i=0;if(b-1>>>0>=3){m=b&-4;while(1){b=i<<2;F[b+g>>2]=a;p=b|4;a=F[b+c>>2]+a|0;F[p+g>>2]=a;r=b|8;a=a+F[c+p>>2]|0;F[r+g>>2]=a;b=b|12;a=a+F[c+r>>2]|0;F[b+g>>2]=a;a=a+F[b+c>>2]|0;i=i+4|0;m=m-4|0;if(m){continue}break}}if(!j){break p}while(1){b=i<<2;F[b+g>>2]=a;i=i+1|0;a=F[b+c>>2]+a|0;j=j-1|0;if(j){continue}break}}if(d){while(1){E=f<<2;a=E+o|0;m=-1;g=f+1|0;b=(g>>>0)%3|0?g:f-2|0;if((b|0)!=-1){m=F[(b<<2)+o>>2]}b=F[a>>2];j=-1;a=(f>>>0)%3|0;i=(a?-1:2)+f|0;if((i|0)!=-1){j=F[(i<<2)+o>>2]}q:{if(!(((b|0)!=(j|0)?!((j|0)==(m|0)|(b|0)==(m|0)):0)|a)){F[e+40>>2]=F[e+40>>2]+1;f=f+3|0;break q}a=j<<2;y=F[a+c>>2];r:{s:{if((y|0)<1){break s}p=F[h+16>>2];a=F[a+l>>2];i=0;while(1){r=p+(a<<3)|0;v=F[r>>2];if((v|0)==-1){break s}t:{if((m|0)!=(v|0)){break t}r=F[r+4>>2];H=(r|0)!=-1;v=(b|0)==-1;u:{if(!H){break u}v=(b|0)==F[(r<<2)+o>>2]}if(v){break t}while(1){v:{b=a;i=i+1|0;if((y|0)<=(i|0)){break v}v=p+(b<<3)|0;a=b+1|0;I=p+(a<<3)|0;J=F[I>>2];F[v>>2]=J;F[v+4>>2]=F[I+4>>2];if((J|0)!=-1){continue}}break}F[p+(b<<3)>>2]=-1;if(!H){break s}a=F[w>>2];F[a+E>>2]=r;F[a+(r<<2)>>2]=f;break r}a=a+1|0;i=i+1|0;if((y|0)!=(i|0)){continue}break}}a=m<<2;m=F[a+c>>2];if((m|0)<1){break r}p=F[h+16>>2];a=F[a+l>>2];i=0;while(1){b=p+(a<<3)|0;if(F[b>>2]==-1){F[b>>2]=j;F[b+4>>2]=f;break r}a=a+1|0;i=i+1|0;if((m|0)!=(i|0)){continue}break}}f=g}if(f>>>0>>0){continue}break}}F[t>>2]=x;if(l){F[h+4>>2]=l;oa(l)}a=F[h+16>>2];if(a){F[h+20>>2]=a;oa(a)}a=F[h+32>>2];if(!a){break l}F[h+36>>2]=a;oa(a)}ba=h+48|0;y=(t|0)!=0;if(y){i=ba-32|0;ba=i;a=F[e>>2];b=F[e+4>>2];D[i|0]=0;r=Zb(i+16|0,b-a>>2,i);F[i+8>>2]=0;F[i>>2]=0;o=F[e>>2];a=F[e+4>>2];while(1){w:{p=0;j=0;if((a|0)==(o|0)){break w}while(1){f=F[r>>2];x:{if(F[f+(j>>>3&536870908)>>2]>>>j&1){break x}d=F[i>>2];F[i+4>>2]=d;a=j;while(1){y:{b=a+1|0;h=a;a=(b>>>0)%3|0?b:a-2|0;if((a|0)==-1){break y}a=F[F[e+12>>2]+(a<<2)>>2];if((a|0)==-1){break y}b=a+1|0;a=(b>>>0)%3|0?b:a-2|0;if((j|0)==(a|0)|(a|0)==-1){break y}if(!(F[(a>>>3&536870908)+f>>2]>>>a&1)){continue}}break}b=d;a=h;z:{A:{while(1){c=(a>>>3&536870908)+f|0;F[c>>2]=F[c>>2]|1<>>0)%3|0?c:a-2|0;g=((a>>>0)%3|0?-1:2)+a|0;B:{if((b|0)==(d|0)){break B}t=F[(c<<2)+o>>2];f=b;a=b;if((g|0)==-1){while(1){if((t|0)==F[f>>2]){l=-1;a=-1;m=F[f+4>>2];if((m|0)!=-1){break A}}f=f+8|0;if((f|0)!=(d|0)){continue}break B}}while(1){C:{if((t|0)!=F[a>>2]){break C}l=F[F[e+12>>2]+(g<<2)>>2];m=F[a+4>>2];if((l|0)==(m|0)){break C}a=g;f=-1;b=-1;if((m|0)==-1){break z}break A}a=a+8|0;if((d|0)!=(a|0)){continue}break}}l=g<<2;m=F[l+o>>2];D:{if(F[i+8>>2]!=(d|0)){a=d;F[a>>2]=m;F[a+4>>2]=c;F[i+4>>2]=a+8;break D}d=d-b|0;o=d>>3;f=o+1|0;if(f>>>0>=536870912){break h}t=d>>2;f=o>>>0<268435455?f>>>0>t>>>0?f:t:536870911;a=0;E:{if(!f){break E}if(f>>>0>=536870912){break g}a=pa(f<<3)}o=a+(o<<3)|0;F[o>>2]=m;F[o+4>>2]=c;if((d|0)>=1){qa(a,b,d)}F[i+8>>2]=a+(f<<3);F[i+4>>2]=o+8;F[i>>2]=a;if(!b){break D}oa(b)}F:{if((g|0)==-1){break F}a=F[l+F[e+12>>2]>>2];if((a|0)==-1){break F}a=a+((a>>>0)%3|0?-1:2)|0;if((h|0)==(a|0)|(a|0)==-1){break F}o=F[e>>2];f=F[r>>2];d=F[i+4>>2];b=F[i>>2];continue}break}o=F[e>>2];break x}f=F[F[e+12>>2]+(m<<2)>>2];g=a;b=m}if((l|0)!=-1){F[F[e+12>>2]+(l<<2)>>2]=-1}a=F[e+12>>2];if((f|0)!=-1){F[a+(f<<2)>>2]=-1}F[a+(g<<2)>>2]=-1;F[a+(b<<2)>>2]=-1;p=1}j=j+1|0;a=F[e+4>>2];if(j>>>0>2>>>0){continue}break}if(p){continue}}break}a=F[i>>2];if(a){F[i+4>>2]=a;oa(a)}a=F[r>>2];if(a){oa(a)}ba=i+32|0;o=0;m=ba-48|0;ba=m;a=F[A+12>>2];F[e+36>>2]=a;r=e+24|0;c=F[e+24>>2];b=F[e+28>>2]-c>>2;G:{if(b>>>0>>0){$c(r,a-b|0);break G}if(a>>>0>=b>>>0){break G}F[e+28>>2]=c+(a<<2)}D[m+16|0]=0;h=Zb(m+32|0,a,m+16|0);b=F[e>>2];c=F[e+4>>2];D[m+15|0]=0;i=Zb(m+16|0,c-b>>2,m+15|0);g=F[e+4>>2];b=F[e>>2];if(g-b>>2>>>0>2){while(1){t=L(o,3);c=t+1|0;H:{I:{if((c|0)==-1){c=-1;f=b;break I}c=F[(c<<2)+b>>2];f=t+2|0;d=-1;if((f|0)==-1){break H}f=(f<<2)+b|0}d=F[f>>2]}J:{if((c|0)==(d|0)){break J}f=c;c=F[(t<<2)+b>>2];if((f|0)==(c|0)|(c|0)==(d|0)){break J}d=F[i>>2];w=0;while(1){g=t+w|0;if(!(F[(g>>>3&536870908)+d>>2]>>>g&1)){c=F[F[e>>2]+(g<<2)>>2];b=1<>2];d=c>>>5|0;p=F[l+(d<<2)>>2];x=b&p;f=a;K:{if(!x){break K}b=F[e+28>>2];L:{if((b|0)!=F[e+32>>2]){F[b>>2]=-1;F[e+28>>2]=b+4;break L}d=F[r>>2];f=b-d|0;l=f>>2;j=l+1|0;if(j>>>0>=1073741824){break h}p=f>>1;j=l>>>0<536870911?j>>>0>p>>>0?j:p:1073741823;b=0;M:{if(!j){break M}if(j>>>0>=1073741824){break g}b=pa(j<<2)}l=b+(l<<2)|0;F[l>>2]=-1;if((f|0)>=1){qa(b,d,f)}F[e+32>>2]=b+(j<<2);F[e+28>>2]=l+4;F[e+24>>2]=b;if(!d){break L}oa(d)}b=F[e+52>>2];N:{if((b|0)!=F[e+56>>2]){F[b>>2]=c;F[e+52>>2]=b+4;break N}d=F[e+48>>2];f=b-d|0;l=f>>2;j=l+1|0;if(j>>>0>=1073741824){break h}p=f>>1;j=l>>>0<536870911?j>>>0>p>>>0?j:p:1073741823;b=0;O:{if(!j){break O}if(j>>>0>=1073741824){break g}b=pa(j<<2)}l=b+(l<<2)|0;F[l>>2]=c;if((f|0)>=1){qa(b,d,f)}F[e+56>>2]=b+(j<<2);F[e+52>>2]=l+4;F[e+48>>2]=b;if(!d){break N}oa(d)}b=F[h+4>>2];d=F[h+8>>2];if((b|0)==d<<5){if((b+1|0)<=-1){break h}c=h;if(b>>>0<=1073741822){b=b+32&-32;d=d<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Xa(c,b);b=F[h+4>>2]}F[h+4>>2]=b+1;l=F[h>>2];c=l+(b>>>3&536870908)|0;d=F[c>>2];N=c,O=li(b)&d,F[N>>2]=O;b=1<>>5|0;p=F[(d<<2)+l>>2];c=a;f=a+1|0}F[(d<<2)+l>>2]=b|p;d=F[i>>2];a=g;P:{Q:{while(1){if((a|0)==-1){break Q}b=(a>>>3&536870908)+d|0;F[b>>2]=F[b>>2]|1<>2]+(c<<2)>>2]=a;if(x){F[F[e>>2]+(a<<2)>>2]=c}j=g;l=a+1|0;a=(l>>>0)%3|0?l:a-2|0;b=-1;R:{if((a|0)==-1){break R}a=F[F[e+12>>2]+(a<<2)>>2];b=-1;if((a|0)==-1){break R}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0}a=b;if((j|0)!=(a|0)){continue}break}if((g|0)!=-1){break P}}S:{a=g+((g>>>0)%3|0?-1:2)|0;if((a|0)==-1){break S}a=F[F[e+12>>2]+(a<<2)>>2];if((a|0)==-1){break S}d=F[i>>2];a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)==-1){break P}while(1){b=(a>>>3&536870908)+d|0;F[b>>2]=F[b>>2]|1<>2]+(a<<2)>>2]=c}a=((a>>>0)%3|0?-1:2)+a|0;if((a|0)==-1){break P}a=F[F[e+12>>2]+(a<<2)>>2];if((a|0)==-1){break P}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}break P}d=F[i>>2]}a=f}w=w+1|0;if((w|0)!=3){continue}break}b=F[e>>2];g=F[e+4>>2]}o=o+1|0;if(o>>>0<(g-b>>2>>>0)/3>>>0){continue}break}}g=0;F[e+44>>2]=0;c=F[h>>2];a=F[h+4>>2];b=a>>>5|0;d=a&31;if(b|d){f=(b<<2)+c|0;a=0;b=c;while(1){if(!(F[b>>2]>>>a&1)){g=g+1|0;F[e+44>>2]=g}j=(a|0)==31;a=j?0:a+1|0;b=j?b+4|0:b;if((f|0)!=(b|0)|(a|0)!=(d|0)){continue}break}}a=F[i>>2];if(a){oa(a);c=F[h>>2]}if(c){oa(c)}ba=m+48|0}ba=A+16|0;T:{if(y){F[B>>2]=e;break T}F[B>>2]=0;F[C+8>>2]=0;Va(e)}ba=C+16|0;break f}sa();V()}ta(10748);V()}a=F[s>>2];if(!a){break d}F[s+4>>2]=a;oa(a)}ba=s+16|0;break b}sa();V()}a=F[q+8>>2];F[q+8>>2]=0;b=F[k+4>>2];F[k+4>>2]=a;if(b){Va(b);a=F[q+8>>2];F[q+8>>2]=0;if(a){Va(a)}a=F[k+4>>2]}U:{if(!a){break U}a=F[u+100>>2];b=F[u+96>>2];g=0;D[q+8|0]=0;Ga(k+56|0,(a-b|0)/12|0,q+8|0);a=F[u+100>>2];b=F[u+96>>2];if((a|0)==(b|0)){K=1;break U}while(1){if(!(F[F[k+56>>2]+(g>>>3&536870908)>>2]>>>g&1)){a=L(g,3);Xb(k,0,a);b=F[k+8>>2];c=F[k+12>>2];Xb(k,1,a+1|0);d=F[k+20>>2];f=F[k+24>>2];Xb(k,2,a+2|0);d=f-d>>2;b=c-b|0;c=b>>2;a=d>>>0>c>>>0;c=F[k+36>>2]-F[k+32>>2]>>2>>>0>(a?d:c)>>>0?2:a?1:b?0:-1;V:{if(F[k+68>>2]<1){break V}F[q+8>>2]=F[k+76>>2];F[q>>2]=n;Ta(q,q+8|0);b=q;d=F[((c<<2)+k|0)+44>>2];a=-1;W:{if((d|0)<0){break W}a=(d>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(a,12)|0)+(d-L(a,3)<<2)>>2]}F[b+8>>2]=a;F[q>>2]=n;Ta(q,q+8|0);b=F[k+72>>2];F[k+72>>2]=b+2;if(!(b&1)){break V}F[q+8>>2]=a;F[q>>2]=n;Ta(q,q+8|0);F[k+72>>2]=F[k+72>>2]+1}b=ba-16|0;ba=b;F[k+68>>2]=F[k+68>>2]+1;a=L(c,12)+k|0;f=F[a+12>>2]-F[a+8>>2]|0;j=(f|0)<1;X:{if(j){break X}d=F[((c<<2)+k|0)+44>>2];h=(d>>>0)/3|0;e=(d|0)==-1;a=e?-1:h;c=F[k+56>>2]+(a>>>3&536870908)|0;F[c>>2]=F[c>>2]|1<>2]=F[k+72>>2]+1;F[b+12>>2]=(d|0)>=0?F[(F[F[k>>2]+96>>2]+L(h,12)|0)+((d>>>0)%3<<2)>>2]:-1;F[b+8>>2]=n;Ta(b+8|0,b+12|0);Y:{if(!e){a=-1;c=b;e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;if((e|0)>=0){m=(e>>>0)/3|0;e=F[(F[F[k>>2]+96>>2]+L(m,12)|0)+(e-L(m,3)<<2)>>2]}else{e=-1}F[c+12>>2]=e;F[b+8>>2]=n;Ta(b+8|0,b+12|0);c=d+(d-L(h,3)|0?-1:2)|0;if((c|0)<0){break Y}a=(c>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(a,12)|0)+(c-L(a,3)<<2)>>2];break Y}a=-1;F[b+12>>2]=-1;F[b+8>>2]=n;Ta(b+8|0,b+12|0)}F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=n;a=-1;Ta(b+8|0,b+12|0);a=(d|0)!=-1?F[F[F[k+4>>2]+12>>2]+(d<<2)>>2]:a;d=1;c=L(f>>>2|0,j?f:1);if((c|0)<=1){break X}e=(c|0)>1?c:1;while(1){c=a;h=(a>>>0)/3|0;a=(a|0)==-1?-1:h;f=F[k+56>>2]+(a>>>3&536870908)|0;F[f>>2]=F[f>>2]|1<>2]=F[k+72>>2]+1;a=-1;a=(c|0)>=0?F[(F[F[k>>2]+96>>2]+L(h,12)|0)+((c>>>0)%3<<2)>>2]:a;F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=n;Ta(b+8|0,b+12|0);Z:{_:{if(d&1){a=-1;if((c|0)==-1){break Z}f=c-1|0;if((c|0)!=(L(h,3)|0)){break _}f=c+2|0;break _}a=-1;if((c|0)==-1){break Z}a=c+1|0;f=(a>>>0)%3|0?a:c-2|0}a=-1;if((f|0)==-1){break Z}a=F[F[F[k+4>>2]+12>>2]+(f<<2)>>2]}d=d+1|0;if((e|0)!=(d|0)){continue}break}}ba=b+16|0;b=F[u+96>>2];a=F[u+100>>2]}K=1;g=g+1|0;if(g>>>0<(a-b|0)/12>>>0){continue}break}}ba=q+16|0;$:{if(K){a=F[z>>2];if(a){F[z+4>>2]=a;oa(a)}F[z>>2]=F[n>>2];F[z+4>>2]=F[n+4>>2];F[z+8>>2]=F[n+8>>2];M=F[n+84>>2];break $}a=F[n>>2];if(!a){break $}F[n+4>>2]=a;oa(a)}a=F[n+72>>2];if(a){oa(a)}a=F[n+48>>2];if(a){F[n+52>>2]=a;oa(a)}a=F[n+36>>2];if(a){F[n+40>>2]=a;oa(a)}a=F[n+24>>2];if(a){F[n+28>>2]=a;oa(a)}a=F[n+20>>2];F[n+20>>2]=0;if(a){Va(a)}ba=n+96|0;return M|0}function Hc(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;m=ba-16|0;ba=m;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{if(a>>>0<=244){f=F[3165];i=a>>>0<11?16:a+11&-8;c=i>>>3|0;b=f>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;e=F[b+12708>>2];a=e+8|0;c=F[e+8>>2];b=b+12700|0;m:{if((c|0)==(b|0)){n=12660,o=li(d)&f,F[n>>2]=o;break m}F[c+12>>2]=b;F[b+8>>2]=c}b=d<<3;F[e+4>>2]=b|3;b=b+e|0;F[b+4>>2]=F[b+4>>2]|1;break a}k=F[3167];if(k>>>0>=i>>>0){break l}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+12708>>2];b=F[g+8>>2];a=a+12700|0;n:{if((b|0)==(a|0)){f=li(c)&f;F[3165]=f;break n}F[b+12>>2]=a;F[a+8>>2]=b}a=g+8|0;F[g+4>>2]=i|3;d=g+i|0;b=c<<3;e=b-i|0;F[d+4>>2]=e|1;F[b+g>>2]=e;if(k){b=k>>>3|0;c=(b<<3)+12700|0;g=F[3170];b=1<>2]}F[c+8>>2]=g;F[b+12>>2]=g;F[g+12>>2]=c;F[g+8>>2]=b}F[3170]=d;F[3167]=e;break a}h=F[3166];if(!h){break l}b=(h&0-h)-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)+12964>>2];d=(F[b+4>>2]&-8)-i|0;c=b;while(1){p:{a=F[c+16>>2];if(!a){a=F[c+20>>2];if(!a){break p}}c=(F[a+4>>2]&-8)-i|0;e=c>>>0>>0;d=e?c:d;b=e?a:b;c=a;continue}break}j=b+i|0;if(j>>>0<=b>>>0){break k}l=F[b+24>>2];e=F[b+12>>2];if((e|0)!=(b|0)){a=F[b+8>>2];F[a+12>>2]=e;F[e+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;e=a;c=a+20|0;a=F[c>>2];if(a){continue}c=e+16|0;a=F[e+16>>2];if(a){continue}break}F[g>>2]=0;break b}i=-1;if(a>>>0>4294967231){break l}a=a+11|0;i=a&-8;j=F[3166];if(!j){break l}f=31;d=0-i|0;if(i>>>0<=16777215){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;f=(a<<1|i>>>a+21&1)+28|0}c=F[(f<<2)+12964>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=i<<((f|0)==31?0:25-(f>>>1|0)|0);while(1){t:{g=(F[c+4>>2]&-8)-i|0;if(g>>>0>=d>>>0){break t}e=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|e)){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)+12964>>2]}if(!a){break q}}while(1){b=(F[a+4>>2]&-8)-i|0;c=b>>>0>>0;d=c?b:d;e=c?a:e;b=F[a+16>>2];if(b){a=b}else{a=F[a+20>>2]}if(a){continue}break}}if(!e|F[3167]-i>>>0<=d>>>0){break l}h=e+i|0;if(h>>>0<=e>>>0){break k}f=F[e+24>>2];b=F[e+12>>2];if((e|0)!=(b|0)){a=F[e+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break c}c=e+20|0;a=F[c>>2];if(!a){a=F[e+16>>2];if(!a){break i}c=e+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[3167];if(c>>>0>=i>>>0){d=F[3170];b=c-i|0;u:{if(b>>>0>=16){F[3167]=b;a=d+i|0;F[3170]=a;F[a+4>>2]=b|1;F[c+d>>2]=b;F[d+4>>2]=i|3;break u}F[3170]=0;F[3167]=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}h=F[3168];if(h>>>0>i>>>0){b=h-i|0;F[3168]=b;c=F[3171];a=c+i|0;F[3171]=a;F[a+4>>2]=b|1;F[c+4>>2]=i|3;a=c+8|0;break a}a=0;j=i+47|0;b=j;if(F[3283]){c=F[3285]}else{F[3286]=-1;F[3287]=-1;F[3284]=4096;F[3285]=4096;F[3283]=m+12&-16^1431655768;F[3288]=0;F[3276]=0;c=4096}g=b+c|0;e=0-c|0;c=g&e;if(c>>>0<=i>>>0){break a}d=F[3275];if(d){b=F[3273];f=b+c|0;if(d>>>0>>0|b>>>0>=f>>>0){break a}}if(G[13104]&4){break f}v:{w:{d=F[3171];if(d){a=13108;while(1){b=F[a>>2];if(d>>>0>2]>>>0?b>>>0<=d>>>0:0){break w}a=F[a+8>>2];if(a){continue}break}}b=_a(0);if((b|0)==-1){break g}f=c;d=F[3284];a=d-1|0;if(a&b){f=(c-b|0)+(a+b&0-d)|0}if(f>>>0<=i>>>0|f>>>0>2147483646){break g}d=F[3275];if(d){a=F[3273];e=a+f|0;if(d>>>0>>0|a>>>0>=e>>>0){break g}}a=_a(f);if((b|0)!=(a|0)){break v}break e}f=e&g-h;if(f>>>0>2147483646){break g}b=_a(f);if((b|0)==(F[a>>2]+F[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|i+48>>>0<=f>>>0)){b=F[3285];b=b+(j-f|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((_a(b)|0)!=-1){f=b+f|0;b=a;break e}_a(0-f|0);break g}b=a;if((a|0)!=-1){break e}break g}V()}e=0;break b}b=0;break c}if((b|0)!=-1){break e}}F[3276]=F[3276]|4}if(c>>>0>2147483646){break d}b=_a(c);a=_a(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}f=a-b|0;if(f>>>0<=i+40>>>0){break d}}a=F[3273]+f|0;F[3273]=a;if(a>>>0>I[3274]){F[3274]=a}x:{y:{z:{g=F[3171];if(g){a=13108;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[3169];if(!(a>>>0<=b>>>0?a:0)){F[3169]=b}a=0;F[3278]=f;F[3277]=b;F[3173]=-1;F[3174]=F[3283];F[3280]=0;while(1){d=a<<3;c=d+12700|0;F[d+12708>>2]=c;F[d+12712>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=f-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[3168]=c;a=a+b|0;F[3171]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[3172]=F[3287];break x}if(F[a+12>>2]&8|b>>>0<=g>>>0|d>>>0>g>>>0){break y}F[a+4>>2]=c+f;a=g+8&7?-8-g&7:0;c=a+g|0;F[3171]=c;b=F[3168]+f|0;a=b-a|0;F[3168]=a;F[c+4>>2]=a|1;F[(b+g|0)+4>>2]=40;F[3172]=F[3287];break x}if(I[3169]>b>>>0){F[3169]=b}c=b+f|0;a=13108;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=13108;while(1){c=F[a>>2];if(c>>>0<=g>>>0){e=c+F[a+4>>2]|0;if(e>>>0>g>>>0){break D}}a=F[a+8>>2];continue}}F[a>>2]=b;F[a+4>>2]=F[a+4>>2]+f;j=(b+8&7?-8-b&7:0)+b|0;F[j+4>>2]=i|3;f=c+(c+8&7?-8-c&7:0)|0;h=i+j|0;c=f-h|0;if((f|0)==(g|0)){F[3171]=h;a=F[3168]+c|0;F[3168]=a;F[h+4>>2]=a|1;break B}if(F[3170]==(f|0)){F[3170]=h;a=F[3167]+c|0;F[3167]=a;F[h+4>>2]=a|1;F[a+h>>2]=a;break B}a=F[f+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=F[f+8>>2];a=a>>>3|0;b=F[f+12>>2];if((b|0)==(d|0)){n=12660,o=F[3165]&li(a),F[n>>2]=o;break G}F[d+12>>2]=b;F[b+8>>2]=d;break G}i=F[f+24>>2];b=F[f+12>>2];H:{if((f|0)!=(b|0)){a=F[f+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break H}I:{a=f+20|0;d=F[a>>2];if(d){break I}a=f+16|0;d=F[a>>2];if(d){break I}b=0;break H}while(1){e=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[e>>2]=0}if(!i){break G}d=F[f+28>>2];a=(d<<2)+12964|0;J:{if(F[a>>2]==(f|0)){F[a>>2]=b;if(b){break J}n=12664,o=F[3166]&li(d),F[n>>2]=o;break G}F[i+(F[i+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break G}}F[b+24>>2]=i;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 G}F[b+20>>2]=a;F[a+24>>2]=b}f=f+g|0;c=c+g|0}F[f+4>>2]=F[f+4>>2]&-2;F[h+4>>2]=c|1;F[c+h>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+12700|0;c=F[3165];a=1<>2]}F[b+8>>2]=h;F[a+12>>2]=h;F[h+12>>2]=b;F[h+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;e=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|e))|0;a=(a<<1|c>>>a+21&1)+28|0}F[h+28>>2]=a;F[h+16>>2]=0;F[h+20>>2]=0;e=(a<<2)+12964|0;d=F[3166];b=1<>2]=h;F[h+24>>2]=e;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[e>>2];while(1){d=b;if((F[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;e=d+(b&4)|0;b=F[e+16>>2];if(b){continue}break}F[e+16>>2]=h;F[h+24>>2]=d}F[h+12>>2]=h;F[h+8>>2]=h;break B}d=f-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[3168]=c;a=a+b|0;F[3171]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[3172]=F[3287];a=(e+(e-39&7?39-e&7:0)|0)-47|0;c=a>>>0>>0?g:a;F[c+4>>2]=27;a=F[3280];F[c+16>>2]=F[3279];F[c+20>>2]=a;a=F[3278];F[c+8>>2]=F[3277];F[c+12>>2]=a;F[3279]=c+8;F[3278]=f;F[3277]=b;F[3280]=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;e=c-g|0;F[g+4>>2]=e|1;F[c>>2]=e;if(e>>>0<=255){a=e>>>3|0;b=(a<<3)+12700|0;c=F[3165];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(e>>>0<=16777215){a=e>>>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|e>>>a+21&1)+28|0}F[g+28>>2]=a;d=(a<<2)+12964|0;c=F[3166];b=1<>2]=g;F[g+24>>2]=d;break N}a=e<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[d>>2];while(1){c=b;if((e|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]=h;F[d+8>>2]=h;F[h+24>>2]=0;F[h+12>>2]=d;F[h+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[3168];if(a>>>0<=i>>>0){break d}b=a-i|0;F[3168]=b;c=F[3171];a=c+i|0;F[3171]=a;F[a+4>>2]=b|1;F[c+4>>2]=i|3;a=c+8|0;break a}F[3163]=48;a=0;break a}O:{if(!f){break O}c=F[e+28>>2];a=(c<<2)+12964|0;P:{if(F[a>>2]==(e|0)){F[a>>2]=b;if(b){break P}j=li(c)&j;F[3166]=j;break O}F[f+(F[f+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break O}}F[b+24>>2]=f;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 O}F[b+20>>2]=a;F[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+i|0;F[e+4>>2]=a|3;a=a+e|0;F[a+4>>2]=F[a+4>>2]|1;break Q}F[e+4>>2]=i|3;F[h+4>>2]=d|1;F[d+h>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+12700|0;c=F[3165];a=1<>2]}F[b+8>>2]=h;F[a+12>>2]=h;F[h+12>>2]=b;F[h+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[h+28>>2]=a;F[h+16>>2]=0;F[h+20>>2]=0;c=(a<<2)+12964|0;S:{b=1<>2]=h;F[h+24>>2]=c;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);i=F[c>>2];while(1){b=i;if((F[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=b+(c&4)|0;i=F[c+16>>2];if(i){continue}break}F[c+16>>2]=h;F[h+24>>2]=b}F[h+12>>2]=h;F[h+8>>2]=h;break Q}a=F[b+8>>2];F[a+12>>2]=h;F[b+8>>2]=h;F[h+24>>2]=0;F[h+12>>2]=b;F[h+8>>2]=a}a=e+8|0;break a}U:{if(!l){break U}c=F[b+28>>2];a=(c<<2)+12964|0;V:{if(F[a>>2]==(b|0)){F[a>>2]=e;if(e){break V}n=12664,o=li(c)&h,F[n>>2]=o;break U}F[(F[l+16>>2]==(b|0)?16:20)+l>>2]=e;if(!e){break U}}F[e+24>>2]=l;a=F[b+16>>2];if(a){F[e+16>>2]=a;F[a+24>>2]=e}a=F[b+20>>2];if(!a){break U}F[e+20>>2]=a;F[a+24>>2]=e}W:{if(d>>>0<=15){a=d+i|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]=i|3;F[j+4>>2]=d|1;F[d+j>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+12700|0;e=F[3170];a=1<>2]}F[c+8>>2]=e;F[a+12>>2]=e;F[e+12>>2]=c;F[e+8>>2]=a}F[3170]=j;F[3167]=d}a=b+8|0}ba=m+16|0;return a|0}function Sd(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;f=ba-80|0;ba=f;g=F[c+36>>2];F[f+72>>2]=F[c+32>>2];F[f+76>>2]=g;h=F[c+28>>2];g=f- -64|0;F[g>>2]=F[c+24>>2];F[g+4>>2]=h;g=F[c+20>>2];F[f+56>>2]=F[c+16>>2];F[f+60>>2]=g;g=F[c+12>>2];F[f+48>>2]=F[c+8>>2];F[f+52>>2]=g;g=F[c+4>>2];F[f+40>>2]=F[c>>2];F[f+44>>2]=g;jc(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}m=a+4|0;if(D[a+15|0]<=-1){oa(F[m>>2])}if(G[f+31|0]!=1){b=pa(32);F[f>>2]=b;F[f+4>>2]=20;F[f+8>>2]=-2147483616;D[b+20|0]=0;c=G[8028]|G[8029]<<8|(G[8030]<<16|G[8031]<<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[8024]|G[8025]<<8|(G[8026]<<16|G[8027]<<24);d=G[8020]|G[8021]<<8|(G[8022]<<16|G[8023]<<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[8016]|G[8017]<<8|(G[8018]<<16|G[8019]<<24);d=G[8012]|G[8013]<<8|(G[8014]<<16|G[8015]<<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;F[a>>2]=-1;ua(m,f);if(D[f+11|0]>-1){break a}oa(F[f>>2]);break a}g=ba-32|0;ba=g;b:{c:{switch(G[f+32|0]){case 0:e=pa(48);Nd(e);F[e>>2]=9992;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=pa(52);Nd(e);F[e+48>>2]=0;F[e>>2]=8232;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}}e=pa(32);F[g>>2]=e;F[g+4>>2]=28;F[g+8>>2]=-2147483616;D[e+28|0]=0;h=G[7980]|G[7981]<<8|(G[7982]<<16|G[7983]<<24);D[e+24|0]=h;D[e+25|0]=h>>>8;D[e+26|0]=h>>>16;D[e+27|0]=h>>>24;h=G[7976]|G[7977]<<8|(G[7978]<<16|G[7979]<<24);j=G[7972]|G[7973]<<8|(G[7974]<<16|G[7975]<<24);D[e+16|0]=j;D[e+17|0]=j>>>8;D[e+18|0]=j>>>16;D[e+19|0]=j>>>24;D[e+20|0]=h;D[e+21|0]=h>>>8;D[e+22|0]=h>>>16;D[e+23|0]=h>>>24;h=G[7968]|G[7969]<<8|(G[7970]<<16|G[7971]<<24);j=G[7964]|G[7965]<<8|(G[7966]<<16|G[7967]<<24);D[e+8|0]=j;D[e+9|0]=j>>>8;D[e+10|0]=j>>>16;D[e+11|0]=j>>>24;D[e+12|0]=h;D[e+13|0]=h>>>8;D[e+14|0]=h>>>16;D[e+15|0]=h>>>24;h=G[7960]|G[7961]<<8|(G[7962]<<16|G[7963]<<24);j=G[7956]|G[7957]<<8|(G[7958]<<16|G[7959]<<24);D[e|0]=j;D[e+1|0]=j>>>8;D[e+2|0]=j>>>16;D[e+3|0]=j>>>24;D[e+4|0]=h;D[e+5|0]=h>>>8;D[e+6|0]=h>>>16;D[e+7|0]=h>>>24;F[g+16>>2]=-1;e=ua(g+16|4,g);F[f>>2]=F[g+16>>2];ua(f+4|0,e);F[f+16>>2]=0;if(D[e+11|0]<=-1){oa(F[e>>2])}if(D[g+11|0]>-1){break b}oa(F[g>>2])}ba=g+32|0;e=F[f>>2];d:{if(e){F[a>>2]=e;ua(m,f|4);break d}g=F[f+16>>2];F[f+16>>2]=0;F[g+44>>2]=d;e=ba-32|0;ba=e;F[g+32>>2]=c;F[g+40>>2]=b;F[g+4>>2]=d;jc(a,c,e+16|0);e:{if(F[a>>2]){break e}j=a+4|0;if(D[a+15|0]<=-1){oa(F[j>>2])}b=G[e+23|0];if((da[F[F[g>>2]+8>>2]](g)|0)!=(b|0)){b=pa(64);F[e>>2]=b;F[e+4>>2]=50;F[e+8>>2]=-2147483584;D[b+50|0]=0;c=G[10401]|G[10402]<<8;D[b+48|0]=c;D[b+49|0]=c>>>8;c=G[10397]|G[10398]<<8|(G[10399]<<16|G[10400]<<24);d=G[10393]|G[10394]<<8|(G[10395]<<16|G[10396]<<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[10389]|G[10390]<<8|(G[10391]<<16|G[10392]<<24);d=G[10385]|G[10386]<<8|(G[10387]<<16|G[10388]<<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[10381]|G[10382]<<8|(G[10383]<<16|G[10384]<<24);d=G[10377]|G[10378]<<8|(G[10379]<<16|G[10380]<<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[10373]|G[10374]<<8|(G[10375]<<16|G[10376]<<24);d=G[10369]|G[10370]<<8|(G[10371]<<16|G[10372]<<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[10365]|G[10366]<<8|(G[10367]<<16|G[10368]<<24);d=G[10361]|G[10362]<<8|(G[10363]<<16|G[10364]<<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[10357]|G[10358]<<8|(G[10359]<<16|G[10360]<<24);d=G[10353]|G[10354]<<8|(G[10355]<<16|G[10356]<<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;F[a>>2]=-1;ua(j,e);if(D[e+11|0]>-1){break e}oa(F[e>>2]);break e}c=G[e+21|0];D[g+36|0]=c;d=G[e+22|0];D[g+37|0]=d;if((c|0)!=2){b=pa(32);F[e>>2]=b;F[e+4>>2]=26;F[e+8>>2]=-2147483616;D[b+26|0]=0;c=G[10428]|G[10429]<<8;D[b+24|0]=c;D[b+25|0]=c>>>8;c=G[10424]|G[10425]<<8|(G[10426]<<16|G[10427]<<24);d=G[10420]|G[10421]<<8|(G[10422]<<16|G[10423]<<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[10416]|G[10417]<<8|(G[10418]<<16|G[10419]<<24);d=G[10412]|G[10413]<<8|(G[10414]<<16|G[10415]<<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[10408]|G[10409]<<8|(G[10410]<<16|G[10411]<<24);d=G[10404]|G[10405]<<8|(G[10406]<<16|G[10407]<<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;F[a>>2]=-5;ua(j,e);if(D[e+11|0]>-1){break e}oa(F[e>>2]);break e}b=b?2:3;if((b|0)!=(d|0)){b=pa(32);F[e>>2]=b;F[e+4>>2]=26;F[e+8>>2]=-2147483616;D[b+26|0]=0;c=G[10455]|G[10456]<<8;D[b+24|0]=c;D[b+25|0]=c>>>8;c=G[10451]|G[10452]<<8|(G[10453]<<16|G[10454]<<24);d=G[10447]|G[10448]<<8|(G[10449]<<16|G[10450]<<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[10443]|G[10444]<<8|(G[10445]<<16|G[10446]<<24);d=G[10439]|G[10440]<<8|(G[10441]<<16|G[10442]<<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[10435]|G[10436]<<8|(G[10437]<<16|G[10438]<<24);d=G[10431]|G[10432]<<8|(G[10433]<<16|G[10434]<<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;F[a>>2]=-5;ua(j,e);if(D[e+11|0]>-1){break e}oa(F[e>>2]);break e}E[F[g+32>>2]+38>>1]=b|512;f:{if(E[e+26>>1]>-1){break f}h=ba-32|0;ba=h;b=pa(36);F[b+4>>2]=0;F[b+8>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;c=b+16|0;F[c>>2]=0;F[c+4>>2]=0;F[b>>2]=b+4;F[b+32>>2]=0;F[b+12>>2]=c;F[h+24>>2]=b;n=h+16|0;F[n>>2]=0;i=F[g+32>>2];c=ba-16|0;ba=c;g:{h:{if(!b){break h}F[n>>2]=i;F[c+12>>2]=0;d=0;if(!gb(1,c+12|0,i)){break g}i:{p=F[c+12>>2];if(p){while(1){if(!gb(1,c+8|0,F[n>>2])){break h}d=pa(28);F[d+4>>2]=0;F[d+8>>2]=0;i=d+16|0;F[i>>2]=0;F[i+4>>2]=0;F[d>>2]=d+4;F[d+12>>2]=i;F[d+24>>2]=F[c+8>>2];if(!Vc(n,d)){break i}F[c>>2]=d;i=F[c>>2];j:{if(!i){break j}d=F[b+28>>2];if(d>>>0>2]){F[c>>2]=0;F[d>>2]=i;F[b+28>>2]=d+4;break j}d=0;k:{l:{m:{k=F[b+24>>2];o=F[b+28>>2]-k>>2;i=o+1|0;if(i>>>0<1073741824){k=F[b+32>>2]-k|0;l=k>>1;i=k>>2>>>0<536870911?i>>>0>l>>>0?i:l:1073741823;if(i){if(i>>>0>=1073741824){break m}d=pa(i<<2)}l=F[c>>2];F[c>>2]=0;k=(o<<2)+d|0;F[k>>2]=l;o=(i<<2)+d|0;l=k+4|0;d=F[b+28>>2];i=F[b+24>>2];if((d|0)==(i|0)){break l}while(1){d=d-4|0;r=F[d>>2];F[d>>2]=0;k=k-4|0;F[k>>2]=r;if((d|0)!=(i|0)){continue}break}F[b+32>>2]=o;d=F[b+28>>2];F[b+28>>2]=l;i=F[b+24>>2];F[b+24>>2]=k;if((d|0)==(i|0)){break k}while(1){d=d-4|0;k=F[d>>2];F[d>>2]=0;if(k){Ea(k+12|0,F[k+16>>2]);Da(k,F[k+4>>2]);oa(k)}if((d|0)!=(i|0)){continue}break}break k}sa();V()}ta(11144);V()}F[b+32>>2]=o;F[b+28>>2]=l;F[b+24>>2]=k}if(i){oa(i)}}d=F[c>>2];F[c>>2]=0;if(d){Ea(d+12|0,F[d+16>>2]);Da(d,F[d+4>>2]);oa(d)}q=q+1|0;if((q|0)!=(p|0)){continue}break}}d=Vc(n,b);break g}Ea(d+12|0,F[d+16>>2]);Da(d,F[d+4>>2]);oa(d)}d=0}ba=c+16|0;n:{if(!d){b=pa(32);F[h>>2]=b;F[h+4>>2]=26;F[h+8>>2]=-2147483616;D[b+26|0]=0;c=G[10350]|G[10351]<<8;D[b+24|0]=c;D[b+25|0]=c>>>8;c=G[10346]|G[10347]<<8|(G[10348]<<16|G[10349]<<24);d=G[10342]|G[10343]<<8|(G[10344]<<16|G[10345]<<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[10338]|G[10339]<<8|(G[10340]<<16|G[10341]<<24);d=G[10334]|G[10335]<<8|(G[10336]<<16|G[10337]<<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[10330]|G[10331]<<8|(G[10332]<<16|G[10333]<<24);d=G[10326]|G[10327]<<8|(G[10328]<<16|G[10329]<<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;F[a>>2]=-1;ua(a+4|0,h);if(D[h+11|0]>-1){break n}oa(F[h>>2]);break n}c=F[g+4>>2];F[h+24>>2]=0;d=F[c+4>>2];F[c+4>>2]=b;if(d){ic(d)}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}b=F[h+24>>2];F[h+24>>2]=0;if(b){ic(b)}ba=h+32|0;if(F[a>>2]){break e}if(D[j+11|0]>-1){break f}oa(F[j>>2])}if(!(da[F[F[g>>2]+12>>2]](g)|0)){b=pa(48);F[e>>2]=b;F[e+4>>2]=33;F[e+8>>2]=-2147483600;D[b+33|0]=0;D[b+32|0]=G[10490];c=G[10486]|G[10487]<<8|(G[10488]<<16|G[10489]<<24);d=G[10482]|G[10483]<<8|(G[10484]<<16|G[10485]<<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[10478]|G[10479]<<8|(G[10480]<<16|G[10481]<<24);d=G[10474]|G[10475]<<8|(G[10476]<<16|G[10477]<<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[10470]|G[10471]<<8|(G[10472]<<16|G[10473]<<24);d=G[10466]|G[10467]<<8|(G[10468]<<16|G[10469]<<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[10462]|G[10463]<<8|(G[10464]<<16|G[10465]<<24);d=G[10458]|G[10459]<<8|(G[10460]<<16|G[10461]<<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;F[a>>2]=-1;ua(j,e);if(D[e+11|0]>-1){break e}oa(F[e>>2]);break e}if(!(da[F[F[g>>2]+20>>2]](g)|0)){b=Kb(e,10492);F[a>>2]=-1;ua(j,b);if(D[b+11|0]>-1){break e}oa(F[b>>2]);break e}if(!(da[F[F[g>>2]+24>>2]](g)|0)){b=Kb(e,10524);F[a>>2]=-1;ua(j,b);if(D[b+11|0]>-1){break e}oa(F[b>>2]);break e}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ba=e+32|0;if(!F[a>>2]){if(D[m+11|0]<=-1){oa(F[m>>2])}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}da[F[F[g>>2]+4>>2]](g)}a=F[f+16>>2];F[f+16>>2]=0;if(a){da[F[F[a>>2]+4>>2]](a)}if(D[f+15|0]>-1){break a}oa(F[f+4>>2])}ba=f+80|0}function Vc(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;i=ba-48|0;ba=i;c=pa(8);F[c+4>>2]=b;F[c>>2]=0;b=c+8|0;F[i+40>>2]=b;F[i+36>>2]=b;F[i+32>>2]=c;a:{b:{c:{d:{while(1){b=b-8|0;k=F[b+4>>2];l=F[b>>2];F[i+36>>2]=b;if(l){F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;b=1;c=F[a>>2];g=F[c+16>>2];f=F[c+12>>2];d=F[c+20>>2];e:{if((d|0)>(f|0)?1:(f|0)<=(d|0)?I[c+8>>2]<=g>>>0:0){break e}e=G[g+F[c>>2]|0];f=g+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;Vb(i+16|0,e);if(e){d=F[a>>2];o=Ub(i+16|0);m=F[d+20>>2];g=F[d+16>>2];c=e;j=g+c|0;h=F[d+12>>2];m=c>>>0>j>>>0?m+1|0:m;if((h|0)<(m|0)?1:(h|0)<=(m|0)?j>>>0>I[d+8>>2]:0){break e}qa(o,g+F[d>>2]|0,e);f=F[d+20>>2];e=c+F[d+16>>2]|0;f=e>>>0>>0?f+1|0:f;F[d+16>>2]=e;F[d+20>>2]=f}k=pa(24);b=k;F[b+4>>2]=0;F[b+8>>2]=0;b=b+16|0;F[b>>2]=0;F[b+4>>2]=0;F[k>>2]=k+4;F[k+12>>2]=b;F[i+8>>2]=k;f=ba-32|0;ba=f;p=l+12|0;e=i+16|0;j=bb(p,e);o=l+16|0;f:{if((j|0)!=(o|0)){break f}F[f+16>>2]=e;b=F[p+4>>2];g:{h:{if(b){d=G[e+11|0];c=d<<24>>24<0;l=c?F[e>>2]:e;q=c?F[e+4>>2]:d;c=p+4|0;while(1){d=G[b+27|0];e=d<<24>>24<0;m=e?F[b+20>>2]:d;h=m>>>0>>0;i:{j:{k:{l:{m:{g=h?m:q;n:{if(g){d=b+16|0;e=e?F[d>>2]:d;d=wa(l,e,g);if(!d){if(m>>>0>q>>>0){break n}break m}if((d|0)>-1){break m}break n}if(m>>>0<=q>>>0){break l}}d=F[b>>2];if(d){break i}break h}d=wa(e,l,g);if(d){break k}}if(h){break j}break g}if((d|0)>-1){break g}}c=b+4|0;d=F[b+4>>2];if(!d){break g}b=c}c=b;b=d;continue}}b=p+4|0}c=b}e=f;d=F[c>>2];if(d){b=0}else{d=pa(32);ua(d+16|0,F[f+16>>2]);F[d+8>>2]=b;F[d>>2]=0;F[d+4>>2]=0;F[d+28>>2]=0;F[c>>2]=d;g=F[F[p>>2]>>2];b=d;o:{if(!g){break o}F[p>>2]=g;b=F[c>>2]}rb(F[p+4>>2],b);F[p+8>>2]=F[p+8>>2]+1;b=1}D[e+28|0]=b;F[f+24>>2]=d;c=F[f+24>>2];b=F[i+8>>2];F[i+8>>2]=0;d=F[c+28>>2];F[c+28>>2]=b;if(!d){break f}Ea(d+12|0,F[d+16>>2]);Da(d,F[d+4>>2]);oa(d)}ba=f+32|0;b=F[i+8>>2];F[i+8>>2]=0;if(b){Ea(b+12|0,F[b+16>>2]);Da(b,F[b+4>>2]);oa(b)}b=(j|0)!=(o|0)}if(D[i+27|0]<=-1){oa(F[i+16>>2])}if(b){break b}}if(!k){break b}F[i+16>>2]=0;if(!gb(1,i+16|0,F[a>>2])){break b}p:{p=F[i+16>>2];if(!p){break p}b=1;while(1){o=0;n=ba-32|0;ba=n;F[n+24>>2]=0;F[n+16>>2]=0;F[n+20>>2]=0;q:{r:{c=F[a>>2];g=F[c+16>>2];f=F[c+12>>2];d=F[c+20>>2];s:{if((d|0)>(f|0)?1:(f|0)<=(d|0)?I[c+8>>2]<=g>>>0:0){break s}e=G[g+F[c>>2]|0];f=d;d=g+1|0;f=d>>>0<1?f+1|0:f;F[c+16>>2]=d;F[c+20>>2]=f;Vb(n+16|0,e);if(e){f=F[a>>2];h=Ub(n+16|0);d=F[f+20>>2];j=F[f+16>>2];c=e;l=j+c|0;m=F[f+12>>2];d=c>>>0>l>>>0?d+1|0:d;if((d|0)>(m|0)?1:(m|0)<=(d|0)?l>>>0>I[f+8>>2]:0){break s}qa(h,j+F[f>>2]|0,e);d=f;f=F[d+20>>2];e=c+F[d+16>>2]|0;F[d+16>>2]=e;F[d+20>>2]=c>>>0>e>>>0?f+1|0:f}F[n+12>>2]=0;if(!gb(1,n+12|0,F[a>>2])){break s}e=F[n+12>>2];if(!e){break s}F[n+8>>2]=0;F[n>>2]=0;F[n+4>>2]=0;if((e|0)<=-1){break r}d=pa(e);F[n>>2]=d;c=d+e|0;F[n+8>>2]=c;h=ra(d,0,e);F[n+4>>2]=c;f=F[a>>2];m=F[f+20>>2];j=F[f+16>>2];c=e;o=j+c|0;l=F[f+12>>2];m=c>>>0>o>>>0?m+1|0:m;o=(l|0)>(m|0)?1:(l|0)>=(m|0)?I[f+8>>2]>=o>>>0:0;if(o){qa(h,j+F[f>>2]|0,e);d=f;f=F[d+20>>2];e=c+F[d+16>>2]|0;F[d+16>>2]=e;F[d+20>>2]=c>>>0>e>>>0?f+1|0:f;h=ba-48|0;ba=h;q=n+16|0;c=bb(k,q);if((c|0)!=(k+4|0)){f=F[c+4>>2];t:{if(!f){e=F[c+8>>2];if((c|0)==F[e>>2]){break t}f=c+8|0;while(1){d=F[f>>2];f=d+8|0;e=F[d+8>>2];if((d|0)!=F[e>>2]){continue}break}break t}while(1){e=f;f=F[e>>2];if(f){continue}break}}if((c|0)==F[k>>2]){F[k>>2]=e}F[k+8>>2]=F[k+8>>2]-1;f=F[k+4>>2];u:{v:{j=c;e=c;d=F[c>>2];if(d){c=F[j+4>>2];if(!c){break v}while(1){e=c;c=F[c>>2];if(c){continue}break}}d=F[e+4>>2];if(d){break v}d=0;g=1;break u}F[d+8>>2]=F[e+8>>2];g=0}l=F[e+8>>2];c=F[l>>2];w:{if((e|0)==(c|0)){F[l>>2]=d;if((e|0)==(f|0)){c=0;f=d;break w}c=F[l+4>>2];break w}F[l+4>>2]=d}m=!G[e+12|0];if((e|0)!=(j|0)){l=F[j+8>>2];F[e+8>>2]=l;F[l+(((j|0)!=F[F[j+8>>2]>>2])<<2)>>2]=e;l=F[j>>2];F[e>>2]=l;F[l+8>>2]=e;l=F[j+4>>2];F[e+4>>2]=l;if(l){F[l+8>>2]=e}D[e+12|0]=G[j+12|0];f=(f|0)==(j|0)?e:f}x:{if(m|!f){break x}if(g){while(1){d=G[c+12|0];y:{g=F[c+8>>2];if(F[g>>2]!=(c|0)){z:{A:{if(!d){D[c+12|0]=1;D[g+12|0]=0;e=F[g+4>>2];d=F[e>>2];F[g+4>>2]=d;if(d){F[d+8>>2]=g}F[e+8>>2]=F[g+8>>2];d=F[g+8>>2];F[(((g|0)!=F[d>>2])<<2)+d>>2]=e;F[e>>2]=g;F[g+8>>2]=e;d=c;c=F[c>>2];f=(c|0)==(f|0)?d:f;c=F[c+4>>2]}e=F[c>>2];B:{if(!(G[e+12|0]?0:e)){d=F[c+4>>2];if(G[d+12|0]?0:d){break B}D[c+12|0]=0;c=F[c+8>>2];C:{if((f|0)==(c|0)){c=f;break C}if(G[c+12|0]){break y}}D[c+12|0]=1;break x}d=F[c+4>>2];if(!d){break A}}if(G[d+12|0]){break A}e=c;break z}D[e+12|0]=1;D[c+12|0]=0;d=F[e+4>>2];F[c>>2]=d;if(d){F[d+8>>2]=c}F[e+8>>2]=F[c+8>>2];d=F[c+8>>2];F[((F[d>>2]!=(c|0))<<2)+d>>2]=e;F[e+4>>2]=c;F[c+8>>2]=e;d=c}c=e;e=F[e+8>>2];D[c+12|0]=G[e+12|0];D[e+12|0]=1;D[d+12|0]=1;d=F[e+4>>2];c=F[d>>2];F[e+4>>2]=c;if(c){F[c+8>>2]=e}F[d+8>>2]=F[e+8>>2];c=F[e+8>>2];F[(((e|0)!=F[c>>2])<<2)+c>>2]=d;F[d>>2]=e;F[e+8>>2]=d;break x}D:{if(d){d=c;break D}D[c+12|0]=1;D[g+12|0]=0;d=F[c+4>>2];F[g>>2]=d;if(d){F[d+8>>2]=g}F[c+8>>2]=F[g+8>>2];e=F[g+8>>2];E:{if((g|0)==F[e>>2]){F[e>>2]=c;d=F[g>>2];break E}F[e+4>>2]=c}F[c+4>>2]=g;F[g+8>>2]=c;f=(f|0)==(g|0)?c:f}e=F[d>>2];F:{if(!(!e|G[e+12|0])){c=d;break F}c=F[d+4>>2];if(!(G[c+12|0]?0:c)){D[d+12|0]=0;c=F[d+8>>2];if((c|0)!=(f|0)?G[c+12|0]:0){break y}D[c+12|0]=1;break x}if(e){if(!G[e+12|0]){c=d;break F}c=F[d+4>>2]}D[c+12|0]=1;D[d+12|0]=0;e=F[c>>2];F[d+4>>2]=e;if(e){F[e+8>>2]=d}F[c+8>>2]=F[d+8>>2];e=F[d+8>>2];F[((F[e>>2]!=(d|0))<<2)+e>>2]=c;F[c>>2]=d;F[d+8>>2]=c;e=d}f=F[c+8>>2];D[c+12|0]=G[f+12|0];D[f+12|0]=1;D[e+12|0]=1;d=F[f>>2];c=F[d+4>>2];F[f>>2]=c;if(c){F[c+8>>2]=f}F[d+8>>2]=F[f+8>>2];c=F[f+8>>2];F[(((f|0)!=F[c>>2])<<2)+c>>2]=d;F[d+4>>2]=f;F[f+8>>2]=d;break x}d=c;c=F[c+8>>2];c=F[(((d|0)==F[c>>2])<<2)+c>>2];continue}}D[d+12|0]=1}c=F[j+28>>2];if(c){F[j+32>>2]=c;oa(c)}if(D[j+27|0]<=-1){oa(F[j+16>>2])}oa(j)}F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;c=F[n+4>>2]-F[n>>2]|0;ib(h,c);qa(F[h>>2],F[n>>2],c);f=ua(h+16|0,q);F[h+36>>2]=0;F[h+28>>2]=0;F[h+32>>2]=0;ib(h+28|0,F[h+4>>2]-F[h>>2]|0);c=F[h>>2];qa(F[h+28>>2],c,F[h+4>>2]-c|0);c=F[k+4>>2];G:{H:{if(c){e=G[f+11|0];d=e<<24>>24<0;l=d?F[f>>2]:f;q=d?F[f+4>>2]:e;d=k+4|0;while(1){e=G[c+27|0];f=e<<24>>24<0;m=f?F[c+20>>2]:e;j=m>>>0>>0;I:{J:{K:{L:{M:{g=j?m:q;N:{if(g){e=c+16|0;f=f?F[e>>2]:e;e=wa(l,f,g);if(!e){if(m>>>0>q>>>0){break N}break M}if((e|0)>-1){break M}break N}if(m>>>0<=q>>>0){break L}}e=F[c>>2];if(e){break I}break H}e=wa(f,l,g);if(e){break K}}if(j){break J}break G}if((e|0)>-1){break G}}d=c+4|0;e=F[c+4>>2];if(!e){break G}c=d}d=c;c=e;continue}}c=k+4|0}d=c}f=h;e=F[d>>2];if(e){c=0}else{e=pa(40);F[e+24>>2]=F[h+24>>2];g=F[h+20>>2];F[e+16>>2]=F[h+16>>2];F[e+20>>2]=g;F[h+16>>2]=0;F[h+20>>2]=0;F[h+24>>2]=0;F[e+36>>2]=0;g=e+28|0;F[g>>2]=0;F[g+4>>2]=0;ib(g,F[h+32>>2]-F[h+28>>2]|0);j=F[g>>2];g=F[h+28>>2];qa(j,g,F[h+32>>2]-g|0);F[e+8>>2]=c;F[e>>2]=0;F[e+4>>2]=0;F[d>>2]=e;g=F[F[k>>2]>>2];c=e;O:{if(!g){break O}F[k>>2]=g;c=F[d>>2]}rb(F[k+4>>2],c);F[k+8>>2]=F[k+8>>2]+1;c=1}D[f+44|0]=c;F[h+40>>2]=e;c=F[h+28>>2];if(c){F[h+32>>2]=c;oa(c)}if(D[h+27|0]<=-1){oa(F[h+16>>2])}c=F[h>>2];if(c){F[h+4>>2]=c;oa(c)}ba=h+48|0;d=F[n>>2];if(!d){break s}}F[n+4>>2]=d;oa(d)}if(D[n+27|0]<=-1){oa(F[n+16>>2])}ba=n+32|0;c=o;break q}sa();V()}if(!c){break b}if((b|0)==(p|0)){break p}b=b+1|0;continue}}F[i+4>>2]=0;if(!gb(1,i+4|0,F[a>>2])){break b}j=F[i+4>>2];d=F[a>>2];c=F[d+8>>2];b=F[d+16>>2];e=j>>>0>c-b>>>0;b=F[d+12>>2]-(F[d+20>>2]+(b>>>0>c>>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?e:0){break b}b=0;if(j){while(1){c=F[i+36>>2];d=F[i+40>>2];P:{if(c>>>0>>0){F[c+4>>2]=0;F[c>>2]=k;F[i+36>>2]=c+8;break P}h=F[i+32>>2];o=c-h|0;f=o>>3;g=f+1|0;if(g>>>0>=536870912){break d}e=d-h|0;d=e>>2;e=e>>3>>>0<268435455?d>>>0>>0?g:d:536870911;c=0;Q:{if(!e){break Q}if(e>>>0>=536870912){break c}c=pa(e<<3)}d=c+(f<<3)|0;F[d+4>>2]=0;F[d>>2]=k;if((o|0)>=1){qa(c,h,o)}F[i+40>>2]=c+(e<<3);F[i+36>>2]=d+8;F[i+32>>2]=c;if(!h){break P}oa(h)}b=b+1|0;if((j|0)!=(b|0)){continue}break}}b=F[i+36>>2];k=F[i+32>>2];if((b|0)!=(k|0)){continue}break}a=1;break a}sa();V()}ta(11076);V()}k=F[i+32>>2];a=0}if(k){F[i+36>>2]=k;oa(k)}ba=i+48|0;return a}function ne(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;j=ba-48|0;ba=j;a:{if((d|0)!=1){F[a>>2]=0;break a}d=F[b+4>>2];f=F[b+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:{c:{if((c|0)!=-2){m=F[F[F[d+4>>2]+8>>2]+(f<<2)>>2];if((da[F[F[d>>2]+8>>2]](d)|0)==1){l=ba-32|0;ba=l;h=F[F[F[d+4>>2]+8>>2]+(f<<2)>>2];d:{e:{f:{g:{if((da[F[F[d>>2]+8>>2]](d)|0)!=1|c-1>>>0>5){break g}i=da[F[F[d>>2]+36>>2]](d)|0;k=da[F[F[d>>2]+44>>2]](d,f)|0;if(!(k?i:0)){F[j>>2]=0;break f}f=da[F[F[d>>2]+40>>2]](d,f)|0;if(f){b=F[d+44>>2];F[l+12>>2]=f;F[l+8>>2]=b;F[l+20>>2]=k;F[l+16>>2]=k+12;g=l+8|0;b=0;h:{i:{switch(c-1|0){case 0:b=pa(60);F[b+4>>2]=h;F[b>>2]=2776;h=F[e+8>>2];k=F[e+12>>2];i=F[e+16>>2];f=F[e+20>>2];d=F[e>>2];c=F[e+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=f;F[b+16>>2]=h;F[b+20>>2]=k;F[b+8>>2]=d;F[b+12>>2]=c;c=F[e+24>>2];f=F[e+28>>2]-c|0;if(f){if((f|0)<=-1){break e}d=pa(f);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(f>>2<<2);n=b,o=qa(d,c,f)+f|0,F[n+36>>2]=o}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b>>2]=2068;break h;case 3:b=pa(112);F[b+4>>2]=h;F[b>>2]=2776;h=F[e+8>>2];k=F[e+12>>2];i=F[e+16>>2];f=F[e+20>>2];d=F[e>>2];c=F[e+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=f;F[b+16>>2]=h;F[b+20>>2]=k;F[b+8>>2]=d;F[b+12>>2]=c;c=F[e+24>>2];f=F[e+28>>2]-c|0;if(f){if((f|0)<=-1){break e}d=pa(f);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(f>>2<<2);n=b,o=qa(d,c,f)+f|0,F[n+36>>2]=o}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=2832;F[b+68>>2]=0;F[b+72>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+84>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+96>>2]=0;F[b+100>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;break h;case 4:b=pa(104);F[b+4>>2]=h;F[b>>2]=2776;h=F[e+8>>2];k=F[e+12>>2];i=F[e+16>>2];f=F[e+20>>2];d=F[e>>2];c=F[e+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=f;F[b+16>>2]=h;F[b+20>>2]=k;F[b+8>>2]=d;F[b+12>>2]=c;c=F[e+24>>2];f=F[e+28>>2]-c|0;if(f){if((f|0)<=-1){break e}d=pa(f);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(f>>2<<2);n=b,o=qa(d,c,f)+f|0,F[n+36>>2]=o}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;d=F[g+8>>2];c=F[g+12>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=3080;F[b+52>>2]=d;F[b+56>>2]=c;c=F[g+4>>2];F[b+88>>2]=F[g>>2];F[b+92>>2]=c;c=F[g+12>>2];F[b+96>>2]=F[g+8>>2];F[b+100>>2]=c;break h;case 5:break i;default:break h}}b=pa(128);F[b+4>>2]=h;F[b>>2]=2776;h=F[e+8>>2];k=F[e+12>>2];i=F[e+16>>2];f=F[e+20>>2];d=F[e>>2];c=F[e+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=f;F[b+16>>2]=h;F[b+20>>2]=k;F[b+8>>2]=d;F[b+12>>2]=c;j:{k:{c=F[e+28>>2]-F[e+24>>2]|0;if(c){if((c|0)<=-1){break k}d=pa(c);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(c>>2<<2);c=b;f=F[e+24>>2];i=F[e+28>>2]-f|0;if((i|0)>=1){d=qa(d,f,i)+i|0}F[c+36>>2]=d}F[b>>2]=2720;c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;c=b- -64|0;F[c>>2]=0;F[c+4>>2]=0;F[b+60>>2]=3944;F[b>>2]=3316;c=F[g+4>>2];F[b+72>>2]=F[g>>2];F[b+76>>2]=c;c=F[g+12>>2];F[b+80>>2]=F[g+8>>2];F[b+84>>2]=c;F[b+104>>2]=1065353216;F[b+108>>2]=-1;F[b+96>>2]=-1;F[b+100>>2]=-1;F[b+88>>2]=1;F[b+92>>2]=-1;F[b+60>>2]=3552;F[b+112>>2]=0;F[b+116>>2]=0;D[b+117|0]=0;D[b+118|0]=0;D[b+119|0]=0;D[b+120|0]=0;D[b+121|0]=0;D[b+122|0]=0;D[b+123|0]=0;D[b+124|0]=0;break j}sa();V()}}F[j>>2]=b;if(!F[j>>2]){break g}break f}b=F[d+44>>2];F[l+12>>2]=i;F[l+8>>2]=b;F[l+20>>2]=k;F[l+16>>2]=k+12;g=l+8|0;b=0;l:{m:{switch(c-1|0){case 0:b=pa(60);F[b+4>>2]=h;F[b>>2]=2776;h=F[e+8>>2];k=F[e+12>>2];i=F[e+16>>2];f=F[e+20>>2];d=F[e>>2];c=F[e+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=f;F[b+16>>2]=h;F[b+20>>2]=k;F[b+8>>2]=d;F[b+12>>2]=c;c=F[e+24>>2];f=F[e+28>>2]-c|0;if(f){if((f|0)<=-1){break e}d=pa(f);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(f>>2<<2);n=b,o=qa(d,c,f)+f|0,F[n+36>>2]=o}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b>>2]=3972;break l;case 3:b=pa(112);F[b+4>>2]=h;F[b>>2]=2776;h=F[e+8>>2];k=F[e+12>>2];i=F[e+16>>2];f=F[e+20>>2];d=F[e>>2];c=F[e+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=f;F[b+16>>2]=h;F[b+20>>2]=k;F[b+8>>2]=d;F[b+12>>2]=c;c=F[e+24>>2];f=F[e+28>>2]-c|0;if(f){if((f|0)<=-1){break e}d=pa(f);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(f>>2<<2);n=b,o=qa(d,c,f)+f|0,F[n+36>>2]=o}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=4396;F[b+68>>2]=0;F[b+72>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+84>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+96>>2]=0;F[b+100>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;break l;case 4:b=pa(104);F[b+4>>2]=h;F[b>>2]=2776;h=F[e+8>>2];k=F[e+12>>2];i=F[e+16>>2];f=F[e+20>>2];d=F[e>>2];c=F[e+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=f;F[b+16>>2]=h;F[b+20>>2]=k;F[b+8>>2]=d;F[b+12>>2]=c;c=F[e+24>>2];f=F[e+28>>2]-c|0;if(f){if((f|0)<=-1){break e}d=pa(f);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(f>>2<<2);n=b,o=qa(d,c,f)+f|0,F[n+36>>2]=o}c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;d=F[g+8>>2];c=F[g+12>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+60>>2]=0;F[b+64>>2]=0;F[b>>2]=4632;F[b+52>>2]=d;F[b+56>>2]=c;c=F[g+4>>2];F[b+88>>2]=F[g>>2];F[b+92>>2]=c;c=F[g+12>>2];F[b+96>>2]=F[g+8>>2];F[b+100>>2]=c;break l;case 5:break m;default:break l}}b=pa(128);F[b+4>>2]=h;F[b>>2]=2776;h=F[e+8>>2];k=F[e+12>>2];i=F[e+16>>2];f=F[e+20>>2];d=F[e>>2];c=F[e+4>>2];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;F[b+24>>2]=i;F[b+28>>2]=f;F[b+16>>2]=h;F[b+20>>2]=k;F[b+8>>2]=d;F[b+12>>2]=c;n:{o:{c=F[e+28>>2]-F[e+24>>2]|0;if(c){if((c|0)<=-1){break o}d=pa(c);F[b+32>>2]=d;F[b+36>>2]=d;F[b+40>>2]=d+(c>>2<<2);c=b;f=F[e+24>>2];i=F[e+28>>2]-f|0;if((i|0)>=1){d=qa(d,f,i)+i|0}F[c+36>>2]=d}F[b>>2]=4340;c=F[g+4>>2];F[b+44>>2]=F[g>>2];F[b+48>>2]=c;c=F[g+12>>2];F[b+52>>2]=F[g+8>>2];F[b+56>>2]=c;c=b- -64|0;F[c>>2]=0;F[c+4>>2]=0;F[b+60>>2]=5440;F[b>>2]=4856;c=F[g+4>>2];F[b+72>>2]=F[g>>2];F[b+76>>2]=c;c=F[g+12>>2];F[b+80>>2]=F[g+8>>2];F[b+84>>2]=c;F[b+104>>2]=1065353216;F[b+108>>2]=-1;F[b+96>>2]=-1;F[b+100>>2]=-1;F[b+88>>2]=1;F[b+92>>2]=-1;F[b+60>>2]=5076;F[b+112>>2]=0;F[b+116>>2]=0;D[b+117|0]=0;D[b+118|0]=0;D[b+119|0]=0;D[b+120|0]=0;D[b+121|0]=0;D[b+122|0]=0;D[b+123|0]=0;D[b+124|0]=0;break n}sa();V()}}F[j>>2]=b;if(F[j>>2]){break f}}F[j>>2]=0}ba=l+32|0;break d}sa();V()}if(F[j>>2]){break b}F[j>>2]=0}h=pa(44);F[h+4>>2]=m;F[h>>2]=2776;k=F[e+8>>2];i=F[e+12>>2];f=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=f;F[h+28>>2]=d;F[h+16>>2]=k;F[h+20>>2]=i;F[h+8>>2]=c;F[h+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<=-1){break c}c=pa(d);F[h+32>>2]=c;F[h+36>>2]=c;F[h+40>>2]=c+(d>>2<<2);n=h,o=qa(c,b,d)+d|0,F[n+36>>2]=o}F[h>>2]=5468}F[j>>2]=h;break b}sa();V()}b=F[j+32>>2];if(b){F[j+36>>2]=b;oa(b)}F[a>>2]=F[j>>2]}ba=j+48|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;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;g=ba+-64|0;ba=g;F[a+8>>2]=e;f=a+32|0;m=F[f>>2];d=F[a+36>>2]-m>>2;a:{if(d>>>0>>0){Ca(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=m+(e<<2)}F[g+56>>2]=0;F[g+60>>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>>2]=0;f=0;if(e){Ha(g+16|0,e,g);h=F[g+28>>2];f=F[g+32>>2]}F[g>>2]=0;d=f-h>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}F[g+32>>2]=(e<<2)+h;break b}Ha(g+16|12,e-d|0,g)}F[g>>2]=0;f=F[g+40>>2];d=F[g+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[g+44>>2]=f+(e<<2);break c}Ha(g+40|0,e-d|0,g)}F[g>>2]=0;f=F[g+52>>2];d=F[g+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[g+56>>2]=f+(e<<2);break d}Ha(g+52|0,e-d|0,g)}h=0;e:{if(F[a+8>>2]<=0){break e}m=F[g+16>>2];while(1){d=h<<2;f=F[d+m>>2];i=F[a+16>>2];f:{if((f|0)>(i|0)){j=F[a+32>>2];F[d+j>>2]=i;break f}j=F[a+32>>2];d=d+j|0;i=F[a+12>>2];if((i|0)>(f|0)){F[d>>2]=i;break f}F[d>>2]=f}h=h+1|0;d=F[a+8>>2];if((h|0)<(d|0)){continue}break}if((d|0)<1){break e}f=0;while(1){m=f<<2;d=m+c|0;m=F[b+m>>2]+F[j+m>>2]|0;F[d>>2]=m;g:{if((m|0)>F[a+16>>2]){k=m-F[a+20>>2]|0}else{if((m|0)>=F[a+12>>2]){break g}k=m+F[a+20>>2]|0}F[d>>2]=k}f=f+1|0;if((f|0)>2]){continue}break}}C=F[a+52>>2];s=F[a+48>>2];x=pa(16);d=x;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;w=pa(d);F[g>>2]=w;f=d+w|0;F[g+8>>2]=f;ra(w,0,d);F[g+4>>2]=f}o=1;d=F[a+56>>2];A=F[d>>2];d=F[d+4>>2]-A|0;i:{if((d|0)<5){break i}d=d>>>2|0;D=d>>>0>2?d:2;E=d>>>0>1?d:1;m=e&-2;B=e&1;G=e&-4;H=e&3;y=e-1|0;I=e<<2;p=1;while(1){j:{k:{l:{m:{if((p|0)!=(E|0)){k=F[(p<<2)+A>>2];d=(k>>>0)%3|0;n:{o:{if((k|0)==-1){break o}l=k+(d?-1:2)|0;z=l>>>5|0;n=1<>2];j=1;i=0;f=k;p:{while(1){q:{if(F[u+(f>>>3&536870908)>>2]>>>f&1){break q}d=F[F[F[s+64>>2]+12>>2]+(f<<2)>>2];if((d|0)==-1){break q}o=F[C>>2];h=F[s+28>>2];t=F[o+(F[h+(d<<2)>>2]<<2)>>2];if((t|0)>=(p|0)){break q}q=d+1|0;r=F[o+(F[h+(((q>>>0)%3|0?q:d-2|0)<<2)>>2]<<2)>>2];if((r|0)>=(p|0)){break q}d=F[o+(F[h+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(p|0)){break q}r:{if((e|0)<1){break r}o=F[(g+16|0)+L(i,12)>>2];q=L(d,e);r=L(e,r);t=L(e,t);h=0;d=m;if(y){while(1){F[o+(h<<2)>>2]=(F[(h+q<<2)+c>>2]+F[(h+r<<2)+c>>2]|0)-F[(h+t<<2)+c>>2];v=h|1;F[o+(v<<2)>>2]=(F[(q+v<<2)+c>>2]+F[(r+v<<2)+c>>2]|0)-F[(t+v<<2)+c>>2];h=h+2|0;d=d-2|0;if(d){continue}break}}if(!B){break r}F[o+(h<<2)>>2]=(F[(h+q<<2)+c>>2]+F[(h+r<<2)+c>>2]|0)-F[(h+t<<2)+c>>2]}d=4;i=i+1|0;if((i|0)==4){break p}}s:{if(j&1){h=-1;d=f+1|0;d=(d>>>0)%3|0?d:f-2|0;if((d|0)==-1|F[F[s>>2]+(d>>>3&536870908)>>2]>>>d&1){break s}d=F[F[F[s+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break s}f=d+1|0;h=(f>>>0)%3|0?f:d-2|0;break s}h=-1;d=((f>>>0)%3|0?-1:2)+f|0;if((d|0)==-1|F[F[s>>2]+(d>>>3&536870908)>>2]>>>d&1){break s}d=F[F[F[s+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break s}if((d>>>0)%3|0){h=d-1|0;break s}h=d+2|0}t:{if((h|0)==(k|0)){break t}d=(h|0)==-1&j;f=d?-1:h;j=d^j;if(!(!d|(l|0)==-1)){if(n&F[F[s>>2]+(z<<2)>>2]){break t}d=F[F[F[s+64>>2]+12>>2]+(l<<2)>>2];if((d|0)==-1){break t}j=0;f=(d>>>0)%3|0?d-1|0:d+2|0}if((f|0)!=-1){continue}}break}d=i;if((d|0)<1){break o}}r=(e|0)<1;if(!r){ra(F[g>>2],0,I)}f=d-1|0;t=(f<<2)+x|0;f=L(f,12)+a|0;v=f;z=F[f- -64>>2];o=0;q=0;i=0;while(1){f=F[t>>2];F[t>>2]=f+1;if(f>>>0>=z>>>0){break i}u:{if(F[F[v+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break u}i=i+1|0;if(r){break u}k=F[g>>2];l=F[(g+16|0)+L(q,12)>>2];h=0;f=G;if(y>>>0>=3){while(1){j=h<<2;n=j+k|0;F[n>>2]=F[n>>2]+F[j+l>>2];n=j|4;u=n+k|0;F[u>>2]=F[u>>2]+F[l+n>>2];n=j|8;u=n+k|0;F[u>>2]=F[u>>2]+F[l+n>>2];j=j|12;n=j+k|0;F[n>>2]=F[n>>2]+F[j+l>>2];h=h+4|0;f=f-4|0;if(f){continue}break}}j=H;if(!j){break u}while(1){f=h<<2;n=f+k|0;F[n>>2]=F[n>>2]+F[f+l>>2];h=h+1|0;j=j-1|0;if(j){continue}break}}q=q+1|0;if((q|0)!=(d|0)){continue}break}k=L(e,p);d=k;if(!i){break n}if(r){break k}d=F[g>>2];h=0;f=m;if(y){break m}break l}d=L(e,p)}if(F[a+8>>2]<1){break j}k=(L(p-1|0,e)<<2)+c|0;h=0;while(1){f=h<<2;i=F[f+k>>2];l=F[a+16>>2];v:{if((i|0)>(l|0)){j=F[a+32>>2];F[f+j>>2]=l;break v}j=F[a+32>>2];f=f+j|0;l=F[a+12>>2];if((l|0)>(i|0)){F[f>>2]=l;break v}F[f>>2]=i}h=h+1|0;i=F[a+8>>2];if((h|0)<(i|0)){continue}break}f=0;if((i|0)<1){break j}d=d<<2;k=d+c|0;h=b+d|0;while(1){i=f<<2;d=i+k|0;i=F[h+i>>2]+F[i+j>>2]|0;F[d>>2]=i;w:{if((i|0)>F[a+16>>2]){i=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break w}i=i+F[a+20>>2]|0}F[d>>2]=i}f=f+1|0;if((f|0)>2]){continue}break}break j}va();V()}while(1){j=h<<2;l=j+d|0;F[l>>2]=F[l>>2]/(i|0);j=d+(j|4)|0;F[j>>2]=F[j>>2]/(i|0);h=h+2|0;f=f-2|0;if(f){continue}break}}if(!B){break k}d=d+(h<<2)|0;F[d>>2]=F[d>>2]/(i|0)}if(F[a+8>>2]<1){break j}h=0;while(1){d=h<<2;f=F[d+w>>2];i=F[a+16>>2];x:{if((f|0)>(i|0)){j=F[a+32>>2];F[d+j>>2]=i;break x}j=F[a+32>>2];d=d+j|0;i=F[a+12>>2];if((i|0)>(f|0)){F[d>>2]=i;break x}F[d>>2]=f}h=h+1|0;d=F[a+8>>2];if((h|0)<(d|0)){continue}break}f=0;if((d|0)<1){break j}d=k<<2;k=d+c|0;h=b+d|0;while(1){i=f<<2;d=i+k|0;i=F[h+i>>2]+F[i+j>>2]|0;F[d>>2]=i;y:{if((i|0)>F[a+16>>2]){i=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break y}i=i+F[a+20>>2]|0}F[d>>2]=i}f=f+1|0;if((f|0)>2]){continue}break}}o=1;p=p+1|0;if((D|0)!=(p|0)){continue}break}}a=F[g>>2];if(a){F[g+4>>2]=a;oa(a)}oa(x);a=F[g+52>>2];if(a){F[g+56>>2]=a;oa(a)}a=F[g+40>>2];if(a){F[g+44>>2]=a;oa(a)}a=F[g+28>>2];if(a){F[g+32>>2]=a;oa(a)}a=F[g+16>>2];if(a){F[g+20>>2]=a;oa(a)}ba=g- -64|0;return o|0}sa();V()}function $h(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;i=ba+-64|0;ba=i;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){Ca(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}F[i+56>>2]=0;F[i+60>>2]=0;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;F[i+24>>2]=0;F[i+28>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;F[i>>2]=0;f=0;if(e){Ha(i+16|0,e,i);j=F[i+28>>2];f=F[i+32>>2]}F[i>>2]=0;d=f-j>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}F[i+32>>2]=(e<<2)+j;break b}Ha(i+16|12,e-d|0,i)}F[i>>2]=0;f=F[i+40>>2];d=F[i+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[i+44>>2]=f+(e<<2);break c}Ha(i+40|0,e-d|0,i)}F[i>>2]=0;f=F[i+52>>2];d=F[i+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[i+56>>2]=f+(e<<2);break d}Ha(i+52|0,e-d|0,i)}j=0;e:{if(F[a+8>>2]<=0){break e}h=F[i+16>>2];while(1){f=j<<2;g=F[f+h>>2];s=F[a+16>>2];f:{if((g|0)>(s|0)){d=F[a+32>>2];F[f+d>>2]=s;break f}d=F[a+32>>2];f=f+d|0;s=F[a+12>>2];if((s|0)>(g|0)){F[f>>2]=s;break f}F[f>>2]=g}j=j+1|0;f=F[a+8>>2];if((j|0)<(f|0)){continue}break}if((f|0)<1){break e}f=0;while(1){h=f<<2;g=h+c|0;h=F[b+h>>2]+F[d+h>>2]|0;F[g>>2]=h;g:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break g}h=h+F[a+20>>2]|0}F[g>>2]=h}f=f+1|0;if((f|0)>2]){continue}break}}C=F[a+52>>2];z=F[a+48>>2];x=pa(16);d=x;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;v=pa(d);F[i>>2]=v;f=d+v|0;F[i+8>>2]=f;ra(v,0,d);F[i+4>>2]=f}p=1;d=F[a+56>>2];A=F[d>>2];d=F[d+4>>2]-A|0;i:{if((d|0)<5){break i}d=d>>>2|0;D=d>>>0>2?d:2;E=d>>>0>1?d:1;s=e&-2;B=e&1;G=e&-4;H=e&3;y=e-1|0;I=e<<2;q=1;while(1){j:{k:{l:{m:{if((q|0)!=(E|0)){h=F[(q<<2)+A>>2];d=(h>>>0)%3|0;n:{o:{if((h|0)==-1){break o}m=F[z+12>>2];w=h+(d?-1:2)|0;o=m+(w<<2)|0;k=1;d=0;f=h;p:{while(1){g=F[m+(f<<2)>>2];q:{if((g|0)==-1){break q}j=F[C>>2];l=F[z>>2];r=F[j+(F[l+(g<<2)>>2]<<2)>>2];n=g+1|0;n=(n>>>0)%3|0?n:g-2|0;p=j-4|0;r:{if((n|0)==-1){break r}p=j+(F[l+(n<<2)>>2]<<2)|0}g=g+((g>>>0)%3|0?-1:2)|0;n=j-4|0;s:{if((g|0)==-1){break s}n=j+(F[l+(g<<2)>>2]<<2)|0}if((q|0)<=(r|0)){break q}g=F[p>>2];if((g|0)>=(q|0)){break q}j=F[n>>2];if((j|0)>=(q|0)){break q}l=F[(i+16|0)+L(d,12)>>2];t:{if((e|0)<1){break t}p=L(e,j);n=L(e,g);r=L(e,r);j=0;g=s;if(y){while(1){F[l+(j<<2)>>2]=(F[(j+p<<2)+c>>2]+F[(j+n<<2)+c>>2]|0)-F[(j+r<<2)+c>>2];t=j|1;F[l+(t<<2)>>2]=(F[(p+t<<2)+c>>2]+F[(n+t<<2)+c>>2]|0)-F[(r+t<<2)+c>>2];j=j+2|0;g=g-2|0;if(g){continue}break}}if(!B){break t}F[l+(j<<2)>>2]=(F[(j+p<<2)+c>>2]+F[(j+n<<2)+c>>2]|0)-F[(j+r<<2)+c>>2]}g=4;d=d+1|0;if((d|0)==4){break p}}u:{if(k&1){l=f+1|0;f=(l>>>0)%3|0?l:f-2|0;g=-1;if((f|0)==-1){break u}f=F[m+(f<<2)>>2];g=-1;if((f|0)==-1){break u}g=f+1|0;g=(g>>>0)%3|0?g:f-2|0;break u}f=((f>>>0)%3|0?-1:2)+f|0;g=-1;if((f|0)==-1){break u}f=F[m+(f<<2)>>2];g=-1;if((f|0)==-1){break u}g=f-1|0;if((f>>>0)%3|0){break u}g=f+2|0}v:{if((g|0)==(h|0)){break v}f=g;g=(g|0)==-1&k;f=g?-1:f;k=g^k;if(!(!g|(w|0)==-1)){f=F[o>>2];if((f|0)==-1){break v}k=0;f=(f>>>0)%3|0?f-1|0:f+2|0}if((f|0)!=-1){continue}}break}g=d;if((d|0)<1){break o}}n=(e|0)<1;if(!n){ra(F[i>>2],0,I)}d=g-1|0;r=(d<<2)+x|0;d=L(d,12)+a|0;t=d;w=F[d- -64>>2];p=0;f=0;k=0;while(1){d=F[r>>2];F[r>>2]=d+1;if(d>>>0>=w>>>0){break i}w:{if(F[F[t+60>>2]+(d>>>3&536870908)>>2]>>>d&1){break w}k=k+1|0;if(n){break w}h=F[i>>2];m=F[(i+16|0)+L(f,12)>>2];j=0;d=G;if(y>>>0>=3){while(1){l=j<<2;o=l+h|0;F[o>>2]=F[o>>2]+F[l+m>>2];o=l|4;u=o+h|0;F[u>>2]=F[u>>2]+F[m+o>>2];o=l|8;u=o+h|0;F[u>>2]=F[u>>2]+F[m+o>>2];l=l|12;o=l+h|0;F[o>>2]=F[o>>2]+F[l+m>>2];j=j+4|0;d=d-4|0;if(d){continue}break}}d=H;if(!d){break w}while(1){l=j<<2;o=l+h|0;F[o>>2]=F[o>>2]+F[l+m>>2];j=j+1|0;d=d-1|0;if(d){continue}break}}f=f+1|0;if((g|0)!=(f|0)){continue}break}h=L(e,q);g=h;if(!k){break n}if(n){break k}d=F[i>>2];j=0;f=s;if(y){break m}break l}g=L(e,q)}if(F[a+8>>2]<1){break j}k=(L(q-1|0,e)<<2)+c|0;j=0;while(1){f=j<<2;h=F[f+k>>2];m=F[a+16>>2];x:{if((h|0)>(m|0)){d=F[a+32>>2];F[f+d>>2]=m;break x}d=F[a+32>>2];f=f+d|0;m=F[a+12>>2];if((m|0)>(h|0)){F[f>>2]=m;break x}F[f>>2]=h}j=j+1|0;h=F[a+8>>2];if((j|0)<(h|0)){continue}break}f=0;if((h|0)<1){break j}g=g<<2;j=g+c|0;k=b+g|0;while(1){h=f<<2;g=h+j|0;h=F[h+k>>2]+F[d+h>>2]|0;F[g>>2]=h;y:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break y}h=h+F[a+20>>2]|0}F[g>>2]=h}f=f+1|0;if((f|0)>2]){continue}break}break j}va();V()}while(1){g=j<<2;m=g+d|0;F[m>>2]=F[m>>2]/(k|0);g=d+(g|4)|0;F[g>>2]=F[g>>2]/(k|0);j=j+2|0;f=f-2|0;if(f){continue}break}}if(!B){break k}d=d+(j<<2)|0;F[d>>2]=F[d>>2]/(k|0)}if(F[a+8>>2]<1){break j}j=0;while(1){f=j<<2;g=F[f+v>>2];k=F[a+16>>2];z:{if((g|0)>(k|0)){d=F[a+32>>2];F[f+d>>2]=k;break z}d=F[a+32>>2];f=f+d|0;k=F[a+12>>2];if((k|0)>(g|0)){F[f>>2]=k;break z}F[f>>2]=g}j=j+1|0;g=F[a+8>>2];if((j|0)<(g|0)){continue}break}f=0;if((g|0)<1){break j}g=h<<2;j=g+c|0;k=b+g|0;while(1){h=f<<2;g=h+j|0;h=F[h+k>>2]+F[d+h>>2]|0;F[g>>2]=h;A:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break A}h=h+F[a+20>>2]|0}F[g>>2]=h}f=f+1|0;if((f|0)>2]){continue}break}}p=1;q=q+1|0;if((D|0)!=(q|0)){continue}break}}a=F[i>>2];if(a){F[i+4>>2]=a;oa(a)}oa(x);a=F[i+52>>2];if(a){F[i+56>>2]=a;oa(a)}a=F[i+40>>2];if(a){F[i+44>>2]=a;oa(a)}a=F[i+28>>2];if(a){F[i+32>>2]=a;oa(a)}a=F[i+16>>2];if(a){F[i+20>>2]=a;oa(a)}ba=i- -64|0;return p|0}sa();V()}function Jd(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;g=ba-112|0;ba=g;k=F[a+4>>2];c=F[k+32>>2];l=F[c+8>>2];i=F[c+16>>2];h=F[c+12>>2];e=h;f=F[c+20>>2];d=f;a:{if((d|0)>(e|0)?1:(e|0)<=(d|0)?l>>>0<=i>>>0:0){break a}o=F[c>>2];j=G[o+i|0];e=f;m=i+1|0;e=m>>>0<1?e+1|0:e;d=c;F[c+16>>2]=m;F[c+20>>2]=e;if((e|0)>(h|0)?1:(e|0)>=(h|0)?m>>>0>=l>>>0:0){break a}q=G[m+o|0];e=f;m=i+2|0;e=m>>>0<2?e+1|0:e;F[c+16>>2]=m;F[d+20>>2]=e;p=j<<24>>24;b:{if((p|0)>=0){d=F[a+216>>2];if(j>>>0>=(F[a+220>>2]-d|0)/144>>>0){break a}d=d+L(j,144)|0;if(F[d>>2]<=-1){break b}break a}if(F[a+212>>2]>-1){break a}d=a+212|0}F[d>>2]=b;d=0;n=H[k+36>>1];if(((n<<8|n>>>8)&65535)>>>0>=258){n=0;if((e|0)>(h|0)?1:(e|0)>=(h|0)?m>>>0>=l>>>0:0){break a}e=G[m+o|0];d=i+3|0;f=d>>>0<3?f+1|0:f;F[c+16>>2]=d;F[c+20>>2]=f;c=e>>>0>1;if(c){break a}d=c?0:e}c:{d:{e:{if(!q){if((p|0)<=-1){f=a+184|0}else{c=F[a+216>>2]+L(j,144)|0;D[c+100|0]=0;f=c+104|0}n=0;f:{switch(d|0){case 0:break f;case 1:break e;default:break a}}e=ba+-64|0;ba=e;j=F[F[a+4>>2]+44>>2];c=pa(80);F[c>>2]=9520;F[c+4>>2]=0;F[c+76>>2]=0;F[c+72>>2]=f;F[c+68>>2]=j;F[c+8>>2]=9684;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;i=c+56|0;d=i;F[d>>2]=0;F[d+4>>2]=0;d=F[a+8>>2];F[e+40>>2]=0;F[e+44>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;h=e+24|0;F[h>>2]=0;F[h+4>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+56>>2]=0;F[e+48>>2]=0;F[e+52>>2]=0;F[e>>2]=9684;F[e+4>>2]=d;k=F[d>>2];l=F[d+4>>2];D[e+63|0]=0;Ga(h,(l-k>>2>>>0)/3|0,e+63|0);h=F[e+4>>2];k=F[h+28>>2];h=F[h+24>>2];D[e+63|0]=0;Ga(e+36|0,k-h>>2,e+63|0);F[e+20>>2]=c;F[e+16>>2]=j;F[e+12>>2]=f;F[e+8>>2]=d;mc(c+8|0,e);hb(i,F[e+48>>2],F[e+52>>2]);F[g+48>>2]=c;F[e>>2]=9684;c=F[e+48>>2];if(c){F[e+52>>2]=c;oa(c)}F[e>>2]=9500;c=F[e+36>>2];if(c){oa(c)}c=F[e+24>>2];if(c){oa(c)}ba=e- -64|0;break d}n=0;if((p|0)<0|d){break a}c=F[k+44>>2];f=F[a+216>>2];d=pa(80);F[d+76>>2]=0;F[d+68>>2]=c;F[d+8>>2]=8680;F[d>>2]=9812;F[d+4>>2]=0;f=f+L(j,144)|0;e=f+104|0;F[d+72>>2]=e;F[d- -64>>2]=0;F[d+56>>2]=0;F[d+60>>2]=0;F[d+52>>2]=0;F[d+44>>2]=0;F[d+48>>2]=0;F[d+36>>2]=0;F[d+40>>2]=0;F[d+28>>2]=0;F[d+32>>2]=0;F[d+20>>2]=0;F[d+24>>2]=0;F[d+12>>2]=0;F[d+16>>2]=0;F[g+40>>2]=c;F[g+84>>2]=0;F[g+88>>2]=0;F[g+76>>2]=0;F[g+80>>2]=0;F[g+68>>2]=0;F[g+72>>2]=0;F[g+60>>2]=0;F[g+64>>2]=0;F[g+100>>2]=0;F[g+104>>2]=0;F[g+92>>2]=0;F[g+96>>2]=0;F[g+44>>2]=d;c=F[g+44>>2];F[g+8>>2]=F[g+40>>2];F[g+12>>2]=c;c=f+4|0;F[g+32>>2]=c;F[g+36>>2]=e;F[g+52>>2]=0;F[g+56>>2]=0;F[g+48>>2]=8680;f=F[g+36>>2];F[g>>2]=F[g+32>>2];F[g+4>>2]=f;Hd(g+48|0,c,g);f=d+8|0;c=g+48|0;mc(f,c);if((c|0)!=(f|0)){hb(d+56|0,F[c+48>>2],F[c+52>>2])}Gd(g+48|0);break c}d=ba-112|0;ba=d;j=F[F[a+4>>2]+44>>2];c=pa(120);F[c>>2]=9052;F[c+4>>2]=0;F[c+116>>2]=0;F[c+112>>2]=f;F[c+108>>2]=j;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]=9264;e=c- -64|0;F[e>>2]=0;F[e+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;e=F[a+8>>2];F[d+48>>2]=0;F[d+52>>2]=0;F[d+40>>2]=0;F[d+44>>2]=0;i=d+32|0;h=i;F[h>>2]=0;F[h+4>>2]=0;F[d+24>>2]=0;F[d+28>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;h=d- -64|0;F[h>>2]=0;F[h+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+88>>2]=0;F[d+104>>2]=0;F[d+56>>2]=0;F[d+60>>2]=0;F[d+8>>2]=9264;F[d+96>>2]=0;F[d+100>>2]=0;F[d+12>>2]=e;h=F[e>>2];k=F[e+4>>2];D[d+111|0]=0;Ga(i,(k-h>>2>>>0)/3|0,d+111|0);i=F[d+12>>2];h=F[i+28>>2];i=F[i+24>>2];D[d+111|0]=0;Ga(d+44|0,h-i>>2,d+111|0);F[d+28>>2]=c;F[d+24>>2]=j;F[d+20>>2]=f;F[d+16>>2]=e;e=c+8|0;f=d+8|0;mc(e,f);g:{if((e|0)==(f|0)){F[c+92>>2]=F[f+84>>2];break g}hb(c+56|0,F[f+48>>2],F[f+52>>2]);hb(c+68|0,F[f+60>>2],F[f- -64>>2]);hb(c+80|0,F[f+72>>2],F[f+76>>2]);F[c+92>>2]=F[f+84>>2];h:{k=F[f+92>>2];j=F[f+88>>2];i=k-j|0;f=i>>2;h=F[c+104>>2];e=F[c+96>>2];if(f>>>0<=h-e>>2>>>0){h=F[c+100>>2]-e|0;i=h>>2;h=f>>>0>i>>>0?h+j|0:k;l=h-j|0;if(l){Ma(e,j,l)}if(f>>>0>i>>>0){f=F[c+100>>2];e=c;j=k-h|0;if((j|0)>=1){f=qa(f,h,j)+j|0}F[e+100>>2]=f;break h}F[c+100>>2]=e+l;break h}if(e){F[c+100>>2]=e;oa(e);F[c+104>>2]=0;F[c+96>>2]=0;F[c+100>>2]=0;h=0}i:{if((i|0)<=-1){break i}e=h>>1;f=h>>2>>>0<536870911?e>>>0>>0?f:e:1073741823;if(f>>>0>=1073741824){break i}e=f<<2;f=pa(e);F[c+96>>2]=f;F[c+100>>2]=f;F[c+104>>2]=e+f;e=c;if((i|0)>=1){f=qa(f,j,i)+i|0}F[e+100>>2]=f;break h}sa();V()}}F[g+48>>2]=c;F[d+8>>2]=9264;c=F[d+96>>2];if(c){F[d+100>>2]=c;oa(c)}c=F[d+80>>2];if(c){F[d+84>>2]=c;oa(c)}c=F[d+68>>2];if(c){F[d+72>>2]=c;oa(c)}c=F[d+56>>2];if(c){F[d+60>>2]=c;oa(c)}F[d+8>>2]=9500;c=F[d+44>>2];if(c){oa(c)}c=F[d+32>>2];if(c){oa(c)}ba=d+112|0}d=F[g+48>>2];if(!d){break a}}c=pa(64);F[g+24>>2]=d;f=Dc(c,g+24|0);c=F[g+24>>2];F[g+24>>2]=0;if(c){da[F[F[c>>2]+4>>2]](c)}a=F[a+4>>2];F[g+16>>2]=f;j:{if((b|0)<0){break j}e=a+8|0;d=F[a+12>>2];j=F[a+8>>2];c=d-j>>2;k:{if((c|0)>(b|0)){break k}f=b+1|0;if(b>>>0>=c>>>0){Fd(e,f-c|0);break k}if(c>>>0<=f>>>0){break k}f=j+(f<<2)|0;if((f|0)!=(d|0)){while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){da[F[F[c>>2]+4>>2]](c)}if((d|0)!=(f|0)){continue}break}}F[a+12>>2]=f}c=F[g+16>>2];a=F[e>>2];F[g+16>>2]=0;f=a+(b<<2)|0;a=F[f>>2];F[f>>2]=c;if(!a){break j}da[F[F[a>>2]+4>>2]](a)}n=(b^-1)>>>31|0;a=F[g+16>>2];F[g+16>>2]=0;if(!a){break a}da[F[F[a>>2]+4>>2]](a)}ba=g+112|0;return n|0}function qf(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;m=ba-16|0;ba=m;F[m+12>>2]=b;b=pa(32);F[m>>2]=b;F[m+4>>2]=24;F[m+8>>2]=-2147483616;D[b+24|0]=0;c=G[8053]|G[8054]<<8|(G[8055]<<16|G[8056]<<24);d=G[8049]|G[8050]<<8|(G[8051]<<16|G[8052]<<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[8045]|G[8046]<<8|(G[8047]<<16|G[8048]<<24);d=G[8041]|G[8042]<<8|(G[8043]<<16|G[8044]<<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[8037]|G[8038]<<8|(G[8039]<<16|G[8040]<<24);d=G[8033]|G[8034]<<8|(G[8035]<<16|G[8036]<<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;g=ba-32|0;ba=g;h=a;b=a+16|0;a=F[b>>2];a:{b:{if(!a){break b}d=F[m+12>>2];c=b;while(1){e=(d|0)>F[a+16>>2];c=e?c:a;a=F[(e<<2)+a>>2];if(a){continue}break}if((b|0)==(c|0)){break b}if((d|0)>=F[c+16>>2]){break a}}q=g+16|0;a=q;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=a+4;a=F[m+12>>2];d=g+8|0;F[d>>2]=0;F[d+4>>2]=0;F[g>>2]=a;F[g+4>>2]=d;c=F[q>>2];w=q+4|0;if((c|0)!=(w|0)){l=g|4;while(1){i=c;v=c+16|0;j=v;s=ba-16|0;ba=s;p=s+12|0;c=s+8|0;c:{d:{e:{f:{g:{h:{e=d;t=l+4|0;i:{if((d|0)==(t|0)){break i}a=G[d+27|0];k=a<<24>>24<0;f=G[j+11|0];x=f<<24>>24;n=(x|0)<0;a=k?F[d+20>>2]:a;f=n?F[j+4>>2]:f;o=a>>>0>>0;r=o?a:f;if(r){n=n?F[j>>2]:j;u=d+16|0;k=k?F[u>>2]:u;u=wa(n,k,r);if(!u){if(a>>>0>f>>>0){break i}break h}if((u|0)>-1){break h}break i}if(a>>>0<=f>>>0){break g}}f=F[d>>2];c=d;j:{k:{if((e|0)==F[l>>2]){break k}l:{if(f){a=f;while(1){c=a;a=F[c+4>>2];if(a){continue}break}break l}c=e+8|0;if((e|0)==F[F[e+8>>2]>>2]){while(1){a=F[c>>2];c=a+8|0;if((a|0)==F[F[a+8>>2]>>2]){continue}break}}c=F[c>>2]}n=G[j+11|0];a=n<<24>>24<0;o=G[c+27|0];k=o<<24>>24<0;m:{n=a?F[j+4>>2]:n;o=k?F[c+20>>2]:o;r=n>>>0>>0?n:o;if(r){t=c+16|0;a=wa(k?F[t>>2]:t,a?F[j>>2]:j,r);if(a){break m}}if(n>>>0>o>>>0){break k}break j}if((a|0)>-1){break j}}if(!f){F[p>>2]=e;c=e;break c}F[p>>2]=c;c=c+4|0;break c}c=Qd(l,p,j);break c}a=wa(k,n,r);if(a){break f}}if(o){break e}break d}if((a|0)>-1){break d}}e=F[d+4>>2];n:{if(e){a=e;while(1){c=a;a=F[c>>2];if(a){continue}break}break n}c=F[d+8>>2];if((d|0)==F[c>>2]){break n}a=d+8|0;while(1){k=F[a>>2];a=k+8|0;c=F[k+8>>2];if((k|0)!=F[c>>2]){continue}break}}o:{p:{if((c|0)==(t|0)){break p}k=G[c+27|0];a=k<<24>>24<0;q:{k=a?F[c+20>>2]:k;n=f>>>0>k>>>0?k:f;if(n){o=c+16|0;a=wa((x|0)<0?F[j>>2]:j,a?F[o>>2]:o,n);if(a){break q}}if(f>>>0>>0){break p}break o}if((a|0)>-1){break o}}if(!e){F[p>>2]=d;c=d+4|0;break c}F[p>>2]=c;break c}c=Qd(l,p,j);break c}F[p>>2]=d;F[c>>2]=d}if(!F[c>>2]){a=pa(40);ua(a+16|0,v);ua(a+28|0,v+12|0);F[a+8>>2]=F[s+12>>2];F[a>>2]=0;F[a+4>>2]=0;F[c>>2]=a;e=F[F[l>>2]>>2];if(e){F[l>>2]=e;a=F[c>>2]}rb(F[l+4>>2],a);F[l+8>>2]=F[l+8>>2]+1}ba=s+16|0;a=F[i+4>>2];r:{if(!a){c=F[i+8>>2];if((i|0)==F[c>>2]){break r}a=i+8|0;while(1){e=F[a>>2];a=e+8|0;c=F[e+8>>2];if((e|0)!=F[c>>2]){continue}break}break r}while(1){c=a;a=F[c>>2];if(a){continue}break}}if((c|0)!=(w|0)){continue}break}}a=F[b>>2];s:{if(a){b=h+16|0;e=F[g>>2];while(1){c=F[a+16>>2];t:{if((c|0)>(e|0)){c=F[a>>2];if(c){break t}b=a;break s}if((c|0)>=(e|0)){break s}b=a+4|0;c=F[a+4>>2];if(!c){break s}a=b}b=a;a=c;continue}}a=b}c=F[b>>2];if(!c){c=pa(32);F[c+16>>2]=F[g>>2];F[c+20>>2]=F[g+4>>2];e=c+24|0;i=F[g+8>>2];F[e>>2]=i;f=F[g+12>>2];F[c+28>>2]=f;u:{if(!f){F[c+20>>2]=e;break u}F[i+8>>2]=e;F[g+8>>2]=0;F[g+12>>2]=0;F[g+4>>2]=d}F[c+8>>2]=a;F[c>>2]=0;F[c+4>>2]=0;F[b>>2]=c;d=F[F[h+12>>2]>>2];a=c;v:{if(!d){break v}F[h+12>>2]=d;a=F[b>>2]}rb(F[h+16>>2],a);F[h+20>>2]=F[h+20>>2]+1}jb(g|4,F[g+8>>2]);jb(q,F[q+4>>2])}ba=g+32|0;d=ba-48|0;ba=d;e=ba-32|0;ba=e;b=e+21|0;h=e+32|0;w:{if((b|0)==(h|0)){break w}}a=e;i=h-b|0;x:{if(!((i|0)<(1-(I[3016]>1)|0)?(i|0)<=9:0)){D[b|0]=49;F[e+8>>2]=b+1;b=0;break x}F[e+8>>2]=h;b=61}F[a+12>>2]=b;j=ba-16|0;ba=j;f=ba-16|0;ba=f;a=d+8|0;y:{l=F[e+8>>2];i=e+21|0;h=l-i|0;if(h>>>0<=4294967279){z:{if(h>>>0<=10){D[a+11|0]=h;b=a;break z}q=a;if(h>>>0>=11){p=h+16&-16;g=p-1|0;b=(g|0)==11?p:g}else{b=10}g=b+1|0;b=pa(g);F[q>>2]=b;F[a+8>>2]=g|-2147483648;F[a+4>>2]=h}while(1){if((i|0)!=(l|0)){D[b|0]=G[i|0];b=b+1|0;i=i+1|0;continue}break}D[f+15|0]=0;D[b|0]=G[f+15|0];ba=f+16|0;break y}Ba();V()}ba=j+16|0;ba=e+32|0;F[d+32>>2]=m;h=c+20|0;a=F[h+4>>2];A:{B:{if(a){b=G[m+11|0];c=b<<24>>24<0;i=c?F[m>>2]:m;e=c?F[m+4>>2]:b;b=h+4|0;while(1){c=G[a+27|0];f=c<<24>>24<0;c=f?F[a+20>>2]:c;g=c>>>0>>0;C:{D:{E:{F:{G:{j=g?c:e;H:{if(j){l=a+16|0;f=f?F[l>>2]:l;l=wa(i,f,j);if(!l){if(c>>>0>e>>>0){break H}break G}if((l|0)>-1){break G}break H}if(c>>>0<=e>>>0){break F}}c=F[a>>2];if(c){break C}break B}c=wa(f,i,j);if(c){break E}}if(g){break D}break A}if((c|0)>-1){break A}}b=a+4|0;c=F[a+4>>2];if(!c){break A}a=b}b=a;a=c;continue}}a=h+4|0}b=a}e=d;c=F[b>>2];if(c){a=0}else{c=pa(40);ua(c+16|0,F[d+32>>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;i=F[F[h>>2]>>2];a=c;I:{if(!i){break I}F[h>>2]=i;a=F[b>>2]}rb(F[h+4>>2],a);F[h+8>>2]=F[h+8>>2]+1;a=1}D[e+44|0]=a;F[d+40>>2]=c;a=F[d+40>>2];if(D[a+39|0]<=-1){oa(F[a+28>>2])}b=F[d+12>>2];F[a+28>>2]=F[d+8>>2];F[a+32>>2]=b;F[a+36>>2]=F[d+16>>2];ba=d+48|0;if(D[m+11|0]<=-1){oa(F[m>>2])}ba=m+16|0}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,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,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0,X=0,Y=0,Z=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;h=f>>2;a:{if(h>>>0<=1){Ca(d,2-h|0);break a}if((f|0)==8){break a}F[a+36>>2]=e+8}b:{d=F[a+56>>2];f=F[d+4>>2];d=F[d>>2];e=f-d|0;h=(e|0)<1;if(h){f=0;break b}if((d|0)!=(f|0)){m=a+60|0;U=e>>2;e=L(e>>>2|0,h?e:1);W=(e|0)>1?e:1;f=1;while(1){i=ba-80|0;ba=i;e=-1;h=-1;d=F[(t<<2)+d>>2];c:{if((d|0)==-1){break c}g=F[m+32>>2];j=d+1|0;j=(j>>>0)%3|0?j:d-2|0;if((j|0)!=-1){e=F[F[g>>2]+(j<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1){break c}h=F[F[g>>2]+(d<<2)>>2]}g=F[m+36>>2];d=F[g>>2];d:{g=F[g+4>>2]-d>>2;if(!(g>>>0<=e>>>0|h>>>0>=g>>>0)){e:{f:{g:{h=F[d+(h<<2)>>2];l=F[d+(e<<2)>>2];if((h|0)>=(t|0)|(l|0)>=(t|0)){break g}d=h<<3;I=F[(d|4)+c>>2];e=l<<3;u=F[(e|4)+c>>2];y=F[c+d>>2];z=F[c+e>>2];if(!((y|0)!=(z|0)|(u|0)!=(I|0))){F[m+8>>2]=z;F[m+12>>2]=u;break f}d=F[F[m+4>>2]+(t<<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]}Ja(e,d,D[e+24|0],i+56|0);d=F[F[m+4>>2]+(l<<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]}Ja(e,d,D[e+24|0],i+32|0);d=F[F[m+4>>2]+(h<<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;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ja(e,d,D[e+24|0],i+8|0);K=F[i+44>>2];d=F[i+16>>2];A=F[i+40>>2];e=A;h=F[i+20>>2]-(K+(d>>>0>>0)|0)|0;n=d-e|0;d=hi(n,h,n,h);j=ca;o=d;M=F[i+36>>2];d=F[i+8>>2];B=F[i+32>>2];e=B;g=F[i+12>>2]-(M+(d>>>0>>0)|0)|0;p=d-e|0;q=hi(p,g,p,g);e=o+q|0;d=ca+j|0;d=e>>>0>>0?d+1|0:d;o=e;N=F[i+52>>2];e=F[i+24>>2];C=F[i+48>>2];q=C;j=F[i+28>>2]-(N+(e>>>0>>0)|0)|0;v=e-q|0;q=hi(v,j,v,j);e=o+q|0;d=ca+d|0;x=e;q=e>>>0>>0?d+1|0:d;if(!(e|q)){break g}Q=F[i+64>>2];e=Q;d=A;R=F[i+68>>2];d=hi(e-d|0,R-((d>>>0>e>>>0)+K|0)|0,n,h);l=ca;o=d;J=F[i+56>>2];e=J;d=B;S=F[i+60>>2];s=hi(e-d|0,S-((d>>>0>e>>>0)+M|0)|0,p,g);e=o+s|0;d=ca+l|0;d=e>>>0>>0?d+1|0:d;w=e;o=F[i+72>>2];l=o;e=C;T=F[i+76>>2];l=hi(l-e|0,T-((e>>>0>l>>>0)+N|0)|0,v,j);e=w+l|0;d=ca+d|0;E=e;l=e>>>0>>0?d+1|0:d;d=j;r=d>>31;s=r+v|0;e=d>>31;d=e+d|0;d=s>>>0>>0?d+1|0:d;s=s^r;d=d^e;O=d;r=s;d=h;e=d>>31;w=d>>31;H=w;d=H+n|0;k=e+h|0;k=d>>>0>>0?k+1|0:k;H=d^H;d=e^k;w=d;d=0;X=r;P=g>>31;r=P+p|0;e=g>>31;k=e+g|0;k=r>>>0

>>0?k+1|0:k;r=r^P;e=e^k;k=(w|0)==(e|0)&r>>>0>>0|e>>>0>>0;r=k?H:r;s=s>>>0>r>>>0;e=k?w:e;s=(e|0)<(O|0)?1:(O|0)>=(e|0)?s:0;w=E>>>0>ji(-1,2147483647,s?X:r,s?O:e)>>>0;e=ca;if((e|0)<(l|0)?1:(e|0)<=(l|0)?w:0){break e}e=Q;n=ii(hi(n,h,E,l),ca,x,q);h=n+A|0;d=ca+K|0;d=h>>>0>>0?d+1|0:d;d=R-((e>>>0>>0)+d|0)|0;e=e-h|0;e=hi(e,d,e,d);n=ca;d=J;J=e;h=ii(hi(p,g,E,l),ca,x,q);e=h+B|0;k=ca+M|0;k=e>>>0>>0?k+1|0:k;h=S-((d>>>0>>0)+k|0)|0;d=d-e|0;h=hi(d,h,d,h);e=J+h|0;d=ca+n|0;g=e;h=e>>>0>>0?d+1|0:d;e=o;o=g;j=ii(hi(v,j,E,l),ca,x,q);g=j+C|0;d=ca+N|0;d=g>>>0>>0?d+1|0:d;d=T-((e>>>0>>0)+d|0)|0;e=e-g|0;e=hi(e,d,e,d);d=o+e|0;k=ca+h|0;g=hi(d,d>>>0>>0?k+1|0:k,x,q);d=ca;j=d;h:{i:{if(!d&g>>>0<=1){d=j;h=g;if(g-1|0){break h}break i}h=2;d=0;p=g;e=j;while(1){if(!e&p>>>0<8){break i}n=e;e=e>>>2|0;p=(n&3)<<30|p>>>2;d=d<<1|h>>>31;h=h<<1;continue}}while(1){e=ji(g,j,h,d)+h|0;k=d+ca|0;k=e>>>0>>0?k+1|0:k;h=(k&1)<<31|e>>>1;d=k>>>1|0;e=hi(h,d,h,d);n=ca;if((j|0)==(n|0)&e>>>0>g>>>0|j>>>0>>0){continue}break}}n=F[m+20>>2];if(n){p=n-1|0;v=F[F[m+16>>2]+(p>>>3&536870908)>>2];F[m+20>>2]=p;e=I;g=u;A=e-g|0;u=g>>31;I=(e>>31)-(u+(e>>>0>>0)|0)|0;e=hi(E,l,A,I);j=ca;u=hi(g,u,x,q);g=u+e|0;e=ca+j|0;e=g>>>0>>0?e+1|0:e;o=g;g=y;j=z;B=g-j|0;z=j>>31;u=(g>>31)-(z+(g>>>0>>0)|0)|0;g=hi(h,d,B,u);y=g;g=v>>>p&1;C=g?0-y|0:y;p=o+C|0;o=e;e=ca;k=o+(g?0-(e+((y|0)!=0)|0)|0:e)|0;Y=m,Z=ii(p,p>>>0>>0?k+1|0:k,x,q),F[Y+12>>2]=Z;e=hi(B,u,E,l);p=ca;v=hi(x,q,j,z);j=v+e|0;e=ca+p|0;e=j>>>0>>0?e+1|0:e;o=j;d=hi(h,d,A,I);j=g?d:0-d|0;h=o+j|0;o=e;e=ca;d=o+(g?e:0-(((d|0)!=0)+e|0)|0)|0;Y=m,Z=ii(h,h>>>0>>0?d+1|0:d,x,q),F[Y+8>>2]=Z}d=(n|0)!=0;break e}e=m;if((l|0)<(t|0)){d=l<<1}else{if((t|0)<=0){F[m+8>>2]=0;F[m+12>>2]=0;break f}d=(t<<1)-2|0}d=(d<<2)+c|0;F[e+8>>2]=F[d>>2];F[m+12>>2]=F[d+4>>2]}d=1}ba=i+80|0;break d}va();V()}if(!d){break b}j:{if(F[a+8>>2]<1){break j}d=0;while(1){e=d<<2;f=F[(e+a|0)+68>>2];g=F[a+16>>2];k:{if((f|0)>(g|0)){h=F[a+32>>2];F[e+h>>2]=g;break k}h=F[a+32>>2];e=e+h|0;g=F[a+12>>2];if((g|0)>(f|0)){F[e>>2]=g;break k}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)<1){break j}d=t<<3;g=d+c|0;j=b+d|0;while(1){f=e<<2;d=f+g|0;f=F[f+j>>2]+F[f+h>>2]|0;F[d>>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[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}t=t+1|0;f=(U|0)>(t|0);if((t|0)==(W|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>t>>>0){continue}break}}va();V()}a=f^1}else{a=0}return a&1}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,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,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0,X=0,Y=0,Z=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){Ca(d,2-g|0);break a}if((f|0)==8){break a}F[a+36>>2]=e+8}b:{d=F[a+56>>2];f=F[d+4>>2];d=F[d>>2];e=f-d|0;g=(e|0)<1;if(g){f=0;break b}if((d|0)!=(f|0)){n=a+60|0;U=e>>2;e=L(e>>>2|0,g?e:1);W=(e|0)>1?e:1;f=1;while(1){i=ba-80|0;ba=i;e=-1;d=F[(s<<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}h=F[n+36>>2];d=F[h>>2];d:{e:{h=F[h+4>>2]-d>>2;j=e<<2;e=F[F[n+32>>2]+28>>2];j=F[j+e>>2];if(h>>>0<=j>>>0){break e}e=F[e+(g<<2)>>2];if(e>>>0>=h>>>0){break e}f:{g:{h:{g=F[d+(e<<2)>>2];m=F[d+(j<<2)>>2];if((g|0)>=(s|0)|(m|0)>=(s|0)){break h}d=g<<3;E=F[(d|4)+c>>2];e=m<<3;t=F[(e|4)+c>>2];w=F[c+d>>2];x=F[c+e>>2];if(!((w|0)!=(x|0)|(t|0)!=(E|0))){F[n+8>>2]=x;F[n+12>>2]=t;break g}d=F[F[n+4>>2]+(s<<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[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ja(e,d,D[e+24|0],i+56|0);d=F[F[n+4>>2]+(m<<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[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ja(e,d,D[e+24|0],i+32|0);d=F[F[n+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;e=F[n>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ja(e,d,D[e+24|0],i+8|0);I=F[i+44>>2];d=F[i+16>>2];y=F[i+40>>2];e=y;g=F[i+20>>2]-(I+(d>>>0>>0)|0)|0;o=d-e|0;d=hi(o,g,o,g);j=ca;k=d;J=F[i+36>>2];d=F[i+8>>2];z=F[i+32>>2];e=z;h=F[i+12>>2]-(J+(d>>>0>>0)|0)|0;p=d-e|0;q=hi(p,h,p,h);e=k+q|0;d=ca+j|0;d=e>>>0>>0?d+1|0:d;k=e;K=F[i+52>>2];e=F[i+24>>2];A=F[i+48>>2];q=A;j=F[i+28>>2]-(K+(e>>>0>>0)|0)|0;u=e-q|0;q=hi(u,j,u,j);e=k+q|0;d=ca+d|0;v=e;q=e>>>0>>0?d+1|0:d;if(!(e|q)){break h}O=F[i+64>>2];e=O;d=y;P=F[i+68>>2];d=hi(e-d|0,P-((d>>>0>e>>>0)+I|0)|0,o,g);m=ca;k=d;Q=F[i+56>>2];e=Q;d=z;R=F[i+60>>2];r=hi(e-d|0,R-((d>>>0>e>>>0)+J|0)|0,p,h);e=k+r|0;d=ca+m|0;d=e>>>0>>0?d+1|0:d;k=e;S=F[i+72>>2];m=S;e=A;T=F[i+76>>2];m=hi(m-e|0,T-((e>>>0>m>>>0)+K|0)|0,u,j);e=k+m|0;d=ca+d|0;B=e;m=e>>>0>>0?d+1|0:d;d=j;k=d>>31;r=k+u|0;e=d>>31;d=e+d|0;d=r>>>0>>0?d+1|0:d;r=r^k;d=d^e;M=d;k=r;d=g;e=d>>31;H=d>>31;C=H;d=C+o|0;l=e+g|0;l=d>>>0>>0?l+1|0:l;C=d^C;d=e^l;H=d;d=0;X=k;N=h>>31;k=N+p|0;e=h>>31;l=e+h|0;l=k>>>0>>0?l+1|0:l;k=k^N;e=e^l;l=(H|0)==(e|0)&k>>>0>>0|e>>>0>>0;k=l?C:k;r=r>>>0>k>>>0;e=l?H:e;r=(e|0)<(M|0)?1:(M|0)>=(e|0)?r:0;k=B>>>0>ji(-1,2147483647,r?X:k,r?M:e)>>>0;e=ca;if((e|0)<(m|0)?1:(e|0)<=(m|0)?k:0){break f}e=O;o=ii(hi(o,g,B,m),ca,v,q);g=o+y|0;d=ca+I|0;d=g>>>0>>0?d+1|0:d;d=P-((e>>>0>>0)+d|0)|0;e=e-g|0;e=hi(e,d,e,d);o=ca;d=Q;k=e;g=ii(hi(p,h,B,m),ca,v,q);e=g+z|0;l=ca+J|0;l=e>>>0>>0?l+1|0:l;g=R-((d>>>0>>0)+l|0)|0;d=d-e|0;g=hi(d,g,d,g);e=k+g|0;d=ca+o|0;h=e;g=e>>>0>>0?d+1|0:d;e=S;k=h;j=ii(hi(u,j,B,m),ca,v,q);h=j+A|0;d=ca+K|0;d=h>>>0>>0?d+1|0:d;d=T-((e>>>0>>0)+d|0)|0;e=e-h|0;e=hi(e,d,e,d);d=k+e|0;l=ca+g|0;h=hi(d,d>>>0>>0?l+1|0:l,v,q);d=ca;j=d;i:{j:{if(!d&h>>>0<=1){d=j;g=h;if(h-1|0){break i}break j}g=2;d=0;p=h;e=j;while(1){if(!e&p>>>0<8){break j}o=e;e=e>>>2|0;p=(o&3)<<30|p>>>2;d=d<<1|g>>>31;g=g<<1;continue}}while(1){e=ji(h,j,g,d)+g|0;l=d+ca|0;l=e>>>0>>0?l+1|0:l;g=(l&1)<<31|e>>>1;d=l>>>1|0;e=hi(g,d,g,d);o=ca;if((j|0)==(o|0)&e>>>0>h>>>0|j>>>0>>0){continue}break}}o=F[n+20>>2];if(o){p=o-1|0;u=F[F[n+16>>2]+(p>>>3&536870908)>>2];F[n+20>>2]=p;e=E;h=t;y=e-h|0;t=h>>31;E=(e>>31)-(t+(e>>>0>>0)|0)|0;e=hi(B,m,y,E);j=ca;t=hi(h,t,v,q);h=t+e|0;e=ca+j|0;e=h>>>0>>0?e+1|0:e;k=h;h=w;j=x;z=h-j|0;x=j>>31;t=(h>>31)-(x+(h>>>0>>0)|0)|0;h=hi(g,d,z,t);w=h;h=u>>>p&1;A=h?0-w|0:w;p=k+A|0;k=e;e=ca;l=k+(h?0-(e+((w|0)!=0)|0)|0:e)|0;Y=n,Z=ii(p,p>>>0>>0?l+1|0:l,v,q),F[Y+12>>2]=Z;e=hi(z,t,B,m);p=ca;u=hi(v,q,j,x);j=u+e|0;e=ca+p|0;e=j>>>0>>0?e+1|0:e;k=j;d=hi(g,d,y,E);j=h?d:0-d|0;g=k+j|0;k=e;e=ca;d=k+(h?e:0-(((d|0)!=0)+e|0)|0)|0;Y=n,Z=ii(g,g>>>0>>0?d+1|0:d,v,q),F[Y+8>>2]=Z}d=(o|0)!=0;break f}e=n;if((m|0)<(s|0)){d=m<<1}else{if((s|0)<=0){F[n+8>>2]=0;F[n+12>>2]=0;break g}d=(s<<1)-2|0}d=(d<<2)+c|0;F[e+8>>2]=F[d>>2];F[n+12>>2]=F[d+4>>2]}d=1}ba=i+80|0;break d}va();V()}if(!d){break b}k:{if(F[a+8>>2]<1){break k}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)){g=F[a+32>>2];F[e+g>>2]=h;break l}g=F[a+32>>2];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)<1){break k}d=s<<3;h=d+c|0;j=b+d|0;while(1){f=e<<2;d=f+h|0;f=F[f+j>>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}}s=s+1|0;f=(U|0)>(s|0);if((s|0)==(W|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>s>>>0){continue}break}}va();V()}a=f^1}else{a=0}return a&1}function rh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=M(0),i=0,j=M(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;if(F[c>>2]==F[c+4>>2]){f=F[d+80>>2];z=ba-16|0;ba=z;c=F[a+4>>2];q=F[d+48>>2];d=F[F[d>>2]>>2];l=D[b+24|0];r=z+8|0;F[r>>2]=1065353216;J[r>>2]=M(-1<>2];m=pa((l|0)!=(l&1073741823)?-1:l<<2);a:{if(!f){break a}s=F[b>>2];v=F[b+48>>2];k=F[b+68>>2];c=G[b+84|0];n=F[b+44>>2];o=F[b+40>>2];t=o;if((l|0)>=1){y=d+q|0;q=F[a+8>>2];if(!c){b=l&-2;w=l&1;c=0;while(1){a=F[s>>2];d=hi(o,n,F[k+(p<<2)>>2],0)+v|0;g=qa(m,a+d|0,t);h=J[r>>2];d=0;a=b;if((l|0)!=1){while(1){e=y+(c<<2)|0;i=e;u=d<<2;j=M(R(M(M(h*M(J[u+g>>2]-J[q+u>>2]))+M(.5))));b:{if(M(N(j))>2]=x;u=u|4;j=M(R(M(M(h*M(J[u+g>>2]-J[q+u>>2]))+M(.5))));c:{if(M(N(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(w){e=y+(c<<2)|0;a=d<<2;h=M(R(M(M(h*M(J[a+g>>2]-J[a+q>>2]))+M(.5))));d:{if(M(N(h))>2]=a;c=c+1|0}p=p+1|0;if((f|0)!=(p|0)){continue}break}break a}b=l&-2;w=l&1;c=0;while(1){a=F[s>>2];d=hi(o,n,g,e)+v|0;p=qa(m,a+d|0,t);h=J[r>>2];d=0;a=b;if((l|0)!=1){while(1){k=y+(c<<2)|0;i=k;u=d<<2;j=M(R(M(M(h*M(J[u+p>>2]-J[q+u>>2]))+M(.5))));e:{if(M(N(j))>2]=x;u=u|4;j=M(R(M(M(h*M(J[u+p>>2]-J[q+u>>2]))+M(.5))));f:{if(M(N(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(w){k=y+(c<<2)|0;a=d<<2;h=M(R(M(M(h*M(J[a+p>>2]-J[a+q>>2]))+M(.5))));g:{if(M(N(h))>2]=a;c=c+1|0}a=g+1|0;e=a>>>0<1?e+1|0:e;g=a;if((f|0)!=(a|0)|e){continue}break}break a}if(!c){a=0;if((f|0)!=1){c=f&-2;while(1){g=F[s>>2];e=a<<2;b=v;d=hi(o,n,F[e+k>>2],0)+b|0;g=qa(m,g+d|0,t);i=F[s>>2];d=hi(o,n,F[k+(e|4)>>2],0)+b|0;qa(g,i+d|0,t);a=a+2|0;c=c-2|0;if(c){continue}break}}if(!(f&1)){break a}b=F[s>>2];a=hi(o,n,F[k+(a<<2)>>2],0)+v|0;qa(m,b+a|0,t);break a}a=f;r=a&1;if((a|0)!=1){a=a&-2;b=0;while(1){f=F[s>>2];c=v;d=hi(o,n,g,e)+c|0;f=qa(m,f+d|0,t);k=F[s>>2];d=hi(o,n,g|1,e)+c|0;qa(f,k+d|0,t);c=g+2|0;e=c>>>0<2?e+1|0:e;g=c;c=b-(a>>>0<2)|0;a=a-2|0;b=c;if(a|c){continue}break}}if(!r){break a}b=F[s>>2];a=hi(o,n,g,e)+v|0;qa(m,b+a|0,t)}oa(m);ba=z+16|0;return 1}z=ba-16|0;ba=z;v=F[a+4>>2];m=F[d+48>>2];d=F[F[d>>2]>>2];r=D[b+24|0];e=z+8|0;F[e>>2]=1065353216;J[e>>2]=M(-1<>2];t=pa((r|0)!=(r&1073741823)?-1:r<<2);k=F[c>>2];c=F[c+4>>2]-k|0;h:{if(!c){break h}l=F[b>>2];v=F[b+48>>2];q=F[b+68>>2];f=G[b+84|0];s=F[b+44>>2];n=F[b+40>>2];o=n;i:{if((r|0)>=1){y=d+m|0;b=c>>31;d=(b+c^b)>>>2|0;b=(c|0)>-1?c:-1;b=L(d,(b|0)<1?b:1);u=b>>>0>1?b:1;g=F[a+8>>2];if(!f){break i}b=r&-2;w=r&1;c=0;m=0;while(1){a=F[l>>2];d=hi(n,s,F[k+(m<<2)>>2],0)+v|0;q=qa(t,a+d|0,o);h=J[e>>2];d=0;a=b;if((r|0)!=1){while(1){f=y+(c<<2)|0;i=f;p=d<<2;j=M(R(M(M(h*M(J[p+q>>2]-J[g+p>>2]))+M(.5))));j:{if(M(N(j))>2]=x;p=p|4;j=M(R(M(M(h*M(J[p+q>>2]-J[g+p>>2]))+M(.5))));k:{if(M(N(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(w){f=y+(c<<2)|0;a=d<<2;h=M(R(M(M(h*M(J[a+q>>2]-J[a+g>>2]))+M(.5))));l:{if(M(N(h))>2]=a;c=c+1|0}m=m+1|0;if((u|0)!=(m|0)){continue}break}break h}a=c>>31;b=(a+c^a)>>>2|0;a=(c|0)>-1?c:-1;b=L(b,(a|0)<1?a:1);d=b>>>0>1?b:1;if(f){a=0;if(b>>>0>=2){c=d&-2;while(1){g=F[l>>2];f=a<<2;b=v;e=hi(n,s,F[f+k>>2],0)+b|0;g=qa(t,g+e|0,o);i=F[l>>2];e=hi(n,s,F[k+(f|4)>>2],0)+b|0;qa(g,i+e|0,o);a=a+2|0;c=c-2|0;if(c){continue}break}}if(!(d&1)){break h}b=F[l>>2];a=hi(n,s,F[k+(a<<2)>>2],0)+v|0;qa(t,b+a|0,o);break h}a=0;if(b>>>0>=2){c=d&-2;while(1){g=F[l>>2];f=a<<2;b=v;e=hi(n,s,F[q+(F[f+k>>2]<<2)>>2],0)+b|0;g=qa(t,g+e|0,o);i=F[l>>2];e=hi(n,s,F[q+(F[k+(f|4)>>2]<<2)>>2],0)+b|0;qa(g,i+e|0,o);a=a+2|0;c=c-2|0;if(c){continue}break}}if(!(d&1)){break h}b=F[l>>2];a=hi(n,s,F[q+(F[k+(a<<2)>>2]<<2)>>2],0)+v|0;qa(t,b+a|0,o);break h}b=r&-2;A=r&1;c=0;m=0;while(1){a=F[l>>2];d=hi(n,s,F[q+(F[k+(m<<2)>>2]<<2)>>2],0)+v|0;p=qa(t,a+d|0,o);h=J[e>>2];d=0;a=b;if((r|0)!=1){while(1){f=y+(c<<2)|0;i=f;w=d<<2;j=M(R(M(M(h*M(J[w+p>>2]-J[g+w>>2]))+M(.5))));m:{if(M(N(j))>2]=x;w=w|4;j=M(R(M(M(h*M(J[w+p>>2]-J[g+w>>2]))+M(.5))));n:{if(M(N(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(A){f=y+(c<<2)|0;a=d<<2;h=M(R(M(M(h*M(J[a+p>>2]-J[a+g>>2]))+M(.5))));o:{if(M(N(h))>2]=a;c=c+1|0}m=m+1|0;if((u|0)!=(m|0)){continue}break}}oa(t);ba=z+16|0;return 1}function Nc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=ba-16|0;ba=e;F[e+12>>2]=a;a:{if(a>>>0<=211){a=F[Mc(11360,11552,e+12|0)>>2];break a}if(a>>>0>=4294967292){Wb();V()}f=(a>>>0)/210|0;d=L(f,210);F[e+8>>2]=a-d;g=Mc(11552,11744,e+8|0)-11552>>2;b:{while(1){a=F[(g<<2)+11552>>2]+d|0;d=5;b=h;c:{d:{while(1){h=b;if((d|0)==47){d=211;while(1){b=(a>>>0)/(d>>>0)|0;if(b>>>0>>0){break c}if((L(b,d)|0)==(a|0)){break d}b=d+10|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+12|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+16|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+18|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+22|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+28|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+30|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+36|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+40|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+42|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+46|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+52|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+58|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+60|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+66|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+70|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+72|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+78|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+82|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+88|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+96|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+100|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+102|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+106|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+108|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+112|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+120|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+126|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+130|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+136|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+138|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+142|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+148|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+150|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+156|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+162|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+166|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+168|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+172|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+178|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+180|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+186|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+190|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+192|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+196|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+198|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((L(b,c)|0)==(a|0)){break d}b=d+208|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}d=d+210|0;if((L(b,c)|0)!=(a|0)){continue}break}break d}b=F[(d<<2)+11360>>2];c=(a>>>0)/(b>>>0)|0;i=L(b,c);c=b>>>0>c>>>0;if(!c){b=c?a:h;d=d+1|0;if((a|0)!=(i|0)){continue}}break}if((a|0)!=(i|0)|c){break b}}b=g+1|0;a=(b|0)==48;g=a?0:b;f=a+f|0;d=L(f,210);continue}break}F[e+12>>2]=a;break a}F[e+12>>2]=a;a=c?a:h}ba=e+16|0;return a}function Ib(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:d:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break d}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break e}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break f}b=F[a+48>>2]+hi(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>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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break g}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break h}b=F[a+48>>2]+hi(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>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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break i}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break j}b=F[a+48>>2]+hi(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];g=F[f>>2];h=g+128|0;e=h>>>0<128?e+1|0:e;if(!e&h>>>0>255|e){break a}D[b+d|0]=g;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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break k}b=F[a+48>>2]+hi(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];g=F[f>>2];if(!e&g>>>0>127|e){break a}D[b+d|0]=g;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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break l}b=F[a+48>>2]+hi(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){g=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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break n}b=F[a+48>>2]+hi(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){g=b+d|0;j=K[f>>3];o:{if(N(j)<2147483648){e=~~j;break o}e=-2147483648}D[g|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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break p}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0)}k=1}return k}function Hb(a,b,c,d){var e=0,f=0,g=0,h=M(0),i=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)<1){break d}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break e}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break f}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break g}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break h}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break i}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break j}b=F[a+48>>2]+hi(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];g=F[f>>2];if(!e&g>>>0>255|e){break a}D[b+d|0]=g;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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break k}b=F[a+48>>2]+hi(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];g=F[f>>2];if(!e&g>>>0>255|e){break a}D[b+d|0]=g;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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break l}b=F[a+48>>2]+hi(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){g=b+d|0;h=J[f>>2];m:{if(h=M(0)){e=~~h>>>0;break m}e=0}D[g|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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break n}b=F[a+48>>2]+hi(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){g=b+d|0;i=K[f>>3];o:{if(i<4294967296&i>=0){e=~~i>>>0;break o}e=0}D[g|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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0);break b;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<1){break p}b=F[a+48>>2]+hi(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}if((c|0)<=(e|0)){break b}ra(d+e|0,0,c-e|0)}j=1}return j}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;a:{b:{c:{d:{e:{if(F[a+92>>2]==F[a+88>>2]){break e}d=F[a+52>>2];f:{if((d|0)!=F[a+56>>2]){F[d>>2]=b;F[a+52>>2]=d+4;break f}h=F[a+48>>2];g=d-h|0;e=g>>2;c=e+1|0;if(c>>>0>=1073741824){break b}f=g>>1;c=e>>>0<536870911?c>>>0>f>>>0?c:f:1073741823;d=0;g:{if(!c){break g}if(c>>>0>=1073741824){break a}d=pa(c<<2)}f=d+(e<<2)|0;F[f>>2]=b;if((g|0)>=1){qa(d,h,g)}F[a+56>>2]=d+(c<<2);F[a+52>>2]=f+4;F[a+48>>2]=d;if(!h){break f}oa(h)}F[a+84>>2]=0;f=-1;d=-1;h:{if((b|0)==-1){break h}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]}c=((b>>>0)%3|0?-1:2)+b|0;if((c|0)==-1){break h}d=F[F[e>>2]+(c<<2)>>2]}c=F[a+36>>2];h=c+(f>>>3&536870908)|0;g=F[h>>2];e=1<>2]=e|g;h=a+8|0;if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b-2|0}else{c=-1}La(h,f,c);c=F[a+36>>2]}e=(d>>>3&536870908)+c|0;c=F[e>>2];f=1<>2]=c|f;c=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}La(c,d,f)}f=-1;f=(b|0)!=-1?F[F[F[a+4>>2]>>2]+(b<<2)>>2]:f;e=F[a+36>>2]+(f>>>3&536870908)|0;c=F[e>>2];d=1<>2]=c|d;La(a+8|0,f,b)}c=F[a+84>>2];if((c|0)>2){break e}while(1){f=L(c,12)+a|0;b=F[f+52>>2];if((b|0)==F[f+48>>2]){c=c+1|0;if((c|0)!=3){continue}break e}d=b-4|0;b=F[d>>2];F[f+52>>2]=d;F[a+84>>2]=c;if((b|0)==-1){break e}f=F[a+24>>2];d=(b>>>0)/3|0;j:{if(F[f+(d>>>3&268435452)>>2]>>>d&1){break j}k:{while(1){k=(b>>>0)/3|0;d=(k>>>3&268435452)+f|0;F[d>>2]=F[d>>2]|1<>2]>>2]+(b<<2)>>2]:f;e=F[a+36>>2]+(f>>>3&536870908)|0;c=F[e>>2];d=1<>2]=c|d;h=F[(F[F[a+16>>2]+96>>2]+L(k,12)|0)+((b>>>0)%3<<2)>>2];l=F[F[a+20>>2]+4>>2];d=F[l+4>>2];r:{if((d|0)!=F[l+8>>2]){F[d>>2]=h;F[l+4>>2]=d+4;break r}i=F[l>>2];j=d-i|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break q}c=j>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;d=0;s:{if(!e){break s}if(e>>>0>=1073741824){break a}d=pa(e<<2)}c=d+(g<<2)|0;F[c>>2]=h;if((j|0)>=1){qa(d,i,j)}F[l+8>>2]=d+(e<<2);F[l+4>>2]=c+4;F[l>>2]=d;if(!i){break r}oa(i)}i=F[a+12>>2];d=F[i+4>>2];t:{if((d|0)!=F[i+8>>2]){F[d>>2]=b;F[i+4>>2]=d+4;break t}j=F[i>>2];h=d-j|0;g=h>>2;e=g+1|0;if(e>>>0>=1073741824){break p}c=h>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;d=0;u:{if(!e){break u}if(e>>>0>=1073741824){break a}d=pa(e<<2)}c=d+(g<<2)|0;F[c>>2]=b;if((h|0)>=1){qa(d,j,h)}F[i+8>>2]=d+(e<<2);F[i+4>>2]=c+4;F[i>>2]=d;if(!j){break t}oa(j)}d=F[a+12>>2];F[F[d+12>>2]+(f<<2)>>2]=F[d+24>>2];F[d+24>>2]=F[d+24>>2]+1}if((b|0)==-1){break k}h=F[a+4>>2];d=-1;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]}b=(b-L(k,3)|0?-1:2)+b|0;if((b|0)!=-1){d=F[F[h+12>>2]+(b<<2)>>2]}g=(d|0)==-1;e=(d>>>0)/3|0;c=(f>>>0)/3|0;b=(f|0)==-1;if(!b){b=b?-1:c;b=F[F[a+24>>2]+(b>>>3&536870908)>>2]&1<>2]+(b>>>3&536870908)>>2]>>>b&1){break v}b=0;c=F[F[h>>2]+(d<<2)>>2];if(!(F[F[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){b=F[a+88>>2]+(c<<2)|0;c=F[b>>2];F[b>>2]=c+1;b=(c|0)<1?2:1}if(!(!l|F[a+84>>2]<(b|0))){b=d;f=F[a+24>>2];continue}m=L(b,12)+a|0;j=m;c=F[j+52>>2];w:{if((c|0)!=F[j+56>>2]){F[c>>2]=d;F[j+52>>2]=c+4;break w}k=F[m+48>>2];i=c-k|0;h=i>>2;g=h+1|0;if(g>>>0>=1073741824){break d}e=i>>1;g=h>>>0<536870911?e>>>0>>0?g:e:1073741823;c=0;x:{if(!g){break x}if(g>>>0>=1073741824){break a}c=pa(g<<2)}e=c+(h<<2)|0;F[e>>2]=d;if((i|0)>=1){qa(c,k,i)}F[m+48>>2]=c;F[j+52>>2]=e+4;F[m+56>>2]=c+(g<<2);if(!k){break w}oa(k)}if(F[a+84>>2]<=(b|0)){break v}F[a+84>>2]=b}if(l){break k}b=-1;if((f|0)==-1){break l}}b=F[F[F[a+4>>2]>>2]+(f<<2)>>2]}d=0;if(!(F[F[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=F[a+88>>2]+(b<<2)|0;d=F[b>>2];F[b>>2]=d+1;d=(d|0)<1?2:1}if(F[a+84>>2]>=(d|0)){b=f;f=F[a+24>>2];continue}break}k=L(d,12)+a|0;h=k;b=F[h+52>>2];y:{if((b|0)!=F[h+56>>2]){F[b>>2]=f;F[h+52>>2]=b+4;break y}i=F[k+48>>2];j=b-i|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break c}c=j>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;b=0;z:{if(!e){break z}if(e>>>0>=1073741824){break a}b=pa(e<<2)}c=b+(g<<2)|0;F[c>>2]=f;if((j|0)>=1){qa(b,i,j)}F[k+48>>2]=b;F[h+52>>2]=c+4;F[k+56>>2]=b+(e<<2);if(!i){break y}oa(i)}c=F[a+84>>2];if((c|0)<=(d|0)){break j}F[a+84>>2]=d;c=d;break j}c=F[a+84>>2]}if((c|0)<3){continue}break}}return 1}sa();V()}sa();V()}sa();V()}ta(8944);V()}function Ig(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;e=ba-32|0;ba=e;a:{if(!cb(1,e+28|0,F[a+32>>2])){break a}if(!cb(1,e+24|0,F[a+32>>2])){break a}l=F[e+28>>2];if(l>>>0>1431655765){break a}c=F[a+32>>2];i=F[c+8>>2];b=i;g=F[c+16>>2];f=b-g|0;d=F[c+12>>2];n=b>>>0>>0;b=F[c+20>>2];h=ii(f,d-(n+b|0)|0,3,0);f=l;if(!ca&h>>>0>>0){break a}p=F[e+24>>2];f=hi(f,0,3,0);if(!ca&f>>>0

>>0|((b|0)>(d|0)?1:(b|0)>=(d|0)?g>>>0>=i>>>0:0)){break a}i=G[g+F[c>>2]|0];h=g+1|0;f=h>>>0<1?b+1|0:b;F[c+16>>2]=h;F[c+20>>2]=f;b:{if(!i){c=0;b=ba-32|0;ba=b;F[b+24>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;c:{d:{f=L(l,3);if(f){if(f>>>0>=1073741824){break d}d=L(l,12);c=pa(d);F[b+16>>2]=c;F[b+24>>2]=(f<<2)+c;q=b,r=ra(c,0,d)+d|0,F[q+20>>2]=r}f=oc(f,1,F[a+32>>2],c);if(!(!f|!l)){d=1;i=0;while(1){F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;c=(i<<2)+c|0;g=F[c>>2];h=g>>>1|0;g=(g&1?0-h|0:h)+j|0;F[b>>2]=g;h=F[c+4>>2];j=h>>>1|0;g=g+(h&1?0-j|0:j)|0;F[b+4>>2]=g;c=F[c+8>>2];h=c>>>1|0;j=g+(c&1?0-h|0:h)|0;F[b+8>>2]=j;pb(F[a+44>>2]+96|0,b);if((d|0)!=(l|0)){d=d+1|0;i=i+3|0;c=F[b+16>>2];continue}break}c=F[b+16>>2]}if(c){F[b+20>>2]=c;oa(c)}ba=b+32|0;break c}sa();V()}if(!f){break a}break b}e:{if(p>>>0<=255){if(!l){break b}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;j=F[c+8>>2];d=F[c+12>>2];b=d;if((b|0)<(f|0)?1:(f|0)>=(b|0)?h>>>0>=j>>>0:0){break e}while(1){g=F[c>>2];n=G[g+h|0];b=f;k=h+1|0;b=k>>>0<1?b+1|0:b;i=c;F[c+16>>2]=k;F[c+20>>2]=b;F[e+8>>2]=n;if((b|0)>(d|0)?1:(b|0)>=(d|0)?k>>>0>=j>>>0:0){break e}n=G[g+k|0];b=f;k=h+2|0;b=k>>>0<2?b+1|0:b;F[c+16>>2]=k;F[i+20>>2]=b;F[e+12>>2]=n;if((b|0)>(d|0)?1:(b|0)>=(d|0)?k>>>0>=j>>>0:0){break e}b=G[g+k|0];d=h+3|0;f=d>>>0<3?f+1|0:f;F[c+16>>2]=d;F[c+20>>2]=f;F[e+16>>2]=b;pb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((l|0)==(m|0)){break b}c=F[a+32>>2];b=c;h=F[b+16>>2];f=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;j=F[b+8>>2];d=F[b+12>>2];b=d;if((b|0)>(f|0)?1:(f|0)<=(b|0)?h>>>0>>0:0){continue}break}break e}if(p>>>0<=65535){if(!l){break b}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;i=F[c+12>>2];d=g+3|0;b=d>>>0<3?b+1|0:b;k=F[c+8>>2];j=d;d=b;if((b|0)>(i|0)?1:(b|0)>=(i|0)?k>>>0>>0:0){break e}while(1){n=F[c>>2];b=n+h|0;b=G[b|0]|G[b+1|0]<<8;F[c+16>>2]=j;F[c+20>>2]=d;F[e+8>>2]=b;d=i;b=f;g=h+4|0;b=g>>>0<4?b+1|0:b;o=g;g=b;if((b|0)>(d|0)?1:(b|0)>=(d|0)?o>>>0>k>>>0:0){break e}b=j+n|0;b=G[b|0]|G[b+1|0]<<8;F[c+16>>2]=o;F[c+20>>2]=g;F[e+12>>2]=b;b=f;f=h+6|0;b=f>>>0<6?b+1|0:b;d=f;f=b;if((b|0)>(i|0)?1:(b|0)>=(i|0)?d>>>0>k>>>0:0){break e}b=n+o|0;b=G[b|0]|G[b+1|0]<<8;F[c+16>>2]=d;F[c+20>>2]=f;F[e+16>>2]=b;pb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((l|0)==(m|0)){break b}c=F[a+32>>2];b=c;h=F[b+16>>2];f=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[b+12>>2];i=g;k=F[b+8>>2];b=f;d=h+2|0;b=d>>>0<2?b+1|0:b;j=d;d=b;if((b|0)<(g|0)?1:(b|0)<=(g|0)?k>>>0>=j>>>0:0){continue}break}break e}f:{if(I[F[a+44>>2]+80>>2]>2097151){break f}d=H[a+36>>1];if(((d<<8|d>>>8)&65535)>>>0<514){break f}if(!l){break b}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(!cb(1,e+4|0,c)){break e}while(1){F[e+8>>2]=F[e+4>>2];if(!cb(1,e+4|0,F[a+32>>2])){break e}F[e+12>>2]=F[e+4>>2];if(!cb(1,e+4|0,F[a+32>>2])){break e}F[e+16>>2]=F[e+4>>2];pb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((l|0)==(m|0)){break b}f=F[a+32>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(cb(1,e+4|0,f)){continue}break}break e}if(!l){break b}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;i=F[c+12>>2];d=g+5|0;b=d>>>0<5?b+1|0:b;k=F[c+8>>2];j=d;d=b;if((b|0)>(i|0)?1:(b|0)>=(i|0)?k>>>0>>0:0){break e}while(1){n=F[c>>2];b=n+h|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[c+16>>2]=j;F[c+20>>2]=d;F[e+8>>2]=b;d=i;b=f;g=h+8|0;b=g>>>0<8?b+1|0:b;o=g;g=b;if((b|0)>(d|0)?1:(b|0)>=(d|0)?o>>>0>k>>>0:0){break e}b=j+n|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[c+16>>2]=o;F[c+20>>2]=g;F[e+12>>2]=b;b=h+12|0;f=b>>>0<12?f+1|0:f;d=b;b=f;if((b|0)>(i|0)?1:(b|0)>=(i|0)?d>>>0>k>>>0:0){break e}f=n+o|0;f=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[c+16>>2]=d;F[c+20>>2]=b;F[e+16>>2]=f;pb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((l|0)==(m|0)){break b}c=F[a+32>>2];b=c;h=F[b+16>>2];f=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[b+12>>2];i=g;k=F[b+8>>2];b=f;d=h+4|0;b=d>>>0<4?b+1|0:b;j=d;d=b;if((b|0)<(g|0)?1:(b|0)<=(g|0)?k>>>0>=j>>>0:0){continue}break}}m=0;break a}F[F[a+4>>2]+80>>2]=p;m=1}ba=e+32|0;return m|0}function zd(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;d=ba-48|0;ba=d;c=F[F[a+4>>2]+44>>2];g=F[a+8>>2];e=F[g>>2];g=F[g+4>>2];F[d+40>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;g=(g-e>>2>>>0)/3|0;j=F[c+96>>2];e=(F[c+100>>2]-j|0)/12|0;a:{if(g>>>0>e>>>0){lc(c+96|0,g-e|0,d+32|0);break a}if(e>>>0<=g>>>0){break a}F[c+100>>2]=j+L(g,12)}b:{if(F[a+216>>2]==F[a+220>>2]){k=F[a+4>>2];f=F[k+44>>2];h=F[f+100>>2];if((h|0)!=F[f+96>>2]){c=0;while(1){g=-1;i=0;e=-1;c:{d:{e:{j=L(c,3);if((j|0)==-1){break e}l=-1;e=F[F[F[a+8>>2]>>2]+(j<<2)>>2];i=j+1|0;if((i|0)!=-1){break e}j=0;break d}l=F[F[F[a+8>>2]>>2]+(i<<2)>>2];j=j+2|0;if((j|0)==-1){break c}}g=F[F[F[a+8>>2]>>2]+(j<<2)>>2]}j=c+1|0;i=F[f+96>>2];h=(h-i|0)/12|0;if(h>>>0<=c>>>0){F[d+40>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;lc(f+96|0,j-h|0,d+32|0);i=F[f+96>>2];k=F[a+4>>2]}c=L(c,12)+i|0;F[c+8>>2]=g;F[c+4>>2]=l;F[c>>2]=e;c=j;f=F[k+44>>2];h=F[f+100>>2];if(c>>>0<(h-F[f+96>>2]|0)/12>>>0){continue}break}}F[F[k+4>>2]+80>>2]=b;c=1;break b}j=0;F[d+24>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;k=F[a+8>>2];b=F[k>>2];c=F[k+4>>2];F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;f:{g:{h:{i:{j:{k:{l:{b=c-b|0;if(b){if((b|0)<=-1){break l}c=pa(b);F[d>>2]=c;F[d+8>>2]=c+(b>>2<<2);o=d,p=ra(c,0,b)+b|0,F[o+4>>2]=p}c=F[k+24>>2];if((F[k+28>>2]-c|0)<=0){break g}while(1){g=F[(j<<2)+c>>2];m:{if((g|0)==-1){break m}n:{if(F[F[a+120>>2]+(j>>>3&536870908)>>2]>>>j&1){break n}l=F[a+216>>2];b=F[a+220>>2]-l|0;if(!b){break n}f=((g>>>0)%3|0?-1:2)+g|0;b=(b|0)/144|0;m=b>>>0>1?b:1;i=0;while(1){n=g<<2;h=l+L(i,144)|0;b=F[n+F[F[h+68>>2]>>2]>>2];o:{if(!(F[F[h+16>>2]+(b>>>3&536870908)>>2]>>>b&1)){break o}b=g;c=-1;p:{if((f|0)==-1){break p}e=F[F[k+12>>2]+(f<<2)>>2];c=-1;if((e|0)==-1){break p}c=e-1|0;if((e>>>0)%3|0){break p}c=e+2|0}if((b|0)==(c|0)){break o}h=F[h+32>>2];n=F[h+n>>2];while(1){b=0;if((c|0)==-1){break f}if(F[h+(c<<2)>>2]!=(n|0)){g=c;break n}e=g;c=((c>>>0)%3|0?-1:2)+c|0;b=-1;q:{if((c|0)==-1){break q}c=F[F[k+12>>2]+(c<<2)>>2];b=-1;if((c|0)==-1){break q}b=c-1|0;if((c>>>0)%3|0){break q}b=c+2|0}c=b;if((e|0)!=(c|0)){continue}break}}i=i+1|0;if((m|0)!=(i|0)){continue}break}}b=F[d+20>>2];c=F[d+16>>2];f=b-c|0;i=f>>2;F[F[d>>2]+(g<<2)>>2]=i;h=F[d+24>>2];r:{if(h>>>0>b>>>0){F[b>>2]=g;F[d+20>>2]=b+4;break r}e=i+1|0;if(e>>>0>=1073741824){break k}h=h-c|0;l=h>>1;e=h>>2>>>0<536870911?e>>>0>l>>>0?e:l:1073741823;b=0;s:{if(!e){break s}if(e>>>0>=1073741824){break j}b=pa(e<<2)}i=b+(i<<2)|0;F[i>>2]=g;if((f|0)>=1){qa(b,c,f)}F[d+24>>2]=b+(e<<2);F[d+20>>2]=i+4;F[d+16>>2]=b;if(!c){break r}oa(c);k=F[a+8>>2]}if((g|0)==-1){break m}b=((g>>>0)%3|0?-1:2)+g|0;if((b|0)==-1){break m}b=F[F[k+12>>2]+(b<<2)>>2];if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}e=g;if((e|0)==(c|0)){break m}while(1){b=c;t:{u:{f=F[a+216>>2];c=F[a+220>>2]-f|0;if(!c){break u}c=(c|0)/144|0;i=c>>>0>1?c:1;c=0;while(1){h=F[(f+L(c,144)|0)+32>>2];l=b<<2;if(F[h+l>>2]==F[h+(e<<2)>>2]){c=c+1|0;if((i|0)!=(c|0)){continue}break u}break}c=F[d+20>>2];e=F[d+16>>2];i=c-e|0;h=i>>2;F[l+F[d>>2]>>2]=h;l=F[d+24>>2];if(l>>>0>c>>>0){F[c>>2]=b;F[d+20>>2]=c+4;break t}f=h+1|0;if(f>>>0>=1073741824){break i}l=l-e|0;m=l>>1;f=l>>2>>>0<536870911?f>>>0>m>>>0?f:m:1073741823;c=0;v:{if(!f){break v}if(f>>>0>=1073741824){break h}c=pa(f<<2)}h=c+(h<<2)|0;F[h>>2]=b;if((i|0)>=1){qa(c,e,i)}F[d+24>>2]=c+(f<<2);F[d+20>>2]=h+4;F[d+16>>2]=c;if(!e){break t}oa(e);k=F[a+8>>2];break t}c=F[d>>2];F[c+(b<<2)>>2]=F[c+(e<<2)>>2]}if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}c=F[F[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break m}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}e=b;if((c|0)!=(g|0)){continue}break}}j=j+1|0;c=F[k+24>>2];if((j|0)>2]-c>>2){continue}break}break g}sa();V()}sa();V()}ta(8944);V()}sa();V()}ta(8944);V()}j=F[a+4>>2];f=F[j+44>>2];e=F[f+100>>2];if((e|0)!=F[f+96>>2]){c=0;while(1){b=c+1|0;k=L(c,12);g=k+F[d>>2]|0;i=F[g+8>>2];h=F[g+4>>2];g=F[g>>2];l=c;c=F[f+96>>2];e=(e-c|0)/12|0;if(l>>>0>=e>>>0){F[d+40>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;lc(f+96|0,b-e|0,d+32|0);j=F[a+4>>2];c=F[f+96>>2]}c=c+k|0;F[c+8>>2]=i;F[c+4>>2]=h;F[c>>2]=g;c=b;f=F[j+44>>2];e=F[f+100>>2];if(c>>>0<(e-F[f+96>>2]|0)/12>>>0){continue}break}}F[F[j+4>>2]+80>>2]=F[d+20>>2]-F[d+16>>2]>>2;b=1}c=b;a=F[d>>2];if(a){F[d+4>>2]=a;oa(a)}a=F[d+16>>2];if(!a){break b}F[d+20>>2]=a;oa(a)}ba=d+48|0;return c}function Ja(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=0,l=0;a:{b:{c:{if(!d){break c}d:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;f=D[b|0];F[e>>2]=f;F[e+4>>2]=f>>31;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 a;case 1:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=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 a;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;f=E[b>>1];F[e>>2]=f;F[e+4>>2]=f>>31;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 a;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;F[e>>2]=H[b>>1];F[e+4>>2]=0;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 a;case 4:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;f=F[b>>2];F[e>>2]=f;F[e+4>>2]=f>>31;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 a;case 5:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=0;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 a;case 6:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}f=F[b+4>>2];e=(g<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=f;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 a;case 7:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=F[b>>2];f=F[b+4>>2];k=f;if((f|0)<0){break b}f=(g<<3)+d|0;F[f>>2]=e;F[f+4>>2]=k;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 a;case 8:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break b}e=(g<<3)+d|0;h=e;i=J[b>>2];e:{if(M(N(i))=M(1)?i>M(0)?~~M(P(M(R(M(i*M(2.3283064365386963e-10)))),M(4294967296)))>>>0:~~M(S(M(M(i-M(~~i>>>0>>>0))*M(2.3283064365386963e-10))))>>>0:0;l=~~i>>>0;break e}f=-2147483648;l=0}F[h>>2]=l;F[e+4>>2]=f;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 a;case 9:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break b}e=(g<<3)+d|0;h=e;j=K[b>>3];f:{if(N(j)<0x8000000000000000){f=N(j)>=1?j>0?~~P(R(j*2.3283064365386963e-10),4294967295)>>>0:~~S((j-+(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;l=~~j>>>0;break f}f=-2147483648;l=0}F[h>>2]=l;F[e+4>>2]=f;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 a;case 10:break d;default:break c}}e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=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}ra((e<<3)+d|0,0,c-e<<3)}return}return}ra((e<<3)+d|0,0,c-e<<3)}function ob(a,b,c,d){var e=0,f=0,g=0,h=M(0),i=0;a:{b:{c:{if(!d){break c}d:{switch(F[a+28>>2]-1|0){case 0:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(D[b|0]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h/M(127)}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 a;case 1:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(G[b|0]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h/M(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}}if((c|0)<=(e|0)){break c}break a;case 2:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(E[b>>1]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h/M(32767)}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 a;case 3:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(H[b>>1]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h/M(65535)}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 a;case 4:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(F[b>>2]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h*M(4.656612873077393e-10)}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 a;case 5:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(I[b>>2]);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h*M(2.3283064365386963e-10)}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 a;case 6:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(+I[b>>2]+ +F[b+4>>2]*4294967296);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h*M(1.0842021724855044e-19)}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 a;case 7:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}e=(g<<2)+d|0;h=M(+I[b>>2]+ +I[b+4>>2]*4294967296);J[e>>2]=h;if(G[a+32|0]){J[e>>2]=h*M(5.421010862427522e-20)}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 a;case 8:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}J[(g<<2)+d>>2]=J[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 a;case 9:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;f=F[f+4>>2];while(1){if(b>>>0>=f>>>0){break b}J[(g<<2)+d>>2]=K[b>>3];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 a;case 10:break d;default:break c}}i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){f=F[a>>2];e=F[f>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[f+4>>2]<=b>>>0){break b}J[(g<<2)+d>>2]=G[b|0]?M(1):M(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}ra((e<<2)+d|0,0,c-e<<2)}return i}return 0}ra((e<<2)+d|0,0,c-e<<2);return 1}function Qb(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=ba-96|0;ba=f;d=F[a+16>>2];D[f+92|0]=1;F[f+88>>2]=b;F[f+84>>2]=b;F[f+80>>2]=d;i=F[a+20>>2];e=F[i>>2];a:{b:{d=F[F[d+28>>2]+(b<<2)>>2];if(d>>>0>2]-e>>2>>>0){e=F[F[a+8>>2]+(F[e+(d<<2)>>2]<<2)>>2];d=F[a+4>>2];if(!G[d+84|0]){e=F[F[d+68>>2]+(e<<2)>>2]}F[f+72>>2]=0;F[f+76>>2]=0;i=f- -64|0;F[i>>2]=0;F[i+4>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;Ja(d,e,D[d+24|0],f+56|0);d=b+1|0;e=(d>>>0)%3|0;if(b>>>0<=d>>>0){i=e?d:b-2|0;o=((b>>>0)%3|0?-1:2)+b|0;while(1){e=i;d=o;c:{if(!F[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break c}d=b+2|0}g=F[a+20>>2];b=F[g>>2];e=F[F[F[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=F[g+4>>2]-b>>2>>>0){break b}e=F[F[a+8>>2]+(F[b+(e<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<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;Ja(b,e,D[b+24|0],f+32|0);e=F[a+20>>2];b=F[e>>2];d=F[F[F[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=F[e+4>>2]-b>>2>>>0){break a}e=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<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;Ja(b,e,D[b+24|0],f+8|0);d=F[f+8>>2];b=F[f+56>>2];g=d-b|0;l=F[f+60>>2];e=F[f+12>>2]-(l+(b>>>0>d>>>0)|0)|0;h=F[f+40>>2];d=F[f+64>>2];v=h-d|0;t=F[f+68>>2];h=F[f+44>>2]-(t+(h>>>0>>0)|0)|0;p=hi(g,e,v,h);u=k-p|0;j=j-(ca+(k>>>0

>>0)|0)|0;m=u;k=F[f+16>>2];p=k-d|0;t=F[f+20>>2]-((d>>>0>k>>>0)+t|0)|0;k=F[f+32>>2];u=k-b|0;l=F[f+36>>2]-((b>>>0>k>>>0)+l|0)|0;d=hi(p,t,u,l);k=m+d|0;b=ca+j|0;b=d>>>0>k>>>0?b+1|0:b;j=b;x=q;m=g;b=F[f+48>>2];d=F[f+72>>2];g=b-d|0;q=F[f+76>>2];w=F[f+52>>2]-(q+(b>>>0>>0)|0)|0;m=hi(m,e,g,w);e=x+m|0;b=ca+n|0;b=e>>>0>>0?b+1|0:b;n=F[f+24>>2];m=n-d|0;d=F[f+28>>2]-((d>>>0>n>>>0)+q|0)|0;n=hi(m,d,u,l);q=e-n|0;n=b-(ca+(e>>>0>>0)|0)|0;b=hi(p,t,g,w);e=r-b|0;b=s-(ca+(b>>>0>r>>>0)|0)|0;s=hi(m,d,v,h);r=s+e|0;b=ca+b|0;b=r>>>0>>0?b+1|0:b;s=b;b=F[f+88>>2];d=F[f+80>>2];d:{if(G[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}e=b+1|0;b=(e>>>0)%3|0?e:b-2|0;if((b|0)==-1|F[F[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=F[F[F[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}F[f+88>>2]=-1;break f}e=b+1|0;b=(e>>>0)%3|0?e:b-2|0;F[f+88>>2]=b;if((b|0)!=-1){break e}}b=-1;e=F[f+84>>2];i:{if((e|0)==-1){break i}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1|F[F[d>>2]+(e>>>3&536870908)>>2]>>>e&1){break i}d=F[F[F[d+64>>2]+12>>2]+(e<<2)>>2];if((d|0)==-1){break i}if((d>>>0)%3|0){b=d-1|0;break i}b=d+2|0}D[f+92|0]=0;F[f+88>>2]=b;break d}if((b|0)!=F[f+84>>2]){break d}F[f+88>>2]=-1;break d}e=-1;j:{if((b|0)==-1){break j}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)==-1|F[F[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break j}b=F[F[F[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break j}if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0}F[f+88>>2]=e}b=F[f+88>>2];if((b|0)!=-1){continue}break}}d=s;o=d>>31;g=o;e=g+r|0;d=d>>31;b=s+d|0;l=e^g;g=d^(e>>>0>>0?b+1|0:b);d=n;b=d>>31;i=d>>31;d=i+q|0;e=b;b=n+b|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^e;h=b;p=d^-1;e=b^2147483647;k:{if(!F[a+28>>2]){if((e|0)==(g|0)&l>>>0>p>>>0|e>>>0>>0){break k}b=g+h|0;a=d+l|0;b=a>>>0>>0?b+1|0:b;i=a;a=b;b=j;l=b>>31;h=l;o=h+k|0;e=b>>31;b=e+b|0;b=h>>>0>o>>>0?b+1|0:b;g=h^o;o=g+i|0;d=b^e;b=o;d=d^2147483647;a=(d|0)==(a|0)&(g^-1)>>>0>>0|a>>>0>d>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break k}b=(a|0)/536870912|0;a=b;b=b>>31;k=ii(k,j,a,b);q=ii(q,n,a,b);r=ii(r,s,a,b);break k}m=k;i=j;b=3;a=-1;l:{if((e|0)==(g|0)&l>>>0>p>>>0|e>>>0>>0){break l}b=g+h|0;a=d+l|0;b=a>>>0>>0?b+1|0:b;d=a;g=b;e=b;a=j;b=a>>31;h=a>>31;j=h+k|0;o=a;a=b;b=o+b|0;b=j>>>0>>0?b+1|0:b;j=j^h;h=a^b;p=h;b=3;h=h^2147483647;a=-1;if((h|0)==(e|0)&(j^-1)>>>0>>0|e>>>0>h>>>0){break l}b=g+p|0;a=d+j|0;b=a>>>0>>0?b+1|0:b;j=a;a=b;if(!b&j>>>0<536870913){break k}b=a>>>29|0;a=(a&536870911)<<3|j>>>29}k=ii(m,i,a,b);q=ii(q,n,a,b);r=ii(r,s,a,b)}F[c+8>>2]=k;F[c+4>>2]=q;F[c>>2]=r;ba=f+96|0;return}va();V()}va();V()}va();V()}function Gb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=M(0),l=0;a:{b:{c:{if(!d){break 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)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=E[b>>1];if((e|0)<0){break c}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 a;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b>>2];if(e+32768>>>0>65535){break b}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 a;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b>>2];if(e>>>0>32767){break b}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 a;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b+4>>2];i=F[b>>2];j=i+32768|0;e=j>>>0<32768?e+1|0:e;if(!e&j>>>0>65535|e){break b}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 a;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>32767|e){break b}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 a;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}i=(g<<1)+d|0;k=J[b>>2];e:{if(M(N(k))>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 a;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}i=(g<<1)+d|0;l=K[b>>3];f:{if(N(l)<2147483648){e=~~l;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 a;case 10:break d;default:break c}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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}ra((e<<1)+d|0,0,c-e<<1)}return h}return 0}ra((e<<1)+d|0,0,c-e<<1);return 1}function Fb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{c:{if(!d){break c}d:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=D[b|0];if((e|0)<0){break c}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 a;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=E[b>>1];if((e|0)<0){break c}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 a;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b>>2];if(e>>>0>65535){break b}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 a;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b>>2];if(e>>>0>65535){break b}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 a;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break b}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 a;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break b}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 a;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 10:break d;default:break c}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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}ra((e<<1)+d|0,0,c-e<<1)}return h}return 0}ra((e<<1)+d|0,0,c-e<<1);return 1}function Eb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{c:{if(!d){break 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)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 5:h=D[a+24|0];if((((c|0)<(h|0)?c:h)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;e=F[e+4>>2];while(1){if(b>>>0>=e>>>0){break b}h=0;f=F[b>>2];if((f|0)<0){break c}F[(g<<2)+d>>2]=f;b=b+4|0;g=g+1|0;h=D[a+24|0];if((g|0)<(((c|0)<(h|0)?c:h)|0)){continue}break}}if((c|0)<=(h|0)){return 1}ra((h<<2)+d|0,0,c-h<<2);return 1;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b+4>>2];i=F[b>>2];if(i- -2147483648>>>0<2147483648?e+1|0:e){break b}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 a;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>2147483647|e){break b}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 a;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 10:break d;default:break c}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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}ra((e<<2)+d|0,0,c-e<<2)}return h}return 0}ra((e<<2)+d|0,0,c-e<<2);return 1}function Db(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{c:{if(!d){break 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)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b>>2];if(F[b+4>>2]){break b}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 a;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}e=F[b>>2];if(F[b+4>>2]){break b}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 a;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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 a;case 10:break d;default:break c}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+hi(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 b}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}ra((e<<2)+d|0,0,c-e<<2)}return h}return 0}ra((e<<2)+d|0,0,c-e<<2);return 1}function ue(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;j=ba-16|0;ba=j;m=1;n=da[F[F[a>>2]+24>>2]](a)|0;a:{if((n|0)<1){m=0;break a}q=a+48|0;while(1){b:{c:{if(!F[(da[F[F[a>>2]+28>>2]](a)|0)+40>>2]){break c}p=k<<2;b=F[p+F[a+36>>2]>>2];c=F[b+8>>2];f=eb(b);if(!f){break c}b=F[(da[F[F[a>>2]+28>>2]](a)|0)+40>>2];h=F[c+56>>2];g=pa(32);F[j>>2]=g;F[j+4>>2]=24;F[j+8>>2]=-2147483616;D[g+24|0]=0;d=G[1808]|G[1809]<<8|(G[1810]<<16|G[1811]<<24);c=g;e=G[1804]|G[1805]<<8|(G[1806]<<16|G[1807]<<24);D[c+16|0]=e;D[c+17|0]=e>>>8;D[c+18|0]=e>>>16;D[c+19|0]=e>>>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[1800]|G[1801]<<8|(G[1802]<<16|G[1803]<<24);e=G[1796]|G[1797]<<8|(G[1798]<<16|G[1799]<<24);D[c+8|0]=e;D[c+9|0]=e>>>8;D[c+10|0]=e>>>16;D[c+11|0]=e>>>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[1792]|G[1793]<<8|(G[1794]<<16|G[1795]<<24);e=G[1788]|G[1789]<<8|(G[1790]<<16|G[1791]<<24);D[c|0]=e;D[c+1|0]=e>>>8;D[c+2|0]=e>>>16;D[c+3|0]=e>>>24;D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;c=b+16|0;e=c;d=F[c>>2];d:{if(!d){break d}while(1){i=(h|0)>F[d+16>>2];e=i?e:d;d=F[(i<<2)+d>>2];if(d){continue}break}if((c|0)==(e|0)|(h|0)>2]){break d}d=F[e+24>>2];if(!d){break d}c=e+20|0;while(1){e=G[d+27|0];h=e<<24>>24<0;e=h?F[d+20>>2]:e;i=e>>>0<24;e:{f:{o=i?e:24;g:{if(o){l=d+16|0;h=h?F[l>>2]:l;l=wa(g,h,o);h:{if(!l){if(e>>>0<=24){break h}break e}if((l|0)<=-1){break e}}e=wa(h,g,o);if(!e){break g}if((e|0)<=-1){break f}b=c;break d}if(e>>>0>24){break e}}if(i){break f}b=c;break d}d=d+4|0}d=F[d>>2];if(d){continue}break}}e=0;c=b+4|0;b=bb(b,j);i:{if((c|0)==(b|0)){break i}c=b+28|0;c=D[b+39|0]<=-1?F[c>>2]:c;h=0;d=0;g=0;while(1){b=c;c=c+1|0;i=D[b|0];if((i|0)==32|i-9>>>0<5){continue}break}j:{k:{l:{i=D[b|0];switch(i-43|0){case 0:break k;case 2:break l;default:break j}}d=1}i=D[c|0];b=c;g=d}m:{if(i-48>>>0>=10){break m}c=0;while(1){h=(c-D[b|0]|0)+48|0;if(D[b+1|0]-48>>>0>=10){break m}b=b+1|0;c=L(h,10);continue}}b=g?h:0-h|0;if((b|0)==-1){break i}e=(b|0)!=0}if(D[j+11|0]<=-1){oa(F[j>>2])}if(!e){break c}d=F[F[F[a+36>>2]+p>>2]+8>>2];if(!F[d+64>>2]){b=pa(32);g=b;F[b+16>>2]=0;F[b+20>>2]=0;F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;c=F[d+64>>2];F[d+64>>2]=b;if(c){b=F[c>>2];if(b){F[c+4>>2]=b;oa(b)}oa(c);g=F[d+64>>2]}F[d>>2]=g;b=F[g+20>>2];F[d+8>>2]=F[g+16>>2];F[d+12>>2]=b;b=F[g+24>>2];c=F[g+28>>2];F[d+48>>2]=0;F[d+52>>2]=0;F[d+40>>2]=0;F[d+44>>2]=0;F[d+16>>2]=b;F[d+20>>2]=c}n:{D[d+24|0]=G[f+24|0];F[d+28>>2]=F[f+28>>2];D[d+32|0]=G[f+32|0];b=F[f+44>>2];F[d+40>>2]=F[f+40>>2];F[d+44>>2]=b;b=F[f+52>>2];F[d+48>>2]=F[f+48>>2];F[d+52>>2]=b;F[d+56>>2]=F[f+56>>2];b=F[f+12>>2];F[d+8>>2]=F[f+8>>2];F[d+12>>2]=b;b=F[f+20>>2];F[d+16>>2]=F[f+16>>2];F[d+20>>2]=b;F[d+60>>2]=F[f+60>>2];c=F[f>>2];o:{if(!c){F[d>>2]=0;b=1;break o}g=F[d>>2];b=0;if(!g){break o}b=F[c>>2];od(g,b,F[c+4>>2]-b|0,0);b=1}if(!b){break n}D[d+84|0]=G[f+84|0];F[d+80>>2]=F[f+80>>2];if((d|0)!=(f|0)){hb(d+68|0,F[f+68>>2],F[f+72>>2])}p:{f=F[f+88>>2];if(f){b=pa(40);c=F[f>>2];F[b+16>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b>>2]=c;g=F[f+12>>2]-F[f+8>>2]|0;if(g){if((g|0)<=-1){break p}c=pa(g);F[b+8>>2]=c;F[b+12>>2]=c;F[b+16>>2]=c+g;g=b;h=F[f+8>>2];e=F[f+12>>2]-h|0;if((e|0)>=1){c=qa(c,h,e)+e|0}F[g+12>>2]=c}c=F[f+36>>2];F[b+32>>2]=F[f+32>>2];F[b+36>>2]=c;c=F[f+28>>2];F[b+24>>2]=F[f+24>>2];F[b+28>>2]=c;c=F[d+88>>2];F[d+88>>2]=b;if(!c){break n}b=F[c+8>>2];if(b){F[c+12>>2]=b;oa(b)}oa(c);break n}b=F[d+88>>2];F[d+88>>2]=0;if(!b){break n}c=F[b+8>>2];if(c){F[b+12>>2]=c;oa(c)}oa(b);break n}sa();V()}break b}b=F[F[a+36>>2]+(k<<2)>>2];if(!(da[F[F[b>>2]+24>>2]](b,q)|0)){break a}}k=k+1|0;m=(n|0)>(k|0);if((k|0)!=(n|0)){continue}break}}ba=j+16|0;return(m^-1)&1}function th(a){a=a|0;var b=0,c=0,d=0,e=0;d=F[a+32>>2];c=F[d+16>>2];e=F[d+12>>2];b=F[d+20>>2];if((b|0)<(e|0)?1:(e|0)>=(b|0)?I[d+8>>2]>c>>>0:0){e=G[c+F[d>>2]|0];c=c+1|0;b=c>>>0<1?b+1|0:b;F[d+16>>2]=c;F[d+20>>2]=b;d=F[a+48>>2];F[a+48>>2]=0;if(d){da[F[F[d>>2]+4>>2]](d)}a:{b:{c:{switch(e|0){case 0:d=pa(384);F[d>>2]=8340;ra(d+4|0,0,80);c=d;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;b=F[a+48>>2];F[a+48>>2]=c;if(!b){break a}da[F[F[b>>2]+4>>2]](b);break b;case 2:break c;default:break b}}d=pa(440);F[d>>2]=8392;ra(d+4|0,0,80);c=d;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}da[F[F[b>>2]+4>>2]](b)}d=F[a+48>>2];if(d){break a}return 0}a=da[F[F[d>>2]+8>>2]](d,a)|0}else{a=0}return a|0}function jc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=ba-48|0;ba=e;d=H[5149]|H[5150]<<16;g=H[5147]|H[5148]<<16;E[e+38>>1]=g;E[e+40>>1]=g>>>16;E[e+42>>1]=d;E[e+44>>1]=d>>>16;d=F[2573];F[e+32>>2]=F[2572];F[e+36>>2]=d;d=F[2571];F[e+24>>2]=F[2570];F[e+28>>2]=d;d=F[2569];F[e+16>>2]=F[2568];F[e+20>>2]=d;g=F[b+12>>2];d=F[b+20>>2];a:{f=F[b+16>>2];h=f+5|0;d=h>>>0<5?d+1|0:d;b:{if((d|0)>(g|0)?1:(d|0)>=(g|0)?h>>>0>I[b+8>>2]:0){b=Aa(e+16|0);if(b>>>0>=4294967280){break a}c:{d:{if(b>>>0>=11){d=b+16&-16;c=pa(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}}qa(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;ua(a+4|0,e);if(D[e+11|0]>-1){break b}oa(F[e>>2]);break b}d=f+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);D[c|0]=g;D[c+1|0]=g>>>8;D[c+2|0]=g>>>16;D[c+3|0]=g>>>24;D[c+4|0]=G[d+4|0];g=b;d=F[b+20>>2];f=F[b+16>>2]+5|0;d=f>>>0<5?d+1|0:d;h=f;f=d;F[b+16>>2]=h;F[b+20>>2]=d;if(wa(c,10302,5)){b=pa(32);F[e>>2]=b;F[e+4>>2]=17;F[e+8>>2]=-2147483616;D[b+17|0]=0;D[b+16|0]=G[10324];c=G[10320]|G[10321]<<8|(G[10322]<<16|G[10323]<<24);d=G[10316]|G[10317]<<8|(G[10318]<<16|G[10319]<<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[10312]|G[10313]<<8|(G[10314]<<16|G[10315]<<24);d=G[10308]|G[10309]<<8|(G[10310]<<16|G[10311]<<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;F[a>>2]=-1;ua(a+4|0,e);if(D[e+11|0]>-1){break b}oa(F[e>>2]);break b}d=F[b+12>>2];if((d|0)<(f|0)?1:(d|0)<=(f|0)?I[b+8>>2]<=h>>>0:0){b=Aa(e+16|0);if(b>>>0>=4294967280){break a}e:{f:{if(b>>>0>=11){d=b+16&-16;c=pa(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}}qa(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;ua(a+4|0,e);if(D[e+11|0]>-1){break b}oa(F[e>>2]);break b}D[c+5|0]=G[h+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f>>>0<1?d+1|0:d;F[b+16>>2]=f;F[g+20>>2]=d;g=F[b+12>>2];if((d|0)>(g|0)?1:(g|0)<=(d|0)?I[b+8>>2]<=f>>>0:0){b=Aa(e+16|0);if(b>>>0>=4294967280){break a}g:{h:{if(b>>>0>=11){d=b+16&-16;c=pa(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}}qa(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;ua(a+4|0,e);if(D[e+11|0]>-1){break b}oa(F[e>>2]);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>>>0<1?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((d|0)>(g|0)?1:(g|0)<=(d|0)?I[b+8>>2]<=f>>>0:0){b=Aa(e+16|0);if(b>>>0>=4294967280){break a}i:{j:{if(b>>>0>=11){d=b+16&-16;c=pa(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}}qa(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;ua(a+4|0,e);if(D[e+11|0]>-1){break b}oa(F[e>>2]);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>>>0<1?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((d|0)>(g|0)?1:(g|0)<=(d|0)?I[b+8>>2]<=f>>>0:0){b=Kb(e,e+16|0);F[a>>2]=-2;ua(a+4|0,b);if(D[b+11|0]>-1){break b}oa(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];h=i+1|0;d=h>>>0<1?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;g=F[b+12>>2];d=f;f=i+3|0;d=f>>>0<3?d+1|0:d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?f>>>0>I[b+8>>2]:0){b=Kb(e,e+16|0);F[a>>2]=-2;ua(a+4|0,b);if(D[b+11|0]>-1){break b}oa(F[b>>2]);break b}f=c;c=h+F[b>>2]|0;E[f+10>>1]=G[c|0]|G[c+1|0]<<8;c=b;d=F[b+20>>2];b=F[b+16>>2]+2|0;d=b>>>0<2?d+1|0:d;F[c+16>>2]=b;F[c+20>>2]=d;F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+4>>2]=0}ba=e+48|0;return}Ba();V()}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,n=0,o=0,p=0,q=0,r=0;f=ba+-64|0;ba=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:{b:{if(!H[b+38>>1]){break b}if(!Wa(1,f+12|0,b)){break b}i=F[f+12>>2];e=F[f>>2];d=F[f+4>>2]-e>>2;c:{if(i>>>0>d>>>0){za(f,i-d|0);i=F[f+12>>2];break c}if(d>>>0<=i>>>0){break c}F[f+4>>2]=e+(i<<2)}if(!i){k=1;break b}o=F[b+8>>2];m=F[b+12>>2];while(1){d=F[b+16>>2];e=F[b+20>>2];if((e|0)>(m|0)?1:(e|0)>=(m|0)?d>>>0>=o>>>0:0){break b}p=F[b>>2];n=G[p+d|0];d=d+1|0;e=d>>>0<1?e+1|0:e;g=b;l=d;F[g+16>>2]=d;d=e;F[g+20>>2]=d;g=n>>>2|0;h=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}d=g+j|0;e=0;if(d>>>0>=i>>>0){break a}ra(F[f>>2]+(j<<2)|0,0,(n&252)+4|0);j=d;break d}while(1){e=0;if((d|0)>(m|0)?1:(d|0)>=(m|0)?l>>>0>=o>>>0:0){break a}i=G[l+p|0];l=l+1|0;d=l>>>0<1?d+1|0:d;e=b;F[e+16>>2]=l;F[e+20>>2]=d;g=i<<(h<<3|6)|g;h=h+1|0;if((q|0)!=(h|0)){continue}break}}F[F[f>>2]+(j<<2)>>2]=g}j=j+1|0;i=F[f+12>>2];if(j>>>0>>0){continue}break}l=f+16|0;k=F[f>>2];d=F[f+16>>2];e=F[f+20>>2]-d|0;g=e>>2;h:{if(g>>>0<=1048575){za(l,1048576-g|0);break h}if((e|0)==4194304){break h}F[f+20>>2]=d+4194304}i:{d=f+28|0;j=F[d>>2];e=F[f+32>>2]-j>>3;if(e>>>0>>0){db(d,i-e|0);j=F[d>>2];break i}if(e>>>0>i>>>0){F[f+32>>2]=(i<<3)+j}if(i){break i}e=0;break a}d=F[k>>2];g=0;F[j+4>>2]=0;F[j>>2]=d;e=F[k>>2];d=1;j:{if(e>>>0>1048576){break j}h=0;k:{while(1){d=e;l:{if(g>>>0>=d>>>0){break l}n=d+(g^-1)|0;m=F[l>>2];e=d-g&7;if(e){while(1){F[m+(g<<2)>>2]=h;g=g+1|0;e=e-1|0;if(e){continue}break}}if(n>>>0<=6){break l}while(1){e=m+(g<<2)|0;F[e>>2]=h;F[e+28>>2]=h;F[e+24>>2]=h;F[e+20>>2]=h;F[e+16>>2]=h;F[e+12>>2]=h;F[e+8>>2]=h;F[e+4>>2]=h;g=g+8|0;if((d|0)!=(g|0)){continue}break}}h=h+1|0;if((i|0)!=(h|0)){e=k+(h<<2)|0;g=F[e>>2];m=(h<<3)+j|0;F[m+4>>2]=d;F[m>>2]=g;g=d;e=d+F[e>>2]|0;if(e>>>0>1048576){break k}continue}break}e=d}d=h>>>0>>0}e=!d&(e|0)==1048576;break a}e=k}m:{if(!e|(F[f+12>>2]?0:a)){break m}if(!Ra(1,f+56|0,b)){break m}d=F[b+8>>2];k=F[b+16>>2];e=k;g=d-e|0;i=F[f+60>>2];d=d>>>0>>0;e=F[b+20>>2];h=F[b+12>>2]-(d+e|0)|0;d=F[f+56>>2];if((i|0)==(h|0)&g>>>0>>0|h>>>0>>0){break m}e=e+i|0;h=d+k|0;F[b+16>>2]=h;F[b+20>>2]=d>>>0>h>>>0?e+1|0:e;if((d|0)<1){break m}g=k+F[b>>2]|0;F[f+40>>2]=g;e=f;n:{o:{p:{q:{r:{b=d-1|0;j=g+b|0;switch((G[j|0]>>>6|0)-1|0){case 2:break p;case 1:break q;case 0:break r;default:break o}}if((d|0)<2){break m}b=d-2|0;F[f+44>>2]=b;d=(d+g|0)-2|0;d=G[d+1|0]<<8&16128|G[d|0];break n}if((d|0)<3){break m}b=d-3|0;F[f+44>>2]=b;d=(d+g|0)-3|0;d=G[d+2|0]<<16&4128768|G[d+1|0]<<8|G[d|0];break n}b=d-4|0;F[f+44>>2]=b;d=(d+g|0)-4|0;d=G[d+2|0]<<16|G[d+3|0]<<24&1056964608|G[d+1|0]<<8|G[d|0];break n}F[f+44>>2]=b;d=G[j|0]&63}d=d+4194304|0;F[e+48>>2]=d;if(d>>>0>1073741823){break m}if(!a){r=1;break m}e=F[f+28>>2];k=0;j=F[f+16>>2];while(1){s:{if(d>>>0>4194303){break s}while(1){if((b|0)<1){break s}b=b-1|0;F[f+44>>2]=b;d=G[b+g|0]|d<<8;F[f+48>>2]=d;if(d>>>0<4194304){continue}break}}h=d&1048575;i=F[j+(h<<2)>>2];l=e+(i<<3)|0;d=(L(F[l>>2],d>>>20|0)+h|0)-F[l+4>>2]|0;F[f+48>>2]=d;F[(k<<2)+c>>2]=i;r=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=F[f+28>>2];if(a){F[f+32>>2]=a;oa(a)}a=F[f+16>>2];if(a){F[f+20>>2]=a;oa(a)}a=F[f>>2];if(a){F[f+4>>2]=a;oa(a)}ba=f- -64|0;return r}function Ob(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=ba-96|0;ba=f;d=F[a+16>>2];D[f+92|0]=1;F[f+88>>2]=b;F[f+84>>2]=b;F[f+80>>2]=d;e=-1;e=(b|0)!=-1?F[F[d>>2]+(b<<2)>>2]:e;i=F[a+20>>2];d=F[i>>2];a:{b:{if(F[i+4>>2]-d>>2>>>0>e>>>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;i=f- -64|0;F[i>>2]=0;F[i+4>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;Ja(e,d,D[e+24|0],f+56|0);d=b+1|0;e=(d>>>0)%3|0;if(b>>>0<=d>>>0){i=e?d:b-2|0;p=((b>>>0)%3|0?-1:2)+b|0;while(1){e=i;d=p;c:{if(!F[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break c}d=b+2|0}b=-1;b=(e|0)!=-1?F[F[F[a+16>>2]>>2]+(e<<2)>>2]:b;j=F[a+20>>2];e=F[j>>2];if(F[j+4>>2]-e>>2>>>0<=b>>>0){break b}e=F[F[a+8>>2]+(F[e+(b<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<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;Ja(b,e,D[b+24|0],f+32|0);b=-1;b=(d|0)!=-1?F[F[F[a+16>>2]>>2]+(d<<2)>>2]:b;e=F[a+20>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0<=b>>>0){break a}e=F[F[a+8>>2]+(F[d+(b<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){e=F[F[b+68>>2]+(e<<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;Ja(b,e,D[b+24|0],f+8|0);d=F[f+8>>2];b=F[f+56>>2];j=d-b|0;g=F[f+60>>2];e=F[f+12>>2]-(g+(b>>>0>d>>>0)|0)|0;m=F[f+40>>2];d=F[f+64>>2];t=m-d|0;u=F[f+68>>2];m=F[f+44>>2]-(u+(m>>>0>>0)|0)|0;l=hi(j,e,t,m);v=k-l|0;h=h-(ca+(k>>>0>>0)|0)|0;s=v;k=F[f+16>>2];l=k-d|0;u=F[f+20>>2]-((d>>>0>k>>>0)+u|0)|0;k=F[f+32>>2];v=k-b|0;g=F[f+36>>2]-((b>>>0>k>>>0)+g|0)|0;d=hi(l,u,v,g);k=s+d|0;b=ca+h|0;b=d>>>0>k>>>0?b+1|0:b;h=b;s=j;b=F[f+48>>2];d=F[f+72>>2];j=b-d|0;w=F[f+76>>2];x=F[f+52>>2]-(w+(b>>>0>>0)|0)|0;e=hi(s,e,j,x)+n|0;b=q+ca|0;b=e>>>0>>0?b+1|0:b;n=F[f+24>>2];s=n-d|0;d=F[f+28>>2]-((d>>>0>n>>>0)+w|0)|0;q=hi(s,d,v,g);n=e-q|0;q=b-(ca+(e>>>0>>0)|0)|0;b=hi(j,x,l,u);e=o-b|0;b=r-(ca+(b>>>0>o>>>0)|0)|0;r=hi(s,d,t,m);o=r+e|0;b=ca+b|0;b=o>>>0>>0?b+1|0:b;r=b;sb(f+80|0);b=F[f+88>>2];if((b|0)!=-1){continue}break}}d=r;b=d>>31;i=d>>31;d=i+o|0;e=b;b=r+b|0;b=d>>>0>>0?b+1|0:b;d=d^i;j=b^e;e=q;g=e>>31;i=g+n|0;e=e>>31;b=q+e|0;b=i>>>0>>0?b+1|0:b;m=g^i;b=b^e;l=b;t=m^-1;g=b^2147483647;d:{if(!F[a+28>>2]){if((j|0)==(g|0)&d>>>0>t>>>0|j>>>0>g>>>0){break d}b=j+l|0;a=d+m|0;b=a>>>0>>0?b+1|0:b;i=a;a=b;b=h;g=b>>31;p=g+k|0;e=b>>31;b=e+b|0;b=g>>>0>p>>>0?b+1|0:b;j=g^p;g=j;p=g+i|0;d=b^e;b=p;d=d^2147483647;a=(d|0)==(a|0)&(g^-1)>>>0>>0|a>>>0>d>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;k=ii(k,h,a,b);n=ii(n,q,a,b);o=ii(o,r,a,b);break d}i=k;p=h;e=-1;b=3;e:{if((j|0)==(g|0)&d>>>0>t>>>0|j>>>0>g>>>0){break e}b=j+l|0;a=d+m|0;b=a>>>0>>0?b+1|0:b;j=b;d=b;l=h>>31;e=l+k|0;b=h;h=h>>31;b=b+h|0;m=e^l;h=h^(e>>>0>>0?b+1|0:b);l=h;e=-1;h=h^2147483647;b=3;if((h|0)==(d|0)&(m^-1)>>>0>>0|d>>>0>h>>>0){break e}b=j+l|0;h=a+m|0;b=h>>>0>>0?b+1|0:b;a=b;if(!b&h>>>0<536870913){break d}e=(a&536870911)<<3|h>>>29;b=a>>>29|0}k=ii(i,p,e,b);n=ii(n,q,e,b);o=ii(o,r,e,b)}F[c+8>>2]=k;F[c+4>>2]=n;F[c>>2]=o;ba=f+96|0;return}va();V()}va();V()}va();V()}function Dd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=F[a+4>>2];e=F[a>>2];d=(f-e|0)/144|0;if(d>>>0>>0){e=a;c=b-d|0;h=F[a+8>>2];a=F[a+4>>2];a:{if(c>>>0<=(h-a|0)/144>>>0){if(c){b=L(c,144)+a|0;while(1){F[a>>2]=-1;Zc(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[e+4>>2]=a;break a}b:{c:{d:{b=a;a=F[e>>2];f=(b-a|0)/144|0;g=f+c|0;if(g>>>0<29826162){b=(h-a|0)/144|0;a=b<<1;g=b>>>0<14913080?a>>>0>>0?g:a:29826161;d=0;e:{if(!g){break e}if(g>>>0>=29826162){break d}d=pa(L(g,144))}b=d+L(f,144)|0;h=b+L(c,144)|0;a=b;while(1){F[a>>2]=-1;Zc(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=d+L(g,144)|0;a=F[e+4>>2];g=F[e>>2];if((a|0)==(g|0)){break c}while(1){b=b-144|0;a=a-144|0;c=a;F[b>>2]=F[c>>2];F[b+4>>2]=F[c+4>>2];F[b+8>>2]=F[c+8>>2];F[b+12>>2]=F[c+12>>2];F[c+12>>2]=0;F[c+4>>2]=0;F[c+8>>2]=0;F[b+16>>2]=F[c+16>>2];F[b+20>>2]=F[c+20>>2];F[b+24>>2]=F[c+24>>2];F[c+24>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;d=G[c+28|0];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;D[b+28|0]=d;F[b+32>>2]=F[c+32>>2];F[b+36>>2]=F[c+36>>2];F[b+40>>2]=F[c+40>>2];F[c+40>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[b+52>>2]=0;F[b+44>>2]=0;F[b+48>>2]=0;F[b+44>>2]=F[c+44>>2];F[b+48>>2]=F[c+48>>2];F[b+52>>2]=F[c+52>>2];F[c+52>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;d=b- -64|0;F[d>>2]=0;F[b+56>>2]=0;F[b+60>>2]=0;F[b+56>>2]=F[c+56>>2];F[b+60>>2]=F[c+60>>2];i=d;d=c- -64|0;F[i>>2]=F[d>>2];F[d>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[b+68>>2]=F[c+68>>2];d=F[c+72>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+72>>2]=d;F[b+76>>2]=F[c+76>>2];F[b+80>>2]=F[c+80>>2];F[b+84>>2]=F[c+84>>2];F[c+84>>2]=0;F[c+76>>2]=0;F[c+80>>2]=0;F[b+96>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+88>>2]=F[c+88>>2];F[b+92>>2]=F[c+92>>2];F[b+96>>2]=F[c+96>>2];F[c+96>>2]=0;F[c+88>>2]=0;F[c+92>>2]=0;d=G[c+100|0];F[b+112>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;D[b+100|0]=d;F[b+104>>2]=F[c+104>>2];F[b+108>>2]=F[c+108>>2];F[b+112>>2]=F[c+112>>2];F[c+112>>2]=0;F[c+104>>2]=0;F[c+108>>2]=0;F[b+124>>2]=0;F[b+116>>2]=0;F[b+120>>2]=0;F[b+116>>2]=F[c+116>>2];F[b+120>>2]=F[c+120>>2];F[b+124>>2]=F[c+124>>2];F[c+124>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;d=F[c+128>>2];F[b+140>>2]=0;F[b+132>>2]=0;F[b+136>>2]=0;F[b+128>>2]=d;F[b+132>>2]=F[c+132>>2];F[b+136>>2]=F[c+136>>2];F[b+140>>2]=F[c+140>>2];F[c+140>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;if((c|0)!=(g|0)){continue}break}F[e+8>>2]=f;a=F[e+4>>2];F[e+4>>2]=h;g=F[e>>2];F[e>>2]=b;if((a|0)==(g|0)){break b}while(1){b=F[a-12>>2];if(b){F[a-8>>2]=b;oa(b)}b=F[a-28>>2];if(b){F[a-24>>2]=b;oa(b)}b=F[a-40>>2];if(b){F[a-36>>2]=b;oa(b)}qb(a-140|0);b=a-144|0;a=b;if((b|0)!=(g|0)){continue}break}break b}sa();V()}ta(8944);V()}F[e+8>>2]=f;F[e+4>>2]=h;F[e>>2]=b}if(g){oa(g)}}return}if(b>>>0>>0){e=e+L(b,144)|0;if((e|0)!=(f|0)){while(1){b=F[f-12>>2];if(b){F[f-8>>2]=b;oa(b)}b=F[f-28>>2];if(b){F[f-24>>2]=b;oa(b)}b=F[f-40>>2];if(b){F[f-36>>2]=b;oa(b)}qb(f-140|0);b=f-144|0;f=b;if((b|0)!=(e|0)){continue}break}}F[a+4>>2]=e}}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;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}f=c+(b<<2)|0;e=F[f>>2];h=F[e+60>>2];g=F[e+56>>2];c=f+4|0;b:{if((c|0)!=(d|0)){while(1){i=F[c>>2];F[c>>2]=0;F[f>>2]=i;if(e){ya(e)}f=f+4|0;c=c+4|0;if((c|0)!=(d|0)){e=F[f>>2];continue}break}d=F[a+12>>2];if((f|0)==(d|0)){break b}}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){ya(c)}if((d|0)!=(f|0)){continue}break}}F[a+12>>2]=f;e=F[a+4>>2];c:{if(!e|(h|0)<0){break c}d=F[e+24>>2];c=F[e+28>>2];if((d|0)==(c|0)){break c}while(1){if((h|0)==F[F[d>>2]+24>>2]){f=d+4|0;h=F[e+28>>2];d:{if((f|0)!=(h|0)){while(1){i=F[f>>2];F[f>>2]=0;c=F[d>>2];F[d>>2]=i;if(c){Ea(c+12|0,F[c+16>>2]);Da(c,F[c+4>>2]);oa(c)}d=d+4|0;f=f+4|0;if((h|0)!=(f|0)){continue}break}f=F[e+28>>2];if((f|0)==(d|0)){break d}}while(1){f=f-4|0;c=F[f>>2];F[f>>2]=0;if(c){Ea(c+12|0,F[c+16>>2]);Da(c,F[c+4>>2]);oa(c)}if((d|0)!=(f|0)){continue}break}}F[e+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{f=L(g,12)+a|0;d=F[f+20>>2];c=F[f+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}e=d+4|0;c=c-e|0;if(c){Ma(d,e,c)}F[f+24>>2]=d+c}f=F[a+20>>2];d=F[a+24>>2]-f|0;g:{if(!d){break g}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=L(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=F[g>>2];if((i|0)>(b|0)){F[g>>2]=i-1}e=f+(e|4)|0;g=F[e>>2];if((g|0)>(b|0)){F[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break g}d=f+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break g}F[d>>2]=c-1}f=F[a+32>>2];d=F[a+36>>2]-f|0;h:{if(!d){break h}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=L(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=F[g>>2];if((i|0)>(b|0)){F[g>>2]=i-1}e=f+(e|4)|0;g=F[e>>2];if((g|0)>(b|0)){F[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break h}d=f+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break h}F[d>>2]=c-1}f=F[a+44>>2];d=F[a+48>>2]-f|0;i:{if(!d){break i}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=L(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=F[g>>2];if((i|0)>(b|0)){F[g>>2]=i-1}e=f+(e|4)|0;g=F[e>>2];if((g|0)>(b|0)){F[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break i}d=f+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break i}F[d>>2]=c-1}f=F[a+56>>2];d=F[a+60>>2]-f|0;j:{if(!d){break j}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=L(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=F[g>>2];if((i|0)>(b|0)){F[g>>2]=i-1}e=f+(e|4)|0;g=F[e>>2];if((g|0)>(b|0)){F[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break j}d=f+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break j}F[d>>2]=c-1}f=F[a+68>>2];a=F[a+72>>2]-f|0;if(!a){break a}d=a>>31;c=(d+a^d)>>>2|0;a=(a|0)>-1?a:-1;a=L(c,(a|0)<1?a:1);c=a>>>0>1?a:1;e=c&1;d=0;if(a>>>0>=2){c=c&-2;while(1){a=d<<2;h=a+f|0;g=F[h>>2];if((g|0)>(b|0)){F[h>>2]=g-1}a=f+(a|4)|0;h=F[a>>2];if((h|0)>(b|0)){F[a>>2]=h-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!e){break a}c=b;a=f+(d<<2)|0;b=F[a>>2];if((c|0)>=(b|0)){break a}F[a>>2]=b-1}}function oa(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=12660,j=F[3165]&li(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)+12964|0;e:{if(F[c>>2]==(d|0)){F[c>>2]=b;if(b){break e}i=12664,j=F[3166]&li(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[3167]=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[3171]==(f|0)){F[3171]=d;a=F[3168]+a|0;F[3168]=a;F[d+4>>2]=a|1;if(F[3170]!=(d|0)){break a}F[3167]=0;F[3170]=0;return}if(F[3170]==(f|0)){F[3170]=d;a=F[3167]+a|0;F[3167]=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=12660,j=F[3165]&li(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)+12964|0;j:{if(F[c>>2]==(f|0)){F[c>>2]=b;if(b){break j}i=12664,j=F[3166]&li(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[3170]!=(d|0)){break f}F[3167]=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)+12700|0;c=F[3165];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)+12964|0;l:{m:{c=F[3166];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[3173]-1|0;F[3173]=a?a:-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,q=0,r=0,s=0,t=0,u=0;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){Ca(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}r=F[a+52>>2];o=F[a+48>>2];g=0;d=(e&1073741823)!=(e|0)?-1:e<<2;n=ra(pa(d),0,d);h=F[a+8>>2];b:{if((h|0)<1){break b}while(1){d=g<<2;f=F[d+n>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){i=F[a+32>>2];F[d+i>>2]=h;break c}i=F[a+32>>2];d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}if((h|0)<1){break b}d=0;while(1){g=d<<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}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}}d=F[a+56>>2];p=F[d>>2];d=F[d+4>>2]-p|0;if((d|0)>=5){d=d>>>2|0;s=d>>>0>2?d:2;t=d>>>0>1?d:1;f=e&-2;u=e&1;m=1;while(1){e:{f:{if((m|0)!=(t|0)){q=L(e,m);d=F[(m<<2)+p>>2];if((d|0)==-1){break f}d=F[F[o+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}g=F[r>>2];i=F[o>>2];l=F[g+(F[i+(d<<2)>>2]<<2)>>2];j=d+1|0;j=(j>>>0)%3|0?j:d-2|0;k=g-4|0;g:{if((j|0)==-1){break g}k=g+(F[i+(j<<2)>>2]<<2)|0}d=d+((d>>>0)%3|0?-1:2)|0;j=g-4|0;h:{if((d|0)==-1){break h}j=g+(F[i+(d<<2)>>2]<<2)|0}if((l|0)>=(m|0)){break f}d=F[k>>2];if((d|0)>=(m|0)){break f}g=F[j>>2];if((g|0)>=(m|0)){break f}i:{if((e|0)<1){break i}i=L(e,g);k=L(d,e);l=L(e,l);g=0;d=f;if((e|0)!=1){while(1){F[(g<<2)+n>>2]=(F[(g+i<<2)+c>>2]+F[(g+k<<2)+c>>2]|0)-F[(g+l<<2)+c>>2];j=g|1;F[(j<<2)+n>>2]=(F[(i+j<<2)+c>>2]+F[(k+j<<2)+c>>2]|0)-F[(l+j<<2)+c>>2];g=g+2|0;d=d-2|0;if(d){continue}break}}if(!u){break i}F[(g<<2)+n>>2]=(F[(g+i<<2)+c>>2]+F[(g+k<<2)+c>>2]|0)-F[(g+l<<2)+c>>2]}if((h|0)<1){break e}g=0;while(1){d=g<<2;h=F[d+n>>2];k=F[a+16>>2];j:{if((h|0)>(k|0)){i=F[a+32>>2];F[d+i>>2]=k;break j}i=F[a+32>>2];d=d+i|0;k=F[a+12>>2];if((k|0)>(h|0)){F[d>>2]=k;break j}F[d>>2]=h}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}g=q<<2;k=g+c|0;l=b+g|0;while(1){h=d<<2;g=h+k|0;h=F[h+l>>2]+F[h+i>>2]|0;F[g>>2]=h;k:{if((h|0)>F[a+16>>2]){j=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break k}j=h+F[a+20>>2]|0}F[g>>2]=j}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}break e}va();V()}if((h|0)<1){break e}k=(L(m-1|0,e)<<2)+c|0;g=0;while(1){d=g<<2;h=F[d+k>>2];l=F[a+16>>2];l:{if((h|0)>(l|0)){i=F[a+32>>2];F[d+i>>2]=l;break l}i=F[a+32>>2];d=d+i|0;l=F[a+12>>2];if((l|0)>(h|0)){F[d>>2]=l;break l}F[d>>2]=h}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}g=q<<2;k=g+c|0;l=b+g|0;while(1){h=d<<2;g=h+k|0;h=F[h+l>>2]+F[h+i>>2]|0;F[g>>2]=h;m:{if((h|0)>F[a+16>>2]){j=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break m}j=h+F[a+20>>2]|0}F[g>>2]=j}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}}m=m+1|0;if((s|0)!=(m|0)){continue}break}}oa(n);return 1}function ie(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;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ca(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}r=F[a+52>>2];o=F[a+48>>2];g=0;d=(e&1073741823)!=(e|0)?-1:e<<2;m=ra(pa(d),0,d);h=F[a+8>>2];b:{if((h|0)<1){break b}while(1){d=g<<2;f=F[d+m>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){i=F[a+32>>2];F[d+i>>2]=h;break c}i=F[a+32>>2];d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}if((h|0)<1){break b}d=0;while(1){g=d<<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}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}}d=F[a+56>>2];p=F[d>>2];d=F[d+4>>2]-p|0;if((d|0)>=5){d=d>>>2|0;s=d>>>0>2?d:2;t=d>>>0>1?d:1;f=e&-2;u=e&1;l=1;while(1){e:{f:{if((l|0)!=(t|0)){q=L(e,l);d=F[(l<<2)+p>>2];if((d|0)==-1|F[F[o>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}d=F[F[F[o+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}i=F[r>>2];g=F[o+28>>2];k=F[i+(F[g+(d<<2)>>2]<<2)>>2];if((k|0)>=(l|0)){break f}j=d+1|0;j=F[i+(F[g+(((j>>>0)%3|0?j:d-2|0)<<2)>>2]<<2)>>2];if((j|0)>=(l|0)){break f}d=F[i+(F[g+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(l|0)){break f}g:{if((e|0)<1){break g}i=L(d,e);j=L(e,j);k=L(e,k);g=0;d=f;if((e|0)!=1){while(1){F[(g<<2)+m>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+k<<2)+c>>2];n=g|1;F[(n<<2)+m>>2]=(F[(i+n<<2)+c>>2]+F[(j+n<<2)+c>>2]|0)-F[(k+n<<2)+c>>2];g=g+2|0;d=d-2|0;if(d){continue}break}}if(!u){break g}F[(g<<2)+m>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+k<<2)+c>>2]}if((h|0)<1){break e}g=0;while(1){d=g<<2;h=F[d+m>>2];j=F[a+16>>2];h:{if((h|0)>(j|0)){i=F[a+32>>2];F[d+i>>2]=j;break h}i=F[a+32>>2];d=d+i|0;j=F[a+12>>2];if((j|0)>(h|0)){F[d>>2]=j;break h}F[d>>2]=h}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}g=q<<2;j=g+c|0;k=b+g|0;while(1){h=d<<2;g=h+j|0;h=F[h+k>>2]+F[h+i>>2]|0;F[g>>2]=h;i:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break i}h=h+F[a+20>>2]|0}F[g>>2]=h}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}break e}va();V()}if((h|0)<1){break e}j=(L(l-1|0,e)<<2)+c|0;g=0;while(1){d=g<<2;h=F[d+j>>2];k=F[a+16>>2];j:{if((h|0)>(k|0)){i=F[a+32>>2];F[d+i>>2]=k;break j}i=F[a+32>>2];d=d+i|0;k=F[a+12>>2];if((k|0)>(h|0)){F[d>>2]=k;break j}F[d>>2]=h}g=g+1|0;h=F[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}g=q<<2;j=g+c|0;k=b+g|0;while(1){h=d<<2;g=h+j|0;h=F[h+k>>2]+F[h+i>>2]|0;F[g>>2]=h;k:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break k}h=h+F[a+20>>2]|0}F[g>>2]=h}d=d+1|0;h=F[a+8>>2];if((d|0)<(h|0)){continue}break}}l=l+1|0;if((s|0)!=(l|0)){continue}break}}oa(m);return 1}function Xc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;F[a+56>>2]=F[a+52>>2];F[a+44>>2]=F[a+40>>2];a:{b:{c:{b=F[a+64>>2];d=F[b+24>>2];if((d|0)!=F[b+28>>2]){b=0;while(1){e=b;i=F[(k<<2)+d>>2];d:{if((i|0)==-1){break d}b=F[a+56>>2];e:{if((b|0)!=F[a+60>>2]){F[b>>2]=e;F[a+56>>2]=b+4;break e}h=F[a+52>>2];f=b-h|0;g=f>>2;d=g+1|0;if(d>>>0>=1073741824){break c}c=f>>1;d=g>>>0<536870911?d>>>0>c>>>0?d:c:1073741823;b=0;f:{if(!d){break f}if(d>>>0>=1073741824){break a}b=pa(d<<2)}c=b+(g<<2)|0;F[c>>2]=e;if((f|0)>=1){qa(b,h,f)}F[a+60>>2]=b+(d<<2);F[a+56>>2]=c+4;F[a+52>>2]=b;if(!h){break e}oa(h)}g:{if(!(F[F[a+12>>2]+(k>>>3&536870908)>>2]>>>k&1)){break g}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1|F[F[a>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}c=F[F[F[a+64>>2]+12>>2]+(b<<2)>>2];if((c|0)==-1){break g}b=c+1|0;d=(b>>>0)%3|0?b:c-2|0;if((d|0)==-1){break g}while(1){i=d;b=d+1|0;b=(b>>>0)%3|0?b:d-2|0;if((b|0)==-1|F[F[a>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}c=F[F[F[a+64>>2]+12>>2]+(b<<2)>>2];if((c|0)==-1){break g}b=c+1|0;d=(b>>>0)%3|0?b:c-2|0;if((d|0)!=-1){continue}break}}F[F[a+28>>2]+(i<<2)>>2]=e;b=F[a+44>>2];h:{if((b|0)!=F[a+48>>2]){F[b>>2]=i;F[a+44>>2]=b+4;break h}h=F[a+40>>2];f=b-h|0;g=f>>2;d=g+1|0;if(d>>>0>=1073741824){break b}c=f>>1;d=g>>>0<536870911?d>>>0>c>>>0?d:c:1073741823;b=0;i:{if(!d){break i}if(d>>>0>=1073741824){break a}b=pa(d<<2)}c=b+(g<<2)|0;F[c>>2]=i;if((f|0)>=1){qa(b,h,f)}F[a+48>>2]=b+(d<<2);F[a+44>>2]=c+4;F[a+40>>2]=b;if(!h){break h}oa(h)}b=e+1|0;c=((i>>>0)%3|0?-1:2)+i|0;if((c|0)==-1){break d}c=F[F[F[a+64>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}d=c+((c>>>0)%3|0?-1:2)|0;if((d|0)==-1|(d|0)==(i|0)){break d}while(1){c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if(F[F[a>>2]+(c>>>3&536870908)>>2]>>>c&1){e=F[a+56>>2];j:{if((e|0)!=F[a+60>>2]){F[e>>2]=b;F[a+56>>2]=e+4;break j}j=F[a+52>>2];h=e-j|0;f=h>>2;g=f+1|0;if(g>>>0>=1073741824){break c}c=h>>1;g=f>>>0<536870911?c>>>0>>0?g:c:1073741823;e=0;k:{if(!g){break k}if(g>>>0>=1073741824){break a}e=pa(g<<2)}c=e+(f<<2)|0;F[c>>2]=b;if((h|0)>=1){qa(e,j,h)}F[a+60>>2]=e+(g<<2);F[a+56>>2]=c+4;F[a+52>>2]=e;if(!j){break j}oa(j)}c=b+1|0;e=F[a+44>>2];l:{if((e|0)!=F[a+48>>2]){F[e>>2]=d;F[a+44>>2]=e+4;break l}l=F[a+40>>2];j=e-l|0;h=j>>2;f=h+1|0;if(f>>>0>=1073741824){break b}g=j>>1;f=h>>>0<536870911?f>>>0>g>>>0?f:g:1073741823;e=0;m:{if(!f){break m}if(f>>>0>=1073741824){break a}e=pa(f<<2)}g=e+(h<<2)|0;F[g>>2]=d;if((j|0)>=1){qa(e,l,j)}F[a+48>>2]=e+(f<<2);F[a+44>>2]=g+4;F[a+40>>2]=e;if(!l){break l}oa(l)}e=b;b=c}F[F[a+28>>2]+(d<<2)>>2]=e;c=((d>>>0)%3|0?-1:2)+d|0;if((c|0)==-1){break d}c=F[F[F[a+64>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}d=c+((c>>>0)%3|0?-1:2)|0;if((d|0)==-1){break d}if((d|0)!=(i|0)){continue}break}}e=F[a+64>>2];d=F[e+24>>2];k=k+1|0;if(k>>>0>2]-d>>2>>>0){continue}break}}return}sa();V()}sa();V()}ta(10940);V()}function qd(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}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}f=pa(4);F[f>>2]=b;e=f+4|0;F[a+56>>2]=e;F[a+52>>2]=e;F[a+48>>2]=f;if(!c){break a}oa(c)}e=F[F[a+4>>2]+28>>2];c=b+1|0;f=(c>>>0)%3|0?c:b-2|0;c=F[e+(f<<2)>>2];if((c|0)==-1){return 0}h=(b-L(d,3)|0?-1:2)+b|0;d=F[e+(h<<2)>>2];if((d|0)==-1){return 0}b=F[a+36>>2];e=b+(c>>>3&536870908)|0;g=F[e>>2];i=1<>2]=g|i;La(a+8|0,c,f);b=F[a+36>>2]}b=(d>>>3&536870908)+b|0;c=F[b>>2];f=1<>2]=c|f;La(a+8|0,d,h)}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}f=F[a+24>>2]+(d>>>3&268435452)|0;e=F[f>>2];d=1<>2]=d|e;f=F[a+4>>2];c=F[F[f+28>>2]+(b<<2)>>2];if((c|0)==-1){return 0}while(1){d=b;d:{e=F[a+36>>2]+(c>>>3&536870908)|0;h=F[e>>2];g=1<>2]+(c<<2)>>2];if((b|0)!=-1){f:{i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|F[F[f>>2]+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[F[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}F[e>>2]=h|g;La(k,c,d);c=b+1|0;if((((c>>>0)%3|0?c:b-2|0)|0)==-1){break e}b=-1;f=F[a+4>>2];g:{if((d|0)==-1){break g}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1|F[F[f>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=F[F[F[f+64>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];i=c>>>5|0;e=F[d+(i<<2)>>2];break d}}F[e>>2]=h|g;La(k,c,d)}h:{i:{if((d|0)==-1){break i}f=F[a+4>>2];b=-1;e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;c=-1;j:{if((e|0)==-1){break j}c=-1;if(F[F[f>>2]+(e>>>3&536870908)>>2]>>>e&1){break j}c=F[F[F[f+64>>2]+12>>2]+(e<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if(!((d|0)==-1|F[F[f>>2]+(d>>>3&536870908)>>2]>>>d&1)){b=F[F[F[f+64>>2]+12>>2]+(d<<2)>>2]}j=(b|0)==-1;h=j?-1:(b>>>0)/3|0;e=(c>>>0)/3|0;g=(c|0)==-1;if(!g){d=F[a+24>>2];g=g?-1:e;i=g>>>5|0;e=F[d+(i<<2)>>2];g=1<>2];i=h>>>5|0;e=F[d+(i<<2)>>2];if(!(g&e)){break d}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break b}if(j){b=c;break d}if(F[(h>>>3&536870908)+d>>2]>>>h&1){b=c;break d}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 c}k:{b=d;d=F[a+48>>2];f=b-d|0;h=f>>2;e=h+1|0;if(e>>>0<1073741824){g=f>>1;e=h>>>0<536870911?e>>>0>g>>>0?e:g:1073741823;b=0;l:{if(!e){break l}if(e>>>0>=1073741824){break k}b=pa(e<<2)}h=b+(h<<2)|0;F[h>>2]=c;c=h+4|0;if((f|0)>=1){qa(b,d,f)}F[a+56>>2]=b+(e<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!d){break b}oa(d);c=F[a+52>>2];break b}sa();V()}ta(8944);V()}F[(i<<2)+d>>2]=e|g;c=F[F[f+28>>2]+(b<<2)>>2];if((c|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}return 1}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;l=L(b,12)+a|0;k=l;F[k+12>>2]=F[k+8>>2];j=(c|0)==-1?-1:(c>>>0)/3|0;n=1;g=c;a:{b:{c:{while(1){d:{if(o){if((g|0)==-1){break d}if((Wc(a,((g>>>0)%3|0?-1:2)+g|0)|0)==-1){break a}c=g+1|0;c=(c>>>0)%3|0?c:g-2|0;if((c|0)==-1){break a}d=c+1|0;c=(d>>>0)%3|0?d:c-2|0;if((c|0)==-1){break a}c=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break a}d=c+1|0;c=(d>>>0)%3|0?d:c-2|0;if((c|0)==-1){break a}j=(c>>>0)/3|0}e:{d=F[a+56>>2]+(j>>>3&536870908)|0;e=F[d>>2];h=1<>2]=e|h;d=F[k+12>>2];f:{if((d|0)!=F[l+16>>2]){F[d>>2]=j;F[k+12>>2]=d+4;break f}i=F[l+8>>2];e=d-i|0;m=e>>2;h=m+1|0;if(h>>>0>=1073741824){break c}d=e>>1;h=m>>>0<536870911?d>>>0>>0?h:d:1073741823;d=0;g:{if(!h){break g}if(h>>>0>=1073741824){break b}d=pa(h<<2)}m=d+(m<<2)|0;F[m>>2]=j;if((e|0)>=1){qa(d,i,e)}F[l+8>>2]=d;F[k+12>>2]=m+4;F[l+16>>2]=d+(h<<2);if(!i){break f}oa(i)}i=f+1|0;d=c;h:{i:{if(!f){break i}if(i&1){if((c|0)==-1){c=-1;break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;break i}g=o?c:g;if((c|0)==-1){c=-1;break h}d=c-1|0;if((c>>>0)%3|0){break i}d=c+2|0}c=-1;f=d;if((d|0)==-1){break h}c=F[F[F[a+4>>2]+12>>2]+(f<<2)>>2];e=f+1|0;e=(e>>>0)%3|0?e:f-2|0;d=-1;j:{if((e|0)<0){break j}d=(e>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2]}k:{if((c|0)==-1){d=(d|0)==-1;e=1;break k}h=((c>>>0)%3|0?-1:2)+c|0;e=(d|0)==-1;l:{if((h|0)<=-1){break l}e=(h>>>0)/3|0;e=(d|0)==F[(F[F[a>>2]+96>>2]+L(e,12)|0)+(h-L(e,3)<<2)>>2]}d=e;e=0}if(!d){c=-1;break h}m:{n:{d=f+((f>>>0)%3|0?-1:2)|0;o:{p:{if((d|0)>=0){f=(d>>>0)/3|0;f=F[(F[F[a>>2]+96>>2]+L(f,12)|0)+(d-L(f,3)<<2)>>2];if(!e){break p}d=(f|0)!=-1;break o}f=-1;if(e){break n}}e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;d=(f|0)!=-1;if((e|0)<=-1){break o}d=(e>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2]!=(f|0)}if(d){c=-1;break h}if((c|0)!=-1){break m}c=-1;break h}if((c|0)!=-1){break m}c=-1;break h}f=i;j=(c>>>0)/3|0;d=F[a+56>>2]+(j>>>3&268435452)|0;e=F[d>>2];h=1<>2]-4|0;d=F[c>>2];f=F[a+56>>2]+(d>>>3&536870908)|0;i=F[f>>2];p=f,q=li(d)&i,F[p>>2]=q;F[k+12>>2]=c;break a}o=1;d=n;n=0;if(d){continue}break a}break}g=-1;Wc(a,-1);break a}sa();V()}ta(11008);V()}F[((b<<2)+a|0)+44>>2]=g;d=F[l+8>>2];b=F[k+12>>2]-d|0;q:{if(!b){break q}c=b>>31;c=(c+b^c)>>>2|0;b=(b|0)>-1?b:-1;b=L(c,(b|0)<1?b:1);g=b>>>0>1?b:1;f=g&1;a=F[a+56>>2];c=0;if(b>>>0>=2){j=g&-2;while(1){b=c<<2;g=F[b+d>>2];i=a+(g>>>3&536870908)|0;n=F[i>>2];p=i,q=li(g)&n,F[p>>2]=q;b=F[d+(b|4)>>2];g=a+(b>>>3&536870908)|0;i=F[g>>2];p=g,q=li(b)&i,F[p>>2]=q;c=c+2|0;j=j-2|0;if(j){continue}break}}if(!f){break q}b=F[d+(c<<2)>>2];a=a+(b>>>3&536870908)|0;c=F[a>>2];p=a,q=li(b)&c,F[p>>2]=q}}function rd(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=pa(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}oa(c)}e=F[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b-2|0;if((f|0)!=-1){c=F[F[e>>2]+(f<<2)>>2]}h=(b-L(d,3)|0?-1:2)+b|0;if((h|0)==-1){return 0}if((c|0)==-1){return 0}d=F[F[e>>2]+(h<<2)>>2];if((d|0)==-1){return 0}b=F[a+36>>2];e=b+(c>>>3&536870908)|0;g=F[e>>2];i=1<>2]=g|i;La(a+8|0,c,f);b=F[a+36>>2]}b=(d>>>3&536870908)+b|0;c=F[b>>2];e=1<>2]=c|e;La(a+8|0,d,h)}d=F[a+52>>2];if((d|0)==F[a+48>>2]){return 1}j=a+8|0;while(1){d=d-4|0;b=F[d>>2];c=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=F[a+24>>2]+(c>>>3&268435452)|0;f=F[e>>2];c=1<>2]=c|f;while(1){d=F[a+4>>2];c=F[F[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}d:{e=F[a+36>>2]+(c>>>3&536870908)|0;f=F[e>>2];h=1<>2]+(c<<2)>>2];if((g|0)!=-1){i=g+1|0;g=(i>>>0)%3|0?i:g-2|0;if((g|0)!=-1){d=F[F[d+12>>2]+(g<<2)>>2];if((d|0)!=-1){F[e>>2]=f|h;La(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break e}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];i=c>>>5|0;f=F[e+(i<<2)>>2];break d}}}F[e>>2]=f|h;La(j,c,b)}d=-1;e=F[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b-2|0;if((f|0)!=-1){c=F[F[e+12>>2]+(f<<2)>>2]}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)!=-1){d=F[F[e+12>>2]+(b<<2)>>2]}b=(d|0)==-1;h=b?-1:(d>>>0)/3|0;f=(c>>>0)/3|0;f:{g=(c|0)==-1;if(!g){e=F[a+24>>2];g=g?-1:f;i=g>>>5|0;f=F[e+(i<<2)>>2];g=1<>2];i=h>>>5|0;f=F[e+(i<<2)>>2];if(!(g&f)){break d}}d=F[a+52>>2]-4|0;F[a+52>>2]=d;break b}if(b){b=c;break d}if(F[(h>>>3&536870908)+e>>2]>>>h&1){b=c;break d}b=F[a+52>>2];F[b-4>>2]=d;if((b|0)!=F[a+56>>2]){F[b>>2]=c;d=b+4|0;break c}g:{e=F[a+48>>2];f=b-e|0;d=f>>2;h=d+1|0;if(h>>>0<1073741824){g=f>>1;h=d>>>0<536870911?h>>>0>g>>>0?h:g:1073741823;b=0;h:{if(!h){break h}if(h>>>0>=1073741824){break g}b=pa(h<<2)}d=b+(d<<2)|0;F[d>>2]=c;d=d+4|0;if((f|0)>=1){qa(b,e,f)}F[a+56>>2]=b+(h<<2);F[a+52>>2]=d;F[a+48>>2]=b;if(!e){break b}oa(e);d=F[a+52>>2];break b}sa();V()}ta(8944);V()}F[(i<<2)+e>>2]=f|g;if((b|0)!=-1){continue}break}return 0}F[a+52>>2]=d}if(F[a+48>>2]!=(d|0)){continue}break}}return 1}function Cc(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;a:{o=da[F[F[a>>2]+44>>2]](a)|0;if((o|0)<1){break a}j=F[b+4>>2]-F[b>>2]>>2;e=ba-80|0;ba=e;d=nb(e+16|0);f=L(F[2653],o);ec(d,F[F[a+8>>2]+56>>2],o<<24>>24,5,0,f,f>>31);f=pa(96);d=cc(f,d);F[e+8>>2]=f;D[d+84|0]=1;F[d+72>>2]=F[d+68>>2];bc(d,j);F[e+8>>2]=0;d=F[a+16>>2];F[a+16>>2]=f;b:{if(!d){break b}ya(d);d=F[e+8>>2];F[e+8>>2]=0;if(!d){break b}ya(d)}ba=e+80|0;d=F[a+16>>2];if(!F[d+80>>2]){break a}f=F[F[d>>2]>>2];if(!f){break a}m=F[c+8>>2];k=F[c+16>>2];h=F[c+12>>2];i=h;e=F[c+20>>2];if((i|0)<(e|0)?1:(i|0)<=(e|0)?m>>>0<=k>>>0:0){break a}i=L(j,o);l=f+F[d+48>>2]|0;n=F[c>>2];j=G[n+k|0];d=e;f=k+1|0;d=f>>>0<1?d+1|0:d;g=f;f=d;F[c+16>>2]=g;F[c+20>>2]=d;c:{d:{e:{if(j){if(oc(i,o,c,l)){break e}break a}if((f|0)>(h|0)?1:(f|0)>=(h|0)?g>>>0>=m>>>0:0){break a}j=G[g+n|0];f=k+2|0;e=f>>>0<2?e+1|0:e;d=c;F[d+16>>2]=f;F[d+20>>2]=e;e=F[F[a+16>>2]+64>>2];e=F[e+4>>2]-F[e>>2]|0;f:{if((j|0)==F[2653]){j=i<<2;if(j>>>0>e>>>0){break a}d=F[c+20>>2];g=F[c+16>>2];e=j;k=g+e|0;f=F[c+12>>2];d=e>>>0>k>>>0?d+1|0:d;if((d|0)<(f|0)?1:(f|0)>=(d|0)?k>>>0<=I[c+8>>2]:0){break f}break a}if(e>>>0>>0){break a}k=F[c+12>>2];d=F[c+20>>2];h=F[c+8>>2];f=h;m=F[c+16>>2];g=m;e=j;n=f-g>>>0>>0;f=k-(d+(f>>>0>>0)|0)|0;g=ca;if((f|0)<(g|0)?1:(f|0)<=(g|0)?n:0){break a}f=1;if(!i){break d}g=0;f=h;h=e+m|0;d=e>>>0>h>>>0?d+1|0:d;if((d|0)>(k|0)?1:(d|0)>=(k|0)?f>>>0>>0:0){break c}h=0;while(1){qa(l+(h<<2)|0,m+F[c>>2]|0,j);d=F[c+20>>2];m=e+F[c+16>>2]|0;d=m>>>0>>0?d+1|0:d;F[c+16>>2]=m;F[c+20>>2]=d;h=h+1|0;if((i|0)==(h|0)){break e}n=e+m|0;k=F[c+12>>2];d=e>>>0>n>>>0?d+1|0:d;if((d|0)<(k|0)?1:(k|0)>=(d|0)?n>>>0<=I[c+8>>2]:0){continue}break}break c}qa(l,g+F[c>>2]|0,j);d=c;f=e+F[d+16>>2]|0;e=F[d+20>>2];F[d+16>>2]=f;F[d+20>>2]=f>>>0>>0?e+1|0:e}f=1;if(!i){break d}e=F[a+20>>2];if(e){f=0;if(da[F[F[e>>2]+32>>2]](e)|0){break d}}g=0;g:{if((i|0)<1){break g}if((i|0)!=1){h=i&-2;while(1){e=g<<2;d=F[e+l>>2];F[e+l>>2]=0-(d&1)^d>>>1;d=e|4;e=F[d+l>>2];F[d+l>>2]=0-(e&1)^e>>>1;g=g+2|0;h=h-2|0;if(h){continue}break}}if(!(i&1)){break g}d=g<<2;e=F[d+l>>2];F[d+l>>2]=0-(e&1)^e>>>1}f=0}e=F[a+20>>2];h:{if(!e){break h}if(!(da[F[F[e>>2]+40>>2]](e,c)|0)){break a}if(f){break h}g=0;a=F[a+20>>2];if(!(da[F[F[a>>2]+44>>2]](a,l,l,i,o,F[b>>2])|0)){break c}}g=1}return g|0}return 0}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;h=ba-32|0;ba=h;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;f=f-d|0;i=(f|0)<1;if(!i){a:{d=F[e>>2];b:{if((d|0)==F[e+4>>2]){e=F[h+8>>2];break b}n=a+112|0;o=a+60|0;e=L(f>>>2|0,i?f:1);p=(e|0)>1?e:1;while(1){Qb(o,F[(k<<2)+d>>2],h+16|0);e=F[h+20>>2];d=e>>31;f=F[h+16>>2];i=f>>31;g=F[h+24>>2];j=g>>31;j=j^g+j;i=j+((d^d+e)+(i^f+i)|0)|0;d=0;d=i>>>0>>0?1:d;j=i;c:{if(!(d|i)){F[h+16>>2]=F[a+108>>2];break c}i=F[a+108>>2];m=i>>31;e=ii(hi(i,m,e,e>>31),ca,j,d);F[h+20>>2]=e;l=e;e=e>>31;e=l+e^e;d=ii(hi(i,m,f,f>>31),ca,j,d);F[h+16>>2]=d;f=d;d=d>>31;d=f+d^d;if((g|0)>=0){F[h+24>>2]=i-(d+e|0);break c}F[h+24>>2]=e+(d-i|0)}d=Ia(n);f=F[h+16>>2];if(d){F[h+24>>2]=0-F[h+24>>2];F[h+20>>2]=0-F[h+20>>2];f=0-f|0;F[h+16>>2]=f}e=F[h+20>>2];d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=F[h+24>>2];d=f>>31;d=d^d+f;break e}f=F[h+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<=-1){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}f:{if(!(d|f)){f=F[a+100>>2];e=f;break f}i=F[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(i|0)){e=f;break f}e=0;if(f|i){break i}f=0;break f}if(!((d|0)!=(i|0)|f)){f=d;e=d;break f}if((d|0)!=(i|0)){break g}g=F[a+108>>2];break h}g=F[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(i){break g}}i=d;if((f|0)>=(g|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(i|0)){break j}e=F[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}F[h+12>>2]=f;k:{if(F[a+8>>2]<1){break k}f=0;d=e;while(1){g=F[a+16>>2];l:{if((g|0)<(d|0)){i=F[a+32>>2];F[i+(f<<2)>>2]=g;break l}i=F[a+32>>2];g=i+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[g>>2]=j;break l}F[g>>2]=d}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){d=F[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=k<<3;j=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+j|0;g=F[g+l>>2]+F[i+g>>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}}k=k+1|0;if((p|0)==(k|0)){break a}f=F[a+56>>2];d=F[f>>2];if(F[f+4>>2]-d>>2>>>0>k>>>0){continue}break}}F[h+8>>2]=e;va();V()}F[h+8>>2]=e}ba=h+32|0;return 1}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;h=ba-32|0;ba=h;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;f=f-d|0;i=(f|0)<1;if(!i){a:{d=F[e>>2];b:{if((d|0)==F[e+4>>2]){e=F[h+8>>2];break b}n=a+112|0;o=a+60|0;e=L(f>>>2|0,i?f:1);p=(e|0)>1?e:1;while(1){Ob(o,F[(k<<2)+d>>2],h+16|0);e=F[h+20>>2];d=e>>31;f=F[h+16>>2];i=f>>31;g=F[h+24>>2];j=g>>31;j=j^g+j;i=j+((d^d+e)+(i^f+i)|0)|0;d=0;d=i>>>0>>0?1:d;j=i;c:{if(!(d|i)){F[h+16>>2]=F[a+108>>2];break c}i=F[a+108>>2];m=i>>31;e=ii(hi(i,m,e,e>>31),ca,j,d);F[h+20>>2]=e;l=e;e=e>>31;e=l+e^e;d=ii(hi(i,m,f,f>>31),ca,j,d);F[h+16>>2]=d;f=d;d=d>>31;d=f+d^d;if((g|0)>=0){F[h+24>>2]=i-(d+e|0);break c}F[h+24>>2]=e+(d-i|0)}d=Ia(n);f=F[h+16>>2];if(d){F[h+24>>2]=0-F[h+24>>2];F[h+20>>2]=0-F[h+20>>2];f=0-f|0;F[h+16>>2]=f}e=F[h+20>>2];d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=F[h+24>>2];d=f>>31;d=d^d+f;break e}f=F[h+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<=-1){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}f:{if(!(d|f)){f=F[a+100>>2];e=f;break f}i=F[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(i|0)){e=f;break f}e=0;if(f|i){break i}f=0;break f}if(!((d|0)!=(i|0)|f)){f=d;e=d;break f}if((d|0)!=(i|0)){break g}g=F[a+108>>2];break h}g=F[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(i){break g}}i=d;if((f|0)>=(g|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(i|0)){break j}e=F[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}F[h+12>>2]=f;k:{if(F[a+8>>2]<1){break k}f=0;d=e;while(1){g=F[a+16>>2];l:{if((g|0)<(d|0)){i=F[a+32>>2];F[i+(f<<2)>>2]=g;break l}i=F[a+32>>2];g=i+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[g>>2]=j;break l}F[g>>2]=d}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){d=F[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=k<<3;j=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+j|0;g=F[g+l>>2]+F[i+g>>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}}k=k+1|0;if((p|0)==(k|0)){break a}f=F[a+56>>2];d=F[f>>2];if(F[f+4>>2]-d>>2>>>0>k>>>0){continue}break}}F[h+8>>2]=e;va();V()}F[h+8>>2]=e}ba=h+32|0;return 1}function uc(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;g=ba-32|0;ba=g;a:{b:{if(!lb(1,g+28|0,b)){break b}c:{e=F[g+28>>2];if(e){kb(a+60|0,e);c=g+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(!Oa(c,b)){break c}while(1){h=1<>2]+(f>>>3&536870908)|0;j=d;if(i){d=h|F[d>>2]}else{d=F[d>>2]&(h^-1)}F[j>>2]=d;f=f+1|0;if((e|0)!=(f|0)){continue}break}}if(!lb(1,g+28|0,b)){break b}e=F[g+28>>2];if(e){f=0;kb(a+72|0,e);c=g+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(!Oa(c,b)){break c}while(1){h=1<>2]+(f>>>3&536870908)|0;j=d;if(i){d=h|F[d>>2]}else{d=F[d>>2]&(h^-1)}F[j>>2]=d;f=f+1|0;if((e|0)!=(f|0)){continue}break}}if(!lb(1,g+28|0,b)){break b}e=F[g+28>>2];if(e){f=0;kb(a+84|0,e);c=g+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(!Oa(c,b)){break c}while(1){h=1<>2]+(f>>>3&536870908)|0;j=d;if(i){d=h|F[d>>2]}else{d=F[d>>2]&(h^-1)}F[j>>2]=d;f=f+1|0;if((e|0)!=(f|0)){continue}break}}if(!lb(1,g+28|0,b)){break b}e=F[g+28>>2];if(e){f=0;kb(a+96|0,e);c=g+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(!Oa(c,b)){break c}while(1){h=1<>2]+(f>>>3&536870908)|0;j=d;if(i){d=h|F[d>>2]}else{d=F[d>>2]&(h^-1)}F[j>>2]=d;f=f+1|0;if((e|0)!=(f|0)){continue}break}}f=0;e=F[b+12>>2];h=e;c=F[b+20>>2];d=c;i=F[b+16>>2];k=i+4|0;c=k>>>0<4?c+1|0:c;l=F[b+8>>2];if((c|0)>(e|0)?1:(c|0)>=(e|0)?l>>>0>>0:0){break a}j=F[b>>2];e=j+i|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=k;F[b+20>>2]=c;c=d;d=i+8|0;c=d>>>0<8?c+1|0:c;i=d;d=c;if((c|0)>(h|0)?1:(c|0)>=(h|0)?i>>>0>l>>>0:0){break a}c=k+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]=i;F[b+20>>2]=d;if((c|0)<(e|0)){break a}F[a+16>>2]=c;F[a+12>>2]=e;b=(c>>31)-((e>>31)+(c>>>0>>0)|0)|0;c=c-e|0;if(!b&c>>>0>2147483646|b){break a}f=1;b=c+1|0;F[a+20>>2]=b;c=(b|0)/2|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}}f=0}ba=g+32|0;return f|0}function Lh(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;g=ba-48|0;ba=g;d=F[a+8>>2];if(d-2>>>0<=28){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;h=(f|0)<1;if(h){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=L(f>>>2|0,h?f:1);p=(e|0)>1?e:1;while(1){Qb(o,F[(k<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;j=F[g+16>>2];i=j>>31;i=i^j+i;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;e=ii(hi(i,l,e,e>>31),ca,h,d);F[g+12>>2]=e;q=e;e=e>>31;e=q+e^e;d=ii(hi(i,l,f,f>>31),ca,h,d);F[g+8>>2]=d;f=d;d=d>>31;d=f+d^d;if((j|0)>=0){F[g+16>>2]=i-(d+e|0);break b}F[g+16>>2]=e+(d-i|0)}d=Ia(n);f=F[g+8>>2];if(d){F[g+16>>2]=0-F[g+16>>2];F[g+12>>2]=0-F[g+12>>2];f=0-f|0;F[g+8>>2]=f}e=F[g+12>>2];c:{if((f|0)>=0){d=F[a+92>>2];f=d+F[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=F[g+16>>2];d=f>>31;d=d^d+f;break d}f=F[g+16>>2];d=f>>31;d=F[a+84>>2]-(d^d+f)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=e;e=e>>31;f=F[a+84>>2]-(f+e^e)|0}e:{if(!(d|f)){f=F[a+84>>2];e=f;break e}h=F[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=F[a+92>>2];break g}j=F[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((f|0)>=(j|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=F[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=F[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=k<<3;h=d+b|0;j=F[h+4>>2];h=F[h>>2];F[g+36>>2]=f;F[g+32>>2]=e;F[g+24>>2]=h;F[g+28>>2]=j;Nb(g+40|0,m,g+32|0,g+24|0);d=c+d|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];k=k+1|0;if((p|0)==(k|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}va();V()}ba=g+48|0;return 1}function Hh(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;g=ba-48|0;ba=g;d=F[a+8>>2];if(d-2>>>0<=28){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;h=(f|0)<1;if(h){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=L(f>>>2|0,h?f:1);p=(e|0)>1?e:1;while(1){Ob(o,F[(k<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;j=F[g+16>>2];i=j>>31;i=i^j+i;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;e=ii(hi(i,l,e,e>>31),ca,h,d);F[g+12>>2]=e;q=e;e=e>>31;e=q+e^e;d=ii(hi(i,l,f,f>>31),ca,h,d);F[g+8>>2]=d;f=d;d=d>>31;d=f+d^d;if((j|0)>=0){F[g+16>>2]=i-(d+e|0);break b}F[g+16>>2]=e+(d-i|0)}d=Ia(n);f=F[g+8>>2];if(d){F[g+16>>2]=0-F[g+16>>2];F[g+12>>2]=0-F[g+12>>2];f=0-f|0;F[g+8>>2]=f}e=F[g+12>>2];c:{if((f|0)>=0){d=F[a+92>>2];f=d+F[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=F[g+16>>2];d=f>>31;d=d^d+f;break d}f=F[g+16>>2];d=f>>31;d=F[a+84>>2]-(d^d+f)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=e;e=e>>31;f=F[a+84>>2]-(f+e^e)|0}e:{if(!(d|f)){f=F[a+84>>2];e=f;break e}h=F[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=F[a+92>>2];break g}j=F[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((f|0)>=(j|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=F[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=F[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=k<<3;h=d+b|0;j=F[h+4>>2];h=F[h>>2];F[g+36>>2]=f;F[g+32>>2]=e;F[g+24>>2]=h;F[g+28>>2]=j;Nb(g+40|0,m,g+32|0,g+24|0);d=c+d|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];k=k+1|0;if((p|0)==(k|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}va();V()}ba=g+48|0;return 1}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,m=0,n=0;a:{b:{c:{d:{e:{f:{g:{h:{h=F[a+8>>2];switch(F[h+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}}d=D[h+24|0];f=pa((d|0)>-1?d:-1);e=F[a+16>>2];i=0;i:{if(!F[e+80>>2]){break i}i=F[F[e>>2]>>2]+F[e+48>>2]|0}j:{if(!b){break j}if((d|0)>=1){m=d&-4;h=d&3;n=d-1>>>0<3;while(1){c=0;e=m;if(!n){while(1){j=i+(g<<2)|0;D[c+f|0]=F[j>>2];D[f+(c|1)|0]=F[j+4>>2];D[f+(c|2)|0]=F[j+8>>2];D[f+(c|3)|0]=F[j+12>>2];c=c+4|0;g=g+4|0;e=e-4|0;if(e){continue}break}}e=h;if(e){while(1){D[c+f|0]=F[i+(g<<2)>>2];c=c+1|0;g=g+1|0;e=e-1|0;if(e){continue}break}}qa(F[F[F[a+8>>2]+64>>2]>>2]+k|0,f,d);k=d+k|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break j}qa(F[F[h+64>>2]>>2],f,d);if((b|0)==1){break j}h=b-1|0;e=h&1;k:{if((b|0)==2){break k}g=h&-2;c=d;while(1){qa(F[F[F[a+8>>2]+64>>2]>>2]+c|0,f,d);c=c+d|0;qa(c+F[F[F[a+8>>2]+64>>2]>>2]|0,f,d);g=g-2|0;if(!g){break k}c=c+d|0;continue}}if(!e){break j}qa(F[F[F[a+8>>2]+64>>2]>>2]+(c+d|0)|0,f,d)}oa(f);break b}d=D[h+24|0];f=pa((d|0)>-1?d:-1);e=F[a+16>>2];i=0;l:{if(!F[e+80>>2]){break l}i=F[F[e>>2]>>2]+F[e+48>>2]|0}m:{if(!b){break m}if((d|0)>=1){m=d&-4;h=d&3;n=d-1>>>0<3;while(1){c=0;e=m;if(!n){while(1){j=i+(g<<2)|0;D[c+f|0]=F[j>>2];D[f+(c|1)|0]=F[j+4>>2];D[f+(c|2)|0]=F[j+8>>2];D[f+(c|3)|0]=F[j+12>>2];c=c+4|0;g=g+4|0;e=e-4|0;if(e){continue}break}}e=h;if(e){while(1){D[c+f|0]=F[i+(g<<2)>>2];c=c+1|0;g=g+1|0;e=e-1|0;if(e){continue}break}}qa(F[F[F[a+8>>2]+64>>2]>>2]+k|0,f,d);k=d+k|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break m}qa(F[F[h+64>>2]>>2],f,d);if((b|0)==1){break m}h=b-1|0;e=h&1;n:{if((b|0)==2){break n}g=h&-2;c=d;while(1){qa(F[F[F[a+8>>2]+64>>2]>>2]+c|0,f,d);c=c+d|0;qa(c+F[F[F[a+8>>2]+64>>2]>>2]|0,f,d);g=g-2|0;if(!g){break n}c=c+d|0;continue}}if(!e){break m}qa(F[F[F[a+8>>2]+64>>2]>>2]+(c+d|0)|0,f,d)}oa(f);break b}Bc(a,b);break b}Bc(a,b);break b}Ac(a,b);break b}Ac(a,b)}c=1}return c|0}function Qh(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;e=ba-32|0;ba=e;a:{if((d|0)==3){d=F[b+4>>2];f=F[b+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;b=0;b:{if((c|0)==-2){break b}l=F[F[F[d+4>>2]+8>>2]+(f<<2)>>2];if((da[F[F[d>>2]+8>>2]](d)|0)==1){k=F[F[F[d+4>>2]+8>>2]+(f<<2)>>2];c:{d:{if((da[F[F[d>>2]+8>>2]](d)|0)!=1|c-1>>>0>5){break d}j=da[F[F[d>>2]+36>>2]](d)|0;g=da[F[F[d>>2]+44>>2]](d,f)|0;if(!j|!g){break d}i=g+12|0;f=da[F[F[d>>2]+40>>2]](d,f)|0;d=F[d+44>>2];if(f){if((c|0)!=6){break d}b=pa(112);F[b+4>>2]=k;c=F[e+12>>2];F[b+8>>2]=F[e+8>>2];F[b+12>>2]=c;c=F[e+20>>2];F[b+16>>2]=F[e+16>>2];F[b+20>>2]=c;F[b+24>>2]=F[e+24>>2];F[b+40>>2]=g;F[b+36>>2]=i;F[b+32>>2]=f;F[b+28>>2]=d;F[b+68>>2]=g;F[b- -64>>2]=i;F[b+60>>2]=f;F[b+56>>2]=d;F[b+48>>2]=0;F[b+52>>2]=0;F[b>>2]=5744;F[b+88>>2]=1065353216;F[b+92>>2]=-1;F[b+80>>2]=-1;F[b+84>>2]=-1;F[b+72>>2]=1;F[b+76>>2]=-1;F[b+44>>2]=6308;c=b+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;F[e>>2]=b;break c}if((c|0)!=6){break d}h=pa(112);F[h+4>>2]=k;b=F[e+12>>2];F[h+8>>2]=F[e+8>>2];F[h+12>>2]=b;c=F[e+20>>2];b=h;F[b+16>>2]=F[e+16>>2];F[b+20>>2]=c;F[b+24>>2]=F[e+24>>2];F[b+40>>2]=g;F[b+36>>2]=i;F[b+32>>2]=j;F[b+28>>2]=d;F[b+68>>2]=g;F[b- -64>>2]=i;F[b+60>>2]=j;F[b+56>>2]=d;F[b+48>>2]=0;F[b+52>>2]=0;F[b>>2]=6748;F[b+88>>2]=1065353216;F[b+92>>2]=-1;F[b+80>>2]=-1;F[b+84>>2]=-1;F[b+72>>2]=1;F[b+76>>2]=-1;F[b+44>>2]=7168;b=b+96|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[e>>2]=h}b=F[e>>2];if(b){break b}F[e>>2]=0}b=pa(28);F[b+4>>2]=l;c=F[e+12>>2];F[b+8>>2]=F[e+8>>2];F[b+12>>2]=c;c=F[e+20>>2];F[b+16>>2]=F[e+16>>2];F[b+20>>2]=c;F[b+24>>2]=F[e+24>>2];F[b>>2]=7580}F[a>>2]=b;break a}F[a>>2]=0}ba=e+32|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,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=ba-96|0;ba=e;a:{if(!_b(1,e+92|0,b)){break a}h=F[e+92>>2];if(!h){break a}c=F[b+8>>2];d=F[b+16>>2];d=hi(c-d|0,F[b+12>>2]-(F[b+20>>2]+(d>>>0>c>>>0)|0)|0,5,0)>>>0>>0;c=ca;if((c|0)<0?1:(c|0)<=0?d:0){break a}d=F[a+4>>2];c=F[a+8>>2]-d>>2;b:{if(c>>>0>>0){Ca(a+4|0,h-c|0);break b}if(c>>>0<=h>>>0){break b}F[a+8>>2]=d+(h<<2)}s=a+16|0;k=F[a+32>>2];l=1;while(1){c:{p=F[b+8>>2];i=F[b+16>>2];g=F[b+12>>2];d=g;c=F[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?p>>>0<=i>>>0:0){break c}q=F[b>>2];m=G[q+i|0];f=i+1|0;d=f>>>0<1?c+1|0:c;F[b+16>>2]=f;F[b+20>>2]=d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?f>>>0>=p>>>0:0){break c}n=G[f+q|0];j=i+2|0;d=j>>>0<2?c+1|0:c;f=b;F[b+16>>2]=j;F[b+20>>2]=d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?j>>>0>=p>>>0:0){break c}j=G[j+q|0];r=i+3|0;d=r>>>0<3?c+1|0:c;F[b+16>>2]=r;F[f+20>>2]=d;if((d|0)>(g|0)?1:(d|0)>=(g|0)?r>>>0>=p>>>0:0){break c}g=G[r+q|0];d=c;c=i+4|0;d=c>>>0<4?d+1|0:d;F[b+16>>2]=c;F[f+20>>2]=d;if(!j|(m>>>0>4|(n-1&255)>>>0>10)){break c}f=nb(e+24|0);i=f;p=j<<24>>24;c=n;n=c;g=(g|0)!=0;d=c-1|0;d:{if(d>>>0<=10){c=F[(d<<2)+10596>>2];break d}c=-1}c=L(c,j);ec(i,m,p,n,g,c,c>>31);if(!_b(1,e+20|0,b)){break c}n=F[e+20>>2];F[e+84>>2]=n;c=pa(96);cc(c,f);F[e+16>>2]=c;c=ba-16|0;ba=c;d=F[k+12>>2];m=F[k+8>>2];f=F[e+16>>2];F[e+16>>2]=0;F[c+8>>2]=f;da[F[F[k>>2]+8>>2]](k,d-m>>2,c+8|0);d=F[c+8>>2];F[c+8>>2]=0;if(d){ya(d)}ba=c+16|0;c=(F[k+12>>2]-F[k+8>>2]>>2)-1|0;d=F[e+16>>2];F[e+16>>2]=0;if(d){ya(d)}m=c<<2;F[F[m+F[k+8>>2]>>2]+60>>2]=n;F[F[a+4>>2]+(o<<2)>>2]=c;l=F[a+16>>2];d=F[a+20>>2]-l>>2;e:{if((d|0)>(c|0)){break e}F[e+12>>2]=-1;c=c+1|0;if(c>>>0>d>>>0){Ha(s,c-d|0,e+12|0);l=F[s>>2];break e}if(d>>>0<=c>>>0){break e}F[a+20>>2]=(c<<2)+l}F[l+m>>2]=o;o=o+1|0;l=o>>>0>>0;if((h|0)!=(o|0)){continue}}break}o=!l}ba=e+96|0;return o&1}function ze(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=ba-16|0;ba=j;if(dd(a,b)){k=da[F[F[a>>2]+24>>2]](a)|0;d=F[a+40>>2];e=F[a+36>>2];c=d-e>>2;a:{if(k>>>0>c>>>0){e=k-c|0;f=F[a+44>>2];d=F[a+40>>2];if(e>>>0<=f-d>>2>>>0){c=a;if(e){f=d;d=e<<2;d=ra(f,0,d)+d|0}F[c+40>>2]=d;break a}b:{c:{d:{c=F[a+36>>2];i=d-c>>2;g=i+e|0;if(g>>>0<1073741824){f=f-c|0;l=f>>1;g=f>>2>>>0<536870911?g>>>0>l>>>0?g:l:1073741823;if(g){if(g>>>0>=1073741824){break d}h=pa(g<<2)}f=(i<<2)+h|0;i=e<<2;e=ra(f,0,i);i=e+i|0;g=(g<<2)+h|0;if((c|0)==(d|0)){break c}while(1){d=d-4|0;e=F[d>>2];F[d>>2]=0;f=f-4|0;F[f>>2]=e;if((c|0)!=(d|0)){continue}break}F[a+44>>2]=g;g=F[a+40>>2];F[a+40>>2]=i;d=F[a+36>>2];F[a+36>>2]=f;if((d|0)==(g|0)){break b}while(1){g=g-4|0;c=F[g>>2];F[g>>2]=0;if(c){da[F[F[c>>2]+4>>2]](c)}if((d|0)!=(g|0)){continue}break}break b}sa();V()}ta(1876);V()}F[a+44>>2]=g;F[a+40>>2]=i;F[a+36>>2]=e}if(d){oa(d)}break a}if(c>>>0<=k>>>0){break a}e=e+(k<<2)|0;if((e|0)!=(d|0)){while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){da[F[F[c>>2]+4>>2]](c)}if((d|0)!=(e|0)){continue}break}}F[a+40>>2]=e}e:{if((k|0)<1){g=0;break e}g=1;f=F[b+16>>2];c=F[b+20>>2];e=F[b+12>>2];if((c|0)>(e|0)?1:(c|0)>=(e|0)?f>>>0>=I[b+8>>2]:0){break e}d=0;while(1){h=G[f+F[b>>2]|0];f=f+1|0;c=f>>>0<1?c+1|0:c;e=b;F[e+16>>2]=f;F[e+20>>2]=c;da[F[F[a>>2]+48>>2]](j+8|0,a,h);c=F[a+36>>2];e=F[j+8>>2];F[j+8>>2]=0;f=d<<2;h=f+c|0;c=F[h>>2];F[h>>2]=e;if(c){da[F[F[c>>2]+4>>2]](c)}c=F[j+8>>2];F[j+8>>2]=0;if(c){da[F[F[c>>2]+4>>2]](c)}c=F[f+F[a+36>>2]>>2];if(!c){break e}if(!(n=c,o=da[F[F[a>>2]+28>>2]](a)|0,p=da[F[F[a>>2]+20>>2]](a,d)|0,m=F[F[c>>2]+8>>2],da[m](n|0,o|0,p|0)|0)){break e}d=d+1|0;g=(k|0)>(d|0);if((d|0)==(k|0)){break e}f=F[b+16>>2];c=F[b+20>>2];h=F[b+12>>2];if((c|0)<(h|0)?1:(c|0)<=(h|0)?f>>>0>2]:0){continue}break}}d=!g}ba=j+16|0;return d&1}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,n=0;a:{if(!H[b+38>>1]){break a}if(!Wa(1,a+12|0,b)){break a}f=F[a+12>>2];c=F[a>>2];e=F[a+4>>2]-c>>2;b:{if(f>>>0>e>>>0){za(a,f-e|0);f=F[a+12>>2];break b}if(e>>>0<=f>>>0){break b}F[a+4>>2]=c+(f<<2)}if(!f){n=1;break a}k=F[b+8>>2];i=F[b+12>>2];while(1){d=F[b+16>>2];e=F[b+20>>2];c=e;if((c|0)>(i|0)?1:(c|0)>=(i|0)?d>>>0>=k>>>0:0){break a}l=F[b>>2];j=G[l+d|0];d=d+1|0;e=d>>>0<1?e+1|0:e;h=d;F[b+16>>2]=d;F[b+20>>2]=e;c=j>>>2|0;d=0;c:{d:{e:{f:{m=j&3;switch(m|0){case 0:break d;case 3:break f;default:break e}}e=c+g|0;if(e>>>0>=f>>>0){return 0}ra(F[a>>2]+(g<<2)|0,0,(j&252)+4|0);g=e;break c}while(1){if((e|0)>(i|0)?1:(e|0)>=(i|0)?h>>>0>=k>>>0:0){return 0}j=G[h+l|0];h=h+1|0;e=h>>>0<1?e+1|0:e;F[b+16>>2]=h;F[b+20>>2]=e;c=j<<(d<<3|6)|c;d=d+1|0;if((m|0)!=(d|0)){continue}break}}F[F[a>>2]+(g<<2)>>2]=c}f=F[a+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}i=a+16|0;e=F[a>>2];b=F[a+16>>2];c=F[a+20>>2]-b|0;g=c>>2;g:{if(g>>>0<=4095){za(i,4096-g|0);break g}if((c|0)==16384){break g}F[a+20>>2]=b+16384}h:{b=a+28|0;g=F[b>>2];c=F[a+32>>2]-g>>3;if(c>>>0>>0){db(b,f-c|0);g=F[b>>2];break h}if(c>>>0>f>>>0){F[a+32>>2]=(f<<3)+g}if(f){break h}return 0}a=F[e>>2];c=0;F[g+4>>2]=0;F[g>>2]=a;b=F[e>>2];a=1;i:{if(b>>>0>4096){break i}d=0;j:{while(1){a=b;k:{if(c>>>0>=b>>>0){break k}j=a+(c^-1)|0;h=F[i>>2];b=a-c&7;if(b){while(1){F[h+(c<<2)>>2]=d;c=c+1|0;b=b-1|0;if(b){continue}break}}if(j>>>0<=6){break k}while(1){b=h+(c<<2)|0;F[b>>2]=d;F[b+28>>2]=d;F[b+24>>2]=d;F[b+20>>2]=d;F[b+16>>2]=d;F[b+12>>2]=d;F[b+8>>2]=d;F[b+4>>2]=d;c=c+8|0;if((a|0)!=(c|0)){continue}break}}d=d+1|0;if((f|0)!=(d|0)){b=e+(d<<2)|0;c=F[b>>2];h=(d<<3)+g|0;F[h+4>>2]=a;F[h>>2]=c;c=a;b=a+F[b>>2]|0;if(b>>>0>4096){break j}continue}break}b=a}a=d>>>0>>0}return!a&(b|0)==4096}return n}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;i=ba-16|0;ba=i;F[i>>2]=b;f=-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){f=b-1|0;break a}f=b+2|0}F[i+8>>2]=f;n=(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}}f=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break f}while(1){g=L(f,144)+c|0;k=g;c=F[g+136>>2];d=F[g+140>>2];h:{if(c>>>0>>0){F[c>>2]=b;F[k+136>>2]=c+4;break h}h=F[g+132>>2];j=c-h|0;c=j>>2;e=c+1|0;if(e>>>0>=1073741824){break e}l=c<<2;d=d-h|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;i:{if(!e){break i}if(e>>>0>=1073741824){break d}c=pa(e<<2)}d=l+c|0;F[d>>2]=b;if((j|0)>=1){qa(c,h,j)}F[g+132>>2]=c;F[k+136>>2]=d+4;F[g+140>>2]=c+(e<<2);if(!h){break h}oa(h)}f=f+1|0;c=F[a+216>>2];if(f>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0>>0){break f}f=0;if(F[a+220>>2]==F[a+216>>2]){break f}while(1){j:{if(!Ia(F[a+368>>2]+(f<<4)|0)){break j}g=F[a+216>>2]+L(f,144)|0;k=g;c=F[g+136>>2];d=F[g+140>>2];if(c>>>0>>0){F[c>>2]=b;F[k+136>>2]=c+4;break j}h=F[g+132>>2];j=c-h|0;c=j>>2;e=c+1|0;if(e>>>0>=1073741824){break c}l=c<<2;d=d-h|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;k:{if(!e){break k}if(e>>>0>=1073741824){break b}c=pa(e<<2)}d=l+c|0;F[d>>2]=b;if((j|0)>=1){qa(c,h,j)}F[g+132>>2]=c;F[k+136>>2]=d+4;F[g+140>>2]=c+(e<<2);if(!h){break j}oa(h)}f=f+1|0;if(f>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break}}m=m+1|0;if((m|0)!=3){b=F[(m<<2)+i>>2];continue}break}ba=i+16|0;return 1}sa();V()}ta(8944);V()}sa();V()}ta(8944);V()}function xd(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=M(0),l=0;h=F[c>>2];l=a;a:{b:{f=F[b+4>>2];if(!f){break b}g=ki(f);c:{if(g>>>0>=2){e=h;e=f>>>0<=e>>>0?(e>>>0)%(f>>>0)|0:e;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)!=(h|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if((h|0)!=F[c+8>>2]){continue}break}b=0;break a}e=h&f-1;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}j=F[c+4>>2];if((g&j)!=(e|0)?(h|0)!=(j|0):0){break b}if((h|0)!=F[c+8>>2]){continue}break}b=0;break a}c=pa(16);d=F[F[d>>2]>>2];F[c+12>>2]=0;F[c+8>>2]=d;F[c+4>>2]=h;F[c>>2]=0;k=M(F[b+12>>2]+1>>>0);i=J[b+16>>2];d:{if(f?!(k>M(i*M(f>>>0))):0){break d}g=(f-1&f)!=0|f>>>0<3|f<<1;i=M(S(M(k/i)));e:{if(i=M(0)){e=~~i>>>0;break e}e=0}e=e>>>0>g>>>0?e:g;g=2;f:{if((e|0)==1){break f}d=e;g=d;if(!(d&d-1)){break f}g=Nc(e)}d=g;e=F[b+4>>2];g:{if(d>>>0>e>>>0){pd(b,d);break g}h:{if(d>>>0>=e>>>0){break h}j=e>>>0<3;i=M(S(M(M(I[b+12>>2])/J[b+16>>2])));i:{if(i=M(0)){g=~~i>>>0;break i}g=0}f=e;j:{k:{if(j){break k}if(ki(e)>>>0>1){break k}e=g>>>0<2?g:1<<32-O(g-1|0);break j}e=Nc(g)}d=d>>>0>>0?e:d;if(f>>>0<=d>>>0){break h}pd(b,d)}}f=F[b+4>>2];if(!(f&f-1)){e=h&f-1;break d}if(f>>>0>h>>>0){e=h;break d}e=(h>>>0)%(f>>>0)|0}h=F[b>>2]+(e<<2)|0;d=F[h>>2];l:{if(!d){F[c>>2]=F[b+8>>2];F[b+8>>2]=c;F[h>>2]=b+8;d=F[c>>2];if(!d){break l}d=F[d+4>>2];h=f-1|0;m:{if(!(h&f)){d=d&h;break m}if(d>>>0>>0){break m}d=(d>>>0)%(f>>>0)|0}F[F[b>>2]+(d<<2)>>2]=c;break l}F[c>>2]=F[d>>2];F[d>>2]=c}F[b+12>>2]=F[b+12>>2]+1;b=1}D[l+4|0]=b;F[a>>2]=c}function wf(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;a=0;f=ba-16|0;ba=f;k=F[b+80>>2];n=G[c+24|0];h=n<<24>>24;e=L(k,h);a:{b:{c:{b=F[c+28>>2];d:{if(!(!G[c+84|0]|((b|0)!=2?(b|0)!=1:0))){b=F[c+48>>2];c=F[F[c>>2]>>2];F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;if(e){if((e|0)<=-1){break c}a=pa(e);g=qa(a,b+c|0,e)+e|0}b=F[d>>2];if(b){F[d+4>>2]=b;oa(b)}F[d+8>>2]=g;F[d+4>>2]=g;F[d>>2]=a;a=1;break d}F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;if(h){if((h|0)<=-1){break c}a=pa(h);F[f>>2]=a;b=a+h|0;F[f+8>>2]=b;ra(a,0,h);F[f+4>>2]=b}b=F[d+4>>2];g=F[d>>2];j=b-g|0;e:{if(j>>>0>>0){l=e-j|0;m=F[d+8>>2];if(l>>>0<=m-b>>>0){e=d;if(l){b=ra(b,0,l)+l|0}F[e+4>>2]=b;break e}if((e|0)<=-1){break b}b=m-g|0;m=b<<1;b=b>>>0<1073741823?e>>>0>m>>>0?e:m:2147483647;if(b){i=pa(b)}ra(i+j|0,0,l);if((j|0)>=1){qa(i,g,j)}F[d+8>>2]=b+i;F[d+4>>2]=e+i;F[d>>2]=i;if(!g){break e}oa(g);break e}if(e>>>0>=j>>>0){break e}F[d+4>>2]=e+g}f:{if(!k){i=0;break f}i=1;if((h|0)<1){b=0;while(1){e=c;if(!Ib(e,G[e+84|0]?b:F[F[e+68>>2]+(b<<2)>>2],D[e+24|0],a)){break f}b=b+1|0;i=k>>>0>b>>>0;if((b|0)!=(k|0)){continue}break}break f}a=h-1|0;h=a&-2;j=a&1;b=0;e=0;while(1){a=F[f>>2];if(Ib(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],a)){D[F[d>>2]+b|0]=G[a|0];g=1;b=b+1|0;a=h;g:{h:{switch(n-1|0){default:while(1){D[F[d>>2]+b|0]=G[F[f>>2]+g|0];D[(F[d>>2]+b|0)+1|0]=G[(F[f>>2]+g|0)+1|0];g=g+2|0;b=b+2|0;a=a-2|0;if(a){continue}break};break;case 0:break g;case 1:break h}}if(!j){break g}D[F[d>>2]+b|0]=G[F[f>>2]+g|0];b=b+1|0}e=e+1|0;i=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}}break}a=F[f>>2]}if(a){oa(a)}a=i^1}ba=f+16|0;a=a&1;break a}sa();V()}sa();V()}return a|0}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,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a=0;f=ba-16|0;ba=f;k=F[b+80>>2];n=G[c+24|0];h=n<<24>>24;e=L(k,h);a:{b:{c:{b=F[c+28>>2];d:{if(!(!G[c+84|0]|((b|0)!=2?(b|0)!=1:0))){b=F[c+48>>2];c=F[F[c>>2]>>2];F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;if(e){if((e|0)<=-1){break c}a=pa(e);g=qa(a,b+c|0,e)+e|0}b=F[d>>2];if(b){F[d+4>>2]=b;oa(b)}F[d+8>>2]=g;F[d+4>>2]=g;F[d>>2]=a;a=1;break d}F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;if(h){if((h|0)<=-1){break c}a=pa(h);F[f>>2]=a;b=a+h|0;F[f+8>>2]=b;ra(a,0,h);F[f+4>>2]=b}b=F[d+4>>2];g=F[d>>2];j=b-g|0;e:{if(j>>>0>>0){l=e-j|0;m=F[d+8>>2];if(l>>>0<=m-b>>>0){e=d;if(l){b=ra(b,0,l)+l|0}F[e+4>>2]=b;break e}if((e|0)<=-1){break b}b=m-g|0;m=b<<1;b=b>>>0<1073741823?e>>>0>m>>>0?e:m:2147483647;if(b){i=pa(b)}ra(i+j|0,0,l);if((j|0)>=1){qa(i,g,j)}F[d+8>>2]=b+i;F[d+4>>2]=e+i;F[d>>2]=i;if(!g){break e}oa(g);break e}if(e>>>0>=j>>>0){break e}F[d+4>>2]=e+g}f:{if(!k){i=0;break f}i=1;if((h|0)<1){b=0;while(1){e=c;if(!Hb(e,G[e+84|0]?b:F[F[e+68>>2]+(b<<2)>>2],D[e+24|0],a)){break f}b=b+1|0;i=k>>>0>b>>>0;if((b|0)!=(k|0)){continue}break}break f}a=h-1|0;h=a&-2;j=a&1;b=0;e=0;while(1){a=F[f>>2];if(Hb(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],a)){D[F[d>>2]+b|0]=G[a|0];g=1;b=b+1|0;a=h;g:{h:{switch(n-1|0){default:while(1){D[F[d>>2]+b|0]=G[F[f>>2]+g|0];D[(F[d>>2]+b|0)+1|0]=G[(F[f>>2]+g|0)+1|0];g=g+2|0;b=b+2|0;a=a-2|0;if(a){continue}break};break;case 0:break g;case 1:break h}}if(!j){break g}D[F[d>>2]+b|0]=G[F[f>>2]+g|0];b=b+1|0}e=e+1|0;i=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}}break}a=F[f>>2]}if(a){oa(a)}a=i^1}ba=f+16|0;a=a&1;break a}sa();V()}sa();V()}return a|0}function Pc(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;f=F[a+12>>2];d=F[a+8>>2];e=f-d>>2;a:{if((e|0)>(b|0)){break a}i=b+1|0;if(i>>>0>e>>>0){e=i-e|0;g=F[a+16>>2];d=F[a+12>>2];if(e>>>0<=g-d>>2>>>0){f=a;if(e){j=d;d=e<<2;d=ra(j,0,d)+d|0}F[f+12>>2]=d;break a}b:{c:{d:{i=F[a+8>>2];h=d-i>>2;f=h+e|0;if(f>>>0<1073741824){g=g-i|0;k=g>>1;g=g>>2>>>0<536870911?f>>>0>k>>>0?f:k:1073741823;if(g){if(g>>>0>=1073741824){break d}j=pa(g<<2)}f=(h<<2)+j|0;h=e<<2;e=ra(f,0,h);h=e+h|0;g=(g<<2)+j|0;if((d|0)==(i|0)){break c}while(1){d=d-4|0;e=F[d>>2];F[d>>2]=0;f=f-4|0;F[f>>2]=e;if((d|0)!=(i|0)){continue}break}F[a+16>>2]=g;e=F[a+12>>2];F[a+12>>2]=h;d=F[a+8>>2];F[a+8>>2]=f;if((d|0)==(e|0)){break b}while(1){e=e-4|0;f=F[e>>2];F[e>>2]=0;if(f){ya(f)}if((d|0)!=(e|0)){continue}break}break b}sa();V()}ta(11272);V()}F[a+16>>2]=g;F[a+12>>2]=h;F[a+8>>2]=e}if(d){oa(d)}break a}if(e>>>0<=i>>>0){break a}d=d+(i<<2)|0;if((d|0)!=(f|0)){while(1){f=f-4|0;e=F[f>>2];F[f>>2]=0;if(e){ya(e)}if((d|0)!=(f|0)){continue}break}}F[a+12>>2]=d}e:{f:{d=F[F[c>>2]+56>>2];g:{if((d|0)>4){break g}f=L(d,12)+a|0;j=f;d=F[f+24>>2];if((d|0)!=F[f+28>>2]){F[d>>2]=b;F[j+24>>2]=d+4;break g}e=F[f+20>>2];i=d-e|0;h=i>>2;g=h+1|0;if(g>>>0>=1073741824){break f}k=i>>1;g=h>>>0<536870911?g>>>0>k>>>0?g:k:1073741823;d=0;h:{if(!g){break h}if(g>>>0>=1073741824){break e}d=pa(g<<2)}h=d+(h<<2)|0;F[h>>2]=b;if((i|0)>=1){qa(d,e,i)}F[f+20>>2]=d;F[j+24>>2]=h+4;F[f+28>>2]=d+(g<<2);if(!e){break g}oa(e)}d=F[c>>2];F[d+60>>2]=b;a=F[a+8>>2];F[c>>2]=0;b=a+(b<<2)|0;a=F[b>>2];F[b>>2]=d;if(a){ya(a)}return}sa();V()}ta(11272);V()}function Nb(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;l=F[b+16>>2];h=F[c+4>>2]-l|0;e=F[c>>2]-l|0;F[c>>2]=e;F[c+4>>2]=h;k=F[b+16>>2];f=h>>31;g=f+h^f;f=e>>31;m=(k|0)>=(g+(f+e^f)|0);a:{if(m){g=h;break a}b:{c:{if((e|0)>=0){j=1;i=1;if((h|0)>-1){break b}g=1;j=-1;i=-1;if((e|0)>=1){break c}break b}g=-1;j=-1;i=-1;if((h|0)<1){break b}}j=(h|0)<1?-1:1;i=g}n=L(j,k);k=L(i,k);e=(e<<1)-k|0;f=(L(i,j)|0)>-1;g=(n+(f?0-e|0:e)|0)/2|0;F[c+4>>2]=g;e=(h<<1)-n|0;e=((f?0-e|0:e)+k|0)/2|0;F[c>>2]=e}d:{e:{f:{g:{h:{if(!e){if(g){break h}j=1;g=0;f=0;i=0;break d}j=1;f=(e|0)<0&(g|0)<1;i:{if((e|0)>=1){i=(g|0)>-1?2:1;if(!f){break i}f=e;break d}i=(g|0)>0?3:0;if(!f){break i}f=e;break d}h=i-1|0;i=0;f=e;j:{switch(h|0){case 1:break j;case 0:break f;case 2:break g;default:break e}}g=0-g|0;f=0-e|0;i=2;break e}if((g|0)<1){break f}}f=0-g|0;i=3;g=e;break e}i=1;f=g;g=0-e|0}e=c;F[e>>2]=f;F[e+4>>2]=g;j=0}c=F[d+4>>2]+g|0;e=F[d>>2]+f|0;h=F[b+16>>2];k:{if((e|0)>(h|0)){e=e-F[b+4>>2]|0;break k}if((0-h|0)<=(e|0)){break k}e=F[b+4>>2]+e|0}l:{if((c|0)>(h|0)){c=c-F[b+4>>2]|0;break l}if((0-h|0)<=(c|0)){break l}c=F[b+4>>2]+c|0}m:{if(j){b=c;break m}b=c;n:{switch((4-i&3)-1|0){case 0:b=0-e|0;e=c;break m;case 1:b=0-c|0;e=0-e|0;break m;case 2:break n;default:break m}}b=e;e=0-c|0}o:{if(m){c=b;break o}p:{q:{if((e|0)>=0){c=1;f=1;if((b|0)>-1){break p}d=1;c=-1;f=-1;if((e|0)>=1){break q}break p}d=-1;c=-1;f=-1;if((b|0)<1){break p}}c=(b|0)<1?-1:1;f=d}g=L(f,h);d=(e<<1)-g|0;F[a>>2]=d;e=(L(c,f)|0)>-1;f=e?0-d|0:d;d=L(c,h);c=(f+d|0)/2|0;b=(b<<1)-d|0;e=(g+(e?0-b|0:b)|0)/2|0}b=a;F[b>>2]=e+l;F[b+4>>2]=c+l}function pf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=ba-32|0;ba=f;e=f+8|0;a=ba-96|0;ba=a;c=F[b+36>>2];F[a+88>>2]=F[b+32>>2];F[a+92>>2]=c;c=F[b+28>>2];F[a+80>>2]=F[b+24>>2];F[a+84>>2]=c;c=F[b+20>>2];F[a+72>>2]=F[b+16>>2];F[a+76>>2]=c;d=F[b+12>>2];c=a- -64|0;F[c>>2]=F[b+8>>2];F[c+4>>2]=d;c=F[b+4>>2];F[a+56>>2]=F[b>>2];F[a+60>>2]=c;jc(a+24|0,a+56|0,a+40|0);b=F[a+24>>2];a:{if(b){F[e>>2]=b;ua(e+4|0,a+24|4);if(D[a+39|0]>-1){break a}oa(F[a+28>>2]);break a}if(D[a+39|0]<=-1){oa(F[a+28>>2])}b=G[a+47|0];if(b>>>0>=2){b=pa(32);F[a+8>>2]=b;F[a+12>>2]=26;F[a+16>>2]=-2147483616;D[b+26|0]=0;c=G[8009]|G[8010]<<8;D[b+24|0]=c;D[b+25|0]=c>>>8;c=G[8005]|G[8006]<<8|(G[8007]<<16|G[8008]<<24);d=G[8001]|G[8002]<<8|(G[8003]<<16|G[8004]<<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[7997]|G[7998]<<8|(G[7999]<<16|G[8e3]<<24);d=G[7993]|G[7994]<<8|(G[7995]<<16|G[7996]<<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[7989]|G[7990]<<8|(G[7991]<<16|G[7992]<<24);d=G[7985]|G[7986]<<8|(G[7987]<<16|G[7988]<<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;F[a+24>>2]=-1;b=ua(a+24|4,a+8|0);F[e>>2]=F[a+24>>2];ua(e+4|0,b);if(D[b+11|0]<=-1){oa(F[b>>2])}if(D[a+19|0]>-1){break a}oa(F[a+8>>2]);break a}F[e>>2]=0;F[e+4>>2]=0;F[e+16>>2]=b;F[e+8>>2]=0;F[e+12>>2]=0}ba=a+96|0;a=F[f+24>>2];if(D[f+23|0]<=-1){oa(F[f+12>>2])}ba=f+32|0;return a|0}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=ba-16|0;ba=i;m=-1;a:{b:{c:{if(!Fa(1,i+12|0,b)){break c}d=F[i+12>>2];if(d){c=F[a+8>>2];if(d>>>0>(F[c+4>>2]-F[c>>2]>>2>>>0)/3>>>0){break c}while(1){if(!Fa(1,i+8|0,b)){break c}c=F[i+8>>2];if(!Fa(1,i+8|0,b)){break c}g=c+g|0;c=F[i+8>>2];if(g>>>0>>0){break c}e=g-c|0;c=F[a+40>>2];d:{if((c|0)!=F[a+44>>2]){F[c+4>>2]=g;F[c>>2]=e;F[a+40>>2]=c+12;break d}l=F[a+36>>2];k=c-l|0;f=(k|0)/12|0;j=f+1|0;if(j>>>0>=357913942){break b}c=f<<1;j=f>>>0<178956970?c>>>0>>0?j:c:357913941;c=0;e:{if(!j){break e}if(j>>>0>=357913942){break a}c=pa(L(j,12))}f=c+L(f,12)|0;F[f+4>>2]=g;F[f>>2]=e;e=f+L((k|0)/-12|0,12)|0;if((k|0)>=1){qa(e,l,k)}F[a+44>>2]=c+L(j,12);F[a+40>>2]=f+12;F[a+36>>2]=e;if(!l){break d}oa(l)}h=h+1|0;if((d|0)!=(h|0)){continue}break}g=0;hc(b,0,0);l=d>>>0>1?d:1;while(1){c=G[b+36|0];d=H[F[a+4>>2]+36>>1];f:{if(((d<<8|d>>>8)&65535)>>>0<=513){if(!c){break f}e=0;c=F[b+32>>2];h=c>>>3|0;k=F[b+24>>2];d=h+k|0;f=F[b+28>>2];g:{if(d>>>0>=f>>>0){d=c;break g}e=G[d|0];d=c+1|0;F[b+32>>2]=d;h=d>>>3|0;e=e>>>(c&7)&1}if(f>>>0<=h+k>>>0){break f}F[b+32>>2]=d+1;break f}if(!c){break f}e=0;c=F[b+32>>2];d=F[b+24>>2]+(c>>>3|0)|0;if(d>>>0>=I[b+28>>2]){break f}d=G[d|0];F[b+32>>2]=c+1;e=d>>>(c&7)&1}c=F[a+36>>2]+L(g,12)|0;D[c+8|0]=G[c+8|0]&254|e&1;g=g+1|0;if((l|0)!=(g|0)){continue}break}D[b+36|0]=0;e=F[b+20>>2];c=0;d=F[b+32>>2]+7|0;c=d>>>0<7?1:c;h=c<<29|d>>>3;d=h+F[b+16>>2]|0;c=(c>>>3|0)+e|0;F[b+16>>2]=d;F[b+20>>2]=d>>>0>>0?c+1|0:c}m=F[b+16>>2]}ba=i+16|0;return m}sa();V()}ta(8944);V()}function lc(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];h=F[a+4>>2];if((f-h|0)/12>>>0>=b>>>0){a:{if(!b){break a}g=L(b,12);d=h;f=L(b,12)-12|0;b=((f>>>0)/12|0)+1&3;if(b){while(1){e=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=e;F[d+8>>2]=F[c+8>>2];d=d+12|0;b=b-1|0;if(b){continue}break}}h=g+h|0;if(f>>>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((h|0)!=(d|0)){continue}break}}F[a+4>>2]=h;return}b:{e=F[a>>2];i=(h-e|0)/12|0;g=i+b|0;if(g>>>0<357913942){f=(f-e|0)/12|0;e=f<<1;e=f>>>0<178956970?e>>>0>>0?g:e:357913941;d=0;c:{if(!e){break c}if(e>>>0>=357913942){break b}d=pa(L(e,12))}f=d;g=L(i,12)+d|0;d=g;i=L(b,12);j=i-12|0;b=((j>>>0)/12|0)+1&3;if(b){d=g;while(1){k=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=k;F[d+8>>2]=F[c+8>>2];d=d+12|0;b=b-1|0;if(b){continue}break}}i=g+i|0;if(j>>>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((i|0)!=(d|0)){continue}break}}b=F[a>>2];c=h-b|0;d=g+L((c|0)/-12|0,12)|0;if((c|0)>=1){qa(d,b,c)}F[a+8>>2]=L(e,12)+f;F[a+4>>2]=i;F[a>>2]=d;if(b){oa(b)}return}sa();V()}ta(8944);V()}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,l=0;i=c;a:{c=a;if(F[a+12>>2]==(b|0)){break a}a=b;b=F[c+4>>2];d=F[c>>2];if((b|0)!=(d|0)){while(1){e=b-12|0;if(D[b-1|0]<=-1){oa(F[e>>2])}b=e;if((b|0)!=(d|0)){continue}break}}F[c+12>>2]=a;F[c+4>>2]=d;b=F[a>>2];j=a+4|0;if((b|0)==(j|0)){break a}while(1){e=b+16|0;b:{if(F[c+8>>2]!=(d|0)){k=c,l=ua(d,e)+12|0,F[k+4>>2]=l;break b}c:{d:{e:{f=F[c>>2];g=(F[c+4>>2]-f|0)/12|0;d=g+1|0;if(d>>>0<357913942){f=(F[c+8>>2]-f|0)/12|0;h=f<<1;d=f>>>0<178956970?d>>>0>h>>>0?d:h:357913941;a=0;f:{if(!d){break f}if(d>>>0>=357913942){break e}a=pa(L(d,12))}f=a+L(d,12)|0;d=ua(a+L(g,12)|0,e);g=d+12|0;a=F[c+4>>2];e=F[c>>2];if((a|0)==(e|0)){break d}while(1){a=a-12|0;h=F[a+4>>2];d=d-12|0;F[d>>2]=F[a>>2];F[d+4>>2]=h;F[d+8>>2]=F[a+8>>2];F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;if((a|0)!=(e|0)){continue}break}F[c+8>>2]=f;a=F[c+4>>2];F[c+4>>2]=g;e=F[c>>2];F[c>>2]=d;if((a|0)==(e|0)){break c}while(1){d=a-12|0;if(D[a-1|0]<=-1){oa(F[d>>2])}a=d;if((e|0)!=(d|0)){continue}break}break c}sa();V()}ta(10672);V()}F[c+8>>2]=f;F[c+4>>2]=g;F[c>>2]=d}if(e){oa(e)}}d=F[b+4>>2];g:{if(!d){a=F[b+8>>2];if(F[a>>2]==(b|0)){break g}b=b+8|0;while(1){d=F[b>>2];b=d+8|0;a=F[d+8>>2];if((d|0)!=F[a>>2]){continue}break}break g}while(1){a=d;d=F[d>>2];if(d){continue}break}}if((a|0)==(j|0)){break a}d=F[c+4>>2];b=a;continue}}d=0;h:{if((i|0)<0){break h}a=F[c>>2];if((F[c+4>>2]-a|0)/12>>>0<=i>>>0){break h}d=a+L(i,12)|0;if(D[d+11|0]>-1){break h}d=F[d>>2]}return d|0}function xf(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;j=d;d=0;g=ba-16|0;ba=g;i=F[b+80>>2];e=D[c+24|0];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;a:{b:{if(e){if((e|0)<=-1){break b}a=e<<2;d=pa(a);F[g>>2]=d;b=a+d|0;F[g+8>>2]=b;h=a-4|0;f=(h>>>2|0)+1&7;c:{if(!f){a=d;break c}a=d;while(1){F[a>>2]=-1073741824;a=a+4|0;f=f-1|0;if(f){continue}break}}if(h>>>0>=28){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((b|0)!=(a|0)){continue}break}}F[g+4>>2]=b}a=L(e,i);h=F[j>>2];b=F[j+4>>2]-h>>2;d:{if(a>>>0>b>>>0){pc(j,a-b|0);break d}if(a>>>0>=b>>>0){break d}F[j+4>>2]=h+(a<<2)}e:{if(!i){b=0;break e}b=1;if((e|0)<1){a=0;while(1){e=c;if(!ob(e,G[e+84|0]?a:F[F[e+68>>2]+(a<<2)>>2],D[e+24|0],d)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}h=e&-4;o=e&3;f=0;p=e-1>>>0<3;e=0;while(1){if(ob(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],d)){n=F[j>>2];a=0;k=F[g>>2];b=h;if(!p){while(1){l=(f<<2)+n|0;m=a<<2;J[l>>2]=J[m+k>>2];J[l+4>>2]=J[(m|4)+k>>2];J[l+8>>2]=J[(m|8)+k>>2];J[l+12>>2]=J[(m|12)+k>>2];a=a+4|0;f=f+4|0;b=b-4|0;if(b){continue}break}}b=o;if(b){while(1){J[(f<<2)+n>>2]=J[(a<<2)+k>>2];a=a+1|0;f=f+1|0;b=b-1|0;if(b){continue}break}}e=e+1|0;b=i>>>0>e>>>0;if((e|0)!=(i|0)){continue}}break}d=F[g>>2]}if(d){oa(d)}ba=g+16|0;a=(b^-1)&1;break a}sa();V()}return a|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;F[a+8>>2]=e;g=a+32|0;h=F[g>>2];f=F[a+36>>2]-h>>2;a:{if(f>>>0>>0){Ca(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}F[a+36>>2]=h+(e<<2)}h=0;f=(e&1073741823)!=(e|0)?-1:e<<2;n=ra(pa(f),0,f);g=F[a+8>>2];b:{if((g|0)<1){break b}while(1){f=h<<2;g=F[f+n>>2];i=F[a+16>>2];c:{if((g|0)>(i|0)){j=F[a+32>>2];F[f+j>>2]=i;break c}j=F[a+32>>2];f=f+j|0;i=F[a+12>>2];if((i|0)>(g|0)){F[f>>2]=i;break c}F[f>>2]=g}g=F[a+8>>2];h=h+1|0;if((g|0)>(h|0)){continue}break}if((g|0)<1){break b}h=0;while(1){g=h<<2;f=g+c|0;g=F[b+g>>2]+F[g+j>>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}g=F[a+8>>2];h=h+1|0;if((g|0)>(h|0)){continue}break}}if((d|0)>(e|0)){p=0-e<<2;f=e;while(1){e:{if((g|0)<1){break e}l=f<<2;o=l+c|0;m=o+p|0;h=0;while(1){g=h<<2;i=F[g+m>>2];k=F[a+16>>2];f:{if((i|0)>(k|0)){j=F[a+32>>2];F[g+j>>2]=k;break f}j=F[a+32>>2];g=g+j|0;k=F[a+12>>2];if((k|0)>(i|0)){F[g>>2]=k;break f}F[g>>2]=i}g=F[a+8>>2];h=h+1|0;if((g|0)>(h|0)){continue}break}h=0;if((g|0)<1){break e}l=b+l|0;while(1){i=h<<2;g=i+o|0;i=F[i+l>>2]+F[i+j>>2]|0;F[g>>2]=i;g:{if((i|0)>F[a+16>>2]){m=i-F[a+20>>2]|0}else{if((i|0)>=F[a+12>>2]){break g}m=i+F[a+20>>2]|0}F[g>>2]=m}g=F[a+8>>2];h=h+1|0;if((g|0)>(h|0)){continue}break}}f=e+f|0;if((f|0)<(d|0)){continue}break}}oa(n);return 1}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;a=0;g=ba-16|0;ba=g;k=F[b+80>>2];b=D[c+24|0];e=L(k,b);a:{b:{f=F[c+28>>2];if(!(!G[c+84|0]|((f|0)!=6?(f|0)!=5:0))){f=F[c+48>>2];h=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;b=0;c=e<<2;if(c){if((c|0)<=-1){break b}i=pa(c);a=qa(i,f+h|0,c);b=a+c|0;a=a+(c>>2<<2)|0}c=F[d>>2];if(c){F[d+4>>2]=c;oa(c)}F[d+8>>2]=a;F[d+4>>2]=b;F[d>>2]=i;e=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<=-1){break b}f=b<<2;j=pa(f);F[g>>2]=j;h=f+j|0;F[g+8>>2]=h;ra(j,0,f);F[g+4>>2]=h}h=F[d>>2];f=F[d+4>>2]-h>>2;c:{if(f>>>0>>0){za(d,e-f|0);break c}if(e>>>0>=f>>>0){break c}F[d+4>>2]=h+(e<<2)}d:{if(!k){break d}a=1;if((b|0)<1){e=0;while(1){if(!Db(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],j)){break d}e=e+1|0;a=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}break}break d}f=b&-4;h=b&3;p=b-1>>>0<3;while(1){if(Db(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],j)){o=F[d>>2];e=0;l=F[g>>2];a=f;if(!p){while(1){b=(m<<2)+o|0;n=e<<2;F[b>>2]=F[n+l>>2];F[b+4>>2]=F[(n|4)+l>>2];F[b+8>>2]=F[(n|8)+l>>2];F[b+12>>2]=F[(n|12)+l>>2];e=e+4|0;m=m+4|0;a=a-4|0;if(a){continue}break}}b=h;if(b){while(1){F[(m<<2)+o>>2]=F[(e<<2)+l>>2];e=e+1|0;m=m+1|0;b=b-1|0;if(b){continue}break}}i=i+1|0;a=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}}break}j=F[g>>2]}if(j){oa(j)}e=a^1;break a}sa();V()}ba=g+16|0;return e&1}function ed(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;a=0;g=ba-16|0;ba=g;k=F[b+80>>2];b=D[c+24|0];e=L(k,b);a:{b:{f=F[c+28>>2];if(!(!G[c+84|0]|((f|0)!=6?(f|0)!=5:0))){f=F[c+48>>2];h=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;b=0;c=e<<2;if(c){if((c|0)<=-1){break b}i=pa(c);a=qa(i,f+h|0,c);b=a+c|0;a=a+(c>>2<<2)|0}c=F[d>>2];if(c){F[d+4>>2]=c;oa(c)}F[d+8>>2]=a;F[d+4>>2]=b;F[d>>2]=i;e=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<=-1){break b}f=b<<2;j=pa(f);F[g>>2]=j;h=f+j|0;F[g+8>>2]=h;ra(j,0,f);F[g+4>>2]=h}h=F[d>>2];f=F[d+4>>2]-h>>2;c:{if(f>>>0>>0){Ca(d,e-f|0);break c}if(e>>>0>=f>>>0){break c}F[d+4>>2]=h+(e<<2)}d:{if(!k){break d}a=1;if((b|0)<1){e=0;while(1){if(!Eb(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],j)){break d}e=e+1|0;a=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}break}break d}f=b&-4;h=b&3;p=b-1>>>0<3;while(1){if(Eb(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],j)){o=F[d>>2];e=0;l=F[g>>2];a=f;if(!p){while(1){b=(m<<2)+o|0;n=e<<2;F[b>>2]=F[n+l>>2];F[b+4>>2]=F[(n|4)+l>>2];F[b+8>>2]=F[(n|8)+l>>2];F[b+12>>2]=F[(n|12)+l>>2];e=e+4|0;m=m+4|0;a=a-4|0;if(a){continue}break}}b=h;if(b){while(1){F[(m<<2)+o>>2]=F[(e<<2)+l>>2];e=e+1|0;m=m+1|0;b=b-1|0;if(b){continue}break}}i=i+1|0;a=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}}break}j=F[g>>2]}if(j){oa(j)}e=a^1;break a}sa();V()}ba=g+16|0;return e&1}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,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a=0;g=ba-16|0;ba=g;k=F[b+80>>2];b=D[c+24|0];e=L(k,b);a:{b:{f=F[c+28>>2];if(!(!G[c+84|0]|((f|0)!=4?(f|0)!=3:0))){f=F[c+48>>2];h=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;b=0;c=e<<1;if(c){if((c|0)<=-1){break b}i=pa(c);a=qa(i,f+h|0,c);b=a+c|0;a=a+(c>>1<<1)|0}c=F[d>>2];if(c){F[d+4>>2]=c;oa(c)}F[d+8>>2]=a;F[d+4>>2]=b;F[d>>2]=i;e=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<=-1){break b}f=b<<1;j=pa(f);F[g>>2]=j;h=f+j|0;F[g+8>>2]=h;ra(j,0,f);F[g+4>>2]=h}h=F[d>>2];f=F[d+4>>2]-h>>1;c:{if(f>>>0>>0){md(d,e-f|0);break c}if(e>>>0>=f>>>0){break c}F[d+4>>2]=h+(e<<1)}d:{if(!k){break d}a=1;if((b|0)<1){e=0;while(1){if(!Gb(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],j)){break d}e=e+1|0;a=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}break}break d}f=b&-4;h=b&3;p=b-1>>>0<3;while(1){if(Gb(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],j)){o=F[d>>2];e=0;l=F[g>>2];a=f;if(!p){while(1){b=(m<<1)+o|0;n=e<<1;E[b>>1]=H[n+l>>1];E[b+2>>1]=H[(n|2)+l>>1];E[b+4>>1]=H[(n|4)+l>>1];E[b+6>>1]=H[(n|6)+l>>1];e=e+4|0;m=m+4|0;a=a-4|0;if(a){continue}break}}b=h;if(b){while(1){E[(m<<1)+o>>1]=H[(e<<1)+l>>1];e=e+1|0;m=m+1|0;b=b-1|0;if(b){continue}break}}i=i+1|0;a=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}}break}j=F[g>>2]}if(j){oa(j)}e=a^1;break a}sa();V()}ba=g+16|0;return e&1}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,m=0,n=0,o=0,p=0;a=0;g=ba-16|0;ba=g;k=F[b+80>>2];b=D[c+24|0];e=L(k,b);a:{b:{f=F[c+28>>2];if(!(!G[c+84|0]|((f|0)!=4?(f|0)!=3:0))){f=F[c+48>>2];h=F[F[c>>2]>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;b=0;c=e<<1;if(c){if((c|0)<=-1){break b}i=pa(c);a=qa(i,f+h|0,c);b=a+c|0;a=a+(c>>1<<1)|0}c=F[d>>2];if(c){F[d+4>>2]=c;oa(c)}F[d+8>>2]=a;F[d+4>>2]=b;F[d>>2]=i;e=1;break a}F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<=-1){break b}f=b<<1;j=pa(f);F[g>>2]=j;h=f+j|0;F[g+8>>2]=h;ra(j,0,f);F[g+4>>2]=h}h=F[d>>2];f=F[d+4>>2]-h>>1;c:{if(f>>>0>>0){md(d,e-f|0);break c}if(e>>>0>=f>>>0){break c}F[d+4>>2]=h+(e<<1)}d:{if(!k){break d}a=1;if((b|0)<1){e=0;while(1){if(!Fb(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],j)){break d}e=e+1|0;a=k>>>0>e>>>0;if((e|0)!=(k|0)){continue}break}break d}f=b&-4;h=b&3;p=b-1>>>0<3;while(1){if(Fb(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],j)){o=F[d>>2];e=0;l=F[g>>2];a=f;if(!p){while(1){b=(m<<1)+o|0;n=e<<1;E[b>>1]=H[n+l>>1];E[b+2>>1]=H[(n|2)+l>>1];E[b+4>>1]=H[(n|4)+l>>1];E[b+6>>1]=H[(n|6)+l>>1];e=e+4|0;m=m+4|0;a=a-4|0;if(a){continue}break}}b=h;if(b){while(1){E[(m<<1)+o>>1]=H[(e<<1)+l>>1];e=e+1|0;m=m+1|0;b=b-1|0;if(b){continue}break}}i=i+1|0;a=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}}break}j=F[g>>2]}if(j){oa(j)}e=a^1;break a}sa();V()}ba=g+16|0;return e&1}function td(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;F[a>>2]=8392;e=a+232|0;b=F[e+196>>2];if(b){F[e+200>>2]=b;oa(b)}d=F[e+184>>2];if(d){b=F[e+188>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b-12|0;f=F[c>>2];if(f){F[b-8>>2]=f;oa(f)}b=c;if((d|0)!=(b|0)){continue}break}c=F[e+184>>2]}F[e+188>>2]=d;oa(c)}b=F[e+156>>2];if(b){F[e+160>>2]=b;oa(b)}d=F[e+136>>2];F[e+136>>2]=0;if(d){c=d-4|0;b=F[c>>2];if(b){b=d+(b<<4)|0;while(1){b=b-16|0;if((d|0)!=(b|0)){continue}break}}oa(c)}d=F[a+216>>2];if(d){b=F[a+220>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=F[b-12>>2];if(c){F[b-8>>2]=c;oa(c)}c=F[b-28>>2];if(c){F[b-24>>2]=c;oa(c)}c=F[b-40>>2];if(c){F[b-36>>2]=c;oa(c)}qb(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}c=F[a+216>>2]}F[a+220>>2]=d;oa(c)}b=F[a+196>>2];if(b){F[a+200>>2]=b;oa(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;oa(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;oa(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;oa(b)}b=F[a+144>>2];if(b){while(1){d=F[b>>2];oa(b);b=d;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){oa(b)}b=F[a+120>>2];if(b){oa(b)}b=F[a+108>>2];if(b){oa(b)}b=F[a+96>>2];if(b){oa(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;oa(b)}b=F[a+60>>2];if(b){oa(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;oa(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;oa(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;oa(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){Va(b)}return a|0}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,m=0;k=ba-16|0;ba=k;c=F[b+20>>2];g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;e=d;d=c;f=F[b+12>>2];a:{if((c|0)>(f|0)?1:(c|0)>=(f|0)?e>>>0>I[b+8>>2]:0){break a}c=g+F[b>>2]|0;g=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((g|0)<0){break a}kb(a+76|0,g);c=k;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(!Oa(c,b)){break b}if((g|0)>0){e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^j;i=f|F[d>>2];c:{if(!(e&1)){break c}i=F[d>>2]&(f^-1)}f=i;e=e^1;F[d>>2]=f;h=h+1|0;if((g|0)!=(h|0)){continue}break}}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;j=F[b+16>>2];f=j+4|0;c=f>>>0<4?c+1|0:c;l=F[b+8>>2];i=f;f=c;if((c|0)>(d|0)?1:(c|0)>=(d|0)?l>>>0>>0:0){break b}m=F[b>>2];c=m+j|0;d=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=f;c=e;e=j+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if((c|0)>(g|0)?1:(c|0)>=(g|0)?f>>>0>l>>>0:0){break b}c=i+m|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=d;d=(c>>31)-((b>>>0>c>>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d){break b}h=1;b=b+1|0;F[a+20>>2]=b;c=(b|0)/2|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break b}F[a+24>>2]=c-1}}ba=k+16|0;return h|0}function kc(a,b){var c=0,d=0,e=0,f=0,g=0;g=-1;e=-1;a:{if((b|0)==-1){break a}e=b+1|0;g=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break a}e=b+2|0}b:{c:{d:{switch(F[a+168>>2]){case 0:case 1:d=F[a+148>>2];f=1;c=F[a+156>>2];b=c+(((g|0)!=-1?F[F[d>>2]+(g<<2)>>2]:-1)<<2)|0;F[b>>2]=F[b>>2]+1;b=c-4|0;if((e|0)==-1){break c}b=c+(F[F[d>>2]+(e<<2)>>2]<<2)|0;break c;case 5:d=F[a+148>>2];f=-1;c=F[a+156>>2];b=c+(((b|0)!=-1?F[F[d>>2]+(b<<2)>>2]:f)<<2)|0;F[b>>2]=F[b>>2]+1;b=(g|0)==-1?c-4|0:c+(F[F[d>>2]+(g<<2)>>2]<<2)|0;F[b>>2]=F[b>>2]+1;if((e|0)==-1){f=2;b=c-4|0;break c}f=2;b=c+(F[F[d>>2]+(e<<2)>>2]<<2)|0;break c;case 3:d=F[a+148>>2];f=-1;c=F[a+156>>2];b=c+(((b|0)!=-1?F[F[d>>2]+(b<<2)>>2]:f)<<2)|0;F[b>>2]=F[b>>2]+1;b=(g|0)==-1?c-4|0:c+(F[F[d>>2]+(g<<2)>>2]<<2)|0;F[b>>2]=F[b>>2]+2;if((e|0)==-1){f=1;b=c-4|0;break c}f=1;b=c+(F[F[d>>2]+(e<<2)>>2]<<2)|0;break c;case 7:break d;default:break b}}d=F[a+148>>2];f=-1;c=F[a+156>>2];b=c+(((b|0)!=-1?F[F[d>>2]+(b<<2)>>2]:f)<<2)|0;F[b>>2]=F[b>>2]+2;f=2;b=(g|0)==-1?c-4|0:c+(F[F[d>>2]+(g<<2)>>2]<<2)|0;F[b>>2]=F[b>>2]+2;b=c-4|0;if((e|0)==-1){break c}b=c+(F[F[d>>2]+(e<<2)>>2]<<2)|0}F[b>>2]=F[b>>2]+f}d=-1;c=F[a+176>>2];e=c;b=a;d=F[F[b+156>>2]+(((g|0)!=-1?F[F[F[b+148>>2]>>2]+(g<<2)>>2]:d)<<2)>>2];if((d|0)>=(c|0)){a=F[a+180>>2];e=(a|0)<(d|0)?a:d}F[b+172>>2]=e-c}function pd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=pa(b<<2);c=F[a>>2];F[a>>2]=d;if(c){oa(c)}F[a+4>>2]=b;d=b>>>0>1?b:1;f=d&3;c=0;if(d-1>>>0>=3){d=d&-4;while(1){e=c<<2;F[e+F[a>>2]>>2]=0;F[F[a>>2]+(e|4)>>2]=0;F[F[a>>2]+(e|8)>>2]=0;F[F[a>>2]+(e|12)>>2]=0;c=c+4|0;d=d-4|0;if(d){continue}break}}if(f){while(1){F[F[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}d=F[a+8>>2];if(!d){break b}c=a+8|0;g=F[d+4>>2];e=ki(b);c:{if(e>>>0<=1){g=b-1&g;break c}if(b>>>0>g>>>0){break c}g=(g>>>0)%(b>>>0)|0}F[F[a>>2]+(g<<2)>>2]=c;c=F[d>>2];if(!c){break b}if(e>>>0<=1){h=b-1|0;while(1){b=h&F[c+4>>2];d:{if((b|0)==(g|0)){d=c;break d}e=c;f=b<<2;i=f+F[a>>2]|0;if(F[i>>2]){while(1){b=e;e=F[b>>2];if(F[c+8>>2]==F[e+8>>2]?e:0){continue}break}F[d>>2]=e;F[b>>2]=F[F[f+F[a>>2]>>2]>>2];F[F[f+F[a>>2]>>2]>>2]=c;break d}F[i>>2]=d;d=c;g=b}c=F[d>>2];if(c){continue}break}break b}while(1){f=F[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|0)){d=c;break e}e=c;h=f<<2;i=h+F[a>>2]|0;if(!F[i>>2]){F[i>>2]=d;d=c;g=f;break e}while(1){f=e;e=F[e>>2];if(F[c+8>>2]==F[e+8>>2]?e:0){continue}break}F[d>>2]=e;F[f>>2]=F[F[h+F[a>>2]>>2]>>2];F[F[h+F[a>>2]>>2]>>2]=c}c=F[d>>2];if(c){continue}break}break b}b=F[a>>2];F[a>>2]=0;if(b){oa(b)}F[a+4>>2]=0}return}ta(8944);V()}function Ye(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=ba-16|0;ba=h;d=F[c>>2];F[c>>2]=0;F[h+8>>2]=d;Pc(a,b,h+8|0);c=F[h+8>>2];F[h+8>>2]=0;if(c){ya(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){f=b-d|0;e=F[a+92>>2];c=F[a+88>>2];if(f>>>0<=e-c>>2>>>0){b:{if(!f){break b}b=c;d=(f<<2)-4|0;e=(d>>>2|0)+1&7;if(e){while(1){F[b>>2]=1;b=b+4|0;e=e-1|0;if(e){continue}break}}c=(f<<2)+c|0;if(d>>>0<28){break b}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 a}c:{i=F[a+84>>2];j=c-i|0;d=j>>2;b=d+f|0;if(b>>>0<1073741824){e=e-i|0;g=e>>1;g=e>>2>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;c=0;d:{if(!g){break d}if(g>>>0>=1073741824){break c}c=pa(g<<2)}d=c+(d<<2)|0;b=d;f=f<<2;k=f-4|0;e=(k>>>2|0)+1&7;if(e){b=d;while(1){F[b>>2]=1;b=b+4|0;e=e-1|0;if(e){continue}break}}d=d+f|0;if(k>>>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((d|0)!=(b|0)){continue}break}}if((j|0)>=1){qa(c,i,j)}F[a+92>>2]=(g<<2)+c;F[a+88>>2]=d;F[a+84>>2]=c;if(i){oa(i)}break a}sa();V()}ta(10868);V()}if(b>>>0>=d>>>0){break a}F[a+88>>2]=c+(b<<2)}ba=h+16|0}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:{b=F[a+32>>2];f=F[b+16>>2];h=F[b+12>>2];d=F[b+20>>2];e=0;b:{if((d|0)>(h|0)?1:(h|0)<=(d|0)?I[b+8>>2]<=f>>>0:0){break b}g=G[f+F[b>>2]|0];e=f+1|0;d=e>>>0<1?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;c:{if(!g){break c}while(1){if(da[F[F[a>>2]+16>>2]](a,c)|0){c=c+1|0;if((g|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(!(da[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(!g){break d}c=0;while(1){b=F[F[a+8>>2]+(c<<2)>>2];if(!(da[F[F[b>>2]+12>>2]](b,F[a+32>>2])|0)){break a}c=c+1|0;if((g|0)!=(c|0)){continue}break}if(!g){break d}h=a+20|0;while(1){c=0;e=i<<2;b=F[e+F[a+8>>2]>>2];d=da[F[F[b>>2]+24>>2]](b)|0;if((d|0)>0){while(1){b=F[F[a+8>>2]+e>>2];k=da[F[F[b>>2]+20>>2]](b,c)|0;j=F[a+20>>2];f=F[a+24>>2]-j>>2;e:{if(k>>>0>>0){break e}b=k+1|0;if(b>>>0>f>>>0){Ca(h,b-f|0);j=F[h>>2];break e}if(b>>>0>=f>>>0){break e}F[a+24>>2]=(b<<2)+j}F[(k<<2)+j>>2]=i;c=c+1|0;if((d|0)!=(c|0)){continue}break}}i=i+1|0;if((g|0)!=(i|0)){continue}break}}e=0;if(!(da[F[F[a>>2]+28>>2]](a)|0)){break b}e=da[F[F[a>>2]+32>>2]](a)|0}return e|0}return 0}function Yb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=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}j=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;i=i-1|0;if(i){continue}break}}if(j>>>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;oa(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=pa(d);F[a>>2]=e;F[a+8>>2]=d+e;c=F[c>>2];d=e;b=b<<2;g=b-4|0;f=(g>>>2|0)+1&7;if(f){while(1){F[d>>2]=c;d=d+4|0;f=f-1|0;if(f){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}sa();V()}function qa(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){Z(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|0)<1){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 vb(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}f=b<<2;d=e;g=(b<<2)-4|0;b=(g>>>2|0)+1&7;if(b){while(1){F[d>>2]=F[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}e=e+f|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];j=e-g|0;i=j>>2;d=i+b|0;if(d>>>0<1073741824){f=f-g|0;h=f>>1;h=f>>2>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;e=0;c:{if(!h){break c}if(h>>>0>=1073741824){break b}e=pa(h<<2)}f=e+(i<<2)|0;d=f;i=b<<2;k=i-4|0;b=(k>>>2|0)+1&7;if(b){d=f;while(1){F[d>>2]=F[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}b=f+i|0;if(k>>>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((j|0)>=1){qa(e,g,j)}F[a+8>>2]=e+(h<<2);F[a+4>>2]=b;F[a>>2]=e;if(g){oa(g)}return}sa();V()}ta(1660);V()}function Ha(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}f=b<<2;d=e;g=(b<<2)-4|0;b=(g>>>2|0)+1&7;if(b){while(1){F[d>>2]=F[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}e=e+f|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];j=e-g|0;i=j>>2;d=i+b|0;if(d>>>0<1073741824){f=f-g|0;h=f>>1;h=f>>2>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;e=0;c:{if(!h){break c}if(h>>>0>=1073741824){break b}e=pa(h<<2)}f=e+(i<<2)|0;d=f;i=b<<2;k=i-4|0;b=(k>>>2|0)+1&7;if(b){d=f;while(1){F[d>>2]=F[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}b=f+i|0;if(k>>>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((j|0)>=1){qa(e,g,j)}F[a+8>>2]=e+(h<<2);F[a+4>>2]=b;F[a>>2]=e;if(g){oa(g)}return}sa();V()}ta(1496);V()}function $c(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=F[a+8>>2];d=F[a+4>>2];if(e-d>>2>>>0>=b>>>0){a:{if(!b){break a}e=b<<2;c=d;f=(b<<2)-4|0;b=(f>>>2|0)+1&7;if(b){while(1){F[c>>2]=F[2686];c=c+4|0;b=b-1|0;if(b){continue}break}}d=d+e|0;if(f>>>0<28){break a}while(1){F[c>>2]=F[2686];F[c+4>>2]=F[2686];F[c+8>>2]=F[2686];F[c+12>>2]=F[2686];F[c+16>>2]=F[2686];F[c+20>>2]=F[2686];F[c+24>>2]=F[2686];F[c+28>>2]=F[2686];c=c+32|0;if((d|0)!=(c|0)){continue}break}}F[a+4>>2]=d;return}b:{f=F[a>>2];i=d-f|0;h=i>>2;c=h+b|0;if(c>>>0<1073741824){e=e-f|0;g=e>>1;g=e>>2>>>0<536870911?c>>>0>g>>>0?c:g:1073741823;d=0;c:{if(!g){break c}if(g>>>0>=1073741824){break b}d=pa(g<<2)}e=d+(h<<2)|0;c=e;h=b<<2;j=h-4|0;b=(j>>>2|0)+1&7;if(b){c=e;while(1){F[c>>2]=F[2686];c=c+4|0;b=b-1|0;if(b){continue}break}}b=e+h|0;if(j>>>0>=28){while(1){F[c>>2]=F[2686];F[c+4>>2]=F[2686];F[c+8>>2]=F[2686];F[c+12>>2]=F[2686];F[c+16>>2]=F[2686];F[c+20>>2]=F[2686];F[c+24>>2]=F[2686];F[c+28>>2]=F[2686];c=c+32|0;if((b|0)!=(c|0)){continue}break}}if((i|0)>=1){qa(d,f,i)}F[a+8>>2]=d+(g<<2);F[a+4>>2]=b;F[a>>2]=d;if(f){oa(f)}return}sa();V()}ta(10748);V()}function ji(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;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{f=b;if(f){e=c;if(!e){break k}g=d;if(!d){break j}e=O(g)-O(f)|0;if(e>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(c>>>0)|0;ca=0;break a}e=d;if(!a){break h}if(!e){break g}if(e-1&e){break g}a=f>>>mi(e)|0;ca=0;break a}if(!(e-1&e)){break f}f=(O(e)+33|0)-O(f)|0;h=0-f|0;break d}f=e+1|0;h=63-e|0;break d}a=(f>>>0)/(e>>>0)|0;ca=0;break a}e=O(e)-O(f)|0;if(e>>>0<31){break e}break c}if((e|0)==1){break b}d=mi(e);c=d&31;if((d&63)>>>0>=32){g=0;a=b>>>c|0}else{g=b>>>c|0;a=((1<>>c}ca=g;break a}f=e+1|0;h=63-e|0}e=b;g=f&63;i=g&31;if(g>>>0>=32){g=0;i=e>>>i|0}else{g=e>>>i|0;i=((1<>>i}h=h&63;e=h&31;if(h>>>0>=32){b=a<>>32-e|b<>>31;k=j;g=g<<1|i>>>31;j=h-(g+(e>>>0>>0)|0)|0;l=j>>31;m=c&l;i=k-m|0;g=g-((j>>31&d)+(k>>>0>>0)|0)|0;b=b<<1|a>>>31;a=n|a<<1;j=l&1;n=j;f=f-1|0;if(f){continue}break}}ca=b<<1|a>>>31;a=j|a<<1;break a}a=0;b=0}ca=b}return a}function ud(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=8340;d=F[a+368>>2];F[a+368>>2]=0;if(d){c=d-4|0;b=F[c>>2];if(b){b=(b<<4)+d|0;while(1){b=b-16|0;if((d|0)!=(b|0)){continue}break}}oa(c)}d=F[a+216>>2];if(d){c=d;b=F[a+220>>2];e=c;a:{if((c|0)==(b|0)){break a}while(1){c=F[b-12>>2];if(c){F[b-8>>2]=c;oa(c)}c=F[b-28>>2];if(c){F[b-24>>2]=c;oa(c)}c=F[b-40>>2];if(c){F[b-36>>2]=c;oa(c)}qb(b-140|0);c=b-144|0;b=c;if((b|0)!=(d|0)){continue}break}e=F[a+216>>2]}c=e;F[a+220>>2]=d;oa(c)}b=F[a+196>>2];if(b){F[a+200>>2]=b;oa(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;oa(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;oa(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;oa(b)}b=F[a+144>>2];if(b){while(1){d=F[b>>2];oa(b);b=d;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){oa(b)}b=F[a+120>>2];if(b){oa(b)}b=F[a+108>>2];if(b){oa(b)}b=F[a+96>>2];if(b){oa(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;oa(b)}b=F[a+60>>2];if(b){oa(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;oa(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;oa(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;oa(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){Va(b)}return a|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;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);e=a+8|0;d=D[b+24|0];f=F[a+8>>2];g=F[a+12>>2]-f>>2;a:{if(d>>>0>g>>>0){pc(e,d-g|0);d=D[b+24|0];break a}if(d>>>0>=g>>>0){break a}F[a+12>>2]=f+(d<<2)}j=1;g=F[c+8>>2];b:{if((d|0)<1){b=4;break b}f=d&3;e=F[e>>2];c:{if(d-1>>>0<3){b=4;d=0;break c}i=d&-4;d=0;b=4;while(1){h=d<<2;c=b+g|0;J[h+e>>2]=(z(2,G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24)),A());J[e+(h|4)>>2]=(z(2,G[c+4|0]|G[c+5|0]<<8|(G[c+6|0]<<16|G[c+7|0]<<24)),A());J[e+(h|8)>>2]=(z(2,G[c+8|0]|G[c+9|0]<<8|(G[c+10|0]<<16|G[c+11|0]<<24)),A());J[e+(h|12)>>2]=(z(2,G[c+12|0]|G[c+13|0]<<8|(G[c+14|0]<<16|G[c+15|0]<<24)),A());d=d+4|0;b=b+16|0;i=i-4|0;if(i){continue}break}}if(!f){break b}while(1){c=b+g|0;J[e+(d<<2)>>2]=(z(2,G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24)),A());d=d+1|0;b=b+4|0;f=f-1|0;if(f){continue}break}}c=a;a=b+g|0;J[c+20>>2]=(z(2,G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)),A())}return j|0}function rb(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];if((d|0)==(e|0)){e=F[c+4>>2];if(!(!e|G[e+12|0])){break b}c:{if(F[d>>2]==(b|0)){b=d;break c}b=F[d+4>>2];e=F[b>>2];F[d+4>>2]=e;a=b;if(e){F[e+8>>2]=d;c=F[d+8>>2]}F[a+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;F[c+8>>2]=a;return}if(!(G[e+12|0]|!e)){break b}d:{if(F[d>>2]!=(b|0)){b=d;break d}e=F[b+4>>2];F[d>>2]=e;a=b;if(e){F[e+8>>2]=d;c=F[d+8>>2]}F[a+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;F[c+8>>2]=a;break a}D[d+12|0]=1;D[c+12|0]=(a|0)==(c|0);D[e+12|0]=1;b=c;if((b|0)!=(a|0)){continue}break}}}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;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}i=h;f=m>>31;n=f+m^f;g=R(k*l+.5);c:{if(N(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;i=i-(n+(f+b^b)|0)|0;b=(i|0)<0?0:i;e=e?0-b|0:b;f=f+(i>>31&((f|0)>0?i:0-i|0))|0;d:{if((m|0)>=0){b=f+h|0;e=e+h|0;break d}b=(f|0)>=0?F[a+8>>2]-b|0:b;if((e|0)<=-1){e=f>>31;e=e+f^e;break d}e=f>>31;e=F[a+8>>2]-(e+f^e)|0}e:{if(!(b|e)){e=F[a+8>>2];a=e;break e}f=F[a+8>>2];f:{g:{h:{i:{if(!b){if((e|0)==(f|0)){a=e;break e}a=0;if(e|f){break i}e=0;break e}if((b|0)!=(f|0)|e){break h}e=b;a=b;break e}if((e|0)>(h|0)){e=(h<<1)-e|0;break e}if(f){break f}break g}if((b|0)!=(f|0)){break f}}f=b;if((e|0)>=(h|0)){break f}e=(h<<1)-e|0;a=b;break e}if(!((e|0)!=(f|0)|(b|0)>=(h|0))){a=(h<<1)-b|0;break e}if(e){a=b;break e}e=0;if((b|0)<=(h|0)){a=b;break e}a=(h<<1)-b|0}F[c>>2]=a;F[d>>2]=e}function Vb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=a;e=F[a+4>>2];a:{if(G[a+11|0]>>>7|0){break a}e=G[d+11|0]}if(e>>>0>>0){i=ba-16|0;ba=i;h=b-e|0;if(h){e=G[d+11|0]>>>7|0?(F[d+8>>2]&2147483647)-1|0:10;if(G[d+11|0]>>>7|0){b=F[a+4>>2]}else{b=G[a+11|0]}j=b+h|0;if(e-b>>>0>>0){b:{g=ba-16|0;ba=g;c=j-e|0;if(c>>>0<=-17-e>>>0){if(G[a+11|0]>>>7|0){d=F[a>>2]}else{d=a}c:{if(e>>>0<2147483623){F[g+8>>2]=e<<1;F[g+12>>2]=c+e;c=ba-16|0;ba=c;ba=c+16|0;c=g+8|0;f=g+12|0;c=F[(I[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=pa(f);if(b){xb(c,d,b)}if((e|0)!=10){oa(d)}F[a>>2]=c;F[a+8>>2]=f|-2147483648;ba=g+16|0;break b}Ba();V()}}d=b;if(G[a+11|0]>>>7|0){b=F[a>>2]}else{b=a}d=d+b|0;if(h){ra(d,0,h)}d:{if(G[a+11|0]>>>7|0){F[a+4>>2]=j;break d}D[a+11|0]=j}D[i+15|0]=0;D[b+j|0]=G[i+15|0]}ba=i+16|0;return}a=ba-16|0;ba=a;e:{if(G[d+11|0]>>>7|0){e=F[d>>2];D[a+15|0]=0;D[b+e|0]=G[a+15|0];F[d+4>>2]=b;break e}D[a+14|0]=0;D[b+d|0]=G[a+14|0];D[d+11|0]=b}ba=a+16|0}function La(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];f=F[F[a+12>>2]+4>>2];d=F[f+4>>2];a:{if((d|0)!=F[f+8>>2]){F[d>>2]=g;F[f+4>>2]=d+4;break a}b:{h=F[f>>2];i=d-h|0;j=i>>2;e=j+1|0;if(e>>>0<1073741824){d=i>>1;e=j>>>0<536870911?d>>>0>>0?e:d:1073741823;d=0;c:{if(!e){break c}if(e>>>0>=1073741824){break b}d=pa(e<<2)}j=d+(j<<2)|0;F[j>>2]=g;if((i|0)>=1){qa(d,h,i)}F[f+8>>2]=d+(e<<2);F[f+4>>2]=j+4;F[f>>2]=d;if(h){oa(h)}break a}sa();V()}ta(8944);V()}f=F[a+4>>2];d=F[f+4>>2];d:{e:{f:{if((d|0)!=F[f+8>>2]){F[d>>2]=c;F[f+4>>2]=d+4;break f}h=F[f>>2];i=d-h|0;g=i>>2;e=g+1|0;if(e>>>0>=1073741824){break e}j=i>>1;e=g>>>0<536870911?e>>>0>j>>>0?e:j:1073741823;d=0;g:{if(!e){break g}if(e>>>0>=1073741824){break d}d=pa(e<<2)}g=d+(g<<2)|0;F[g>>2]=c;if((i|0)>=1){qa(d,h,i)}F[f+8>>2]=d+(e<<2);F[f+4>>2]=g+4;F[f>>2]=d;if(!h){break f}oa(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}sa();V()}ta(8944);V()}function Id(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=M(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=ba-16|0;ba=m;if(F[c+28>>2]==9){g=F[a+4>>2];h=D[c+24|0];e=h<<2;f=pa((h&1073741823)!=(h|0)?-1:e);n=m+8|0;F[n>>2]=1065353216;j=n;k=J[a+20>>2];g=-1<=1){J[j>>2]=k/M(g|0)}p=(g|0)>0;a:{if(!p){break a}l=F[c+80>>2];if(!l){break a}if((h|0)<=0){if((l|0)!=1){b=l&-2;while(1){qa(F[F[c+64>>2]>>2]+d|0,f,e);a=d+e|0;qa(a+F[F[c+64>>2]>>2]|0,f,e);d=a+e|0;b=b-2|0;if(b){continue}break}}if(!(l&1)){break a}qa(F[F[c+64>>2]>>2]+d|0,f,e);break a}q=F[F[b>>2]>>2]+F[b+48>>2]|0;g=h&-2;u=h&1;while(1){o=F[a+8>>2];k=J[n>>2];b=0;j=g;if((h|0)!=1){while(1){i=b<<2;r=(d<<2)+q|0;J[i+f>>2]=M(k*M(F[r>>2]))+J[i+o>>2];i=i|4;J[i+f>>2]=M(k*M(F[r+4>>2]))+J[i+o>>2];b=b+2|0;d=d+2|0;j=j-2|0;if(j){continue}break}}if(u){b=b<<2;J[b+f>>2]=M(k*M(F[(d<<2)+q>>2]))+J[b+o>>2];d=d+1|0}qa(F[F[c+64>>2]>>2]+s|0,f,e);s=e+s|0;t=t+1|0;if((t|0)!=(l|0)){continue}break}}oa(f)}ba=m+16|0;return p|0}function _f(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;h=F[d+80>>2];e=ba-48|0;ba=e;a=F[a+4>>2];a:{if(a-2>>>0>28){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);f=F[c>>2];if((f|0)!=F[c+4>>2]){a=0;d=0;while(1){g=F[(d<<2)+f>>2];h=e+36|0;l=F[F[b>>2]>>2];m=F[b+48>>2];f=F[b+44>>2];k=F[b+40>>2];j=k;if(!G[b+84|0]){g=F[F[b+68>>2]+(g<<2)>>2]}g=hi(j,f,g,0)+m|0;qa(h,g+l|0,k);Kc(e+16|0,e+36|0,e+12|0,e+8|0);f=a<<2;F[f+i>>2]=F[e+12>>2];F[(f|4)+i>>2]=F[e+8>>2];g=1;a=a+2|0;d=d+1|0;f=F[c>>2];if(d>>>0>2]-f>>2>>>0){continue}break}break a}if(!h){g=1;break a}d=0;a=0;while(1){c=F[F[b>>2]>>2];j=F[b+40>>2];f=F[b+48>>2]+hi(j,F[b+44>>2],G[b+84|0]?a:F[F[b+68>>2]+(a<<2)>>2],0)|0;qa(e+36|0,c+f|0,j);Kc(e+16|0,e+36|0,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;g=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}ba=e+48|0;return g|0}function wb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((a|0)!=(b|0)){if(G[b+11|0]>>>7|0){h=F[b>>2]}else{h=b}i=h;j=ba-16|0;ba=j;if(G[b+11|0]>>>7|0){d=F[b+4>>2]}else{d=G[b+11|0]}e=G[a+11|0]>>>7|0?(F[a+8>>2]&2147483647)-1|0:10;a:{if(d>>>0<=e>>>0){if(G[a+11|0]>>>7|0){b=F[a>>2]}else{b=a}e=b;if(d){Ma(e,i,d)}D[j+15|0]=0;D[b+d|0]=G[j+15|0];b:{if(G[a+11|0]>>>7|0){F[a+4>>2]=d;break b}D[a+11|0]=d}break a}if(G[a+11|0]>>>7|0){h=F[a+4>>2]}else{h=G[a+11|0]}k=h;f=ba-16|0;ba=f;c:{c=d-e|0;if(c>>>0<=(e^-1)-17>>>0){if(G[a+11|0]>>>7|0){b=F[a>>2]}else{b=a}d:{if(e>>>0<2147483623){F[f+8>>2]=e<<1;F[f+12>>2]=c+e;c=ba-16|0;ba=c;ba=c+16|0;c=f+8|0;g=f+12|0;c=F[(I[g>>2]>2]?c:g)>>2];if(c>>>0>=11){g=c+16&-16;c=g-1|0;c=(c|0)==11?g:c}else{c=10}break d}c=-18}g=c+1|0;c=pa(g);if(d){xb(c,i,d)}i=k-h|0;if(i){xb(c+d|0,b+h|0,i)}if((e|0)!=10){oa(b)}F[a>>2]=c;F[a+8>>2]=g|-2147483648;b=a;a=d+i|0;F[b+4>>2]=a;D[f+7|0]=0;D[a+c|0]=G[f+7|0];ba=f+16|0;break c}Ba();V()}}ba=j+16|0}}function Ac(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;i=F[a+8>>2];c=D[i+24|0];e=c<<2;f=pa((c|0)!=(c&1073741823)?-1:e);h=F[a+16>>2];d=0;a:{if(!F[h+80>>2]){break a}d=F[F[h>>2]>>2]+F[h+48>>2]|0}h=d;b:{if(!b){break b}if((c|0)>=1){i=c&-4;n=c&3;o=c-1>>>0<3;while(1){c=0;d=i;if(!o){while(1){j=c<<2;k=(g<<2)+h|0;F[j+f>>2]=F[k>>2];F[(j|4)+f>>2]=F[k+4>>2];F[(j|8)+f>>2]=F[k+8>>2];F[(j|12)+f>>2]=F[k+12>>2];c=c+4|0;g=g+4|0;d=d-4|0;if(d){continue}break}}d=n;if(d){while(1){F[(c<<2)+f>>2]=F[(g<<2)+h>>2];c=c+1|0;g=g+1|0;d=d-1|0;if(d){continue}break}}qa(F[F[F[a+8>>2]+64>>2]>>2]+l|0,f,e);l=e+l|0;m=m+1|0;if((m|0)!=(b|0)){continue}break}break b}qa(F[F[i+64>>2]>>2],f,e);if((b|0)==1){break b}d=b-1|0;h=d&1;c=0;c:{if((b|0)==2){break c}g=d&-2;c=e;while(1){qa(F[F[F[a+8>>2]+64>>2]>>2]+c|0,f,e);c=c+e|0;qa(c+F[F[F[a+8>>2]+64>>2]>>2]|0,f,e);g=g-2|0;if(!g){break c}c=c+e|0;continue}}if(!h){break b}qa(F[F[F[a+8>>2]+64>>2]>>2]+(c+e|0)|0,f,e)}oa(f)}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,n=0,o=0;i=F[a+8>>2];c=D[i+24|0];d=c+c|0;f=pa(c>>>0>d>>>0?-1:d);e=F[a+16>>2];h=0;a:{if(!F[e+80>>2]){break a}h=F[F[e>>2]>>2]+F[e+48>>2]|0}b:{if(!b){break b}e=c<<1;if((c|0)>=1){i=c&-4;n=c&3;o=c-1>>>0<3;while(1){c=0;d=i;if(!o){while(1){j=c<<1;k=(g<<2)+h|0;E[j+f>>1]=F[k>>2];E[(j|2)+f>>1]=F[k+4>>2];E[(j|4)+f>>1]=F[k+8>>2];E[(j|6)+f>>1]=F[k+12>>2];c=c+4|0;g=g+4|0;d=d-4|0;if(d){continue}break}}d=n;if(d){while(1){E[(c<<1)+f>>1]=F[(g<<2)+h>>2];c=c+1|0;g=g+1|0;d=d-1|0;if(d){continue}break}}qa(F[F[F[a+8>>2]+64>>2]>>2]+l|0,f,e);l=e+l|0;m=m+1|0;if((m|0)!=(b|0)){continue}break}break b}qa(F[F[i+64>>2]>>2],f,e);if((b|0)==1){break b}d=b-1|0;h=d&1;c=0;c:{if((b|0)==2){break c}g=d&-2;c=e;while(1){qa(F[F[F[a+8>>2]+64>>2]>>2]+c|0,f,e);c=c+e|0;qa(c+F[F[F[a+8>>2]+64>>2]>>2]|0,f,e);g=g-2|0;if(!g){break c}c=c+e|0;continue}}if(!h){break b}qa(F[F[F[a+8>>2]+64>>2]>>2]+(c+e|0)|0,f,e)}oa(f)}function wd(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;f=F[a+12>>2];h=F[a+8>>2];d=f-h>>2;b=D[b+24|0];a:{if(d>>>0>>0){pc(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];g=F[c+16>>2];e=f-h|0;f=e;d=e;j=g+d|0;k=F[c+12>>2];i=d>>>0>j>>>0?i+1|0:i;b:{if((i|0)>(k|0)?1:(k|0)<=(i|0)?j>>>0>I[c+8>>2]:0){break b}qa(h,g+F[c>>2]|0,e);d=F[c+20>>2];g=f+F[c+16>>2]|0;d=g>>>0>>0?d+1|0:d;F[c+16>>2]=g;F[c+20>>2]=d;e=F[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>I[c+8>>2]: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);e=F[c+20>>2];f=e;j=F[c+16>>2];g=j+4|0;e=g>>>0<4?e+1|0:e;d=c;F[d+16>>2]=g;F[d+20>>2]=e;d=F[d+12>>2];if((d|0)<(e|0)?1:(e|0)>=(d|0)?g>>>0>=I[c+8>>2]:0){break b}e=G[g+F[c>>2]|0];d=f;f=j+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 Oa(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=ba-16|0;ba=g;f=F[b+16>>2];d=F[b+20>>2];c=F[b+12>>2];a:{if((c|0)<(d|0)?1:(d|0)>=(c|0)?f>>>0>=I[b+8>>2]:0){break a}D[a+12|0]=G[f+F[b>>2]|0];d=F[b+20>>2];c=F[b+16>>2]+1|0;d=c>>>0<1?d+1|0:d;F[b+16>>2]=c;F[b+20>>2]=d;if(!Td(1,g+12|0,b)){break a}e=F[g+12>>2];f=e;d=F[b+8>>2];i=F[b+16>>2];c=i;h=e>>>0>d-c>>>0;j=c>>>0>d>>>0;d=F[b+20>>2];c=F[b+12>>2]-(j+d|0)|0;if(((c|0)<0?1:(c|0)<=0?h:0)|(e|0)<1){break a}c=i+F[b>>2]|0;F[a>>2]=c;k=e-1|0;l=k+c|0;h=G[l|0]>>>6|0;if((h|0)==3){break a}j=a;b:{c:{switch(h-1|0){default:F[a+4>>2]=k;a=G[l|0]&63;break b;case 0:if((e|0)<2){break a}F[a+4>>2]=e-2;a=(c+e|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break b;case 1:break c}}if((e|0)<3){break a}F[a+4>>2]=e-3;a=(c+e|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0]}a=a+4096|0;F[j+8>>2]=a;if(a>>>0>1048575){break a}a=d;c=f+i|0;a=c>>>0>>0?a+1|0:a;F[b+16>>2]=c;F[b+20>>2]=a;m=1}ba=g+16|0;return m}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,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){vb(b+68|0,e-d|0,9252);c=F[a+108>>2];e=F[c+80>>2];break a}if(d>>>0<=e>>>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){c:{if((c|0)==1431655765){break c}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break c}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break c}j=F[F[a+112>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break c}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break c}i=F[f+4>>2];if(i>>>0>=e>>>0){break c}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break c}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break c}f=F[f+8>>2];if(f>>>0>=e>>>0){break c}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break c}F[h+(f<<2)>>2]=d;d=1;c=c+1|0;if((m|0)!=(c|0)){continue}break b}break}d=0}return d|0}function kb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=ba-16|0;ba=e;a:{c=F[a+4>>2];b:{if(c>>>0>>0){f=b-c|0;d=F[a+8>>2];g=d<<5;c:{if(!(f>>>0>g>>>0|c>>>0>g-f>>>0)){F[a+4>>2]=b;d=c&31;b=F[a>>2]+(c>>>3&536870908)|0;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if((b|0)<=-1){break a}c=e;if(g>>>0<=1073741822){g=b+31&-32;b=d<<6;b=b>>>0>>0?g:b}else{b=2147483647}Xa(c,b);d=F[a+4>>2];F[e+4>>2]=d+f;h=F[a>>2];b=F[e>>2];d:{if((d|0)<1){d=0;break d}c=d>>>5|0;g=c<<2;b=Ma(b,h,g)+g|0;d=d-(c<<5)|0;e:{if((d|0)<1){d=0;break e}c=-1>>>32-d|0;F[b>>2]=F[b>>2]&(c^-1)|c&F[g+h>>2]}h=F[a>>2]}F[a>>2]=F[e>>2];F[e>>2]=h;c=F[a+4>>2];F[a+4>>2]=F[e+4>>2];F[e+4>>2]=c;c=F[a+8>>2];F[a+8>>2]=F[e+8>>2];F[e+8>>2]=c;if(!h){break c}oa(h)}if(!f){break b}if(d){c=32-d|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=ra(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}ba=e+16|0;return}sa();V()}function Pg(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){vb(b+68|0,e-d|0,9252);c=F[a+68>>2];e=F[c+80>>2];break a}if(d>>>0<=e>>>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){c:{if((c|0)==1431655765){break c}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break c}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break c}j=F[F[a+72>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break c}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break c}i=F[f+4>>2];if(i>>>0>=e>>>0){break c}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break c}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break c}f=F[f+8>>2];if(f>>>0>=e>>>0){break c}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break c}F[h+(f<<2)>>2]=d;d=1;c=c+1|0;if((m|0)!=(c|0)){continue}break b}break}d=0}return d|0}function Xg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=ba-16|0;ba=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)<=-1){break a}f=F[b+4>>2];c=pa(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>=1){qa(c,d,e)}F[b+8>>2]=h;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}oa(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){Ha(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=sd(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>>>0)/3|0;if(a>>>0<1){break d}b=0;while(1){d=sd(e,L(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}ba=g+16|0;return d|0}ta(8944);V()}function Yc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=ba-16|0;ba=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){oa(c)}F[a+76>>2]=0;F[a+80>>2]=0;c=F[a+72>>2];F[a+72>>2]=0;if(c){oa(c)}c=F[b>>2];d=F[b+4>>2];D[g+15|0]=0;Ga(a,d-c>>2,g+15|0);c=F[b+28>>2];d=F[b+24>>2];D[g+14|0]=0;Ga(a+12|0,c-d>>2,g+14|0);Yb(a+28|0,F[b+4>>2]-F[b>>2]>>2,10936);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)<=-1){break b}f=F[a+56>>2];d=pa(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>=1){qa(d,c,e)}F[a+60>>2]=h;F[a+56>>2]=f;F[a+52>>2]=d;if(!c){break c}oa(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)<=-1){break a}f=F[a+44>>2];d=pa(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>=1){qa(d,c,e)}F[a+48>>2]=h;F[a+44>>2]=f;F[a+40>>2]=d;if(!c){break d}oa(c)}D[a+24|0]=1;F[a+64>>2]=b}ba=g+16|0;return}ta(10940);V()}ta(10940);V()}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;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){vb(b+68|0,e-d|0,9252);c=F[a+68>>2];e=F[c+80>>2];break a}if(d>>>0<=e>>>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){c:{d=(L(c,3)<<2)+m|0;g=F[d>>2];if((g|0)==-1){break c}h=L(c,12)+k|0;i=F[h>>2];if(i>>>0>=e>>>0){break c}f=g<<2;g=F[F[a+72>>2]+12>>2];f=F[f+g>>2];if(f>>>0>=e>>>0){break c}j=i<<2;i=F[b+68>>2];F[j+i>>2]=f;f=F[d+4>>2];if((f|0)==-1){break c}j=F[h+4>>2];if(j>>>0>=e>>>0){break c}f=F[g+(f<<2)>>2];if(f>>>0>=e>>>0){break c}F[i+(j<<2)>>2]=f;d=F[d+8>>2];if((d|0)==-1){break c}h=F[h+8>>2];if(h>>>0>=e>>>0){break c}d=F[g+(d<<2)>>2];if(d>>>0>=e>>>0){break c}F[i+(h<<2)>>2]=d;d=1;c=c+1|0;if((l|0)!=(c|0)){continue}break b}break}d=0}return d|0}function Dg(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:{g=F[a+8>>2];b:{if((g|0)<0){break b}e=F[a+4>>2];c=F[e>>2];f=F[e+4>>2]-c>>2;c:{if(f>>>0>>0){d:{c=g-f|0;h=F[e+8>>2];b=F[e+4>>2];if(c>>>0<=h-b>>2>>>0){if(c){d=b;b=c<<2;b=ra(d,0,b)+b|0}F[e+4>>2]=b;break d}e:{f=F[e>>2];i=b-f|0;j=i>>2;d=c+j|0;if(d>>>0<1073741824){b=0;h=h-f|0;k=h>>1;d=h>>2>>>0<536870911?d>>>0>k>>>0?d:k:1073741823;if(d){if(d>>>0>=1073741824){break e}b=pa(d<<2)}c=c<<2;c=ra((j<<2)+b|0,0,c)+c|0;if((i|0)>=1){qa(b,f,i)}F[e+8>>2]=(d<<2)+b;F[e+4>>2]=c;F[e>>2]=b;if(f){oa(f)}break d}sa();V()}ta(10088);V()}d=F[a+8>>2];break c}b=g;d=b;if(b>>>0>=f>>>0){break c}F[e+4>>2]=c+(g<<2);d=g}b=d;if((b|0)<1){break b}a=F[a+4>>2];e=F[a>>2];a=F[a+4>>2]-e|0;c=(a|0)>-1?a:-1;d=a;a=a>>31;c=L((c|0)<1?c:1,(d+a^a)>>>2|0);a=0;while(1){if((a|0)==(c|0)){break a}F[e+(a<<2)>>2]=a;a=a+1|0;if((b|0)!=(a|0)){continue}break}}return(g^-1)>>>31|0}va();V()}function Rd(a){var b=0,c=0,d=0,e=0;e=ba-16|0;ba=e;b=pa(32);F[e>>2]=b;F[e+4>>2]=26;F[e+8>>2]=-2147483616;D[b+26|0]=0;c=G[8009]|G[8010]<<8;D[b+24|0]=c;D[b+25|0]=c>>>8;d=G[8005]|G[8006]<<8|(G[8007]<<16|G[8008]<<24);c=G[8001]|G[8002]<<8|(G[8003]<<16|G[8004]<<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[7997]|G[7998]<<8|(G[7999]<<16|G[8e3]<<24);c=G[7993]|G[7994]<<8|(G[7995]<<16|G[7996]<<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[7989]|G[7990]<<8|(G[7991]<<16|G[7992]<<24);c=G[7985]|G[7986]<<8|(G[7987]<<16|G[7988]<<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;F[a>>2]=-1;ua(a+4|0,e);if(D[e+11|0]<=-1){oa(F[e>>2])}ba=e+16|0}function Ec(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-2>>>0>28){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(k*M(F[a>>2]))+M(-1));f=M(M(k*M(F[a+4>>2]))+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 mc(a,b){var c=0,d=0,e=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)){e=a;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){oa(d);F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;c=F[b+28>>2]}if((c|0)<=-1){break b}c=(c-1>>>5|0)+1|0;d=pa(c<<2);F[a+32>>2]=c;F[a+28>>2]=0;F[a+24>>2]=d;c=F[b+28>>2]}Ma(d,F[b+24>>2],(c-1>>>3&536870908)+4|0);c=F[b+28>>2]}else{c=0}F[e+28>>2]=c;e=a;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){oa(d);F[a+44>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;c=F[b+40>>2]}if((c|0)<=-1){break a}c=(c-1>>>5|0)+1|0;d=pa(c<<2);F[a+44>>2]=c;F[a+40>>2]=0;F[a+36>>2]=d;c=F[b+40>>2]}Ma(d,F[b+36>>2],(c-1>>>3&536870908)+4|0);a=F[b+40>>2]}else{a=0}F[e+40>>2]=a}return}sa();V()}sa();V()}function Pd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=ba-16|0;ba=g;a:{if(!Ra(1,g+8|0,b)){break a}c=F[b+8>>2];d=F[b+16>>2];h=c-d|0;f=F[g+12>>2];i=F[b+20>>2];e=F[b+12>>2]-(i+(c>>>0>>0)|0)|0;c=F[g+8>>2];if((f|0)==(e|0)&h>>>0>>0|e>>>0>>0){break a}f=f+i|0;e=c+d|0;F[b+16>>2]=e;F[b+20>>2]=d>>>0>e>>>0?f+1|0:f;if((c|0)<1){break a}d=d+F[b>>2]|0;F[a+40>>2]=d;b=a;b:{c:{d:{e:{f:{e=c-1|0;h=d+e|0;switch((G[h|0]>>>6|0)-1|0){case 2:break c;case 1:break d;case 0:break e;default:break f}}F[a+44>>2]=e;a=G[h|0]&63;break b}if((c|0)<2){break a}F[a+44>>2]=c-2;a=(c+d|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break b}if((c|0)<3){break a}F[a+44>>2]=c-3;a=(c+d|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break b}F[a+44>>2]=c-4;a=(c+d|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+16384|0;F[b+48>>2]=a;j=a>>>0<4194304}ba=g+16|0;return j}function ub(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=d-c|0;if((h|0)<1){return}a:{f=F[a+8>>2];i=F[a+4>>2];if((f-i|0)>=(h|0)){j=i-b|0;if((j|0)>=(h|0)){f=i;g=d;break a}f=i;g=c+j|0;if((g|0)!=(d|0)){e=g;while(1){D[f|0]=G[e|0];f=f+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=f;if((j|0)>=1){break a}return}g=F[a>>2];d=(i-g|0)+h|0;if((d|0)>-1){j=b-g|0;k=j;e=f-g|0;f=e<<1;e=e>>>0<1073741823?d>>>0>f>>>0?d:f:2147483647;d=0;b:{if(!e){break b}d=pa(e)}c=qa(k+d|0,c,h);if((j|0)>=1){qa(d,g,j)}c=c+h|0;f=i-b|0;if((f|0)>=1){c=qa(c,b,f)+f|0}F[a+8>>2]=d+e;F[a+4>>2]=c;F[a>>2]=d;if(g){oa(g)}return}sa();V()}e=f;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=f-(b+h|0)|0;if(a){Ma(f-a|0,b,a)}if((c|0)==(g|0)){return}e=b;while(1){D[e|0]=G[c|0];e=e+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}function Qe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=ba+-64|0;ba=e;d=1;a:{if(Na(a,b,0)){break a}d=0;if(!b){break a}d=ba+-64|0;ba=d;f=F[b>>2];g=F[f-4>>2];h=F[f-8>>2];F[d+20>>2]=0;F[d+16>>2]=12356;F[d+12>>2]=b;F[d+8>>2]=12404;f=0;ra(d+24|0,0,39);b=b+h|0;b:{if(Na(g,12404,0)){F[d+56>>2]=1;da[F[F[g>>2]+20>>2]](g,d+8|0,b,b,1,0);f=F[d+32>>2]==1?b:0;break b}da[F[F[g>>2]+24>>2]](g,d+8|0,b,1,0);c:{switch(F[d+44>>2]){case 0:f=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}}f=F[d+24>>2]}ba=d- -64|0;d=0;if(!f){break a}ra(e+8|4,0,52);F[e+56>>2]=1;F[e+20>>2]=-1;F[e+16>>2]=a;F[e+8>>2]=f;da[F[F[f>>2]+28>>2]](f,e+8|0,F[c>>2],1);a=F[e+32>>2];if((a|0)==1){F[c>>2]=F[e+24>>2]}d=(a|0)==1}ba=e- -64|0;return d|0}function yb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a>>2];c=e+(b>>>3&536870908)|0;F[c>>2]=F[c>>2]|1<>2];f=(b|0)==-1;c=-1;a:{if(f){break a}d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;c=-1;if((d|0)==-1){break a}c=F[F[g>>2]+(d<<2)>>2]}d=F[a+12>>2];h=(c>>>3&536870908)+d|0;F[h>>2]=F[h>>2]|1<>>0)%3|0?-1:2)+b|0;if((f|0)!=-1){c=F[F[g>>2]+(f<<2)>>2]}f=d+(c>>>3&536870908)|0;F[f>>2]=F[f>>2]|1<>2]+(b<<2)>>2];if((b|0)==-1){break b}D[a+24|0]=0;a=e+(b>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>>0)%3|0?e:b-2|0;if((e|0)!=-1){c=F[F[g>>2]+(e<<2)>>2]}e=d+(c>>>3&536870908)|0;F[e>>2]=F[e>>2]|1<>>0)%3|0?-1:2)|0;if((b|0)!=-1){a=F[F[g>>2]+(b<<2)>>2]}b=d+(a>>>3&536870908)|0;a=F[b>>2]|1<>2]|-2147483648}F[b>>2]=a}}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:{a=ba-32|0;ba=a;e=Aa(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=pa(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}}qa(f,c,e)}D[e+f|0]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d:{c=bb(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){Ca(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];qa(e,b,F[c+32>>2]-b|0);break d}va();V()}b=F[d>>2];if(b){F[d+4>>2]=b;oa(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]<=-1){oa(F[a+16>>2])}ba=a+32|0;break a}Ba();V()}}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;d=ba-16|0;ba=d;a:{e=Aa(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=pa(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}}qa(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=wa(j,g,i);h:{if(!h){if(a>>>0>=c>>>0){break h}break e}if((h|0)<=-1){break e}}c=wa(g,j,i);if(!c){break g}if((c|0)<=-1){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)<=-1){oa(f)}ba=d+16|0;break a}Ba();V()}return a|0}function eb(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=F[a+8>>2];a:{if(G[b+84|0]){break a}e=F[a+16>>2];if(!e|!G[e+84|0]){break a}d=F[b+72>>2];c=F[b+68>>2];D[e+84|0]=0;d=d-c>>2;f=F[e+68>>2];c=F[e+72>>2]-f>>2;b:{if(d>>>0>c>>>0){vb(e+68|0,d-c|0,1656);b=F[a+8>>2];break b}if(c>>>0<=d>>>0){break b}F[e+72>>2]=f+(d<<2)}if(G[b+84|0]){break a}e=F[b+68>>2];b=F[b+72>>2]-e|0;if(!b){break a}d=b>>31;c=(d+b^d)>>>2|0;b=(b|0)>-1?b:-1;b=L(c,(b|0)<1?b:1);c=b>>>0>1?b:1;f=c&3;d=F[F[a+16>>2]+68>>2];b=0;if(c-1>>>0>=3){h=c&-4;while(1){c=b<<2;F[c+d>>2]=F[c+e>>2];g=c|4;F[g+d>>2]=F[e+g>>2];g=c|8;F[g+d>>2]=F[e+g>>2];c=c|12;F[c+d>>2]=F[c+e>>2];b=b+4|0;h=h-4|0;if(h){continue}break}}if(!f){break a}while(1){c=b<<2;F[c+d>>2]=F[c+e>>2];b=b+1|0;f=f-1|0;if(f){continue}break}}return F[a+16>>2]}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=0,j=0,k=0,l=0,m=0;f=ba-16|0;ba=f;j=F[c+8>>2];g=F[c+16>>2];h=F[c+12>>2];d=h;e=F[c+20>>2];a:{if((d|0)<(e|0)?1:(d|0)<=(e|0)?j>>>0<=g>>>0:0){break a}k=F[c>>2];l=D[k+g|0];d=e;i=g+1|0;d=i>>>0<1?d+1|0:d;F[c+16>>2]=i;F[c+20>>2]=d;b:{if((l|0)==-2){break b}if((d|0)>(h|0)?1:(d|0)>=(h|0)?i>>>0>=j>>>0:0){break a}h=D[i+k|0];g=g+2|0;e=g>>>0<2?e+1|0:e;d=c;F[d+16>>2]=g;F[d+20>>2]=e;if((h+1&255)>>>0>4){break a}da[F[F[a>>2]+40>>2]](f+8|0,a,l,h);e=F[f+8>>2];F[f+8>>2]=0;d=F[a+20>>2];F[a+20>>2]=e;if(!d){break b}da[F[F[d>>2]+4>>2]](d);d=F[f+8>>2];F[f+8>>2]=0;if(!d){break b}da[F[F[d>>2]+4>>2]](d)}d=F[a+20>>2];if(d){if(!(da[F[F[a>>2]+28>>2]](a,d)|0)){break a}}m=da[F[F[a>>2]+36>>2]](a,b,c)|0}ba=f+16|0;return m|0}function Wc(a,b){var c=0,d=0,e=0,f=0;d=-1;a:{b:{if((b|0)==-1){f=-1;b=1;break b}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;d=F[(F[F[a>>2]+96>>2]+L(e,12)|0)+(c-L(e,3)<<2)>>2]}c:{if((f|0)==-1){c=(d|0)==-1;e=1;break c}e=((f>>>0)%3|0?-1:2)+f|0;c=(d|0)==-1;d:{if((e|0)<=-1){break d}c=(e>>>0)/3|0;c=F[(F[F[a>>2]+96>>2]+L(c,12)|0)+(e-L(c,3)<<2)>>2]==(d|0)}e=0}d=-1;if(!c){break a}d=-1;e:{b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)>=0){c=(b>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(c,12)|0)+(b-L(c,3)<<2)>>2];if(!e){break e}b=(d|0)==-1;break b}if(!e){break e}b=1;break b}c=f+1|0;c=(c>>>0)%3|0?c:f-2|0;b=(d|0)==-1;if((c|0)<=-1){break b}b=F[F[a>>2]+96>>2];a=(c>>>0)/3|0;b=F[(b+L(a,12)|0)+(c-L(a,3)<<2)>>2]==(d|0)}d=b?f:-1}return d}function sb(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}c=c+((c>>>0)%3|0?-1: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;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;c=-1;if((b|0)==-1){break g}b=F[F[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break g}c=b-1|0;if((b>>>0)%3|0){break g}c=b+2|0}F[a+8>>2]=c}}function Ma(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 qa(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 _d(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];g=d;c=F[b+20>>2];f=c;a:{h=F[b+16>>2];e=h+4|0;c=e>>>0<4?c+1|0:c;j=F[b+8>>2];i=e;e=c;if((c|0)>(d|0)?1:(c|0)>=(d|0)?j>>>0>>0:0){break a}k=F[b>>2];c=k+h|0;d=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=e;c=f;f=h+8|0;c=f>>>0<8?c+1|0:c;e=f;f=c;if((c|0)>(g|0)?1:(c|0)>=(g|0)?e>>>0>j>>>0:0){break a}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]=f;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;g=d;d=(c>>31)-((d>>31)+(d>>>0>c>>>0)|0)|0;c=c-g|0;if(!d&c>>>0>2147483646|d){break a}c=c+1|0;F[a+20>>2]=c;d=(c|0)/2|0;F[a+24>>2]=d;F[a+28>>2]=0-d;if(!(c&1)){F[a+24>>2]=d-1}return Oa(a+112|0,b)|0}return 0}function Uc(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=ba-16|0;ba=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=Tc(F[g>>2],b,d);a=G[d+11|0];j=a<<24>>24;k=3;b:{c:{d:{if(!e){break d}k=0;e=G[c+11|0];f=e<<24>>24;i=(j|0)<0?F[d+4>>2]:a;if((i|0)!=(((f|0)<0?F[c+4>>2]:e)|0)){break d}h=(f|0)<0?F[c>>2]:c;f=F[d>>2];e=(j|0)<0;e:{if(!e){if(!i){break e}e=d;if(G[h|0]!=(f&255)){break d}while(1){a=a-1|0;if(!a){break e}f=G[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==G[e|0]){continue}break}break d}if(!i){break e}if(wa(e?f:d,h,i)){break c}}m=F[g>>2];k=1}if((j|0)>-1){break b}}oa(F[d>>2])}f:{switch(k|0){case 0:case 3:break f;default:break a}}g=g+4|0;if((l|0)!=(g|0)){continue}break}}m=0}ba=d+16|0;return m}function Fd(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=ra(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=pa(e<<2)}d=(f<<2)+i|0;f=b<<2;b=ra(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){da[F[F[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}sa();V()}ta(8944);V()}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b}if(c){oa(c)}}function je(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;d=F[b+12>>2];i=d;c=F[b+20>>2];f=c;g=F[b+16>>2];e=g+4|0;c=e>>>0<4?c+1|0:c;j=F[b+8>>2];h=e;e=c;a:{if((c|0)>(d|0)?1:(c|0)>=(d|0)?j>>>0>>0:0){break a}k=F[b>>2];c=k+g|0;d=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=h;F[b+20>>2]=e;c=f;f=g+8|0;c=f>>>0<8?c+1|0:c;e=f;f=c;if((c|0)>(i|0)?1:(c|0)>=(i|0)?e>>>0>j>>>0:0){break a}c=h+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]=f;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=d;d=(c>>31)-((b>>>0>c>>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d){break a}l=1;b=b+1|0;F[a+20>>2]=b;c=(b|0)/2|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1}return l|0}function Ce(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;d=F[b>>2];e=F[b+4>>2];k=F[F[a+8>>2]+40>>2];h=k;l=pa((h|0)>-1?h:-1);f=1;g=e-d|0;a:{if((g|0)<1){break a}f=0;b=0+F[c+20>>2]|0;i=F[c+16>>2];e=k;d=i+e|0;j=d;b=d>>>0>>0?b+1|0:b;e=b;d=F[c+12>>2];if((b|0)>(d|0)?1:(b|0)>=(d|0)?j>>>0>I[c+8>>2]:0){break a}n=g>>2;b=L(g>>>2|0,(g|0)<1?g:1);g=(b|0)>1?b:1;b=1;while(1){b:{d=qa(l,i+F[c>>2]|0,h);F[c+16>>2]=j;F[c+20>>2]=e;qa(F[F[F[a+8>>2]+64>>2]>>2]+m|0,d,h);if((b|0)==(g|0)){break b}d=o+F[c+20>>2]|0;i=F[c+16>>2];e=k;f=i+e|0;j=f;d=e>>>0>f>>>0?d+1|0:d;e=d;f=F[c+12>>2];if((d|0)>(f|0)?1:(d|0)>=(f|0)?j>>>0>I[c+8>>2]:0){break b}m=h+m|0;b=b+1|0;continue}break}f=(b|0)>=(n|0)}oa(l);return f|0}function ra(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}f=a+c|0;D[f-1|0]=b;D[a|0]=b;if(c>>>0<3){break a}D[f-2|0]=b;D[a+1|0]=b;D[f-3|0]=b;D[a+2|0]=b;if(c>>>0<7){break a}D[f-4|0]=b;D[a+3|0]=b;if(c>>>0<9){break a}f=0-a&3;e=f+a|0;d=L(b&255,16843009);F[e>>2]=d;b=c-f&-4;c=b+e|0;F[c-4>>2]=d;if(b>>>0<9){break a}F[e+8>>2]=d;F[e+4>>2]=d;F[c-8>>2]=d;F[c-12>>2]=d;if(b>>>0<25){break a}F[e+24>>2]=d;F[e+20>>2]=d;F[e+16>>2]=d;F[e+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=e&4|24;c=c-b|0;if(c>>>0<32){break a}d=hi(d,0,1,1);f=ca;b=b+e|0;while(1){F[b+24>>2]=d;e=f;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 Jg(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)<=-1){break a}f=F[b+4>>2];c=pa(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>=1){qa(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}oa(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=qd(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>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){c=qd(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}ta(8944);V()}function Og(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)<=-1){break a}f=F[b+4>>2];c=pa(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>=1){qa(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}oa(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=rd(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>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){c=rd(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}ta(8944);V()}function te(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{switch(c|0){case 0:b=pa(20);F[b+12>>2]=-1;F[b+16>>2]=0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=1572;break a;case 1:b=pa(24);F[b+12>>2]=-1;F[b+16>>2]=0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=1572;F[b+20>>2]=0;F[b>>2]=1952;break a;case 2:b=pa(48);F[b+12>>2]=-1;F[b+16>>2]=0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=1572;F[b+20>>2]=0;F[b>>2]=1952;F[b+32>>2]=0;F[b+36>>2]=0;F[b+28>>2]=-1;F[b+24>>2]=1140;F[b>>2]=7764;F[b+40>>2]=0;F[b+44>>2]=0;break a;case 3:b=pa(32);F[b+12>>2]=-1;F[b+16>>2]=0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=1572;F[b+20>>2]=0;F[b>>2]=1952;F[b+28>>2]=-1;F[b+24>>2]=1032;F[b>>2]=5628;break a;default:break b}}F[a>>2]=0;return}F[a>>2]=b}function Hg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=ba-16|0;ba=f;d=pa(64);c=pa(12);F[c+8>>2]=F[F[a+4>>2]+80>>2];F[c>>2]=10164;F[c+4>>2]=0;F[f+8>>2]=c;g=Dc(d,f+8|0);a:{if((b|0)>=0){h=a+8|0;c=F[a+12>>2];i=F[a+8>>2];d=c-i>>2;b:{if((d|0)>(b|0)){break b}e=b+1|0;if(b>>>0>=d>>>0){Fd(h,e-d|0);break b}if(d>>>0<=e>>>0){break b}e=(e<<2)+i|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){da[F[F[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e}c=F[h>>2]+(b<<2)|0;a=F[c>>2];F[c>>2]=g;if(!a){break a}da[F[F[a>>2]+4>>2]](a);break a}da[F[F[d>>2]+4>>2]](g)}a=F[f+8>>2];F[f+8>>2]=0;if(a){da[F[F[a>>2]+4>>2]](a)}ba=f+16|0;return(b^-1)>>>31|0}function Ga(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=ba-16|0;ba=e;F[a+4>>2]=0;a:{b:{if(!b){break b}f=F[a+8>>2];d=f<<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)<=-1){break a}h=e;if(d>>>0<=1073741822){g=b+31&-32;d=f<<6;d=d>>>0>>0?g:d}else{d=2147483647}Xa(h,d);d=F[a>>2];F[a>>2]=F[e>>2];F[e>>2]=d;f=F[a+4>>2];F[a+4>>2]=b;F[e+4>>2]=f;f=F[a+8>>2];F[a+8>>2]=F[e+8>>2];F[e+8>>2]=f;if(!d){break c}oa(d)}d=b>>>5|0;f=d<<2;a=F[a>>2];if(G[c|0]){a=ra(a,255,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;F[a>>2]=F[a>>2]|-1>>>32-b;break b}a=ra(a,0,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;F[a>>2]=F[a>>2]&(-1>>>32-b^-1)}ba=e+16|0;return}sa();V()}function If(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=ba-32|0;ba=e;a:{b:{f=Aa(c);if(f>>>0<4294967280){c:{d:{if(f>>>0>=11){g=f+16&-16;a=pa(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}}qa(a,c,f)}D[a+f|0]=0;c=Aa(d);if(c>>>0>=4294967280){break b}e:{f:{if(c>>>0>=11){f=c+16&-16;a=pa(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}}qa(a,d,c)}D[a+c|0]=0;c=F[b+4>>2];a=-1;g:{if(!c){break g}c=Uc(c,e+16|0,e);a=-1;if(!c){break g}a=Qc(b,F[c+24>>2])}if(D[e+11|0]<=-1){oa(F[e>>2])}if(D[e+27|0]<=-1){oa(F[e+16>>2])}ba=e+32|0;break a}Ba();V()}Ba();V()}return a|0}function xh(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){Jb(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){Jb(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){Jb(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 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;f=ba-32|0;ba=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=ra(pa(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;Nb(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;Nb(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}}oa(h);ba=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=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)>=1){f=qa(f,d,b)+b|0}F[a+4>>2]=f;return}F[a+4>>2]=e;return}if(e){F[a+4>>2]=e;oa(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}a:{if((f|0)<=-1){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=pa(e);F[a>>2]=c;F[a+4>>2]=c;F[a+8>>2]=c+e;if((f|0)>=1){c=qa(c,b,f)+f|0}F[a+4>>2]=c;return}sa();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;c=F[b+12>>2];h=c;e=c;c=F[b+20>>2];f=c;a:{g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;i=F[b+8>>2];j=d;d=c;if((c|0)>(e|0)?1:(c|0)>=(e|0)?i>>>0>>0:0){break a}c=g+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]=j;F[b+20>>2]=d;c=f;d=g+8|0;c=d>>>0<8?c+1|0:c;f=d;d=c;if((c|0)>(h|0)?1:(c|0)>=(h|0)?f>>>0>i>>>0:0){break a}F[b+16>>2]=f;F[b+20>>2]=d;if(!(e&1)){break a}c=O(e)^31;if(c-1>>>0>28){break a}F[a+8>>2]=c+1;c=-2<>2]=d;F[a+12>>2]=c^-1;F[a+24>>2]=(d|0)/2;J[a+20>>2]=M(2)/M(d|0);return Oa(a+96|0,b)|0}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;c=F[b+12>>2];h=c;e=c;c=F[b+20>>2];f=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;i=F[b+8>>2];j=d;d=c;a:{if((c|0)>(e|0)?1:(c|0)>=(e|0)?i>>>0>>0:0){break a}c=g+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]=j;F[b+20>>2]=d;c=f;d=g+8|0;c=d>>>0<8?c+1|0:c;f=d;d=c;if((c|0)>(h|0)?1:(c|0)>=(h|0)?f>>>0>i>>>0:0){break a}F[b+16>>2]=f;F[b+20>>2]=d;if(!(e&1)){break a}b=O(e)^31;if(b-1>>>0>28){break a}k=1;F[a+8>>2]=b+1;b=-2<>2]=c;F[a+12>>2]=b^-1;F[a+24>>2]=(c|0)/2;J[a+20>>2]=M(2)/M(c|0)}return k|0}function Sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a=ba-32|0;ba=a;F[a+24>>2]=0;F[a+28>>2]=0;a:{d=Aa(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=pa(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}}qa(e,c,d)}D[d+e|0]=0;c=b+4|0;b=bb(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]<=-1){oa(F[a+8>>2])}ba=a+32|0;break a}Ba();V()}return+g}function yd(a){var b=0,c=0,d=0,e=0,f=0;f=1;c=F[a+140>>2];a:{if((c|0)<1){break a}b=c<<4;d=pa((c|0)!=(c&268435455)?-1:b|4);F[d>>2]=c;d=d+4|0;c=d+b|0;b=d;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((c|0)!=(b|0)){continue}break}e=F[a+136>>2];F[a+136>>2]=d;if(e){c=e-4|0;d=F[c>>2];if(d){b=(d<<4)+e|0;while(1){b=b-16|0;if((e|0)!=(b|0)){continue}break}}oa(c)}b=0;if(F[a+140>>2]<=0){break a}while(1){f=Oa(F[a+136>>2]+(b<<4)|0,a);if(!f){break a}b=b+1|0;if((b|0)>2]){continue}break}}return f} +function bc(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(F[a+64>>2]){break a}c=pa(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;oa(c)}oa(d)}e=F[a+64>>2];c=F[a+28>>2]-1|0;b:{if(c>>>0<=10){d=F[(c<<2)+10596>>2];break b}d=-1}c=L(d,D[a+24|0]);d=c;g=c>>31;e=od(e,0,hi(c,g,b,0),ca);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,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=wa(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>-1){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=wa(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>-1){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 cc(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 bb(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=wa(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=wa(i,f?F[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>-1){break a}}c=g}return c}function Me(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Na(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(Na(a,F[b>>2],e)){if(!(F[b+20>>2]!=(c|0)?F[b+16>>2]!=(c|0):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];da[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];da[F[F[a>>2]+24>>2]](a,b,c,d,e)}}function pb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=F[a+4>>2];if((d|0)!=F[a+8>>2]){c=F[b+4>>2];F[d>>2]=F[b>>2];F[d+4>>2]=c;F[d+8>>2]=F[b+8>>2];F[a+4>>2]=d+12;return}a:{f=F[a>>2];g=d-f|0;c=(g|0)/12|0;e=c+1|0;if(e>>>0<357913942){h=c<<1;e=c>>>0<178956970?e>>>0>h>>>0?e:h:357913941;d=0;b:{if(!e){break b}if(e>>>0>=357913942){break a}d=pa(L(e,12))}c=d+L(c,12)|0;h=F[b+4>>2];F[c>>2]=F[b>>2];F[c+4>>2]=h;F[c+8>>2]=F[b+8>>2];b=c+L((g|0)/-12|0,12)|0;if((g|0)>=1){qa(b,f,g)}F[a+8>>2]=d+L(e,12);F[a+4>>2]=c+12;F[a>>2]=b;if(f){oa(f)}return}sa();V()}ta(10088);V()}function _c(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);Yb(a,d,10740);Yb(a+12|0,d,10744);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=pa(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>=1){qa(c,d,e)}F[a+32>>2]=f;F[a+28>>2]=g;F[a+24>>2]=c;if(!d){break c}oa(d)}F[a+80>>2]=0;F[a+84>>2]=0;c=F[a+76>>2];F[a+76>>2]=0;if(c){oa(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}oa(a)}a=b>>>0<1431655766}else{a=0}return a}ta(10748);V()}function ye(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(!(da[F[F[c>>2]+12>>2]](c)|0)){break a}b:{c=da[F[F[a>>2]+24>>2]](a)|0;if((c|0)<=0){break b}while(1){c:{f=F[(da[F[F[a>>2]+28>>2]](a)|0)+4>>2];g=da[F[F[a>>2]+20>>2]](a,d)|0;e=F[a+60>>2];if(!(da[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(!(da[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(da[F[F[a>>2]+40>>2]](a,b)|0)){break a}d=da[F[F[a>>2]+44>>2]](a)|0}return d|0}function Ld(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((da[F[F[c>>2]+24>>2]](c)|0)<=0){break a}while(1){if((da[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((da[F[F[c>>2]+24>>2]](c)|0)>(d|0)){continue}break a}break}a=F[a+216>>2]+L(e,144)|0;return(G[a+100|0]?a+4|0:0)|0}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}return 0}function Xa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=ba-16|0;ba=d;a:{b:{if(F[a+8>>2]<<5>>>0>=b>>>0){break b}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if((b|0)<=-1){break a}g=(b-1>>>5|0)+1|0;b=pa(g<<2);F[d+8>>2]=g;F[d>>2]=b;f=F[a>>2];c=F[a+4>>2];F[d+4>>2]=c;F[(c>>>0<33?b:b+(c-1>>>3&536870908)|0)>>2]=0;c:{if((c|0)<1){break c}h=c>>>5|0;e=h<<2;i=Ma(b,f,e);c=c-(h<<5)|0;if((c|0)<1){break c}e=e+i|0;c=-1>>>32-c|0;F[e>>2]=F[e>>2]&(c^-1)|c&F[(h<<2)+f>>2]}F[a+8>>2]=g;F[a>>2]=b;if(!f){break b}oa(f)}ba=d+16|0;return}sa();V()}function zf(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;e=ba-32|0;ba=e;f=D[b+24|0];g=F[2667];F[e+24>>2]=F[2666];F[e+28>>2]=g;g=F[2665];F[e+16>>2]=F[2664];F[e+20>>2]=g;a:{b:{g=ob(b,c,f,e+16|0);if(g){F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;b=0;c=0;if(f){if((f|0)<=-1){break b}b=f<<2;c=pa(b);F[e>>2]=c;a=(f<<2)+c|0;F[e+8>>2]=a;qa(c,e+16|0,b);F[e+4>>2]=a;b=a}f=d;h=F[f>>2];if(h){F[d+4>>2]=h;oa(h);b=F[e+4>>2];c=F[e>>2];a=F[e+8>>2]}F[f+8>>2]=a;F[d+4>>2]=b;F[d>>2]=c}ba=e+32|0;break a}sa();V()}return g|0}function Kd(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((da[F[F[c>>2]+24>>2]](c)|0)<=0){break a}while(1){if((da[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((da[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 Jf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a=ba-32|0;ba=a;a:{d=Aa(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=pa(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}}qa(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=Uc(d,a,a+16|0);c=-1;if(!d){break d}c=Qc(b,F[d+24>>2])}b=c;if(D[a+11|0]<=-1){oa(F[a>>2])}if(D[a+27|0]<=-1){oa(F[a+16>>2])}ba=a+32|0;break a}Ba();V()}return b|0}function De(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if((da[F[F[b>>2]+20>>2]](b)|0)<=0){return 1}a:{while(1){d=Rc(F[F[a+4>>2]+4>>2],da[F[F[b>>2]+24>>2]](b,e)|0);if((d|0)==-1){break a}f=F[a+4>>2];c=0;b:{if((d|0)<0){break b}g=F[f+4>>2];if((d|0)>=F[g+12>>2]-F[g+8>>2]>>2){break b}c=F[F[f+8>>2]+(F[F[f+20>>2]+(d<<2)>>2]<<2)>>2];c=da[F[F[c>>2]+32>>2]](c,d)|0}if(!c){break a}if(!(da[F[F[b>>2]+28>>2]](b,c)|0)){break a}e=e+1|0;if((da[F[F[b>>2]+20>>2]](b)|0)>(e|0)){continue}break}return 1}return 0}function Uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=ba-16|0;ba=d;F[d+12>>2]=0;a:{e=Aa(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=pa(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}}qa(a,c,e)}D[a+e|0]=0;a=bb(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]<=-1){oa(F[d>>2])}ba=d+16|0;break a}Ba();V()}return a|0}function zb(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11224;b=F[a+68>>2];if(b){F[a+72>>2]=b;oa(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;oa(b)}b=F[a+44>>2];if(b){F[a+48>>2]=b;oa(b)}b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}b=F[a+20>>2];if(b){F[a+24>>2]=b;oa(b)}d=F[a+8>>2];if(d){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ya(b)}if((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;oa(b)}b=F[a+4>>2];F[a+4>>2]=0;if(b){ic(b)}return a|0}function ua(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=ba-16|0;ba=f;a:{if(!(G[b+11|0]>>>7|0)){F[a+8>>2]=F[b+8>>2];c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;break a}g=F[b>>2];e=ba-16|0;ba=e;b:{c=F[b+4>>2];if(c>>>0<=4294967279){c:{if(c>>>0<=10){D[a+11|0]=c;b=a;break c}h=a;if(c>>>0>=11){b=c+16&-16;d=b-1|0;b=(d|0)==11?b:d}else{b=10}d=b+1|0;b=pa(d);F[h>>2]=b;F[a+8>>2]=d|-2147483648;F[a+4>>2]=c}xb(b,g,c);D[e+15|0]=0;D[b+c|0]=G[e+15|0];ba=e+16|0;break b}Ba();V()}}ba=f+16|0;return a}function Ta(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;a=g>>2;d=a+1|0;if(d>>>0<1073741824){h=a<<2;c=c-f|0;a=c>>1;d=c>>2>>>0<536870911?a>>>0>>0?d:a:1073741823;a=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}a=pa(d<<2)}c=h+a|0;F[c>>2]=F[b>>2];if((g|0)>=1){qa(a,f,g)}F[e+8>>2]=a+(d<<2);F[e+4>>2]=c+4;F[e>>2]=a;if(f){oa(f)}return}sa();V()}ta(10672);V()}function Lf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=ba+-64|0;ba=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;Sd(f+48|0,a,e,d);F[a+24>>2]=F[f+48>>2];wb(a+28|0,f+48|4);if(D[f+63|0]<=-1){oa(F[f+52>>2])}ba=f- -64|0;return a+24|0}function za(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=ra(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=pa(d<<2)}b=b<<2;b=ra((h<<2)+c|0,0,b)+b|0;if((g|0)>=1){qa(c,f,g)}F[a+8>>2]=(d<<2)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){oa(f)}return}sa();V()}ta(7888);V()}function pc(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=ra(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=pa(d<<2)}b=b<<2;b=ra((h<<2)+c|0,0,b)+b|0;if((g|0)>=1){qa(c,f,g)}F[a+8>>2]=(d<<2)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){oa(f)}return}sa();V()}ta(1244);V()}function Ca(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=ra(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=pa(d<<2)}b=b<<2;b=ra((h<<2)+c|0,0,b)+b|0;if((g|0)>=1){qa(c,f,g)}F[a+8>>2]=(d<<2)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){oa(f)}return}sa();V()}ta(1496);V()}function db(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=ra(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=pa(d<<3)}b=b<<3;b=ra((h<<3)+c|0,0,b)+b|0;if((g|0)>=1){qa(c,f,g)}F[a+8>>2]=(d<<3)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){oa(f)}return}sa();V()}ta(8058);V()}function se(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=1736;b=F[a+60>>2];F[a+60>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}d=F[a+36>>2];if(d){b=d;c=F[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=F[a+36>>2]}b=e;F[a+40>>2]=d;oa(b)}F[a>>2]=1360;b=F[a+16>>2];if(b){F[a+20>>2]=b;oa(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;oa(b)}return a|0}function re(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=1736;b=F[a+60>>2];F[a+60>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}d=F[a+36>>2];if(d){b=d;c=F[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=F[a+36>>2]}b=e;F[a+40>>2]=d;oa(b)}F[a>>2]=1360;b=F[a+16>>2];if(b){F[a+20>>2]=b;oa(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;oa(b)}oa(a)}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=ra(c,0,g)+g|0}F[a+4>>2]=c;return}if((b|0)<=-1){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=pa(d)}ra(c+f|0,0,g);if((f|0)>=1){qa(c,e,f)}F[a+8>>2]=c+d;F[a+4>>2]=b+c;F[a>>2]=c;if(!e){break b}oa(e);return}if(b>>>0>=f>>>0){break b}F[a+4>>2]=b+e}return}sa();V()}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=ba+-64|0;ba=d;E[d+46>>1]=0;F[d+8>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+24>>2]=0;F[d+28>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;D[d+37|0]=0;D[d+38|0]=0;D[d+39|0]=0;D[d+40|0]=0;D[d+41|0]=0;D[d+42|0]=0;D[d+43|0]=0;D[d+44|0]=0;F[d+24>>2]=0;F[d+28>>2]=0;F[d+8>>2]=b;F[d+16>>2]=c;F[d+20>>2]=0;Rd(d+48|0);F[a+24>>2]=F[d+48>>2];wb(a+28|0,d+48|4);if(D[d+63|0]<=-1){oa(F[d+52>>2])}ba=d- -64|0;return a+24|0}function jh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=ba-16|0;ba=d;e=F[a+4>>2];a:{if((e|0)==-1){break a}c=F[b+20>>2];if((c|0)>0?1:(c|0)>=0?F[b+16>>2]:0){break a}ub(b,F[b+4>>2],F[a+8>>2],F[a+12>>2]);c=F[b+20>>2];if((c|0)>0?1:(c|0)>=0?I[b+16>>2]>=1:0){break a}c=a+20|0;ub(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((c|0)>0?1:(c|0)>=0?f:0){break a}ub(b,F[b+4>>2],d+15|0,d+16|0)}ba=d+16|0;return(e|0)!=-1|0} +function md(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=ra(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)>-1){c=0;e=e-f|0;d=e>>1>>>0<1073741823?d>>>0>e>>>0?d:e:2147483647;if(d){if((d|0)<=-1){break a}c=pa(d<<1)}b=b<<1;b=ra((h<<1)+c|0,0,b)+b|0;if((g|0)>=1){qa(c,f,g)}F[a+8>>2]=(d<<1)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){oa(f)}return}sa();V()}ta(10672);V()}function Zb(a,b,c){var d=0,e=0,f=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;a:{b:{if(!b){break b}if((b|0)<=-1){break a}e=b-1>>>5|0;f=e+1|0;d=pa(f<<2);F[a+8>>2]=f;F[a>>2]=d;f=G[c|0];F[a+4>>2]=b;F[(b>>>0<33?d:d+(e<<2)|0)>>2]=0;c=b>>>5|0;e=c<<2;if(f){d=ra(d,255,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;F[c>>2]=F[c>>2]|-1>>>32-b;return a}d=ra(d,0,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;F[c>>2]=F[c>>2]&(-1>>>32-b^-1)}return a}sa();V()}function Ua(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[2095];F[a+4>>2]=b+4;return}a:{e=F[a>>2];f=b-e|0;d=f>>2;c=d+1|0;if(c>>>0<1073741824){b=f>>1;c=d>>>0<536870911?b>>>0>>0?c:b:1073741823;b=0;b:{if(!c){break b}if(c>>>0>=1073741824){break a}b=pa(c<<2)}d=b+(d<<2)|0;F[d>>2]=F[2095];if((f|0)>=1){qa(b,e,f)}F[a+8>>2]=b+(c<<2);F[a+4>>2]=d+4;F[a>>2]=b;if(e){oa(e)}return}sa();V()}ta(8944);V()}function Rf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ba-16|0;ba=d;a:{e=Aa(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=pa(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}}qa(f,c,e)}D[e+f|0]=0;a=a+16|0;c=0;d:{if(!Tc(b,d,a)){break d}c=F[a>>2];if(D[a+11|0]<=-1){break d}c=a}if(D[d+11|0]<=-1){oa(F[d>>2])}ba=d+16|0;break a}Ba();V()}return c|0}function nd(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>10){break a}e=F[c+16>>2];d=F[c+20>>2];f=F[c+12>>2];if((f|0)<(d|0)?1:(d|0)>=(f|0)?e>>>0>=I[c+8>>2]:0){break a}g=D[e+F[c>>2]|0];e=e+1|0;d=e>>>0<1?d+1|0:d;F[c+16>>2]=e;F[c+20>>2]=d;f=b;e=b;d=g;b:{if((d|0)<=-1){if(!nd(a+1|0,b,c)){break a}a=F[b+4>>2];b=F[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}F[e>>2]=b;F[f+4>>2]=a;h=1}return h}function Ra(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>10){break a}e=F[c+16>>2];d=F[c+20>>2];f=F[c+12>>2];if((f|0)<(d|0)?1:(d|0)>=(f|0)?e>>>0>=I[c+8>>2]:0){break a}g=D[e+F[c>>2]|0];e=e+1|0;d=e>>>0<1?d+1|0:d;F[c+16>>2]=e;F[c+20>>2]=d;f=b;e=b;d=g;b:{if((d|0)<=-1){if(!Ra(a+1|0,b,c)){break a}a=F[b+4>>2];b=F[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}F[e>>2]=b;F[f+4>>2]=a;h=1}return h}function Lb(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){Ca(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=pa(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>=1){qa(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break c}oa(c)}return}ta(8944);V()}function ph(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=8232;b=F[a+48>>2];F[a+48>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}F[a>>2]=10228;b=F[a+20>>2];if(b){F[a+24>>2]=b;oa(b)}d=F[a+8>>2];if(d){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;oa(b)}return a|0}function oh(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=8232;b=F[a+48>>2];F[a+48>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}F[a>>2]=10228;b=F[a+20>>2];if(b){F[a+24>>2]=b;oa(b)}d=F[a+8>>2];if(d){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;oa(b)}oa(a)}function wg(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;e=ba+-64|0;ba=e;f=da[F[F[b>>2]+44>>2]](b,c)|0;b=da[F[F[b>>2]+40>>2]](b,c)|0;g=nb(e);h=g;i=F[c+56>>2];j=f<<24>>24;c=b;b=b-1|0;a:{if(b>>>0<=10){b=F[(b<<2)+10596>>2];break a}b=-1}b=L(b,f);ec(h,i,j,c,0,b,b>>31);c=pa(96);b=cc(c,g);F[a>>2]=c;bc(b,d);D[b+84|0]=1;F[b+72>>2]=F[b+68>>2];ba=e- -64|0}function Le(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Na(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(!Na(a,F[b>>2],e)){break a}if(!(F[b+20>>2]!=(c|0)?F[b+16>>2]!=(c|0):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 Bf(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 Ic(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];if(!c){F[a+36>>2]=1;F[a+24>>2]=d;F[a+16>>2]=b;if((d|0)!=1|F[a+48>>2]!=1){break a}D[a+54|0]=1;return}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|(c|0)!=1){break a}D[a+54|0]=1;return}D[a+54|0]=1;F[a+36>>2]=F[a+36>>2]+1}}function Hd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ba-16|0;ba=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;Ga(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;Ga(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;ba=d+16|0}function we(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=da[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<1){break a}d=F[F[a+36>>2]>>2];f=a+48|0;c=0;if(!(da[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(da[F[F[g>>2]+16>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function ve(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=da[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<1){break a}d=F[F[a+36>>2]>>2];f=a+48|0;c=0;if(!(da[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(da[F[F[g>>2]+20>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function Zc(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 ah(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ba-16|0;ba=d;F[a+4>>2]=b;e=F[b>>2];b=F[b+4>>2];D[d+15|0]=0;Ga(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;Ga(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;ba=d+16|0}function Bd(a,b){var c=0,d=0,e=0,f=0,g=0;F[a+144>>2]=b;c=F[(da[F[F[b>>2]+32>>2]](b)|0)+32>>2];e=F[c>>2]+F[c+16>>2]|0;d=F[(da[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[(da[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 lb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!lb(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function gb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!gb(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function cb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!cb(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function ad(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 _b(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!_b(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function Wa(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!Wa(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function Td(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!Td(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function Fa(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=F[c+16>>2];d=F[c+20>>2];e=F[c+12>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>=I[c+8>>2]:0){break a}e=G[f+F[c>>2]|0];f=f+1|0;d=f>>>0<1?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;d=b;if(e&128){if(!Fa(a+1|0,b,c)){break a}e=e&127|F[b>>2]<<7}F[d>>2]=e;g=1}return g}function ic(a){var b=0,c=0,d=0,e=0;if(a){d=F[a+24>>2];if(d){b=d;c=F[a+28>>2];e=b;a:{if((c|0)==(b|0)){break a}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){Ea(b+12|0,F[b+16>>2]);Da(b,F[b+4>>2]);oa(b)}if((c|0)!=(d|0)){continue}break}e=F[a+24>>2]}b=e;F[a+28>>2]=d;oa(b)}Ea(a+12|0,F[a+16>>2]);Da(a,F[a+4>>2]);oa(a)}}function Gf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:{b:{a=F[b+12>>2];b=F[b+8>>2];a=a-b|0;if(a){d=a>>31;d=(d+a^d)>>>2|0;a=(a|0)>-1?a:-1;a=L(d,(a|0)<1?a:1);d=a>>>0>1?a:1;a=0;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 vh(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=10228;b=F[a+20>>2];if(b){F[a+24>>2]=b;oa(b)}d=F[a+8>>2];if(d){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;oa(b)}return a|0}function Af(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 Gg(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=10228;b=F[a+20>>2];if(b){F[a+24>>2]=b;oa(b)}d=F[a+8>>2];if(d){b=d;c=F[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=F[a+8>>2]}b=e;F[a+12>>2]=d;oa(b)}oa(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((d|0)<(f|0)?1:(f|0)>=(d|0)?h>>>0>e>>>0:0){b=G[e+F[c>>2]|0];i=e+1|0;f=i>>>0<1?d+1|0:d;F[c+16>>2]=i;F[c+20>>2]=f;F[a+4>>2]=b}return((d|0)<(g|0)?1:(d|0)<=(g|0)?e>>>0>>0:0)|0}function Ef(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 _g(a){a=a|0;var b=0;F[a+8>>2]=9264;F[a>>2]=9052;b=F[a+96>>2];if(b){F[a+100>>2]=b;oa(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;oa(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;oa(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;oa(b)}F[a+8>>2]=9500;b=F[a+44>>2];if(b){oa(b)}b=F[a+32>>2];if(b){oa(b)}return a|0}function Aa(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 Zg(a){a=a|0;var b=0;F[a+8>>2]=9264;F[a>>2]=9052;b=F[a+96>>2];if(b){F[a+100>>2]=b;oa(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;oa(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;oa(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;oa(b)}F[a+8>>2]=9500;b=F[a+44>>2];if(b){oa(b)}b=F[a+32>>2];if(b){oa(b)}oa(a)}function Na(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 Dc(a,b){var c=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=1360;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]=1736;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;c=F[b>>2];F[b>>2]=0;F[a+60>>2]=c;return a}function od(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|0)<0?1:(d|0)<=0?F[a+4>>2]-F[a>>2]>>>0>=c>>>0:0)){ib(a,c)}if(!c){break a}Ma(F[a>>2],b,c)}b=a;c=F[a+28>>2];a=F[a+24>>2]+1|0;c=a>>>0<1?c+1|0:c;F[b+24>>2]=a;F[b+28>>2]=c;return 1}function Mb(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=pa(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>=1){qa(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break b}oa(c)}return}ta(8944);V()}function $g(a){a=a|0;var b=0;F[a>>2]=9264;b=F[a+88>>2];if(b){F[a+92>>2]=b;oa(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;oa(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;oa(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}F[a>>2]=9500;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}return a|0}function Wg(a){a=a|0;var b=0;F[a>>2]=9264;b=F[a+88>>2];if(b){F[a+92>>2]=b;oa(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;oa(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;oa(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}F[a>>2]=9500;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}oa(a)}function Ed(a){var b=0,c=0,d=0;c=F[a+4>>2];d=F[a>>2];if((c|0)!=(d|0)){while(1){b=F[c-12>>2];if(b){F[c-8>>2]=b;oa(b)}b=F[c-28>>2];if(b){F[c-24>>2]=b;oa(b)}b=F[c-40>>2];if(b){F[c-36>>2]=b;oa(b)}qb(c-140|0);b=c-144|0;c=b;if((b|0)!=(d|0)){continue}break}}F[a+4>>2]=d}function Va(a){var b=0;if(a){b=F[a+76>>2];if(b){F[a+80>>2]=b;oa(b)}b=F[a- -64>>2];if(b){F[a+68>>2]=b;oa(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;oa(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;oa(b)}b=F[a>>2];if(b){F[a+4>>2]=b;oa(b)}oa(a)}}function Mc(a,b,c){var d=0,e=0,f=0,g=0;f=ba-16|0;ba=f;d=ba-16|0;ba=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);g=(e^-1)+b|0;b=e;e=I[F[d+12>>2]>>2]>2];b=e?g:b;a=e?F[d+12>>2]+4|0:a;continue}break}ba=d+16|0;ba=f+16|0;return a}function qb(a){var b=0;b=F[a+84>>2];if(b){F[a+88>>2]=b;oa(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;oa(b)}b=F[a+52>>2];if(b){F[a+56>>2]=b;oa(b)}b=F[a+40>>2];if(b){F[a+44>>2]=b;oa(b)}b=F[a+28>>2];if(b){F[a+32>>2]=b;oa(b)}b=F[a+12>>2];if(b){oa(b)}a=F[a>>2];if(a){oa(a)}}function Of(a){a=a|0;var b=0,c=0,d=0;if(a){if(D[a+27|0]<=-1){oa(F[a+16>>2])}c=F[a>>2];if(c){d=F[a+4>>2];b=c;a:{if((c|0)==(d|0)){break a}while(1){b=d-12|0;if(D[d-1|0]<=-1){oa(F[b>>2])}d=b;if((c|0)!=(d|0)){continue}break}b=F[a>>2]}F[a+4>>2]=c;oa(b)}oa(a)}}function ld(a,b){var c=0,d=0;d=pa(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;da[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;oa(b)}oa(a)}return 1}function Qc(a,b){var c=0,d=0;d=F[a+8>>2];a=F[a+12>>2]-d|0;a:{if(a){c=a>>31;c=(c+a^c)>>>2|0;a=(a|0)>-1?a:-1;a=L(c,(a|0)<1?a:1);c=a>>>0>1?a:1;a=0;while(1){if(F[F[(a<<2)+d>>2]+60>>2]==(b|0)){break a}a=a+1|0;if((c|0)!=(a|0)){continue}break}}a=-1}return a}function Df(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a=ba-16|0;ba=a;b=F[b+96>>2];F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;e=pa(12);c=qa(e,b+L(c,12)|0,12);f=c+12|0;b=F[d>>2];if(b){F[d+4>>2]=b;oa(b)}F[d+8>>2]=c+12;F[d+4>>2]=f;F[d>>2]=e;ba=a+16|0;return 1}function Ia(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)<1){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 ii(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=b^d;h=e>>31;f=b>>31;a=a^f;i=a-f|0;g=b;b=b>>31;g=(g^b)-((a>>>0>>0)+b|0)|0;a=d>>31;b=c^a;c=d>>31;e=e>>31;a=ji(i,g,b-a|0,(c^d)-((a>>>0>b>>>0)+c|0)|0)^e;b=a-e|0;ca=(h^ca)-((a>>>0>>0)+h|0)|0;return b}function Ag(){var a=0;a=pa(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 ya(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;oa(c)}oa(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;oa(b)}b=F[a+64>>2];F[a+64>>2]=0;if(b){c=F[b>>2];if(c){F[b+4>>2]=c;oa(c)}oa(b)}oa(a)}}function zh(a){a=a|0;var b=0;F[a>>2]=7764;F[a+24>>2]=1140;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}F[a>>2]=1952;b=F[a+20>>2];F[a+20>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}F[a>>2]=1572;b=F[a+16>>2];F[a+16>>2]=0;if(b){ya(b)}return a|0}function Kb(a,b){var c=0,d=0,e=0;c=Aa(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=pa(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}}qa(d,b,c)}D[c+d|0]=0;return a}Ba();V()}function yh(a){a=a|0;var b=0;F[a>>2]=7764;F[a+24>>2]=1140;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}F[a>>2]=1952;b=F[a+20>>2];F[a+20>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}F[a>>2]=1572;b=F[a+16>>2];F[a+16>>2]=0;if(b){ya(b)}oa(a)}function xe(a,b){a=a|0;b=b|0;var c=0,d=0;c=ba-16|0;ba=c;a=F[a+4>>2];a:{if((a|0)==-1){break a}D[c+15|0]=a;d=F[b+20>>2];if((d|0)>0?1:(d|0)>=0?F[b+16>>2]:0){break a}ub(b,F[b+4>>2],c+15|0,c+16|0)}ba=c+16|0;return(a|0)!=-1|0}function hi(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;ca=(L(b,c)+j|0)+L(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function ug(){var a=0;a=pa(96);nb(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 Jc(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 ih(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){Jb(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 he(a){a=a|0;var b=0;F[a>>2]=2832;b=F[a+96>>2];if(b){oa(b)}b=F[a+84>>2];if(b){oa(b)}b=F[a+72>>2];if(b){oa(b)}b=F[a+60>>2];if(b){oa(b)}F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}return a|0}function bi(a){a=a|0;var b=0;F[a>>2]=4396;b=F[a+96>>2];if(b){oa(b)}b=F[a+84>>2];if(b){oa(b)}b=F[a+72>>2];if(b){oa(b)}b=F[a+60>>2];if(b){oa(b)}F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}return a|0}function Bg(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=da[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 ta(a){var b=0,c=0,d=0,e=0,f=0;b=aa(8)|0;F[b>>2]=12160;F[b>>2]=12204;c=Aa(a);d=pa(c+13|0);F[d+8>>2]=0;F[d+4>>2]=c;F[d>>2]=c;e=b,f=qa(d+12|0,a,c+1|0),F[e+4>>2]=f;F[b>>2]=12252;$(b|0,12284,13);V()}function ge(a){a=a|0;var b=0;F[a>>2]=2832;b=F[a+96>>2];if(b){oa(b)}b=F[a+84>>2];if(b){oa(b)}b=F[a+72>>2];if(b){oa(b)}b=F[a+60>>2];if(b){oa(b)}F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}oa(a)}function ai(a){a=a|0;var b=0;F[a>>2]=4396;b=F[a+96>>2];if(b){oa(b)}b=F[a+84>>2];if(b){oa(b)}b=F[a+72>>2];if(b){oa(b)}b=F[a+60>>2];if(b){oa(b)}F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}oa(a)}function Tc(a,b,c){var d=0,e=0;d=a+4|0;a=bb(a,b);if((d|0)==(a|0)){return 0}b=F[a+32>>2];d=F[a+28>>2];if((b|0)!=(d|0)){Vb(c,b-d|0);e=Ub(c);c=F[a+28>>2];qa(e,c,F[a+32>>2]-c|0)}return(b|0)!=(d|0)}function nb(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 Xe(a,b){a=a|0;b=b|0;var c=0,d=0;Oc(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){Ma(b,d,c)}F[a+88>>2]=b+c}}function Nd(a){F[a+40>>2]=0;F[a>>2]=10228;F[a+4>>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;F[a+32>>2]=0;E[a+36>>1]=0;F[a+44>>2]=0;F[a>>2]=8136}function hc(a,b,c){var d=0;a:{if(b){b=0;if(!nd(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);b=1}return b}function qe(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=eb(F[F[a+36>>2]+(b<<2)>>2])}return c|0}function Nf(){var a=0,b=0;a=pa(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 _a(a){var b=0,c=0;b=F[3137];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ea()<<16>>>0){if(!(_(a|0)|0)){break a}}F[3137]=a;return b}F[3163]=48;return-1}function Rg(a){a=a|0;var b=0;F[a+8>>2]=9684;F[a>>2]=9520;b=F[a+56>>2];if(b){F[a+60>>2]=b;oa(b)}F[a+8>>2]=9500;b=F[a+44>>2];if(b){oa(b)}b=F[a+32>>2];if(b){oa(b)}return a|0}function Mg(a){a=a|0;var b=0;F[a+8>>2]=8680;F[a>>2]=9812;b=F[a+56>>2];if(b){F[a+60>>2]=b;oa(b)}F[a+8>>2]=8932;b=F[a+44>>2];if(b){oa(b)}b=F[a+32>>2];if(b){oa(b)}return a|0}function Fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=F[a+8>>2];if(D[d+24|0]<1){break a}if(!bc(d,F[b+4>>2]-F[b>>2]>>2)){break a}return da[F[F[a>>2]+32>>2]](a,b,c)|0}return 0}function Ea(a,b){if(b){Ea(a,F[b>>2]);Ea(a,F[b+4>>2]);a=F[b+28>>2];F[b+28>>2]=0;if(a){Ea(a+12|0,F[a+16>>2]);Da(a,F[a+4>>2]);oa(a)}if(D[b+27|0]<=-1){oa(F[b+16>>2])}oa(b)}}function Th(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;a=F[a+8>>2];if(G[a+24|0]==3){return F[a+28>>2]==9|0}return 0}function wa(a,b,c){var d=0,e=0,f=0;a:{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}f=d-e|0}return f}function Eh(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 Qg(a){a=a|0;var b=0;F[a+8>>2]=9684;F[a>>2]=9520;b=F[a+56>>2];if(b){F[a+60>>2]=b;oa(b)}F[a+8>>2]=9500;b=F[a+44>>2];if(b){oa(b)}b=F[a+32>>2];if(b){oa(b)}oa(a)}function Lg(a){a=a|0;var b=0;F[a+8>>2]=8680;F[a>>2]=9812;b=F[a+56>>2];if(b){F[a+60>>2]=b;oa(b)}F[a+8>>2]=8932;b=F[a+44>>2];if(b){oa(b)}b=F[a+32>>2];if(b){oa(b)}oa(a)}function nf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=ba-16|0;ba=d;Sd(d,a,b,c);F[a+24>>2]=F[d>>2];wb(a+28|0,d|4);if(D[d+15|0]<=-1){oa(F[d+4>>2])}ba=d+16|0;return a+24|0}function Pe(a,b){a=a|0;b=b|0;a:{if(!(da[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(da[F[F[a>>2]+40>>2]](a,b)|0)){break a}return da[F[F[a>>2]+44>>2]](a)|0}return 0}function zc(a){a=a|0;var b=0;F[a>>2]=1952;b=F[a+20>>2];F[a+20>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}F[a>>2]=1572;b=F[a+16>>2];F[a+16>>2]=0;if(b){ya(b)}return a|0}function gi(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 ae(a){a=a|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}return F[a+92>>2]!=-1|0}return 0}function Wd(a){a=a|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}return F[a+76>>2]!=-1|0}return 0}function yc(a){a=a|0;var b=0;F[a>>2]=1952;b=F[a+20>>2];F[a+20>>2]=0;if(b){da[F[F[b>>2]+4>>2]](b)}F[a>>2]=1572;b=F[a+16>>2];F[a+16>>2]=0;if(b){ya(b)}oa(a)}function Sg(a){a=a|0;var b=0;F[a>>2]=9684;b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}F[a>>2]=9500;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}return a|0}function Gd(a){a=a|0;var b=0;F[a>>2]=8680;b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}F[a>>2]=8932;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}return a|0}function yg(){var a=0,b=0;b=pa(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 eh(a){a=a|0;var b=0;F[a>>2]=8680;b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}F[a>>2]=8932;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}oa(a)}function Ng(a){a=a|0;var b=0;F[a>>2]=9684;b=F[a+48>>2];if(b){F[a+52>>2]=b;oa(b)}F[a>>2]=9500;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}oa(a)}function of(a,b,c){a=a|0;b=b|0;c=c|0;b=ba-16|0;ba=b;Rd(b);F[a+24>>2]=F[b>>2];wb(a+28|0,b|4);if(D[b+15|0]<=-1){oa(F[b+4>>2])}ba=b+16|0;return a+24|0}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;if(Na(a,F[b+8>>2],f)){Ic(b,c,d,e);return}a=F[a+8>>2];da[F[F[a>>2]+20>>2]](a,b,c,d,e,f)}function Dh(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(!(da[F[F[a>>2]+52>>2]](a)|0)){break a}}b=ld(a+24|0,F[a+16>>2])}return b|0}function hg(){var a=0;a=pa(108);Sc(a);F[a+84>>2]=0;F[a+88>>2]=0;F[a>>2]=10824;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;return a|0}function Rc(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)<1){break a}c=F[a>>2]}return c}function ec(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 _e(a){a=a|0;var b=0;F[a>>2]=10824;b=F[a+96>>2];if(b){F[a+100>>2]=b;oa(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;oa(b)}zb(a);return a|0}function Sh(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,eb(a),c)){break a}}b=ld(a+24|0,F[a+16>>2])}return b|0}function Ze(a){a=a|0;var b=0;F[a>>2]=10824;b=F[a+96>>2];if(b){F[a+100>>2]=b;oa(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;oa(b)}zb(a);oa(a)}function Da(a,b){if(b){Da(a,F[b>>2]);Da(a,F[b+4>>2]);a=F[b+28>>2];if(a){F[b+32>>2]=a;oa(a)}if(D[b+27|0]<=-1){oa(F[b+16>>2])}oa(b)}}function ee(a){a=a|0;var b=0;F[a>>2]=3080;b=F[a+76>>2];if(b){oa(b)}F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}return a|0}function _h(a){a=a|0;var b=0;F[a>>2]=4632;b=F[a+76>>2];if(b){oa(b)}F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}return a|0}function Wf(){var a=0;a=pa(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 Ve(a){a=a|0;var b=0;F[a>>2]=1360;b=F[a+16>>2];if(b){F[a+20>>2]=b;oa(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;oa(b)}return a|0}function Ub(a){var b=0;if(G[a+11|0]>>>7|0){b=F[a+4>>2]}else{b=G[a+11|0]}if(!b){Wb();V()}if(G[a+11|0]>>>7|0){a=F[a>>2]}return a}function jb(a,b){if(b){jb(a,F[b>>2]);jb(a,F[b+4>>2]);if(D[b+39|0]<=-1){oa(F[b+28>>2])}if(D[b+27|0]<=-1){oa(F[b+16>>2])}oa(b)}}function fg(){var a=0,b=0;a=pa(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 Ne(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Na(a,F[b+8>>2],0)){Jc(b,c,d);return}a=F[a+8>>2];da[F[F[a>>2]+28>>2]](a,b,c,d)}function de(a){a=a|0;var b=0;F[a>>2]=3080;b=F[a+76>>2];if(b){oa(b)}F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}oa(a)}function Zh(a){a=a|0;var b=0;F[a>>2]=4632;b=F[a+76>>2];if(b){oa(b)}F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}oa(a)}function pa(a){var b=0;a=a?a:1;a:{while(1){b=Hc(a);if(b){break a}b=F[3164];if(b){da[b|0]();continue}break}Y();V()}return b}function Tb(a){a=a|0;var b=0,c=0;F[a>>2]=12204;b=F[a+4>>2]-12|0;c=F[b+8>>2]-1|0;F[b+8>>2]=c;if((c|0)<=-1){oa(b)}return a|0}function mg(){var a=0;a=pa(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 Fc(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 Jb(a,b){var c=0,d=0;ib(a,b);b=F[a+28>>2];c=b+1|0;d=b;b=F[a+24>>2]+1|0;F[a+24>>2]=b;F[a+28>>2]=b>>>0<1?c:d}function sc(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 mf(a){a=a|0;if(a){if(D[a+39|0]<=-1){oa(F[a+28>>2])}ac(a+12|0,F[a+16>>2]);jb(a,F[a+4>>2]);oa(a)}}function Bh(a){a=a|0;var b=0,c=0;c=a+24|0;b=eb(a);if(!b){b=F[a+8>>2]}return wd(c,b,F[F[a+4>>2]+32>>2])|0}function fi(a){a=a|0;var b=0;F[a>>2]=3316;F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}return a|0}function Xh(a){a=a|0;var b=0;F[a>>2]=4856;F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}return a|0}function dh(a){a=a|0;var b=0;F[a>>2]=8932;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}return a|0}function Ug(a){a=a|0;var b=0;F[a>>2]=9500;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}return a|0}function tb(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 rc(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 ei(a){a=a|0;var b=0;F[a>>2]=3316;F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}oa(a)}function Wh(a){a=a|0;var b=0;F[a>>2]=4856;F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}oa(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 bh(a){a=a|0;var b=0;F[a>>2]=8932;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}oa(a)}function Tg(a){a=a|0;var b=0;F[a>>2]=9500;b=F[a+36>>2];if(b){oa(b)}b=F[a+24>>2];if(b){oa(b)}oa(a)}function $d(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 Vd(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 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;if(Na(a,F[b+8>>2],f)){Ic(b,c,d,e)}}function ke(a){a=a|0;var b=0;F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}return a|0}function Be(a){a=a|0;var b=0;F[a>>2]=1572;b=F[a+16>>2];F[a+16>>2]=0;if(b){ya(b)}return a|0}function ch(a){a=a|0;var b=0;F[a>>2]=1140;b=F[a+8>>2];if(b){F[a+12>>2]=b;oa(b)}return a|0}function ki(a){var b=0,c=0;while(1){c=b;if(a){a=a-1&a;b=b+1|0;continue}break}return c}function Sb(a){a=a|0;var b=0;F[a>>2]=2776;b=F[a+32>>2];if(b){F[a+36>>2]=b;oa(b)}oa(a)}function Ae(a){a=a|0;var b=0;F[a>>2]=1572;b=F[a+16>>2];F[a+16>>2]=0;if(b){ya(b)}oa(a)}function Vg(a){a=a|0;var b=0;F[a>>2]=1140;b=F[a+8>>2];if(b){F[a+12>>2]=b;oa(b)}oa(a)}function pe(a,b){a=a|0;b=b|0;return da[F[F[a>>2]+48>>2]](a,F[b+4>>2]-F[b>>2]>>2)|0}function ac(a,b){if(b){ac(a,F[b>>2]);ac(a,F[b+4>>2]);jb(b+20|0,F[b+24>>2]);oa(b)}}function xg(a){a=a|0;var b=0;if(a){b=F[a+8>>2];if(b){F[a+12>>2]=b;oa(b)}oa(a)}}function wh(a){a=a|0;if(F[a+44>>2]){return da[F[F[a>>2]+48>>2]](a)|0}return 0}function Oe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Na(a,F[b+8>>2],0)){Jc(b,c,d)}}function uh(a,b){a=a|0;b=b|0;a=F[a+48>>2];return da[F[F[a>>2]+20>>2]](a,b)|0}function mh(a,b){a=a|0;b=b|0;a=F[a+48>>2];return da[F[F[a>>2]+12>>2]](a,b)|0}function lh(a,b){a=a|0;b=b|0;a=F[a+48>>2];return da[F[F[a>>2]+16>>2]](a,b)|0}function cg(a){a=a|0;var b=0;b=a+4|0;if(D[a+15|0]<=-1){b=F[b>>2]}return b|0}function ab(){var a=0;a=pa(12);F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;return a|0}function $a(a){a=a|0;var b=0;if(a){b=F[a>>2];if(b){F[a+4>>2]=b;oa(b)}oa(a)}}function li(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function yf(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 eg(a){a=a|0;if(a){Ea(a+12|0,F[a+16>>2]);Da(a,F[a+4>>2]);oa(a)}}function Pb(a,b){a=a|0;b=b|0;if(b>>>0<=1){F[a+28>>2]=b}return b>>>0<2|0}function Eg(a,b){a=a|0;b=b|0;D[b+84|0]=1;F[b+72>>2]=F[b+68>>2];return 1}function sh(a){a=a|0;a=F[a+48>>2];return da[F[F[a>>2]+24>>2]](a)|0}function qh(a){a=a|0;a=F[a+48>>2];return da[F[F[a>>2]+28>>2]](a)|0}function nh(a){a=a|0;a=F[a+48>>2];return da[F[F[a>>2]+36>>2]](a)|0}function jg(){var a=0;a=pa(8);F[a+4>>2]=-1;F[a>>2]=1032;return a|0}function Hf(a,b,c){a=a|0;b=b|0;c=c|0;return F[F[b+8>>2]+(c<<2)>>2]}function bg(a){a=a|0;if(a){if(D[a+15|0]<=-1){oa(F[a+4>>2])}oa(a)}}function Rh(a,b){a=a|0;b=b|0;return Ec(a+24|0,eb(a),F[a+8>>2])|0}function Ah(a,b){a=a|0;b=b|0;return Id(a+24|0,eb(a),F[a+8>>2])|0}function jd(a,b){a=a|0;b=b|0;return da[F[F[a>>2]+12>>2]](a,b)|0}function Ge(a,b){a=a|0;b=b|0;F[a+12>>2]=-1;F[a+8>>2]=b;return 1}function Ch(a,b){a=a|0;b=b|0;return da[F[F[a>>2]+56>>2]](a,b)|0}function lg(a,b){a=a|0;b=b|0;return M(J[F[a+8>>2]+(b<<2)>>2])}function ag(a,b){a=a|0;b=b|0;return M(J[F[a>>2]+(b<<2)>>2])}function gg(a){a=a|0;return(F[a+100>>2]-F[a+96>>2]|0)/12|0}function Ie(a,b){a=a|0;b=b|0;return F[F[a+4>>2]+(b<<2)>>2]}function fd(a,b){a=a|0;b=b|0;return F[F[a>>2]+(b<<2)>>2]}function Yf(a,b){a=a|0;b=b|0;return E[F[a>>2]+(b<<1)>>1]}function Xf(a,b){a=a|0;b=b|0;return H[F[a>>2]+(b<<1)>>1]}function Xd(a,b,c){a=a|0;b=b|0;c=c|0;return Cc(a,b,c)|0}function Kf(a,b,c){a=a|0;b=b|0;c=c|0;return Rc(b,c)|0}function mi(a){if(a){return 31-O(a-1^a)|0}return 32} +function Sc(a){F[a>>2]=11224;ra(a+4|0,0,80);return a}function id(a){a=a|0;return F[a+12>>2]-F[a+8>>2]>>2}function Zf(a,b){a=a|0;b=b|0;return G[F[a>>2]+b|0]}function He(a){a=a|0;return F[a+8>>2]-F[a+4>>2]>>2}function Cb(a){a=a|0;if(a){da[F[F[a>>2]+4>>2]](a)}}function $f(a,b){a=a|0;b=b|0;return D[F[a>>2]+b|0]}function Md(a,b){a=a|0;b=b|0;F[a+4>>2]=b;return 1}function gd(a){a=a|0;return F[a+4>>2]-F[a>>2]>>1}function dc(a){a=a|0;return F[a+4>>2]-F[a>>2]>>2}function hd(a){a=a|0;return F[a+4>>2]-F[a>>2]|0}function le(a){a=a|0;return D[F[a+8>>2]+24|0]}function Qf(a,b){a=a|0;b=b|0;return F[b+8>>2]}function Fg(a,b){a=a|0;b=b|0;return D[b+24|0]}function Ff(a,b){a=a|0;b=b|0;return F[b+4>>2]}function Ee(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Ph(a){a=a|0;F[a>>2]=5744;return a|0}function Jh(a){a=a|0;F[a>>2]=6748;return a|0}function kg(a){a=a|0;return M(J[a+20>>2])}function Oh(a){a=a|0;F[a>>2]=5744;oa(a)}function Ih(a){a=a|0;F[a>>2]=6748;oa(a)}function tg(a){a=a|0;return F[a+88>>2]}function sg(a){a=a|0;return F[a+56>>2]}function pg(a){a=a|0;return F[a+40>>2]}function og(a){a=a|0;return F[a+48>>2]}function ng(a){a=a|0;return F[a+60>>2]}function fc(a){a=a|0;return F[a+80>>2]}function fb(a){a=a|0;return F[a+28>>2]}function wc(a,b){a=a|0;b=b|0;return-1}function vd(a){a=a|0;return F[a+8>>2]}function rg(a){a=a|0;return D[a+24|0]}function qg(a){a=a|0;return G[a+32|0]}function dg(a){a=a|0;return!F[a>>2]|0}function Za(a){a=a|0;return F[a+4>>2]}function Yd(a,b){a=a|0;b=b|0;return 6}function Nh(a,b){a=a|0;b=b|0;return 2}function Ka(a,b){a=a|0;b=b|0;return 0}function Gc(a,b){a=a|0;b=b|0;return 1}function xb(a,b,c){if(c){qa(a,b,c)}}function kd(a){a=a|0;return F[a>>2]}function vg(){return nb(pa(64))|0}function ig(){return Sc(pa(84))|0}function gc(a){a=a|0;if(a){oa(a)}}function Te(a){a=a|0;return 12134}function Re(a){a=a|0;Tb(a);oa(a)}function Qa(a){a=a|0;return a|0}function gh(a){a=a|0;oa(ud(a))}function fh(a){a=a|0;oa(td(a))}function We(a){a=a|0;oa(zb(a))}function Se(a){a=a|0;oa(Tb(a))}function xa(a){a=a|0;return 1}function vc(a){a=a|0;return 4}function tc(a){a=a|0;return 5}function Zd(a){a=a|0;return 2}function Ya(a){a=a|0;return 0}function Rb(a){a=a|0;return 6}function Mh(a){a=a|0;return 3}function sa(){ta(11340);V()}function Ba(){ta(12040);V()}function Pa(a){a=a|0;oa(a)}function Sa(a){a=a|0;V()}function ff(){return 10}function ef(){return 11}function df(){return 12}function va(){Wb();V()}function mb(){return 0}function lf(){return 5}function kf(){return 6}function jf(){return 7}function hf(){return 8}function gf(){return 9}function cf(){return-2}function cd(){return 3}function bf(){return-3}function bd(){return 4}function af(){return-4}function Bb(){return-1}function Ab(){return 1}function $e(){return-5}function $b(){return 2}function Wb(){Y();V()}function Lc(a){a=a|0}function Ue(){V()}function be(){} // EMSCRIPTEN_END_FUNCS -var I=nl([null,da,ea,fa,W,X,Y,$,aa,ca,xa,ga,ha,Ek,ra,sa,ta,ia,ka,la,oa,pa,qa,ga,ua,Oa,Pa,Ia,Ja,Qa,Ra,Sa,Ta,Ua,Ck,Va,ta,fb,gb,Za,_a,$a,ab,Va,db,eb,pb,qb,ib,kb,rb,lb,mb,nb,ob,Bb,Cb,tb,ub,vb,yb,wb,Db,Ab,Ib,Jb,ta,Kb,Lb,Mb,Nb,Ua,Mb,ta,Ob,Pb,Pa,Pa,Qb,Rb,Sb,Lb,Tb,Wb,_b,$b,ac,bc,ta,Ua,cc,dc,ec,hc,ic,jc,kc,ta,Ua,lc,mc,nc,da,ea,pc,Ta,oc,Pa,Jb,ta,Lb,sc,Pa,tc,uc,Sb,Lb,Tb,vc,wc,xc,ac,bc,ta,Ua,cc,dc,yc,Ac,Bc,jc,kc,ta,Ua,lc,mc,Cc,da,ea,pc,Ta,Dc,Pa,Jb,Mb,ta,Fc,Bb,Cb,Gc,Ic,Hc,Kc,fa,Jc,Mc,Nc,jc,Kb,Oc,ta,Ua,Pc,ta,Qc,Rc,Sc,da,ea,pc,Ta,oc,Vc,Wc,jc,Oc,ta,Ua,Pc,Rc,Xc,da,ea,pc,Ta,Dc,da,ea,Mb,ta,Mb,Nb,Ua,Uc,Yc,dd,ed,_c,$c,Hc,ad,bd,cd,Td,Pa,ta,ta,Sd,Gf,Hf,ta,Mb,Ua,Ua,Yd,Zd,Vd,Ud,Xd,_d,$d,ae,Wd,Ie,Je,ce,de,ee,fe,ne,ta,Kb,Be,Ke,Me,ce,de,ee,fe,De,ta,Kb,Be,me,Ne,le,Oe,Pe,Ue,Ve,We,Xe,Te,$e,Qe,af,bf,df,ef,ff,gf,cf,jf,kf,lf,mf,nf,xf,wf,sf,da,ea,yf,zf,Pa,Mb,ta,Zi,$i,aj,cj,_i,Kj,Gj,Ij,da,ea,Dk,Gk,Hk,Ik,da,ea,bk,bk,Kk,Uk,Sk,Nk,ea,Tk,Rk,Ok]);function tl(){return f.byteLength/65536|0}function ul(El){El=El|0;var J=tl()|0;var K=J+El|0;if(J=0;--P){O[48+P]=52+P;O[65+P]=P;O[97+P]=26+P}O[43]=62;O[47]=63;function vl(Fl,Gl,Hl){var Q,R,P=0,S=Gl,T=Hl.length,U=Gl+(T*3>>2)-(Hl[T-2]=="=")-(Hl[T-1]=="=");for(;P>4;if(S>2;if(S=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;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 STACK_BASE=5256016;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;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 preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.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+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="draco_decoder_gltf.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(wasmBinaryFile);if(binary){return binary}if(readBinary){return readBinary(wasmBinaryFile)}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)&&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()})}return Promise.resolve().then(getBinary)}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"];removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).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(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}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){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function demangle(func){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+"]"})}function dynCallLegacy(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}return Module["dynCall_"+sig].call(null,ptr)}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()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>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+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function _abort(){abort()}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}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){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;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(minHeapSize,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();preMain();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()()}}noExitRuntime=true;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 __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;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 preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.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+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var 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 receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){var result=WebAssembly.instantiate(binary,info);return result}).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(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}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){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>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+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>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();preMain();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;i3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=4)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=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;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};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){var 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};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){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.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_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=function 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=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function 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=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 STACK_ALIGN=16;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 addFunctionWasm(func,sig){if(!functionsInTableMap){functionsInTableMap=new WeakMap;for(var i=0;i3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=4)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=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;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};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){var 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};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){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.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=( // EMSCRIPTEN_START_ASM -function instantiate(Lp,Mp){function Ap(Np){Np.set=(function(P,Op){this[P]=Op});Np.get=(function(P){return this[P]});return Np}var a=new ArrayBuffer(16);var b=new Int32Array(a);var c=new Float32Array(a);var d=new Float64Array(a);function Bp(Pp){return b[Pp]}function Cp(Pp,Qp){b[Pp]=Qp}function Dp(){return d[0]}function Ep(Qp){d[0]=Qp}function Fp(Qp){c[2]=Qp}function Gp(){return c[2]}function Hp(Rp,Sp){var e=Sp.memory;var f=e.buffer;e.grow=Jp;var g=new Rp.Int8Array(f);var h=new Rp.Int16Array(f);var i=new Rp.Int32Array(f);var j=new Rp.Uint8Array(f);var k=new Rp.Uint16Array(f);var l=new Rp.Uint32Array(f);var m=new Rp.Float32Array(f);var n=new Rp.Float64Array(f);var o=Rp.Math.imul;var p=Rp.Math.fround;var q=Rp.Math.abs;var r=Rp.Math.clz32;var s=Rp.Math.min;var t=Rp.Math.max;var u=Rp.Math.floor;var v=Rp.Math.ceil;var w=Rp.Math.sqrt;var x=Sp.abort;var y=Rp.NaN;var z=Rp.Infinity;var A=Sp.__cxa_allocate_exception;var B=Sp.__cxa_throw;var C=Sp.abort;var D=Sp.emscripten_resize_heap;var E=Sp.emscripten_memcpy_big;var F=5262688;var G=19796;var H=0; +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>2]);c=i[e+32>>2];i[e+32>>2]=0;d=i[b+12>>2];i[b+12>>2]=c;if(!d){break a}bi(d);d=i[e+32>>2];i[e+32>>2]=0;if(!d){break a}bi(d);break a}dm(e+32|0,i[b+8>>2]);c=i[e+32>>2];i[e+32>>2]=0;d=i[b+12>>2];i[b+12>>2]=c;if(!d){break a}bi(d);d=i[e+32>>2];i[e+32>>2]=0;if(!d){break a}bi(d)}b:{c:{d:{d=i[b+12>>2];e:{if(!(i[d+40>>2]!=((i[d+4>>2]-i[d>>2]>>2>>>0)/3|0)?d:0)){b=ho(32);i[e+32>>2]=b;i[e+36>>2]=29;i[e+40>>2]=-2147483616;g[b+29|0]=0;d=j[11281]|j[11282]<<8|(j[11283]<<16|j[11284]<<24);c=j[11277]|j[11278]<<8|(j[11279]<<16|j[11280]<<24);g[b+21|0]=c;g[b+22|0]=c>>>8;g[b+23|0]=c>>>16;g[b+24|0]=c>>>24;g[b+25|0]=d;g[b+26|0]=d>>>8;g[b+27|0]=d>>>16;g[b+28|0]=d>>>24;d=j[11276]|j[11277]<<8|(j[11278]<<16|j[11279]<<24);c=j[11272]|j[11273]<<8|(j[11274]<<16|j[11275]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11268]|j[11269]<<8|(j[11270]<<16|j[11271]<<24);c=j[11264]|j[11265]<<8|(j[11266]<<16|j[11267]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11260]|j[11261]<<8|(j[11262]<<16|j[11263]<<24);c=j[11256]|j[11257]<<8|(j[11258]<<16|j[11259]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+32|0);if(g[e+43|0]>-1){break e}bp(i[e+32>>2]);break e}i[b+264>>2]=b;Jb((i[d+28>>2]-i[d+24>>2]>>2)-i[d+44>>2]|0,i[i[b+4>>2]+44>>2]);d=i[b+12>>2];Jb(((i[d+4>>2]-i[d>>2]>>2>>>0)/3|0)-i[d+40>>2]|0,i[i[b+4>>2]+44>>2]);d=i[b+8>>2];c=i[d+100>>2];d=i[d+96>>2];g[e+32|0]=0;q=b+28|0;Uh(q,(c-d|0)/12|0,e+32|0);d=i[b+12>>2];c=i[d+28>>2];d=i[d+24>>2];i[e+32>>2]=-1;Sh(b+52|0,c-d>>2,e+32|0);c=i[b+40>>2];i[b+44>>2]=c;d=i[b+12>>2];f=i[d+4>>2]-i[d>>2]>>2;f=f-((f>>>0)%3|0)|0;f:{if(i[b+48>>2]-c>>2>>>0>=f>>>0){break f}if(f>>>0>=1073741824){break b}h=f<<2;f=ho(h);i[b+44>>2]=f;i[b+40>>2]=f;i[b+48>>2]=f+h;if(!c){break f}bp(c);d=i[b+12>>2]}c=i[d+28>>2];d=i[d+24>>2];g[e+32|0]=0;Uh(b+84|0,c-d>>2,e+32|0);i[b+164>>2]=-1;i[b+168>>2]=0;i[b+100>>2]=i[b+96>>2];i[b+112>>2]=i[b+108>>2];if(i[b+132>>2]){d=i[b+128>>2];if(d){while(1){c=i[d>>2];bp(d);d=c;if(c){continue}break}}i[b+128>>2]=0;c=i[b+124>>2];if(c){d=0;while(1){i[i[b+120>>2]+(d<<2)>>2]=0;d=d+1|0;if((c|0)!=(d|0)){continue}break}}i[b+132>>2]=0}i[b+144>>2]=0;d=i[b+12>>2];c=i[d+28>>2];d=i[d+24>>2];i[e+32>>2]=-1;Sh(b+152|0,c-d>>2,e+32|0);d=i[b+72>>2];i[b+76>>2]=d;c=i[b+12>>2];c=i[c+4>>2]-i[c>>2]>>2;f=(c>>>0)/3|0;g:{if(i[b+80>>2]-d>>2>>>0>=f>>>0){break g}if(c>>>0>=3221225472){break b}f=f<<2;c=ho(f);i[b+76>>2]=c;i[b+72>>2]=c;i[b+80>>2]=c+f;if(!d){break g}bp(d)}i[b- -64>>2]=0;if(!ci(b)){b=ho(32);i[e+32>>2]=b;i[e+36>>2]=29;i[e+40>>2]=-2147483616;g[b+29|0]=0;d=j[11311]|j[11312]<<8|(j[11313]<<16|j[11314]<<24);c=j[11307]|j[11308]<<8|(j[11309]<<16|j[11310]<<24);g[b+21|0]=c;g[b+22|0]=c>>>8;g[b+23|0]=c>>>16;g[b+24|0]=c>>>24;g[b+25|0]=d;g[b+26|0]=d>>>8;g[b+27|0]=d>>>16;g[b+28|0]=d>>>24;d=j[11306]|j[11307]<<8|(j[11308]<<16|j[11309]<<24);c=j[11302]|j[11303]<<8|(j[11304]<<16|j[11305]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11298]|j[11299]<<8|(j[11300]<<16|j[11301]<<24);c=j[11294]|j[11295]<<8|(j[11296]<<16|j[11297]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11290]|j[11291]<<8|(j[11292]<<16|j[11293]<<24);c=j[11286]|j[11287]<<8|(j[11288]<<16|j[11289]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+32|0);if(g[e+43|0]>-1){break e}bp(i[e+32>>2]);break e}if(!di(b)){b=ho(48);i[e+32>>2]=b;i[e+36>>2]=36;i[e+40>>2]=-2147483600;g[b+36|0]=0;d=j[11348]|j[11349]<<8|(j[11350]<<16|j[11351]<<24);g[b+32|0]=d;g[b+33|0]=d>>>8;g[b+34|0]=d>>>16;g[b+35|0]=d>>>24;d=j[11344]|j[11345]<<8|(j[11346]<<16|j[11347]<<24);c=j[11340]|j[11341]<<8|(j[11342]<<16|j[11343]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[11336]|j[11337]<<8|(j[11338]<<16|j[11339]<<24);c=j[11332]|j[11333]<<8|(j[11334]<<16|j[11335]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11328]|j[11329]<<8|(j[11330]<<16|j[11331]<<24);c=j[11324]|j[11325]<<8|(j[11326]<<16|j[11327]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11320]|j[11321]<<8|(j[11322]<<16|j[11323]<<24);c=j[11316]|j[11317]<<8|(j[11318]<<16|j[11319]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+32|0);if(g[e+43|0]>-1){break e}bp(i[e+32>>2]);break e}d=(i[b+176>>2]-i[b+172>>2]|0)/136|0;g[e+31|0]=d;c=b;f=i[i[b+4>>2]+44>>2];h=i[f+20>>2];if((h|0)<0?1:(h|0)<=0?l[f+16>>2]<=0:0){ca(f,i[f+4>>2],e+31|0,e+32|0);d=j[e+31|0]}i[c+284>>2]=d&255;c=i[b+12>>2];d=i[c>>2];c=i[c+4>>2];r=b+200|0;ei(r);i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;f=c-d|0;h:{if((f|0)>=1){s=b+96|0;d=d-c|0;d=((d|0)>(f|0)?d:f)>>>2|0;t=d>>>0>1?d:1;d=0;while(1){i:{c=(d>>>0)/3|0;p=c>>>5<<2;o=1<>2]>>2]&o){break i}if(Ql(i[b+12>>2],c)){break i}i[e+24>>2]=0;c=fi(b,c,e+24|0);qf(r,c);f=i[e+24>>2];if(c){c=-1;h=-1;m=-1;j:{if((f|0)==-1){break j}n=i[i[b+12>>2]>>2];c=i[n+(f<<2)>>2];k=f+1|0;k=(k>>>0)%3|0?k:f+ -2|0;if((k|0)!=-1){h=i[n+(k<<2)>>2]}k=f+((f>>>0)%3|0?-1:2)|0;if((k|0)==-1){break j}m=i[n+(k<<2)>>2]}n=i[b+84>>2];k=n+(c>>>3&536870908)|0;i[k>>2]=i[k>>2]|1<>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>2];k=i[b+104>>2];k:{if(c>>>0>>0){i[c>>2]=1;i[b+100>>2]=c+4;break k}h=i[s>>2];n=c-h|0;c=n>>2;m=c+1|0;if(m>>>0>=1073741824){break d}u=c<<2;k=k-h|0;c=k>>1;m=k>>2>>>0<536870911?c>>>0>>0?m:c:1073741823;c=0;l:{if(!m){break l}if(m>>>0>=1073741824){break b}c=ho(m<<2)}k=u+c|0;i[k>>2]=1;m=c+(m<<2)|0;k=k+4|0;if((n|0)>=1){hp(c,h,n)}i[b+104>>2]=m;i[b+100>>2]=k;i[b+96>>2]=c;if(!h){break k}bp(h)}c=p+i[q>>2]|0;i[c>>2]=o|i[c>>2];m=-1;if((f|0)!=-1){c=f+1|0;m=(c>>>0)%3|0?c:f+ -2|0}c=i[e+36>>2];o=i[e+40>>2];m:{if(c>>>0>>0){i[c>>2]=m;i[e+36>>2]=c+4;break m}h=i[e+32>>2];p=c-h|0;k=p>>2;n=k+1|0;if(n>>>0>=1073741824){break c}o=o-h|0;c=o>>1;n=o>>2>>>0<536870911?c>>>0>>0?n:c:1073741823;c=0;n:{if(!n){break n}if(n>>>0>=1073741824){break b}c=ho(n<<2)}o=c+(k<<2)|0;i[o>>2]=m;m=c+(n<<2)|0;n=o+4|0;if((p|0)>=1){hp(c,h,p)}i[e+40>>2]=m;i[e+36>>2]=n;i[e+32>>2]=c;if(!h){break m}bp(h)}if((f|0)==-1){break i}c=f+1|0;c=(c>>>0)%3|0?c:f+ -2|0;if((c|0)==-1){break i}c=i[i[i[b+12>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break i}f=(c>>>0)/3|0;if(i[i[q>>2]+(f>>>3&268435452)>>2]>>>f&1){break i}if(gi(b,c)){break i}b=ho(48);i[e+8>>2]=b;i[e+12>>2]=32;i[e+16>>2]=-2147483600;g[b+32|0]=0;d=j[11381]|j[11382]<<8|(j[11383]<<16|j[11384]<<24);c=j[11377]|j[11378]<<8|(j[11379]<<16|j[11380]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[11373]|j[11374]<<8|(j[11375]<<16|j[11376]<<24);c=j[11369]|j[11370]<<8|(j[11371]<<16|j[11372]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11365]|j[11366]<<8|(j[11367]<<16|j[11368]<<24);c=j[11361]|j[11362]<<8|(j[11363]<<16|j[11364]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11357]|j[11358]<<8|(j[11359]<<16|j[11360]<<24);c=j[11353]|j[11354]<<8|(j[11355]<<16|j[11356]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+8|0);if(g[e+19|0]>-1){break h}bp(i[e+8>>2]);break h}c=b;if((f|0)!=-1){h=f+1|0;f=(h>>>0)%3|0?h:f+ -2|0}else{f=-1}hi(c,f,1);if(gi(b,i[e+24>>2])){break i}b=ho(48);i[e+8>>2]=b;i[e+12>>2]=32;i[e+16>>2]=-2147483600;g[b+32|0]=0;d=j[11381]|j[11382]<<8|(j[11383]<<16|j[11384]<<24);c=j[11377]|j[11378]<<8|(j[11379]<<16|j[11380]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[11373]|j[11374]<<8|(j[11375]<<16|j[11376]<<24);c=j[11369]|j[11370]<<8|(j[11371]<<16|j[11372]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11365]|j[11366]<<8|(j[11367]<<16|j[11368]<<24);c=j[11361]|j[11362]<<8|(j[11363]<<16|j[11364]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11357]|j[11358]<<8|(j[11359]<<16|j[11360]<<24);c=j[11353]|j[11354]<<8|(j[11355]<<16|j[11356]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+8|0);if(g[e+19|0]>-1){break h}bp(i[e+8>>2]);break h}d=d+1|0;if((t|0)!=(d|0)){continue}break}}h=b+72|0;d=i[b+72>>2];f=i[b+76>>2];o:{if((d|0)==(f|0)){break o}c=f+ -4|0;if(c>>>0<=d>>>0){break o}while(1){m=i[d>>2];i[d>>2]=i[c>>2];i[c>>2]=m;d=d+4|0;c=c+ -4|0;if(d>>>0>>0){continue}break}}ii(h,f,i[e+32>>2],i[e+36>>2]);p:{if(i[b+176>>2]==i[b+172>>2]){break p}d=i[b+8>>2];c=i[d+100>>2];d=i[d+96>>2];g[e+8|0]=0;Uh(q,(c-d|0)/12|0,e+8|0);d=i[b+72>>2];c=i[b+76>>2];if((d|0)==(c|0)){break p}while(1){ji(b,i[d>>2]);d=d+4|0;if((c|0)!=(d|0)){continue}break}}ki(r);c=b+232|0;sf(r,c);f=i[b+280>>2];q:{if(!f){break q}d=1;if(i[b+284>>2]<1){break q}sf(f,c);if(i[b+284>>2]<2){break q}while(1){sf(i[b+280>>2]+(d<<5)|0,c);d=d+1|0;if((d|0)>2]){continue}break}}Jb(i[b+272>>2]-i[b+268>>2]>>2,i[i[b+4>>2]+44>>2]);Jb(i[b+168>>2],i[i[b+4>>2]+44>>2]);if(!li(b)){b=ho(32);i[e+8>>2]=b;i[e+12>>2]=28;i[e+16>>2]=-2147483616;g[b+28|0]=0;d=j[11410]|j[11411]<<8|(j[11412]<<16|j[11413]<<24);g[b+24|0]=d;g[b+25|0]=d>>>8;g[b+26|0]=d>>>16;g[b+27|0]=d>>>24;d=j[11406]|j[11407]<<8|(j[11408]<<16|j[11409]<<24);c=j[11402]|j[11403]<<8|(j[11404]<<16|j[11405]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11398]|j[11399]<<8|(j[11400]<<16|j[11401]<<24);c=j[11394]|j[11395]<<8|(j[11396]<<16|j[11397]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11390]|j[11391]<<8|(j[11392]<<16|j[11393]<<24);c=j[11386]|j[11387]<<8|(j[11388]<<16|j[11389]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+8|0);if(g[e+19|0]>-1){break h}bp(i[e+8>>2]);break h}d=i[i[b+4>>2]+44>>2];c=i[d+20>>2];if((c|0)<0?1:(c|0)<=0?l[d+16>>2]<=0:0){ca(d,i[d+4>>2],i[b+232>>2],i[b+236>>2])}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}a=i[e+32>>2];if(!a){break e}i[e+36>>2]=a;bp(a)}F=e+48|0;return}Ho();x()}Ho();x()}za(11708);x()}function vi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=F-48|0;F=e;a:{if(j[b+352|0]){fm(e+32|0,i[b+8>>2]);c=i[e+32>>2];i[e+32>>2]=0;d=i[b+12>>2];i[b+12>>2]=c;if(!d){break a}bi(d);d=i[e+32>>2];i[e+32>>2]=0;if(!d){break a}bi(d);break a}dm(e+32|0,i[b+8>>2]);c=i[e+32>>2];i[e+32>>2]=0;d=i[b+12>>2];i[b+12>>2]=c;if(!d){break a}bi(d);d=i[e+32>>2];i[e+32>>2]=0;if(!d){break a}bi(d)}b:{c:{d:{d=i[b+12>>2];e:{if(!(i[d+40>>2]!=((i[d+4>>2]-i[d>>2]>>2>>>0)/3|0)?d:0)){b=ho(32);i[e+32>>2]=b;i[e+36>>2]=29;i[e+40>>2]=-2147483616;g[b+29|0]=0;d=j[11281]|j[11282]<<8|(j[11283]<<16|j[11284]<<24);c=j[11277]|j[11278]<<8|(j[11279]<<16|j[11280]<<24);g[b+21|0]=c;g[b+22|0]=c>>>8;g[b+23|0]=c>>>16;g[b+24|0]=c>>>24;g[b+25|0]=d;g[b+26|0]=d>>>8;g[b+27|0]=d>>>16;g[b+28|0]=d>>>24;d=j[11276]|j[11277]<<8|(j[11278]<<16|j[11279]<<24);c=j[11272]|j[11273]<<8|(j[11274]<<16|j[11275]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11268]|j[11269]<<8|(j[11270]<<16|j[11271]<<24);c=j[11264]|j[11265]<<8|(j[11266]<<16|j[11267]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11260]|j[11261]<<8|(j[11262]<<16|j[11263]<<24);c=j[11256]|j[11257]<<8|(j[11258]<<16|j[11259]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+32|0);if(g[e+43|0]>-1){break e}bp(i[e+32>>2]);break e}r=b+200|0;wi(r,b);d=i[b+12>>2];Jb((i[d+28>>2]-i[d+24>>2]>>2)-i[d+44>>2]|0,i[i[b+4>>2]+44>>2]);d=i[b+12>>2];Jb(((i[d+4>>2]-i[d>>2]>>2>>>0)/3|0)-i[d+40>>2]|0,i[i[b+4>>2]+44>>2]);d=i[b+8>>2];c=i[d+100>>2];d=i[d+96>>2];g[e+32|0]=0;q=b+28|0;Uh(q,(c-d|0)/12|0,e+32|0);d=i[b+12>>2];c=i[d+28>>2];d=i[d+24>>2];i[e+32>>2]=-1;Sh(b+52|0,c-d>>2,e+32|0);c=i[b+40>>2];i[b+44>>2]=c;d=i[b+12>>2];f=i[d+4>>2]-i[d>>2]>>2;f=f-((f>>>0)%3|0)|0;f:{if(i[b+48>>2]-c>>2>>>0>=f>>>0){break f}if(f>>>0>=1073741824){break b}h=f<<2;f=ho(h);i[b+44>>2]=f;i[b+40>>2]=f;i[b+48>>2]=f+h;if(!c){break f}bp(c);d=i[b+12>>2]}c=i[d+28>>2];d=i[d+24>>2];g[e+32|0]=0;Uh(b+84|0,c-d>>2,e+32|0);i[b+164>>2]=-1;i[b+168>>2]=0;i[b+100>>2]=i[b+96>>2];i[b+112>>2]=i[b+108>>2];if(i[b+132>>2]){d=i[b+128>>2];if(d){while(1){c=i[d>>2];bp(d);d=c;if(c){continue}break}}i[b+128>>2]=0;c=i[b+124>>2];if(c){d=0;while(1){i[i[b+120>>2]+(d<<2)>>2]=0;d=d+1|0;if((c|0)!=(d|0)){continue}break}}i[b+132>>2]=0}i[b+144>>2]=0;d=i[b+12>>2];c=i[d+28>>2];d=i[d+24>>2];i[e+32>>2]=-1;Sh(b+152|0,c-d>>2,e+32|0);d=i[b+72>>2];i[b+76>>2]=d;c=i[b+12>>2];c=i[c+4>>2]-i[c>>2]>>2;f=(c>>>0)/3|0;g:{if(i[b+80>>2]-d>>2>>>0>=f>>>0){break g}if(c>>>0>=3221225472){break b}f=f<<2;c=ho(f);i[b+76>>2]=c;i[b+72>>2]=c;i[b+80>>2]=c+f;if(!d){break g}bp(d)}i[b- -64>>2]=0;if(!ci(b)){b=ho(32);i[e+32>>2]=b;i[e+36>>2]=29;i[e+40>>2]=-2147483616;g[b+29|0]=0;d=j[11311]|j[11312]<<8|(j[11313]<<16|j[11314]<<24);c=j[11307]|j[11308]<<8|(j[11309]<<16|j[11310]<<24);g[b+21|0]=c;g[b+22|0]=c>>>8;g[b+23|0]=c>>>16;g[b+24|0]=c>>>24;g[b+25|0]=d;g[b+26|0]=d>>>8;g[b+27|0]=d>>>16;g[b+28|0]=d>>>24;d=j[11306]|j[11307]<<8|(j[11308]<<16|j[11309]<<24);c=j[11302]|j[11303]<<8|(j[11304]<<16|j[11305]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11298]|j[11299]<<8|(j[11300]<<16|j[11301]<<24);c=j[11294]|j[11295]<<8|(j[11296]<<16|j[11297]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11290]|j[11291]<<8|(j[11292]<<16|j[11293]<<24);c=j[11286]|j[11287]<<8|(j[11288]<<16|j[11289]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+32|0);if(g[e+43|0]>-1){break e}bp(i[e+32>>2]);break e}if(!xi(b)){b=ho(48);i[e+32>>2]=b;i[e+36>>2]=36;i[e+40>>2]=-2147483600;g[b+36|0]=0;d=j[11348]|j[11349]<<8|(j[11350]<<16|j[11351]<<24);g[b+32|0]=d;g[b+33|0]=d>>>8;g[b+34|0]=d>>>16;g[b+35|0]=d>>>24;d=j[11344]|j[11345]<<8|(j[11346]<<16|j[11347]<<24);c=j[11340]|j[11341]<<8|(j[11342]<<16|j[11343]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[11336]|j[11337]<<8|(j[11338]<<16|j[11339]<<24);c=j[11332]|j[11333]<<8|(j[11334]<<16|j[11335]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11328]|j[11329]<<8|(j[11330]<<16|j[11331]<<24);c=j[11324]|j[11325]<<8|(j[11326]<<16|j[11327]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11320]|j[11321]<<8|(j[11322]<<16|j[11323]<<24);c=j[11316]|j[11317]<<8|(j[11318]<<16|j[11319]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+32|0);if(g[e+43|0]>-1){break e}bp(i[e+32>>2]);break e}d=(i[b+176>>2]-i[b+172>>2]|0)/136|0;g[e+31|0]=d;c=b;f=i[i[b+4>>2]+44>>2];h=i[f+20>>2];if((h|0)<0?1:(h|0)<=0?l[f+16>>2]<=0:0){ca(f,i[f+4>>2],e+31|0,e+32|0);d=j[e+31|0]}i[c+284>>2]=d&255;c=i[b+12>>2];d=i[c>>2];c=i[c+4>>2];ei(r);i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;f=c-d|0;h:{if((f|0)>=1){s=b+96|0;d=d-c|0;d=((d|0)>(f|0)?d:f)>>>2|0;t=d>>>0>1?d:1;d=0;while(1){i:{c=(d>>>0)/3|0;p=c>>>5<<2;o=1<>2]>>2]&o){break i}if(Ql(i[b+12>>2],c)){break i}i[e+24>>2]=0;c=fi(b,c,e+24|0);qf(r,c);f=i[e+24>>2];if(c){c=-1;h=-1;m=-1;j:{if((f|0)==-1){break j}n=i[i[b+12>>2]>>2];c=i[n+(f<<2)>>2];k=f+1|0;k=(k>>>0)%3|0?k:f+ -2|0;if((k|0)!=-1){h=i[n+(k<<2)>>2]}k=f+((f>>>0)%3|0?-1:2)|0;if((k|0)==-1){break j}m=i[n+(k<<2)>>2]}n=i[b+84>>2];k=n+(c>>>3&536870908)|0;i[k>>2]=i[k>>2]|1<>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>2];k=i[b+104>>2];k:{if(c>>>0>>0){i[c>>2]=1;i[b+100>>2]=c+4;break k}h=i[s>>2];n=c-h|0;c=n>>2;m=c+1|0;if(m>>>0>=1073741824){break d}u=c<<2;k=k-h|0;c=k>>1;m=k>>2>>>0<536870911?c>>>0>>0?m:c:1073741823;c=0;l:{if(!m){break l}if(m>>>0>=1073741824){break b}c=ho(m<<2)}k=u+c|0;i[k>>2]=1;m=c+(m<<2)|0;k=k+4|0;if((n|0)>=1){hp(c,h,n)}i[b+104>>2]=m;i[b+100>>2]=k;i[b+96>>2]=c;if(!h){break k}bp(h)}c=p+i[q>>2]|0;i[c>>2]=o|i[c>>2];m=-1;if((f|0)!=-1){c=f+1|0;m=(c>>>0)%3|0?c:f+ -2|0}c=i[e+36>>2];o=i[e+40>>2];m:{if(c>>>0>>0){i[c>>2]=m;i[e+36>>2]=c+4;break m}h=i[e+32>>2];p=c-h|0;k=p>>2;n=k+1|0;if(n>>>0>=1073741824){break c}o=o-h|0;c=o>>1;n=o>>2>>>0<536870911?c>>>0>>0?n:c:1073741823;c=0;n:{if(!n){break n}if(n>>>0>=1073741824){break b}c=ho(n<<2)}o=c+(k<<2)|0;i[o>>2]=m;m=c+(n<<2)|0;n=o+4|0;if((p|0)>=1){hp(c,h,p)}i[e+40>>2]=m;i[e+36>>2]=n;i[e+32>>2]=c;if(!h){break m}bp(h)}if((f|0)==-1){break i}c=f+1|0;c=(c>>>0)%3|0?c:f+ -2|0;if((c|0)==-1){break i}c=i[i[i[b+12>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break i}f=(c>>>0)/3|0;if(i[i[q>>2]+(f>>>3&268435452)>>2]>>>f&1){break i}if(yi(b,c)){break i}b=ho(48);i[e+8>>2]=b;i[e+12>>2]=32;i[e+16>>2]=-2147483600;g[b+32|0]=0;d=j[11381]|j[11382]<<8|(j[11383]<<16|j[11384]<<24);c=j[11377]|j[11378]<<8|(j[11379]<<16|j[11380]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[11373]|j[11374]<<8|(j[11375]<<16|j[11376]<<24);c=j[11369]|j[11370]<<8|(j[11371]<<16|j[11372]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11365]|j[11366]<<8|(j[11367]<<16|j[11368]<<24);c=j[11361]|j[11362]<<8|(j[11363]<<16|j[11364]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11357]|j[11358]<<8|(j[11359]<<16|j[11360]<<24);c=j[11353]|j[11354]<<8|(j[11355]<<16|j[11356]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+8|0);if(g[e+19|0]>-1){break h}bp(i[e+8>>2]);break h}c=b;if((f|0)!=-1){h=f+1|0;f=(h>>>0)%3|0?h:f+ -2|0}else{f=-1}hi(c,f,1);if(yi(b,i[e+24>>2])){break i}b=ho(48);i[e+8>>2]=b;i[e+12>>2]=32;i[e+16>>2]=-2147483600;g[b+32|0]=0;d=j[11381]|j[11382]<<8|(j[11383]<<16|j[11384]<<24);c=j[11377]|j[11378]<<8|(j[11379]<<16|j[11380]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[11373]|j[11374]<<8|(j[11375]<<16|j[11376]<<24);c=j[11369]|j[11370]<<8|(j[11371]<<16|j[11372]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11365]|j[11366]<<8|(j[11367]<<16|j[11368]<<24);c=j[11361]|j[11362]<<8|(j[11363]<<16|j[11364]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11357]|j[11358]<<8|(j[11359]<<16|j[11360]<<24);c=j[11353]|j[11354]<<8|(j[11355]<<16|j[11356]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+8|0);if(g[e+19|0]>-1){break h}bp(i[e+8>>2]);break h}d=d+1|0;if((t|0)!=(d|0)){continue}break}}h=b+72|0;d=i[b+72>>2];f=i[b+76>>2];o:{if((d|0)==(f|0)){break o}c=f+ -4|0;if(c>>>0<=d>>>0){break o}while(1){m=i[d>>2];i[d>>2]=i[c>>2];i[c>>2]=m;d=d+4|0;c=c+ -4|0;if(d>>>0>>0){continue}break}}ii(h,f,i[e+32>>2],i[e+36>>2]);p:{if(i[b+176>>2]==i[b+172>>2]){break p}d=i[b+8>>2];c=i[d+100>>2];d=i[d+96>>2];g[e+8|0]=0;Uh(q,(c-d|0)/12|0,e+8|0);d=i[b+72>>2];c=i[b+76>>2];if((d|0)==(c|0)){break p}while(1){ji(b,i[d>>2]);d=d+4|0;if((c|0)!=(d|0)){continue}break}}zi(r);Jb(i[b+324>>2],i[i[b+4>>2]+44>>2]);Jb(i[b+168>>2],i[i[b+4>>2]+44>>2]);if(!li(b)){b=ho(32);i[e+8>>2]=b;i[e+12>>2]=28;i[e+16>>2]=-2147483616;g[b+28|0]=0;d=j[11410]|j[11411]<<8|(j[11412]<<16|j[11413]<<24);g[b+24|0]=d;g[b+25|0]=d>>>8;g[b+26|0]=d>>>16;g[b+27|0]=d>>>24;d=j[11406]|j[11407]<<8|(j[11408]<<16|j[11409]<<24);c=j[11402]|j[11403]<<8|(j[11404]<<16|j[11405]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11398]|j[11399]<<8|(j[11400]<<16|j[11401]<<24);c=j[11394]|j[11395]<<8|(j[11396]<<16|j[11397]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11390]|j[11391]<<8|(j[11392]<<16|j[11393]<<24);c=j[11386]|j[11387]<<8|(j[11388]<<16|j[11389]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;ro(a+4|0,e+8|0);if(g[e+19|0]>-1){break h}bp(i[e+8>>2]);break h}d=i[i[b+4>>2]+44>>2];c=i[d+20>>2];if((c|0)<0?1:(c|0)<=0?l[d+16>>2]<=0:0){ca(d,i[d+4>>2],i[b+232>>2],i[b+236>>2])}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}a=i[e+32>>2];if(!a){break e}i[e+36>>2]=a;bp(a)}F=e+48|0;return}Ho();x()}Ho();x()}za(11708);x()}function ap(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=F-16|0;F=p;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{if(a>>>0<=244){g=i[4823];f=a>>>0<11?16:a+11&-8;a=f>>>3|0;b=g>>>a|0;if(b&3){c=a+((b^-1)&1)|0;f=c<<3;b=i[f+19340>>2];a=b+8|0;d=i[b+8>>2];f=f+19332|0;m:{if((d|0)==(f|0)){q=19292,r=yp(-2,c)&g,i[q>>2]=r;break m}i[d+12>>2]=f;i[f+8>>2]=d}c=c<<3;i[b+4>>2]=c|3;b=b+c|0;i[b+4>>2]=i[b+4>>2]|1;break a}k=i[4825];if(f>>>0<=k>>>0){break l}if(b){b=b<>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;c=(c|b)+(a>>>b|0)|0;d=c<<3;b=i[d+19340>>2];a=i[b+8>>2];d=d+19332|0;n:{if((a|0)==(d|0)){g=yp(-2,c)&g;i[4823]=g;break n}i[a+12>>2]=d;i[d+8>>2]=a}a=b+8|0;i[b+4>>2]=f|3;e=b+f|0;c=c<<3;f=c-f|0;i[e+4>>2]=f|1;i[b+c>>2]=f;if(k){c=k>>>3|0;b=(c<<3)+19332|0;d=i[4828];c=1<>2]}i[b+8>>2]=d;i[c+12>>2]=d;i[d+12>>2]=b;i[d+8>>2]=c}i[4828]=e;i[4825]=f;break a}n=i[4824];if(!n){break l}a=(n&0-n)+ -1|0;b=a>>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;b=i[((c|b)+(a>>>b|0)<<2)+19596>>2];e=(i[b+4>>2]&-8)-f|0;c=b;while(1){p:{a=i[c+16>>2];if(!a){a=i[c+20>>2];if(!a){break p}}d=(i[a+4>>2]&-8)-f|0;c=d>>>0>>0;e=c?d:e;b=c?a:b;c=a;continue}break}o=b+f|0;if(o>>>0<=b>>>0){break k}m=i[b+24>>2];d=i[b+12>>2];if((d|0)!=(b|0)){a=i[b+8>>2];i[a+12>>2]=d;i[d+8>>2]=a;break b}c=b+20|0;a=i[c>>2];if(!a){a=i[b+16>>2];if(!a){break j}c=b+16|0}while(1){h=c;d=a;c=a+20|0;a=i[c>>2];if(a){continue}c=d+16|0;a=i[d+16>>2];if(a){continue}break}i[h>>2]=0;break b}f=-1;if(a>>>0>4294967231){break l}a=a+11|0;f=a&-8;k=i[4824];if(!k){break l}h=31;e=0-f|0;if(f>>>0<=16777215){b=a>>>8|0;a=b+1048320>>>16&8;c=b<>>16&4;g=c<>>16&2;a=(g<>>15|0)-(c|(a|b))|0;h=(a<<1|f>>>a+21&1)+28|0}c=i[(h<<2)+19596>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=f<<((h|0)==31?0:25-(h>>>1|0)|0);while(1){t:{g=(i[c+4>>2]&-8)-f|0;if(g>>>0>=e>>>0){break t}d=c;e=g;if(e){break t}e=0;a=c;break r}g=i[c+20>>2];c=i[((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|d)){a=2<>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;a=i[((c|b)+(a>>>b|0)<<2)+19596>>2]}if(!a){break q}}while(1){c=(i[a+4>>2]&-8)-f|0;b=c>>>0>>0;e=b?c:e;d=b?a:d;b=i[a+16>>2];if(b){a=b}else{a=i[a+20>>2]}if(a){continue}break}}if(!d|e>>>0>=i[4825]-f>>>0){break l}h=d+f|0;if(h>>>0<=d>>>0){break k}m=i[d+24>>2];b=i[d+12>>2];if((d|0)!=(b|0)){a=i[d+8>>2];i[a+12>>2]=b;i[b+8>>2]=a;break c}c=d+20|0;a=i[c>>2];if(!a){a=i[d+16>>2];if(!a){break i}c=d+16|0}while(1){g=c;b=a;c=a+20|0;a=i[c>>2];if(a){continue}c=b+16|0;a=i[b+16>>2];if(a){continue}break}i[g>>2]=0;break c}b=i[4825];if(b>>>0>=f>>>0){a=i[4828];c=b-f|0;u:{if(c>>>0>=16){i[4825]=c;d=a+f|0;i[4828]=d;i[d+4>>2]=c|1;i[a+b>>2]=c;i[a+4>>2]=f|3;break u}i[4828]=0;i[4825]=0;i[a+4>>2]=b|3;b=a+b|0;i[b+4>>2]=i[b+4>>2]|1}a=a+8|0;break a}d=i[4826];if(d>>>0>f>>>0){b=d-f|0;i[4826]=b;a=i[4829];c=a+f|0;i[4829]=c;i[c+4>>2]=b|1;i[a+4>>2]=f|3;a=a+8|0;break a}a=0;e=f+47|0;c=e;if(i[4941]){b=i[4943]}else{i[4944]=-1;i[4945]=-1;i[4942]=4096;i[4943]=4096;i[4941]=p+12&-16^1431655768;i[4946]=0;i[4934]=0;b=4096}g=c+b|0;h=0-b|0;c=g&h;if(c>>>0<=f>>>0){break a}b=i[4933];if(b){k=i[4931];m=k+c|0;if(m>>>0<=k>>>0|m>>>0>b>>>0){break a}}if(j[19736]&4){break f}v:{w:{b=i[4829];if(b){a=19740;while(1){k=i[a>>2];if(k+i[a+4>>2]>>>0>b>>>0?k>>>0<=b>>>0:0){break w}a=i[a+8>>2];if(a){continue}break}}b=cp(0);if((b|0)==-1){break g}g=c;a=i[4942];d=a+ -1|0;if(d&b){g=(c-b|0)+(b+d&0-a)|0}if(g>>>0<=f>>>0|g>>>0>2147483646){break g}a=i[4933];if(a){d=i[4931];h=d+g|0;if(h>>>0<=d>>>0|h>>>0>a>>>0){break g}}a=cp(g);if((b|0)!=(a|0)){break v}break e}g=h&g-d;if(g>>>0>2147483646){break g}b=cp(g);if((b|0)==(i[a>>2]+i[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|f+48>>>0<=g>>>0)){b=i[4943];b=b+(e-g|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((cp(b)|0)!=-1){g=b+g|0;b=a;break e}cp(0-g|0);break g}b=a;if((a|0)!=-1){break e}break g}x()}d=0;break b}b=0;break c}if((b|0)!=-1){break e}}i[4934]=i[4934]|4}if(c>>>0>2147483646){break d}b=cp(c);a=cp(0);if(b>>>0>=a>>>0|(b|0)==-1|(a|0)==-1){break d}g=a-b|0;if(g>>>0<=f+40>>>0){break d}}a=i[4931]+g|0;i[4931]=a;if(a>>>0>l[4932]){i[4932]=a}x:{y:{z:{e=i[4829];if(e){a=19740;while(1){c=i[a>>2];d=i[a+4>>2];if((c+d|0)==(b|0)){break z}a=i[a+8>>2];if(a){continue}break}break y}a=i[4827];if(!(b>>>0>=a>>>0?a:0)){i[4827]=b}a=0;i[4936]=g;i[4935]=b;i[4831]=-1;i[4832]=i[4941];i[4938]=0;while(1){c=a<<3;d=c+19332|0;i[c+19340>>2]=d;i[c+19344>>2]=d;a=a+1|0;if((a|0)!=32){continue}break}a=g+ -40|0;c=b+8&7?-8-b&7:0;d=a-c|0;i[4826]=d;c=b+c|0;i[4829]=c;i[c+4>>2]=d|1;i[(a+b|0)+4>>2]=40;i[4830]=i[4945];break x}if(j[a+12|0]&8|b>>>0<=e>>>0|c>>>0>e>>>0){break y}i[a+4>>2]=d+g;a=e+8&7?-8-e&7:0;b=a+e|0;i[4829]=b;c=i[4826]+g|0;a=c-a|0;i[4826]=a;i[b+4>>2]=a|1;i[(c+e|0)+4>>2]=40;i[4830]=i[4945];break x}d=i[4827];if(b>>>0>>0){i[4827]=b;d=0}c=b+g|0;a=19740;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=i[a>>2]){a=i[a+8>>2];if(a){continue}break F}break}if(!(j[a+12|0]&8)){break E}}a=19740;while(1){c=i[a>>2];if(c>>>0<=e>>>0){d=c+i[a+4>>2]|0;if(d>>>0>e>>>0){break D}}a=i[a+8>>2];continue}}i[a>>2]=b;i[a+4>>2]=i[a+4>>2]+g;m=(b+8&7?-8-b&7:0)+b|0;i[m+4>>2]=f|3;b=c+(c+8&7?-8-c&7:0)|0;a=(b-m|0)-f|0;h=f+m|0;if((b|0)==(e|0)){i[4829]=h;a=i[4826]+a|0;i[4826]=a;i[h+4>>2]=a|1;break B}if(i[4828]==(b|0)){i[4828]=h;a=i[4825]+a|0;i[4825]=a;i[h+4>>2]=a|1;i[a+h>>2]=a;break B}c=i[b+4>>2];if((c&3)==1){n=c&-8;G:{if(c>>>0<=255){f=c>>>3|0;c=i[b+8>>2];d=i[b+12>>2];if((d|0)==(c|0)){q=19292,r=i[4823]&yp(-2,f),i[q>>2]=r;break G}i[c+12>>2]=d;i[d+8>>2]=c;break G}k=i[b+24>>2];g=i[b+12>>2];H:{if((g|0)!=(b|0)){c=i[b+8>>2];i[c+12>>2]=g;i[g+8>>2]=c;break H}I:{e=b+20|0;f=i[e>>2];if(f){break I}e=b+16|0;f=i[e>>2];if(f){break I}g=0;break H}while(1){c=e;g=f;e=f+20|0;f=i[e>>2];if(f){continue}e=g+16|0;f=i[g+16>>2];if(f){continue}break}i[c>>2]=0}if(!k){break G}c=i[b+28>>2];d=(c<<2)+19596|0;J:{if(i[d>>2]==(b|0)){i[d>>2]=g;if(g){break J}q=19296,r=i[4824]&yp(-2,c),i[q>>2]=r;break G}i[k+(i[k+16>>2]==(b|0)?16:20)>>2]=g;if(!g){break G}}i[g+24>>2]=k;c=i[b+16>>2];if(c){i[g+16>>2]=c;i[c+24>>2]=g}c=i[b+20>>2];if(!c){break G}i[g+20>>2]=c;i[c+24>>2]=g}b=b+n|0;a=a+n|0}i[b+4>>2]=i[b+4>>2]&-2;i[h+4>>2]=a|1;i[a+h>>2]=a;if(a>>>0<=255){b=a>>>3|0;a=(b<<3)+19332|0;c=i[4823];b=1<>2]}i[a+8>>2]=h;i[b+12>>2]=h;i[h+12>>2]=a;i[h+8>>2]=b;break B}e=31;if(a>>>0<=16777215){c=a>>>8|0;b=c+1048320>>>16&8;d=c<>>16&4;f=d<>>16&2;b=(f<>>15|0)-(d|(b|c))|0;e=(b<<1|a>>>b+21&1)+28|0}i[h+28>>2]=e;i[h+16>>2]=0;i[h+20>>2]=0;b=(e<<2)+19596|0;c=i[4824];d=1<>2]=h;i[h+24>>2]=b;break L}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=i[b>>2];while(1){c=b;if((i[b+4>>2]&-8)==(a|0)){break C}b=e>>>29|0;e=e<<1;d=(c+(b&4)|0)+16|0;b=i[d>>2];if(b){continue}break}i[d>>2]=h;i[h+24>>2]=c}i[h+12>>2]=h;i[h+8>>2]=h;break B}a=g+ -40|0;c=b+8&7?-8-b&7:0;h=a-c|0;i[4826]=h;c=b+c|0;i[4829]=c;i[c+4>>2]=h|1;i[(a+b|0)+4>>2]=40;i[4830]=i[4945];a=(d+(d+ -39&7?39-d&7:0)|0)+ -47|0;c=a>>>0>>0?e:a;i[c+4>>2]=27;a=i[4938];i[c+16>>2]=i[4937];i[c+20>>2]=a;a=i[4936];i[c+8>>2]=i[4935];i[c+12>>2]=a;i[4937]=c+8;i[4936]=g;i[4935]=b;i[4938]=0;a=c+24|0;while(1){i[a+4>>2]=7;b=a+8|0;a=a+4|0;if(d>>>0>b>>>0){continue}break}if((c|0)==(e|0)){break x}i[c+4>>2]=i[c+4>>2]&-2;d=c-e|0;i[e+4>>2]=d|1;i[c>>2]=d;if(d>>>0<=255){b=d>>>3|0;a=(b<<3)+19332|0;c=i[4823];b=1<>2]}i[a+8>>2]=e;i[b+12>>2]=e;i[e+12>>2]=a;i[e+8>>2]=b;break x}a=31;i[e+16>>2]=0;i[e+20>>2]=0;if(d>>>0<=16777215){b=d>>>8|0;a=b+1048320>>>16&8;c=b<>>16&4;g=c<>>16&2;a=(g<>>15|0)-(c|(a|b))|0;a=(a<<1|d>>>a+21&1)+28|0}i[e+28>>2]=a;b=(a<<2)+19596|0;c=i[4824];g=1<>2]=e;i[e+24>>2]=b;break N}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);b=i[b>>2];while(1){c=b;if((d|0)==(i[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;g=(c+(b&4)|0)+16|0;b=i[g>>2];if(b){continue}break}i[g>>2]=e;i[e+24>>2]=c}i[e+12>>2]=e;i[e+8>>2]=e;break x}a=i[c+8>>2];i[a+12>>2]=h;i[c+8>>2]=h;i[h+24>>2]=0;i[h+12>>2]=c;i[h+8>>2]=a}a=m+8|0;break a}a=i[c+8>>2];i[a+12>>2]=e;i[c+8>>2]=e;i[e+24>>2]=0;i[e+12>>2]=c;i[e+8>>2]=a}a=i[4826];if(a>>>0<=f>>>0){break d}b=a-f|0;i[4826]=b;a=i[4829];c=a+f|0;i[4829]=c;i[c+4>>2]=b|1;i[a+4>>2]=f|3;a=a+8|0;break a}i[4805]=48;a=0;break a}O:{if(!m){break O}a=i[d+28>>2];c=(a<<2)+19596|0;P:{if(i[c>>2]==(d|0)){i[c>>2]=b;if(b){break P}k=yp(-2,a)&k;i[4824]=k;break O}i[m+(i[m+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break O}}i[b+24>>2]=m;a=i[d+16>>2];if(a){i[b+16>>2]=a;i[a+24>>2]=b}a=i[d+20>>2];if(!a){break O}i[b+20>>2]=a;i[a+24>>2]=b}Q:{if(e>>>0<=15){a=e+f|0;i[d+4>>2]=a|3;a=a+d|0;i[a+4>>2]=i[a+4>>2]|1;break Q}i[d+4>>2]=f|3;i[h+4>>2]=e|1;i[e+h>>2]=e;if(e>>>0<=255){b=e>>>3|0;a=(b<<3)+19332|0;c=i[4823];b=1<>2]}i[a+8>>2]=h;i[b+12>>2]=h;i[h+12>>2]=a;i[h+8>>2]=b;break Q}a=31;if(e>>>0<=16777215){b=e>>>8|0;a=b+1048320>>>16&8;c=b<>>16&4;f=c<>>16&2;a=(f<>>15|0)-(c|(a|b))|0;a=(a<<1|e>>>a+21&1)+28|0}i[h+28>>2]=a;i[h+16>>2]=0;i[h+20>>2]=0;b=(a<<2)+19596|0;S:{c=1<>2]=h;break T}a=e<<((a|0)==31?0:25-(a>>>1|0)|0);f=i[b>>2];while(1){b=f;if((i[b+4>>2]&-8)==(e|0)){break S}c=a>>>29|0;a=a<<1;c=(b+(c&4)|0)+16|0;f=i[c>>2];if(f){continue}break}i[c>>2]=h}i[h+24>>2]=b;i[h+12>>2]=h;i[h+8>>2]=h;break Q}a=i[b+8>>2];i[a+12>>2]=h;i[b+8>>2]=h;i[h+24>>2]=0;i[h+12>>2]=b;i[h+8>>2]=a}a=d+8|0;break a}U:{if(!m){break U}a=i[b+28>>2];c=(a<<2)+19596|0;V:{if(i[c>>2]==(b|0)){i[c>>2]=d;if(d){break V}q=19296,r=yp(-2,a)&n,i[q>>2]=r;break U}i[(i[m+16>>2]==(b|0)?16:20)+m>>2]=d;if(!d){break U}}i[d+24>>2]=m;a=i[b+16>>2];if(a){i[d+16>>2]=a;i[a+24>>2]=d}a=i[b+20>>2];if(!a){break U}i[d+20>>2]=a;i[a+24>>2]=d}W:{if(e>>>0<=15){a=e+f|0;i[b+4>>2]=a|3;a=a+b|0;i[a+4>>2]=i[a+4>>2]|1;break W}i[b+4>>2]=f|3;i[o+4>>2]=e|1;i[e+o>>2]=e;if(k){c=k>>>3|0;a=(c<<3)+19332|0;d=i[4828];c=1<>2]}i[a+8>>2]=d;i[c+12>>2]=d;i[d+12>>2]=a;i[d+8>>2]=c}i[4828]=o;i[4825]=e}a=b+8|0}F=p+16|0;return a|0}function Cn(a,b,c,d,e,f,g,h,j){var k=0,l=0,m=0,n=0,o=0,p=0,q=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,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;o=F-192|0;F=o;A=h;J=j&65535;q=d;t=e&65535;D=(e^j)&-2147483648;p=j>>>16&32767;a:{w=e>>>16&32767;b:{c:{if(p+ -1>>>0<32766?w+ -1>>>0<=32765:0){break c}n=e&2147483647;k=n;m=d;if(!(!d&(k|0)==2147418112?!(b|c):(k|0)==2147418112&d>>>0<0|k>>>0<2147418112)){L=d;D=e|32768;break b}n=j&2147483647;e=n;d=h;if(!(!d&(e|0)==2147418112?!(f|g):(e|0)==2147418112&d>>>0<0|e>>>0<2147418112)){L=h;D=j|32768;b=f;c=g;break b}if(!(b|m|(k^2147418112|c))){if(!(d|f|(e^2147418112|g))){b=0;c=0;D=2147450880;break b}D=D|2147418112;b=0;c=0;break b}if(!(d|f|(e^2147418112|g))){b=0;c=0;break b}if(!(b|m|(c|k))){break a}if(!(d|f|(e|g))){D=D|2147418112;b=0;c=0;break b}if((k|0)==65535|k>>>0<65535){j=b;d=!(q|t);h=d<<6;k=r(d?b:q)+32|0;b=r(d?c:t);b=h+((b|0)==32?k:b)|0;sn(o+176|0,j,c,q,t,b+ -15|0);l=16-b|0;q=i[o+184>>2];t=i[o+188>>2];c=i[o+180>>2];b=i[o+176>>2]}if(e>>>0>65535){break c}d=!(A|J);e=d<<6;h=r(d?f:A)+32|0;d=r(d?g:J);d=e+((d|0)==32?h:d)|0;sn(o+160|0,f,g,A,J,d+ -15|0);l=(d+l|0)+ -16|0;A=i[o+168>>2];J=i[o+172>>2];f=i[o+160>>2];g=i[o+164>>2]}e=J|65536;K=e;P=A;d=A;n=e<<15|d>>>17;d=d<<15|g>>>17;h=-102865788-d|0;e=n;k=e;j=1963258675-(k+(4192101508>>0)|0)|0;Bn(o+144|0,d,k,h,j);m=i[o+152>>2];Bn(o+128|0,0-m|0,0-(i[o+156>>2]+(0>>0)|0)|0,h,j);h=i[o+136>>2];j=h<<1|i[o+132>>2]>>>31;h=i[o+140>>2]<<1|h>>>31;Bn(o+112|0,j,h,d,k);m=h;h=i[o+120>>2];Bn(o+96|0,j,m,0-h|0,0-(i[o+124>>2]+(0>>0)|0)|0);h=i[o+104>>2];j=h<<1|i[o+100>>2]>>>31;h=i[o+108>>2]<<1|h>>>31;Bn(o+80|0,j,h,d,k);m=h;h=i[o+88>>2];Bn(o- -64|0,j,m,0-h|0,0-(i[o+92>>2]+(0>>0)|0)|0);h=i[o+72>>2];j=h<<1|i[o+68>>2]>>>31;h=i[o+76>>2]<<1|h>>>31;Bn(o+48|0,j,h,d,k);m=h;h=i[o+56>>2];Bn(o+32|0,j,m,0-h|0,0-(i[o+60>>2]+(0>>0)|0)|0);h=i[o+40>>2];j=h<<1|i[o+36>>2]>>>31;h=i[o+44>>2]<<1|h>>>31;Bn(o+16|0,j,h,d,k);k=h;h=i[o+24>>2];Bn(o,j,k,0-h|0,0-(i[o+28>>2]+(0>>0)|0)|0);N=(w-p|0)+l|0;h=i[o+8>>2];m=i[o+12>>2]<<1|h>>>31;j=h<<1;n=m+ -1|0;j=(i[o+4>>2]>>>31|j)+ -1|0;if((j|0)!=-1){n=n+1|0}h=j;m=0;B=m;s=e;l=0;w=up(h,m,e,l);e=H;u=e;y=n;p=0;h=d;m=up(n,p,d,0);d=m+w|0;k=H+e|0;e=d;k=d>>>0>>0?k+1|0:k;m=0;n=(k|0)==(u|0)&e>>>0>>0|k>>>0>>0;w=up(s,l,y,p);l=w+k|0;k=H+(m|n)|0;k=l>>>0>>0?k+1|0:k;m=l;n=e;e=0;h=up(j,B,h,v);d=e+h|0;l=H+n|0;l=d>>>0>>0?l+1|0:l;w=d;h=d;d=l;e=(n|0)==(d|0)&h>>>0>>0|d>>>0>>0;h=m+e|0;if(h>>>0>>0){k=k+1|0}C=h;h=k;e=g;z=(e&131071)<<15|f>>>17;s=up(j,B,z,0);e=H;v=e;k=f;x=k<<15&-32768;k=up(y,p,x,0);m=k+s|0;l=H+e|0;l=m>>>0>>0?l+1|0:l;e=l;G=up(j,B,x,G);x=0+G|0;k=m;l=k+H|0;l=x>>>0>>0?l+1|0:l;l=(k|0)==(l|0)&x>>>0>>0|l>>>0>>0;k=(e|0)==(v|0)&k>>>0>>0|e>>>0>>0;m=e;e=up(y,p,z,E)+e|0;n=k+H|0;n=e>>>0>>0?n+1|0:n;k=e;e=l+k|0;m=n;m=e>>>0>>0?m+1|0:m;n=e;e=w+e|0;k=m+d|0;k=e>>>0>>0?k+1|0:k;l=h;u=k;d=(d|0)==(k|0)&e>>>0>>0|k>>>0>>0;h=d+C|0;if(h>>>0>>0){l=l+1|0}k=l;d=(e|0)!=0|(u|0)!=0;h=h+d|0;if(h>>>0>>0){k=k+1|0}n=h;h=0-h|0;s=0;w=up(h,s,j,B);d=H;v=d;x=up(y,p,h,s);h=H;C=h;z=0-((0>>0)+k|0)|0;k=0;s=up(j,B,z,k);n=s+x|0;l=H+h|0;l=n>>>0>>0?l+1|0:l;h=n;m=h;s=0+w|0;n=d+m|0;n=s>>>0>>0?n+1|0:n;m=s;d=n;n=(v|0)==(d|0)&m>>>0>>0|d>>>0>>0;m=(l|0)==(C|0)&h>>>0>>0|l>>>0>>0;h=up(y,p,z,k)+l|0;k=m+H|0;k=h>>>0>>0?k+1|0:k;m=h;h=n+m|0;if(h>>>0>>0){k=k+1|0}z=h;h=k;n=s;m=0-((0>>0)+u|0)|0;e=0-e|0;E=m;u=0;C=up(m,u,j,B);x=H;v=e;G=0;m=up(e,G,y,p);e=m+C|0;l=H+x|0;l=e>>>0>>0?l+1|0:l;m=e;e=l;v=up(j,B,v,G);j=0+v|0;k=m;l=k+H|0;l=j>>>0>>0?l+1|0:l;l=(k|0)==(l|0)&j>>>0>>0|l>>>0>>0;k=(e|0)==(x|0)&k>>>0>>0|e>>>0>>0;j=e;e=up(E,u,y,p)+e|0;m=k+H|0;m=e>>>0>>0?m+1|0:m;j=e;e=l+e|0;k=m;k=e>>>0>>0?k+1|0:k;j=e;e=e+n|0;k=k+d|0;k=e>>>0>>0?k+1|0:k;j=e;l=h;e=k;d=(d|0)==(k|0)&j>>>0>>0|k>>>0>>0;h=d+z|0;if(h>>>0>>0){l=l+1|0}d=h;k=l;l=d;n=e+ -1|0;d=j+ -2|0;if(d>>>0<4294967294){n=n+1|0}h=d;m=d;d=n;e=(e|0)==(d|0)&m>>>0>>0|d>>>0>>0;j=l+e|0;if(j>>>0>>0){k=k+1|0}e=j+ -1|0;l=k+ -1|0;l=(e|0)!=-1?l+1|0:l;j=0;y=j;p=e;m=q;x=m<<2|c>>>30;z=0;u=up(e,j,x,z);j=H;m=j;j=c;E=(j&1073741823)<<2|b>>>30;w=0;G=l;j=0;k=up(E,w,l,j);e=k+u|0;n=H+m|0;n=e>>>0>>0?n+1|0:n;k=e;s=n;v=(m|0)==(n|0)&k>>>0>>0|n>>>0>>0;m=n;n=0;u=n;l=0;C=d;I=((t&1073741823)<<2|q>>>30)&-262145|262144;e=up(d,n,I,0);d=e+k|0;m=H+m|0;m=d>>>0>>0?m+1|0:m;q=d;e=m;d=(s|0)==(e|0)&d>>>0>>0|e>>>0>>0;m=d+v|0;if(m>>>0>>0){l=1}c=m;m=up(G,j,I,M);d=c+m|0;k=H+l|0;s=d;n=d>>>0>>0?k+1|0:k;l=up(p,y,I,M);k=H;t=up(x,z,G,j);d=t+l|0;m=H+k|0;m=d>>>0>>0?m+1|0:m;t=d;d=m;m=(k|0)==(d|0)&t>>>0>>0|d>>>0>>0;s=d+s|0;l=m+n|0;k=s;m=k>>>0>>0?l+1|0:l;c=k;n=e+t|0;l=0;d=l+q|0;if(d>>>0>>0){n=n+1|0}t=d;k=d;d=n;e=(e|0)==(d|0)&k>>>0>>0|d>>>0>>0;k=c+e|0;if(k>>>0>>0){m=m+1|0}Q=k;e=t;l=d;q=up(E,w,C,u);n=H;s=h;v=up(h,0,x,z);h=v+q|0;k=H+n|0;k=h>>>0>>0?k+1|0:k;B=h;v=h;h=k;q=(n|0)==(k|0)&v>>>0>>0|k>>>0>>0;c=e;k=0;S=q;O=b<<2&-4;q=up(p,y,O,0);e=q+v|0;n=H+h|0;n=e>>>0>>0?n+1|0:n;v=e;q=e;e=n;h=(h|0)==(e|0)&q>>>0>>0|e>>>0>>0;n=S+h|0;if(n>>>0>>0){k=1}h=c+n|0;l=k+l|0;l=h>>>0>>0?l+1|0:l;q=h;n=m;h=l;d=(d|0)==(l|0)&q>>>0>>0|l>>>0>>0;m=d+Q|0;if(m>>>0>>0){n=n+1|0}c=m;t=q;B=h;Q=up(G,j,O,R);G=H;j=up(s,T,I,M);d=j+Q|0;m=H+G|0;m=d>>>0>>0?m+1|0:m;I=d;k=up(x,z,C,u);d=d+k|0;j=m;l=m+H|0;l=d>>>0>>0?l+1|0:l;x=d;m=up(p,y,E,w);d=d+m|0;k=H+l|0;p=d;k=d>>>0>>0?k+1|0:k;y=0;m=n;d=k;k=(k|0)==(l|0)&p>>>0>>0|k>>>0>>0;n=(j|0)==(G|0)&I>>>0>>0|j>>>0>>0;j=(j|0)==(l|0)&x>>>0>>0|l>>>0>>0;n=n+j|0;n>>>0>>0;l=n;j=k+l|0;l=j;k=d|0;j=k+t|0;l=(l|y)+B|0;l=j>>>0>>0?l+1|0:l;B=j;t=l;h=(h|0)==(l|0)&j>>>0>>0|l>>>0>>0;j=h+c|0;if(j>>>0>>0){m=m+1|0}z=j;j=m;q=B;y=t;l=v;C=up(C,u,O,R);u=H;m=up(E,w,s,T);h=m+C|0;n=H+u|0;n=h>>>0>>0?n+1|0:n;m=n;n=0;k=(m|0)==(u|0)&h>>>0>>0|m>>>0>>0;h=m+l|0;l=(k|n)+e|0;l=h>>>0>>0?l+1|0:l;m=h;k=m;k=(e|0)==(l|0)&k>>>0>>0|l>>>0>>0;e=l;c=k;l=p;p=0;d=p+m|0;k=e+l|0;k=d>>>0

>>0?k+1|0:k;d=(e|0)==(k|0)&d>>>0>>0|k>>>0>>0;e=c+d|0;if(e>>>0>>0){n=1}d=e+q|0;m=n+y|0;h=d;k=j;m=d>>>0>>0?m+1|0:m;j=m;d=(t|0)==(m|0)&d>>>0>>0|m>>>0>>0;e=d+z|0;if(e>>>0>>0){k=k+1|0}d=e;e=k;d:{if((k|0)==131071|k>>>0<131071){m=h;y=0;x=0;n=up(m,y,f,x);l=H;k=b<<17;b=0;c=(n|0)!=0|(l|0)!=0;q=b-c|0;I=k-(b>>>0>>0)|0;w=0-n|0;u=0-((0>>0)+l|0)|0;c=0;z=up(j,c,f,x);b=H;E=b;p=0;l=up(m,y,g,p);k=l+z|0;n=H+b|0;n=k>>>0>>0?n+1|0:n;b=k;l=k;s=0;k=s;v=l;k=(l|0)==(u|0)&w>>>0>>0|u>>>0>>0;B=q-k|0;q=I-(q>>>0>>0)|0;k=up(d,0,f,x);l=H;t=up(m,y,A,0);k=t+k|0;m=H+l|0;m=k>>>0>>0?m+1|0:m;t=up(j,c,g,p);k=t+k|0;l=H+m|0;l=k>>>0>>0?l+1|0:l;m=l;l=(n|0)==(E|0)&b>>>0>>0|n>>>0>>0;b=n+k|0;l=l+m|0;l=b>>>0>>0?l+1|0:l;n=b;b=l;m=up(h,j,K,0);l=H;t=n;n=up(f,g,e,0);m=n+m|0;k=H+l|0;k=m>>>0>>0?k+1|0:k;n=up(d,e,g,p);m=n+m|0;l=H+k|0;k=m;m=up(j,c,A,J);c=k+m|0;k=c;m=0;c=t+m|0;k=b+k|0;b=c;t=B-b|0;c=q-((B>>>0>>0)+(b>>>0>>0?k+1|0:k)|0)|0;N=N+ -1|0;A=w-s|0;b=u-((w>>>0>>0)+v|0)|0;break d}B=j>>>1|0;n=0;m=b<<16;c=0;l=d<<31;h=(j&1)<<31|h>>>1;j=j>>>1|l;z=0;p=f;E=0;b=up(h,z,p,E);k=H;l=k;k=(b|0)!=0|(k|0)!=0;u=c-k|0;M=m-(c>>>0>>0)|0;s=0-b|0;v=0-((0>>0)+l|0)|0;q=0;w=up(h,z,g,q);b=H;I=b;m=n;l=e<<31|d>>>1;n=d<<31|B;O=l|m;m=up(n,0,p,E);c=m+w|0;k=H+b|0;k=c>>>0>>0?k+1|0:k;b=k;k=c;x=k;y=0;m=(k|0)==(v|0)&s>>>0>>0|v>>>0>>0;C=u-m|0;u=M-(u>>>0>>0)|0;m=up(h,j,K,0);l=H;k=up(p,g,e>>>1|0,0);m=k+m|0;l=H+l|0;l=m>>>0>>0?l+1|0:l;d=(e&1)<<31|d>>>1;e=e>>>1|0;M=up(d,e,g,q);m=M+m|0;k=H+l|0;l=up(n,O,A,J);m=l+m|0;J=0;k=up(g,q,n,R);l=H;p=up(d,0,p,E);n=p+k|0;k=H+l|0;k=n>>>0

>>0?k+1|0:k;A=up(h,z,A,0);n=A+n|0;l=H+k|0;l=n>>>0>>0?l+1|0:l;A=n;n=((b|0)==(I|0)&c>>>0>>0|b>>>0>>0)+l|0;c=b;b=b+A|0;if(b>>>0>>0){n=n+1|0}c=b;b=b+J|0;k=m+n|0;k=b>>>0>>0?k+1|0:k;t=C-b|0;c=u-((C>>>0>>0)+k|0)|0;A=s-y|0;b=v-((s>>>0>>0)+x|0)|0}if((N|0)>=16384){D=D|2147418112;b=0;c=0;break b}m=N+16383|0;if((N|0)<=-16383){e:{if(m){break e}m=j;p=A;l=b<<1|p>>>31;n=p<<1;g=(g|0)==(l|0)&n>>>0>f>>>0|l>>>0>g>>>0;n=e&65535;f=t;l=c<<1|f>>>31;c=f<<1|b>>>31;e=c;b=(e|0)==(P|0)&(l|0)==(K|0)?g:(K|0)==(l|0)&e>>>0>P>>>0|l>>>0>K>>>0;c=b+h|0;if(c>>>0>>0){m=m+1|0}b=c;e=b;c=m;e=d+((j|0)==(m|0)&e>>>0>>0|m>>>0>>0)|0;if(e>>>0>>0){n=n+1|0}d=n;if(!(d&65536)){break e}L=e|L;D=d|D;break b}b=0;c=0;break b}k=j;e=e&65535;p=A;n=b<<1|p>>>31;p=p<<1;g=(g|0)==(n|0)&p>>>0>=f>>>0|n>>>0>g>>>0;f=t;n=c<<1|f>>>31;c=f<<1|b>>>31;b=(c|0)==(P|0)&(n|0)==(K|0)?g:(K|0)==(n|0)&c>>>0>=P>>>0|n>>>0>K>>>0;c=b+h|0;if(c>>>0>>0){k=k+1|0}b=c;c=k;f=d;d=((j|0)==(k|0)&b>>>0>>0|k>>>0>>0)+d|0;k=m<<16|e;L=d|L;D=D|(d>>>0>>0?k+1|0:k)}i[a>>2]=b;i[a+4>>2]=c;i[a+8>>2]=L;i[a+12>>2]=D;F=o+192|0;return}i[a>>2]=0;i[a+4>>2]=0;b=!(d|f|(e|g));i[a+8>>2]=b?0:L;i[a+12>>2]=b?2147450880:D;F=o+192|0}function Gd(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 h=0,k=0,l=0,m=0,n=0,p=0,r=0,t=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=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,_=0;k=F-224|0;F=k;i[a+8>>2]=e;l=a+32|0;h=i[l>>2];f=i[a+36>>2]-h>>2;a:{if(f>>>0>>0){Bd(l,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=h+(e<<2)}b:{if(!d){break b}m=1;h=i[b>>2];c:{if((d|0)<=1){l=h;break c}l=h;while(1){f=i[(m<<2)+b>>2];n=(f|0)<(l|0);l=n?f:l;h=n?h:(f|0)>(h|0)?f:h;m=m+1|0;if((m|0)!=(d|0)){continue}break}}i[a+16>>2]=h;i[a+12>>2]=l;d=l;f=(h>>31)-((h>>>0>>0)+(d>>31)|0)|0;d=h-d|0;if(!f&d>>>0>2147483646|f>>>0>0){break b}d=d+1|0;i[a+20>>2]=d;f=(d|0)/2|0;i[a+24>>2]=f;i[a+28>>2]=0-f;if(d&1){break b}i[a+24>>2]=f+ -1}W=i[a+52>>2];y=i[a+48>>2];i[k+184>>2]=0;i[k+188>>2]=0;i[k+176>>2]=0;i[k+180>>2]=0;i[k+168>>2]=0;i[k+172>>2]=0;d=k+160|0;i[d>>2]=0;i[d+4>>2]=0;i[k+152>>2]=0;i[k+156>>2]=0;i[k+144>>2]=0;i[k+148>>2]=0;d:{if(!e){m=0;d=0;break d}Bd(k+144|0,e);m=i[d>>2];d=i[k+156>>2]}f=m-d>>2;e:{if(f>>>0>=e>>>0){if(f>>>0<=e>>>0){break e}i[k+160>>2]=d+(e<<2);break e}Bd(k+144|12,e-f|0)}f=i[k+168>>2];d=i[k+172>>2]-f>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}i[k+172>>2]=f+(e<<2);break f}Bd(k+168|0,e-d|0)}f=i[k+180>>2];d=i[k+184>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}i[k+184>>2]=f+(e<<2);break g}Bd(k+180|0,e-d|0)}i[k+136>>2]=0;i[k+128>>2]=0;i[k+132>>2]=0;h:{i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;f=ho(d);i[k+128>>2]=f;l=d+f|0;i[k+136>>2]=l;ip(f,0,d);i[k+132>>2]=l}K=a+152|0;f=i[a+152>>2];d=i[a+156>>2]-f>>2;j:{if(d>>>0>>0){Bd(K,e-d|0);break j}if(d>>>0<=e>>>0){break j}i[a+156>>2]=f+(e<<2)}i[k+104>>2]=0;i[k+108>>2]=0;i[k+96>>2]=0;i[k+100>>2]=0;i[k+88>>2]=0;i[k+92>>2]=0;i[k+80>>2]=0;i[k+84>>2]=0;i[k+72>>2]=0;i[k+76>>2]=0;d=k- -64|0;i[d>>2]=0;i[d+4>>2]=0;i[k+56>>2]=0;i[k+60>>2]=0;i[k+48>>2]=0;i[k+52>>2]=0;if(e){d=e<<2;C=ho(d);d=ip(C,0,d)+d|0}else{d=0}f=i[a+56>>2];m=i[f>>2];f=i[f+4>>2]-m|0;if((f|0)<5){break h}P=d;J=f>>>2|0;l=J+ -1|0;if(f>>2>>>0>l>>>0){Q=e<<2;L=a+112|0;X=k+125|0;R=k+36|0;S=k+24|0;M=k+20|0;Y=M+24|0;T=M+16|0;G=(e|0)<1;while(1){n=0;D=l;d=i[(l<<2)+m>>2];k:{if((d|0)==-1){break k}r=d+((d>>>0)%3|0?-1:2)|0;z=r>>>5|0;l=1;B=1<>2];p=0;m=d;while(1){l:{if(i[I+(m>>>3&536870908)>>2]>>>m&1){break l}f=i[i[i[y+64>>2]+12>>2]+(m<<2)>>2];if((f|0)==-1){break l}n=i[W>>2];h=i[y+28>>2];A=i[n+(i[h+(f<<2)>>2]<<2)>>2];if((A|0)>=(D|0)){break l}t=f+1|0;t=i[n+(i[h+(((t>>>0)%3|0?t:f+ -2|0)<<2)>>2]<<2)>>2];if((t|0)>=(D|0)){break l}f=i[n+(i[h+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(D|0)){break l}if(!G){n=i[(k+144|0)+o(p,12)>>2];f=o(e,f);t=o(e,t);A=o(e,A);h=0;while(1){i[n+(h<<2)>>2]=(i[(f+h<<2)+b>>2]+i[(h+t<<2)+b>>2]|0)-i[(h+A<<2)+b>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}n=4;p=p+1|0;if((p|0)==4){break k}}m:{if(l&1){h=-1;f=m+1|0;f=(f>>>0)%3|0?f:m+ -2|0;if((f|0)==-1|i[i[y>>2]+(f>>>3&536870908)>>2]>>>f&1){break m}f=i[i[i[y+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break m}h=f+1|0;h=(h>>>0)%3|0?h:f+ -2|0;break m}h=-1;f=((m>>>0)%3|0?-1:2)+m|0;if((f|0)==-1|i[i[y>>2]+(f>>>3&536870908)>>2]>>>f&1){break m}f=i[i[i[y+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break m}if((f>>>0)%3|0){h=f+ -1|0;break m}h=f+2|0}if((d|0)==(h|0)){n=p;break k}m=h;f=(h|0)!=-1;h=(f|l^-1)&1;m=h?m:-1;l=f&l;if(!((r|0)==-1|h)){if(B&i[i[y>>2]+(z<<2)>>2]){n=p;break k}f=i[i[i[y+64>>2]+12>>2]+(r<<2)>>2];if((f|0)==-1){n=p;break k}if((f>>>0)%3|0){m=f+ -1|0}else{m=f+2|0}l=0}n=p;if((m|0)!=-1){continue}break}}m=0;g[k+16|0]=0;i[k+8>>2]=0;i[k+12>>2]=0;i[Y>>2]=0;i[T>>2]=0;i[T+4>>2]=0;d=M;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;U=o(e,D)<<2;I=U+b|0;p=(o(J+ -2|0,e)<<2)+b|0;h=i[a+152>>2];l=0;if(!G){while(1){f=l<<2;d=i[f+p>>2]-i[f+I>>2]|0;i[f+C>>2]=d;i[f+h>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;f=d;d=d>>31;m=(f+d^d)+m|0;l=l+1|0;if((l|0)!=(e|0)){continue}break}}dg(k+200|0,L,h,e);d=gg(k+200|0);l=H;h=hg(k+200|0);f=h+d|0;d=H+l|0;d=f>>>0>>0?d+1|0:d;l=f;N=(n|0)<1;if(!N){r=(n<<3)+ -8|0;h=r+(k+48|0)|0;z=h;O=h;f=i[h+4>>2];B=i[h>>2];h=n;B=B+h|0;if(B>>>0>>0){f=f+1|0}h=B;i[O>>2]=h;i[z+4>>2]=f;w=v(bg(h,i[r+(k+80|0)>>2])*(+(h>>>0)+ +(f|0)*4294967296));n:{if(q(w)<0x8000000000000000){h=q(w)>=1?w>0?~~s(u(w*2.3283064365386963e-10),4294967295)>>>0:~~v((w- +(~~w>>>0>>>0))*2.3283064365386963e-10)>>>0:0;f=~~w>>>0;break n}h=-2147483648;f=0}d=d+h|0;f=f+l|0;if(f>>>0>>0){d=d+1|0}l=f}i[k+20>>2]=0;g[k+16|0]=0;i[k+8>>2]=l;i[k+12>>2]=m;ra(S,p,p+Q|0);Hd(R,C,P);if(!N){z=(k+124|0)+n|0;B=z+ -2|0;r=z+ -1|0;d=(n<<3)+ -8|0;V=d+(k+48|0)|0;O=d+(k+80|0)|0;p=1;A=0;while(1){ip(k+124|0,1,n);A=A+1|0;ip(k+124|0,0,A);o:{p:while(1){if(!G){ip(i[k+128>>2],0,Q)}d=0;f=i[k+128>>2];t=0;while(1){if(!j[(k+124|0)+d|0]){if(!G){l=i[(k+144|0)+o(d,12)>>2];h=0;while(1){m=h<<2;E=m+f|0;i[E>>2]=i[E>>2]+i[l+m>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}t=1<>2];while(1){f=d+(h<<2)|0;i[f>>2]=i[f>>2]/(p|0);h=h+1|0;if((h|0)!=(e|0)){continue}break}if((e|0)>0){break r}}f=i[a+152>>2];m=0;break q}E=i[k+128>>2];f=i[a+152>>2];m=0;l=0;while(1){h=l<<2;d=i[h+E>>2]-i[h+I>>2]|0;i[h+C>>2]=d;i[f+h>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;h=d;d=d>>31;m=(h+d^d)+m|0;l=l+1|0;if((l|0)!=(e|0)){continue}break}}dg(k+200|0,L,f,e);f=gg(k+200|0)+hg(k+200|0)|0;h=f;if((n|0)>0){d=i[V+4>>2];f=i[V>>2];w=v(bg(f,i[O>>2]+p|0)*(+(f>>>0)+ +(d|0)*4294967296));s:{if(q(w)<0x8000000000000000){d=~~w>>>0;break s}d=0}h=d+h|0}d=i[k+8>>2];if(!((h|0)>(d|0)|(m|0)>=i[k+12>>2]?(h|0)>=(d|0):0)){i[k+20>>2]=p;g[k+16|0]=t;i[k+8>>2]=h;i[k+12>>2]=m;Hd(S,i[k+128>>2],i[k+132>>2]);Hd(R,C,P)}if((r|0)==(k+124|0)){break o}m=-1;d=j[r|0];h=d;while(1){l=h&255;f=m+ -1|0;t=f+z|0;h=j[t|0];if(h>>>0>>0){f=r;l=z;if(h>>>0>=(d&255)>>>0){while(1){d=f;f=d+ -1|0;E=l+ -2|0;l=d;if(h>>>0>=j[E|0]){continue}break}d=1}l=m+z|0;g[t|0]=d;g[f|0]=h;h=r;if((m|0)==-1){continue p}while(1){d=j[l|0];g[l|0]=j[h|0];g[h|0]=d;l=l+1|0;h=h+ -1|0;if(l>>>0>>0){continue}break}continue p}m=f;if((t|0)!=(k+124|0)){continue}break}break}if(r>>>0<=k+124>>>0){break o}f=j[k+124|0];g[k+124|0]=d;g[r|0]=f;m=X;h=B;if(m>>>0>=h>>>0){break o}while(1){d=j[m|0];g[m|0]=j[h|0];g[h|0]=d;m=m+1|0;h=h+ -1|0;if(m>>>0>>0){continue}break}}p=p+1|0;if((n|0)!=(A|0)){continue}break}}if((n|0)>0){d=((n<<3)+k|0)+72|0;l=d;h=i[k+20>>2];f=h+i[d>>2]|0;d=i[d+4>>2]+(h>>31)|0;i[l>>2]=f;i[l+4>>2]=f>>>0>>0?d+1|0:d}t:{if((e|0)<=0){l=i[K>>2];break t}l=i[K>>2];h=0;f=i[k+36>>2];while(1){m=h<<2;d=i[m+f>>2];i[l+m>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;h=h+1|0;if((h|0)!=(e|0)){continue}break}}fg(k+200|0,L,l,e);u:{if(N){break u}d=o(n,12)+a|0;r=d+56|0;l=d+52|0;d=d+48|0;m=0;while(1){v:{p=i[r>>2];f=p<<5;h=i[l>>2];w:{if(!(j[k+16|0]>>>m&1)){if((f|0)==(h|0)){if((h+1|0)<=-1){break v}f=d;if(h>>>0<=1073741822){h=h+32&-32;p=p<<6;h=p>>>0>>0?h:p}else{h=2147483647}bd(f,h);h=i[l>>2]}i[l>>2]=h+1;f=i[d>>2]+(h>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<>>0<=1073741822){h=h+32&-32;p=p<<6;h=p>>>0>>0?h:p}else{h=2147483647}bd(f,h);h=i[l>>2]}i[l>>2]=h+1;f=i[d>>2]+(h>>>3&536870908)|0;p=i[f>>2];Z=f,_=yp(-2,h)&p,i[Z>>2]=_}m=m+1|0;if((n|0)!=(m|0)){continue}break u}break}Ho();x()}m=i[a+8>>2];if((m|0)>=1){p=c+U|0;d=i[k+24>>2];n=0;while(1){h=0;x:{if((m|0)<=0){f=i[a+32>>2];break x}while(1){l=h<<2;m=i[l+d>>2];r=i[a+16>>2];y:{if((m|0)>(r|0)){f=i[a+32>>2];i[l+f>>2]=r;break y}f=i[a+32>>2];l=l+f|0;r=i[a+12>>2];if((m|0)<(r|0)){i[l>>2]=r;break y}i[l>>2]=m}h=h+1|0;if((h|0)>2]){continue}break}}l=n<<2;d=l+p|0;l=i[l+I>>2]-i[f+l>>2]|0;i[d>>2]=l;z:{if((l|0)>2]){h=l+i[a+20>>2]|0}else{if((l|0)<=i[a+24>>2]){break z}h=l-i[a+20>>2]|0}i[d>>2]=h}d=f;n=n+1|0;m=i[a+8>>2];if((n|0)<(m|0)){continue}break}}d=i[k+36>>2];if(d){i[k+40>>2]=d;bp(d)}d=i[k+24>>2];if(d){i[k+28>>2]=d;bp(d)}if((J|0)<3){break h}J=D;d=i[a+56>>2];m=i[d>>2];l=D+ -1|0;if(i[d+4>>2]-m>>2>>>0>l>>>0){continue}break}}Io();x()}Ho();x()}if((e|0)>=1){ip(i[k+144>>2],0,e<<2)}m=i[a+8>>2];if((m|0)>=1){f=i[k+144>>2];d=0;while(1){h=0;A:{if((m|0)<=0){m=i[a+32>>2];break A}while(1){e=h<<2;l=i[e+f>>2];n=i[a+16>>2];B:{if((l|0)>(n|0)){m=i[a+32>>2];i[e+m>>2]=n;break B}m=i[a+32>>2];e=e+m|0;n=i[a+12>>2];if((l|0)<(n|0)){i[e>>2]=n;break B}i[e>>2]=l}h=h+1|0;if((h|0)>2]){continue}break}}f=d<<2;e=f+c|0;f=i[b+f>>2]-i[f+m>>2]|0;i[e>>2]=f;C:{if((f|0)>2]){f=f+i[a+20>>2]|0}else{if((f|0)<=i[a+24>>2]){break C}f=f-i[a+20>>2]|0}i[e>>2]=f}f=m;d=d+1|0;m=i[a+8>>2];if((d|0)<(m|0)){continue}break}}if(C){bp(C)}a=i[k+128>>2];if(a){i[k+132>>2]=a;bp(a)}a=i[k+180>>2];if(a){i[k+184>>2]=a;bp(a)}a=i[k+168>>2];if(a){i[k+172>>2]=a;bp(a)}a=i[k+156>>2];if(a){i[k+160>>2]=a;bp(a)}a=i[k+144>>2];if(a){i[k+148>>2]=a;bp(a)}F=k+224|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 h=0,k=0,l=0,m=0,n=0,p=0,r=0,t=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=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,_=0;k=F-224|0;F=k;i[a+8>>2]=e;l=a+32|0;h=i[l>>2];f=i[a+36>>2]-h>>2;a:{if(f>>>0>>0){Bd(l,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=h+(e<<2)}b:{if(!d){break b}m=1;h=i[b>>2];c:{if((d|0)<=1){l=h;break c}l=h;while(1){f=i[(m<<2)+b>>2];n=(f|0)<(l|0);l=n?f:l;h=n?h:(f|0)>(h|0)?f:h;m=m+1|0;if((m|0)!=(d|0)){continue}break}}i[a+16>>2]=h;i[a+12>>2]=l;d=l;f=(h>>31)-((h>>>0>>0)+(d>>31)|0)|0;d=h-d|0;if(!f&d>>>0>2147483646|f>>>0>0){break b}d=d+1|0;i[a+20>>2]=d;f=(d|0)/2|0;i[a+24>>2]=f;i[a+28>>2]=0-f;if(d&1){break b}i[a+24>>2]=f+ -1}V=i[a+52>>2];N=i[a+48>>2];i[k+184>>2]=0;i[k+188>>2]=0;i[k+176>>2]=0;i[k+180>>2]=0;i[k+168>>2]=0;i[k+172>>2]=0;d=k+160|0;i[d>>2]=0;i[d+4>>2]=0;i[k+152>>2]=0;i[k+156>>2]=0;i[k+144>>2]=0;i[k+148>>2]=0;d:{if(!e){m=0;d=0;break d}Bd(k+144|0,e);m=i[d>>2];d=i[k+156>>2]}f=m-d>>2;e:{if(f>>>0>=e>>>0){if(f>>>0<=e>>>0){break e}i[k+160>>2]=d+(e<<2);break e}Bd(k+144|12,e-f|0)}f=i[k+168>>2];d=i[k+172>>2]-f>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}i[k+172>>2]=f+(e<<2);break f}Bd(k+168|0,e-d|0)}f=i[k+180>>2];d=i[k+184>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}i[k+184>>2]=f+(e<<2);break g}Bd(k+180|0,e-d|0)}i[k+136>>2]=0;i[k+128>>2]=0;i[k+132>>2]=0;h:{i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;f=ho(d);i[k+128>>2]=f;l=d+f|0;i[k+136>>2]=l;ip(f,0,d);i[k+132>>2]=l}J=a+152|0;f=i[a+152>>2];d=i[a+156>>2]-f>>2;j:{if(d>>>0>>0){Bd(J,e-d|0);break j}if(d>>>0<=e>>>0){break j}i[a+156>>2]=f+(e<<2)}i[k+104>>2]=0;i[k+108>>2]=0;i[k+96>>2]=0;i[k+100>>2]=0;i[k+88>>2]=0;i[k+92>>2]=0;i[k+80>>2]=0;i[k+84>>2]=0;i[k+72>>2]=0;i[k+76>>2]=0;d=k- -64|0;i[d>>2]=0;i[d+4>>2]=0;i[k+56>>2]=0;i[k+60>>2]=0;i[k+48>>2]=0;i[k+52>>2]=0;if(e){d=e<<2;A=ho(d);d=ip(A,0,d)+d|0}else{d=0}f=i[a+56>>2];m=i[f>>2];f=i[f+4>>2]-m|0;if((f|0)<5){break h}O=d;I=f>>>2|0;l=I+ -1|0;if(f>>2>>>0>l>>>0){P=e<<2;K=a+112|0;W=k+125|0;Q=k+36|0;R=k+24|0;L=k+20|0;X=L+24|0;S=L+16|0;G=(e|0)<1;while(1){n=0;B=l;l=i[(l<<2)+m>>2];k:{if((l|0)==-1){break k}m=i[N+12>>2];C=l+((l>>>0)%3|0?-1:2)|0;D=m+(C<<2)|0;t=1;p=0;d=l;while(1){h=i[m+(d<<2)>>2];l:{if((h|0)==-1){break l}f=-1;r=i[V>>2];n=i[N>>2];y=i[r+(i[n+(h<<2)>>2]<<2)>>2];w=h+1|0;w=(w>>>0)%3|0?w:h+ -2|0;if((w|0)!=-1){w=i[n+(w<<2)>>2]}else{w=-1}h=h+((h>>>0)%3|0?-1:2)|0;if((h|0)!=-1){f=i[n+(h<<2)>>2]}if((y|0)>=(B|0)){break l}h=i[(w<<2)+r>>2];if((h|0)>=(B|0)){break l}f=i[r+(f<<2)>>2];if((f|0)>=(B|0)){break l}n=i[(k+144|0)+o(p,12)>>2];if(!G){f=o(e,f);r=o(e,h);y=o(e,y);h=0;while(1){i[n+(h<<2)>>2]=(i[(f+h<<2)+b>>2]+i[(h+r<<2)+b>>2]|0)-i[(h+y<<2)+b>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}n=4;p=p+1|0;if((p|0)==4){break k}}m:{if(t&1){n=d+1|0;d=(n>>>0)%3|0?n:d+ -2|0;f=-1;if((d|0)==-1){break m}d=i[m+(d<<2)>>2];f=-1;if((d|0)==-1){break m}f=d+1|0;f=(f>>>0)%3|0?f:d+ -2|0;break m}d=((d>>>0)%3|0?-1:2)+d|0;f=-1;if((d|0)==-1){break m}d=i[m+(d<<2)>>2];f=-1;if((d|0)==-1){break m}f=d+ -1|0;if((d>>>0)%3|0){break m}f=d+2|0}if((f|0)==(l|0)){n=p;break k}d=f;f=(f|0)!=-1;h=(f|t^-1)&1;d=h?d:-1;t=f&t;if(!((C|0)==-1|h)){f=i[D>>2];if((f|0)==-1){n=p;break k}t=0;if((f>>>0)%3|0){d=f+ -1|0}else{d=f+2|0}}n=p;if((d|0)!=-1){continue}break}}m=0;g[k+16|0]=0;i[k+8>>2]=0;i[k+12>>2]=0;i[X>>2]=0;i[S>>2]=0;i[S+4>>2]=0;d=L;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;T=o(e,B)<<2;C=T+b|0;p=(o(I+ -2|0,e)<<2)+b|0;h=i[a+152>>2];l=0;if(!G){while(1){f=l<<2;d=i[f+p>>2]-i[f+C>>2]|0;i[f+A>>2]=d;i[f+h>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;f=d;d=d>>31;m=(f+d^d)+m|0;l=l+1|0;if((l|0)!=(e|0)){continue}break}}dg(k+200|0,K,h,e);d=gg(k+200|0);l=H;h=hg(k+200|0);f=h+d|0;d=H+l|0;d=f>>>0>>0?d+1|0:d;l=f;M=(n|0)<1;if(!M){r=(n<<3)+ -8|0;h=r+(k+48|0)|0;y=h;t=h;f=i[h+4>>2];w=i[h>>2];h=n;w=w+h|0;if(w>>>0>>0){f=f+1|0}h=w;i[t>>2]=h;i[y+4>>2]=f;z=v(bg(h,i[r+(k+80|0)>>2])*(+(h>>>0)+ +(f|0)*4294967296));n:{if(q(z)<0x8000000000000000){h=q(z)>=1?z>0?~~s(u(z*2.3283064365386963e-10),4294967295)>>>0:~~v((z- +(~~z>>>0>>>0))*2.3283064365386963e-10)>>>0:0;f=~~z>>>0;break n}h=-2147483648;f=0}d=d+h|0;f=f+l|0;if(f>>>0>>0){d=d+1|0}l=f}i[k+20>>2]=0;g[k+16|0]=0;i[k+8>>2]=l;i[k+12>>2]=m;ra(R,p,p+P|0);Hd(Q,A,O);if(!M){y=(k+124|0)+n|0;w=y+ -2|0;r=y+ -1|0;d=(n<<3)+ -8|0;U=d+(k+48|0)|0;Y=d+(k+80|0)|0;p=1;D=0;while(1){ip(k+124|0,1,n);D=D+1|0;ip(k+124|0,0,D);o:{p:while(1){if(!G){ip(i[k+128>>2],0,P)}d=0;f=i[k+128>>2];t=0;while(1){if(!j[(k+124|0)+d|0]){if(!G){l=i[(k+144|0)+o(d,12)>>2];h=0;while(1){m=h<<2;E=m+f|0;i[E>>2]=i[E>>2]+i[l+m>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}t=1<>2];while(1){f=d+(h<<2)|0;i[f>>2]=i[f>>2]/(p|0);h=h+1|0;if((h|0)!=(e|0)){continue}break}if((e|0)>0){break r}}f=i[a+152>>2];m=0;break q}E=i[k+128>>2];f=i[a+152>>2];m=0;l=0;while(1){h=l<<2;d=i[h+E>>2]-i[h+C>>2]|0;i[h+A>>2]=d;i[f+h>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;h=d;d=d>>31;m=(h+d^d)+m|0;l=l+1|0;if((l|0)!=(e|0)){continue}break}}dg(k+200|0,K,f,e);f=gg(k+200|0)+hg(k+200|0)|0;h=f;if((n|0)>0){d=i[U+4>>2];f=i[U>>2];z=v(bg(f,i[Y>>2]+p|0)*(+(f>>>0)+ +(d|0)*4294967296));s:{if(q(z)<0x8000000000000000){d=~~z>>>0;break s}d=0}h=d+h|0}d=i[k+8>>2];if(!((h|0)>(d|0)|(m|0)>=i[k+12>>2]?(h|0)>=(d|0):0)){i[k+20>>2]=p;g[k+16|0]=t;i[k+8>>2]=h;i[k+12>>2]=m;Hd(R,i[k+128>>2],i[k+132>>2]);Hd(Q,A,O)}if((r|0)==(k+124|0)){break o}m=-1;d=j[r|0];h=d;while(1){l=h&255;f=m+ -1|0;t=f+y|0;h=j[t|0];if(h>>>0>>0){f=r;l=y;if(h>>>0>=(d&255)>>>0){while(1){d=f;f=d+ -1|0;E=l+ -2|0;l=d;if(h>>>0>=j[E|0]){continue}break}d=1}l=m+y|0;g[t|0]=d;g[f|0]=h;h=r;if((m|0)==-1){continue p}while(1){d=j[l|0];g[l|0]=j[h|0];g[h|0]=d;l=l+1|0;h=h+ -1|0;if(l>>>0>>0){continue}break}continue p}m=f;if((t|0)!=(k+124|0)){continue}break}break}if(r>>>0<=k+124>>>0){break o}f=j[k+124|0];g[k+124|0]=d;g[r|0]=f;m=W;h=w;if(m>>>0>=h>>>0){break o}while(1){d=j[m|0];g[m|0]=j[h|0];g[h|0]=d;m=m+1|0;h=h+ -1|0;if(m>>>0>>0){continue}break}}p=p+1|0;if((n|0)!=(D|0)){continue}break}}if((n|0)>0){d=((n<<3)+k|0)+72|0;l=d;h=i[k+20>>2];f=h+i[d>>2]|0;d=i[d+4>>2]+(h>>31)|0;i[l>>2]=f;i[l+4>>2]=f>>>0>>0?d+1|0:d}t:{if((e|0)<=0){l=i[J>>2];break t}l=i[J>>2];h=0;f=i[k+36>>2];while(1){m=h<<2;d=i[m+f>>2];i[l+m>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;h=h+1|0;if((h|0)!=(e|0)){continue}break}}fg(k+200|0,K,l,e);u:{if(M){break u}d=o(n,12)+a|0;r=d+56|0;l=d+52|0;d=d+48|0;m=0;while(1){v:{p=i[r>>2];f=p<<5;h=i[l>>2];w:{if(!(j[k+16|0]>>>m&1)){if((f|0)==(h|0)){if((h+1|0)<=-1){break v}f=d;if(h>>>0<=1073741822){h=h+32&-32;p=p<<6;h=p>>>0>>0?h:p}else{h=2147483647}bd(f,h);h=i[l>>2]}i[l>>2]=h+1;f=i[d>>2]+(h>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<>>0<=1073741822){h=h+32&-32;p=p<<6;h=p>>>0>>0?h:p}else{h=2147483647}bd(f,h);h=i[l>>2]}i[l>>2]=h+1;f=i[d>>2]+(h>>>3&536870908)|0;p=i[f>>2];Z=f,_=yp(-2,h)&p,i[Z>>2]=_}m=m+1|0;if((n|0)!=(m|0)){continue}break u}break}Ho();x()}m=i[a+8>>2];if((m|0)>=1){p=c+T|0;d=i[k+24>>2];n=0;while(1){h=0;x:{if((m|0)<=0){f=i[a+32>>2];break x}while(1){l=h<<2;m=i[l+d>>2];r=i[a+16>>2];y:{if((m|0)>(r|0)){f=i[a+32>>2];i[l+f>>2]=r;break y}f=i[a+32>>2];l=l+f|0;r=i[a+12>>2];if((m|0)<(r|0)){i[l>>2]=r;break y}i[l>>2]=m}h=h+1|0;if((h|0)>2]){continue}break}}l=n<<2;d=l+p|0;l=i[l+C>>2]-i[f+l>>2]|0;i[d>>2]=l;z:{if((l|0)>2]){h=l+i[a+20>>2]|0}else{if((l|0)<=i[a+24>>2]){break z}h=l-i[a+20>>2]|0}i[d>>2]=h}d=f;n=n+1|0;m=i[a+8>>2];if((n|0)<(m|0)){continue}break}}d=i[k+36>>2];if(d){i[k+40>>2]=d;bp(d)}d=i[k+24>>2];if(d){i[k+28>>2]=d;bp(d)}if((I|0)<3){break h}I=B;d=i[a+56>>2];m=i[d>>2];l=B+ -1|0;if(i[d+4>>2]-m>>2>>>0>l>>>0){continue}break}}Io();x()}Ho();x()}if((e|0)>=1){ip(i[k+144>>2],0,e<<2)}m=i[a+8>>2];if((m|0)>=1){f=i[k+144>>2];d=0;while(1){h=0;A:{if((m|0)<=0){m=i[a+32>>2];break A}while(1){e=h<<2;l=i[e+f>>2];n=i[a+16>>2];B:{if((l|0)>(n|0)){m=i[a+32>>2];i[e+m>>2]=n;break B}m=i[a+32>>2];e=e+m|0;n=i[a+12>>2];if((l|0)<(n|0)){i[e>>2]=n;break B}i[e>>2]=l}h=h+1|0;if((h|0)>2]){continue}break}}f=d<<2;e=f+c|0;f=i[b+f>>2]-i[f+m>>2]|0;i[e>>2]=f;C:{if((f|0)>2]){f=f+i[a+20>>2]|0}else{if((f|0)<=i[a+24>>2]){break C}f=f-i[a+20>>2]|0}i[e>>2]=f}f=m;d=d+1|0;m=i[a+8>>2];if((d|0)<(m|0)){continue}break}}if(A){bp(A)}a=i[k+128>>2];if(a){i[k+132>>2]=a;bp(a)}a=i[k+180>>2];if(a){i[k+184>>2]=a;bp(a)}a=i[k+168>>2];if(a){i[k+172>>2]=a;bp(a)}a=i[k+156>>2];if(a){i[k+160>>2]=a;bp(a)}a=i[k+144>>2];if(a){i[k+148>>2]=a;bp(a)}F=k+224|0;return 1}function ln(a,b,c,d,e,f){var g=0,h=0,k=0,m=0,n=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,I=0,J=0;g=F-8976|0;F=g;y=d+e|0;E=0-y|0;a:{b:{while(1){c:{if((c|0)!=48){if((c|0)!=46){break a}c=i[b+4>>2];if(c>>>0>=l[b+104>>2]){break c}i[b+4>>2]=c+1;c=j[c|0];break b}c=i[b+4>>2];if(c>>>0>2]){k=1;i[b+4>>2]=c+1;c=j[c|0]}else{k=1;c=fn(b)}continue}break}c=fn(b)}n=1;if((c|0)!=48){break a}while(1){h=h+ -1|0;c=m+ -1|0;if((c|0)!=-1){h=h+1|0}m=c;c=i[b+4>>2];d:{if(c>>>0>2]){i[b+4>>2]=c+1;c=j[c|0];break d}c=fn(b)}if((c|0)==48){continue}break}k=1}i[g+784>>2]=0;e:{f:{s=(c|0)==46;r=c+ -48|0;g:{h:{i:{if(s|r>>>0<=9){while(1){j:{if(s&1){if(!n){m=q;h=p;n=1;break j}k=!k;break i}q=q+1|0;if(q>>>0<1){p=p+1|0}if((t|0)<=2044){x=(c|0)==48?x:q;k=(g+784|0)+(t<<2)|0;s=k;if(u){r=(o(i[k>>2],10)+c|0)+ -48|0}i[s>>2]=r;k=1;r=u+1|0;c=(r|0)==9;u=c?0:r;t=c+t|0;break j}if((c|0)==48){break j}i[g+8960>>2]=i[g+8960>>2]|1;x=18396}c=i[b+4>>2];k:{if(c>>>0>2]){i[b+4>>2]=c+1;c=j[c|0];break k}c=fn(b)}s=(c|0)==46;r=c+ -48|0;if(s|r>>>0<10){continue}break}}m=n?m:q;h=n?h:p;if(!(!k|(c&-33)!=69)){n=mn(b);c=H;s=c;l:{if(n|(c|0)!=-2147483648){break l}n=0;s=0;if(!i[b+104>>2]){break l}i[b+4>>2]=i[b+4>>2]+ -1}if(!k){break g}h=h+s|0;b=m+n|0;if(b>>>0>>0){h=h+1|0}m=b;break f}k=!k;if((c|0)<0){break h}}if(!i[b+104>>2]){break h}i[b+4>>2]=i[b+4>>2]+ -1}if(!k){break f}}i[4805]=28;q=0;p=0;en(b);c=0;b=0;break e}b=i[g+784>>2];if(!b){xn(g,+(f|0)*0);q=i[g>>2];p=i[g+4>>2];c=i[g+12>>2];b=i[g+8>>2];break e}if(!((m|0)!=(q|0)|(h|0)!=(p|0)|((p|0)>0?1:(p|0)>=0?q>>>0>9:0)|(b>>>d|0?(d|0)<=30:0))){An(g+48|0,f);En(g+32|0,b);yn(g+16|0,i[g+48>>2],i[g+52>>2],i[g+56>>2],i[g+60>>2],i[g+32>>2],i[g+36>>2],i[g+40>>2],i[g+44>>2]);q=i[g+16>>2];p=i[g+20>>2];c=i[g+28>>2];b=i[g+24>>2];break e}if((h|0)>0?1:(h|0)>=0?m>>>0>(e|0)/-2>>>0:0){i[4805]=68;An(g+96|0,f);yn(g+80|0,i[g+96>>2],i[g+100>>2],i[g+104>>2],i[g+108>>2],-1,-1,-1,2147418111);yn(g- -64|0,i[g+80>>2],i[g+84>>2],i[g+88>>2],i[g+92>>2],-1,-1,-1,2147418111);q=i[g+64>>2];p=i[g+68>>2];c=i[g+76>>2];b=i[g+72>>2];break e}b=e+ -226|0;c=m>>>0>>0;b=b>>31;if((h|0)<(b|0)?1:(h|0)<=(b|0)?c:0){i[4805]=68;An(g+144|0,f);yn(g+128|0,i[g+144>>2],i[g+148>>2],i[g+152>>2],i[g+156>>2],0,0,0,65536);yn(g+112|0,i[g+128>>2],i[g+132>>2],i[g+136>>2],i[g+140>>2],0,0,0,65536);q=i[g+112>>2];p=i[g+116>>2];c=i[g+124>>2];b=i[g+120>>2];break e}if(u){if((u|0)<=8){c=(g+784|0)+(t<<2)|0;b=i[c>>2];while(1){b=o(b,10);u=u+1|0;if((u|0)!=9){continue}break}i[c>>2]=b}t=t+1|0}m:{n=m;if((x|0)>(n|0)|(x|0)>=9|(n|0)>17){break m}if((n|0)==9){An(g+192|0,f);En(g+176|0,i[g+784>>2]);yn(g+160|0,i[g+192>>2],i[g+196>>2],i[g+200>>2],i[g+204>>2],i[g+176>>2],i[g+180>>2],i[g+184>>2],i[g+188>>2]);q=i[g+160>>2];p=i[g+164>>2];c=i[g+172>>2];b=i[g+168>>2];break e}if((n|0)<=8){An(g+272|0,f);En(g+256|0,i[g+784>>2]);yn(g+240|0,i[g+272>>2],i[g+276>>2],i[g+280>>2],i[g+284>>2],i[g+256>>2],i[g+260>>2],i[g+264>>2],i[g+268>>2]);An(g+224|0,i[(0-n<<2)+17616>>2]);Cn(g+208|0,i[g+240>>2],i[g+244>>2],i[g+248>>2],i[g+252>>2],i[g+224>>2],i[g+228>>2],i[g+232>>2],i[g+236>>2]);q=i[g+208>>2];p=i[g+212>>2];c=i[g+220>>2];b=i[g+216>>2];break e}b=(o(n,-3)+d|0)+27|0;c=i[g+784>>2];if(c>>>b|0?(b|0)<=30:0){break m}An(g+352|0,f);En(g+336|0,c);yn(g+320|0,i[g+352>>2],i[g+356>>2],i[g+360>>2],i[g+364>>2],i[g+336>>2],i[g+340>>2],i[g+344>>2],i[g+348>>2]);An(g+304|0,i[(n<<2)+17544>>2]);yn(g+288|0,i[g+320>>2],i[g+324>>2],i[g+328>>2],i[g+332>>2],i[g+304>>2],i[g+308>>2],i[g+312>>2],i[g+316>>2]);q=i[g+288>>2];p=i[g+292>>2];c=i[g+300>>2];b=i[g+296>>2];break e}while(1){c=t;t=c+ -1|0;if(!i[(g+784|0)+(t<<2)>>2]){continue}break}u=0;b=(n|0)%9|0;n:{if(!b){k=0;break n}r=(n|0)>-1?b:b+9|0;o:{if(!c){k=0;c=0;break o}h=i[(0-r<<2)+17616>>2];p=1e9/(h|0)|0;s=0;b=0;k=0;while(1){m=s;q=(g+784|0)+(b<<2)|0;s=i[q>>2];t=(s>>>0)/(h>>>0)|0;m=m+t|0;i[q>>2]=m;m=!m&(b|0)==(k|0);k=m?k+1&2047:k;n=m?n+ -9|0:n;s=o(p,s-o(h,t)|0);b=b+1|0;if((c|0)!=(b|0)){continue}break}if(!s){break o}i[(g+784|0)+(c<<2)>>2]=s;c=c+1|0}n=(n-r|0)+9|0}while(1){q=(g+784|0)+(k<<2)|0;p:{while(1){if((n|0)!=36|l[q>>2]>=10384593?(n|0)>=36:0){break p}t=c+2047|0;s=0;r=c;while(1){c=r;p=t&2047;t=(g+784|0)+(p<<2)|0;b=i[t>>2];h=b>>>3|0;r=b<<29;b=r+s|0;if(b>>>0>>0){h=h+1|0}m=b;r=0;q:{if(!h&b>>>0<1000000001|h>>>0<0){break q}r=wp(b,h,1e9,0);m=m-up(r,H,1e9,0)|0}s=r;i[t>>2]=m;r=(p|0)!=(c+ -1&2047)?c:(p|0)==(k|0)?c:m?c:p;t=p+ -1|0;if((p|0)!=(k|0)){continue}break}u=u+ -29|0;if(!s){continue}break}k=k+ -1&2047;if((r|0)==(k|0)){b=(g+784|0)+((r+2046&2047)<<2)|0;c=r+ -1&2047;i[b>>2]=i[b>>2]|i[(g+784|0)+(c<<2)>>2]}n=n+9|0;i[(g+784|0)+(k<<2)>>2]=s;continue}break}r:{s:while(1){h=c+1&2047;p=(g+784|0)+((c+ -1&2047)<<2)|0;while(1){m=(n|0)>45?9:1;t:{while(1){r=k;b=0;u:{while(1){v:{k=b+r&2047;if((k|0)==(c|0)){break v}k=i[(g+784|0)+(k<<2)>>2];q=i[(b<<2)+17568>>2];if(k>>>0>>0){break v}if(k>>>0>q>>>0){break u}b=b+1|0;if((b|0)!=4){continue}}break}if((n|0)!=36){break u}m=0;h=0;b=0;q=0;p=0;while(1){k=b+r&2047;if((k|0)==(c|0)){c=c+1&2047;i[((c<<2)+g|0)+780>>2]=0}yn(g+768|0,m,h,q,p,0,0,1342177280,1075633366);En(g+752|0,i[(g+784|0)+(k<<2)>>2]);tn(g+736|0,i[g+768>>2],i[g+772>>2],i[g+776>>2],i[g+780>>2],i[g+752>>2],i[g+756>>2],i[g+760>>2],i[g+764>>2]);q=i[g+744>>2];p=i[g+748>>2];m=i[g+736>>2];h=i[g+740>>2];b=b+1|0;if((b|0)!=4){continue}break}An(g+720|0,f);yn(g+704|0,m,h,q,p,i[g+720>>2],i[g+724>>2],i[g+728>>2],i[g+732>>2]);q=i[g+712>>2];p=i[g+716>>2];m=0;h=0;n=i[g+704>>2];s=i[g+708>>2];t=u+113|0;e=t-e|0;k=(e|0)<(d|0);d=k?(e|0)>0?e:0:d;if((d|0)<=112){break t}break r}u=m+u|0;k=c;if((c|0)==(r|0)){continue}break}q=1e9>>>m|0;s=-1<>2];b=(x>>>m|0)+b|0;i[t>>2]=b;b=!b&(k|0)==(r|0);k=b?k+1&2047:k;n=b?n+ -9|0:n;b=o(q,s&x);r=r+1&2047;if((r|0)!=(c|0)){continue}break}if(!b){continue}if((h|0)!=(k|0)){i[(g+784|0)+(c<<2)>>2]=b;c=h;continue s}i[p>>2]=i[p>>2]|1;k=h;continue}break}break}xn(g+656|0,fp(225-d|0));gn(g+688|0,i[g+656>>2],i[g+660>>2],i[g+664>>2],i[g+668>>2],n,s,q,p);z=i[g+696>>2];A=i[g+700>>2];B=i[g+688>>2];C=i[g+692>>2];xn(g+640|0,fp(113-d|0));dp(g+672|0,n,s,q,p,i[g+640>>2],i[g+644>>2],i[g+648>>2],i[g+652>>2]);m=i[g+672>>2];h=i[g+676>>2];v=i[g+680>>2];w=i[g+684>>2];zn(g+624|0,n,s,q,p,m,h,v,w);tn(g+608|0,B,C,z,A,i[g+624>>2],i[g+628>>2],i[g+632>>2],i[g+636>>2]);q=i[g+616>>2];p=i[g+620>>2];n=i[g+608>>2];s=i[g+612>>2]}b=r+4&2047;w:{if((b|0)==(c|0)){break w}b=i[(g+784|0)+(b<<2)>>2];x:{if(b>>>0<=499999999){if((r+5&2047)==(c|0)?!b:0){break x}xn(g+496|0,+(f|0)*.25);tn(g+480|0,m,h,v,w,i[g+496>>2],i[g+500>>2],i[g+504>>2],i[g+508>>2]);v=i[g+488>>2];w=i[g+492>>2];m=i[g+480>>2];h=i[g+484>>2];break x}if((b|0)!=5e8){xn(g+592|0,+(f|0)*.75);tn(g+576|0,m,h,v,w,i[g+592>>2],i[g+596>>2],i[g+600>>2],i[g+604>>2]);v=i[g+584>>2];w=i[g+588>>2];m=i[g+576>>2];h=i[g+580>>2];break x}D=+(f|0);if((r+5&2047)==(c|0)){xn(g+528|0,D*.5);tn(g+512|0,m,h,v,w,i[g+528>>2],i[g+532>>2],i[g+536>>2],i[g+540>>2]);v=i[g+520>>2];w=i[g+524>>2];m=i[g+512>>2];h=i[g+516>>2];break x}xn(g+560|0,D*.75);tn(g+544|0,m,h,v,w,i[g+560>>2],i[g+564>>2],i[g+568>>2],i[g+572>>2]);v=i[g+552>>2];w=i[g+556>>2];m=i[g+544>>2];h=i[g+548>>2]}if((d|0)>111){break w}dp(g+464|0,m,h,v,w,0,0,0,1073676288);if(qn(i[g+464>>2],i[g+468>>2],i[g+472>>2],i[g+476>>2],0,0,0,0)){break w}tn(g+448|0,m,h,v,w,0,0,0,1073676288);v=i[g+456>>2];w=i[g+460>>2];m=i[g+448>>2];h=i[g+452>>2]}tn(g+432|0,n,s,q,p,m,h,v,w);zn(g+416|0,i[g+432>>2],i[g+436>>2],i[g+440>>2],i[g+444>>2],B,C,z,A);q=i[g+424>>2];p=i[g+428>>2];n=i[g+416>>2];s=i[g+420>>2];y:{if((t&2147483647)<=(-2-y|0)){break y}b=g+400|0;i[b+8>>2]=q;i[b+12>>2]=p&2147483647;i[b>>2]=n;i[b+4>>2]=s;yn(g+384|0,n,s,q,p,0,0,0,1073610752);c=rn(i[g+400>>2],i[g+404>>2],i[g+408>>2],i[g+412>>2],1081081856);b=(c|0)<0;q=b?q:i[g+392>>2];p=b?p:i[g+396>>2];n=b?n:i[g+384>>2];s=b?s:i[g+388>>2];u=((c|0)>-1)+u|0;if(G=!(k&(b|(d|0)!=(e|0))&(qn(m,h,v,w,0,0,0,0)|0)!=0),I=0,J=(u+110|0)<=(E|0),J?G:I){break y}i[4805]=68}hn(g+368|0,n,s,q,p,u);q=i[g+368>>2];p=i[g+372>>2];c=i[g+380>>2];b=i[g+376>>2]}i[a>>2]=q;i[a+4>>2]=p;i[a+8>>2]=b;i[a+12>>2]=c;F=g+8976|0}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 h=0,k=0,l=0,m=0,n=0,p=0,r=0,t=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=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,_=0,$=0;h=F-240|0;F=h;V=i[a+36>>2];y=i[a+32>>2];i[h+184>>2]=0;i[h+188>>2]=0;i[h+176>>2]=0;i[h+180>>2]=0;i[h+168>>2]=0;i[h+172>>2]=0;d=h+160|0;i[d>>2]=0;i[d+4>>2]=0;i[h+152>>2]=0;i[h+156>>2]=0;i[h+144>>2]=0;i[h+148>>2]=0;if(e){Bd(h+144|0,e);m=i[d>>2];d=i[h+156>>2]}else{d=0}f=m-d>>2;a:{if(f>>>0>=e>>>0){if(f>>>0<=e>>>0){break a}i[h+160>>2]=d+(e<<2);break a}Bd(h+144|12,e-f|0)}f=i[h+168>>2];d=i[h+172>>2]-f>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}i[h+172>>2]=f+(e<<2);break b}Bd(h+168|0,e-d|0)}f=i[h+180>>2];d=i[h+184>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}i[h+184>>2]=f+(e<<2);break c}Bd(h+180|0,e-d|0)}i[h+136>>2]=0;i[h+128>>2]=0;i[h+132>>2]=0;d:{e:{if(e){if(e>>>0>=1073741824){break e}d=e<<2;f=ho(d);i[h+128>>2]=f;m=d+f|0;i[h+136>>2]=m;ip(f,0,d);i[h+132>>2]=m}K=a+136|0;f=i[a+136>>2];d=i[a+140>>2]-f>>2;f:{if(d>>>0>>0){Bd(K,e-d|0);break f}if(d>>>0<=e>>>0){break f}i[a+140>>2]=f+(e<<2)}i[h+104>>2]=0;i[h+108>>2]=0;i[h+96>>2]=0;i[h+100>>2]=0;i[h+88>>2]=0;i[h+92>>2]=0;i[h+80>>2]=0;i[h+84>>2]=0;i[h+72>>2]=0;i[h+76>>2]=0;d=h- -64|0;i[d>>2]=0;i[d+4>>2]=0;i[h+56>>2]=0;i[h+60>>2]=0;i[h+48>>2]=0;i[h+52>>2]=0;if(e){d=e<<2;B=ho(d);d=ip(B,0,d)+d|0}else{d=0}f=i[a+40>>2];m=i[f>>2];f=i[f+4>>2]-m|0;if((f|0)<5){break d}O=d;J=f>>>2|0;l=J+ -1|0;if(f>>2>>>0>l>>>0){P=e<<2;W=a+8|0;L=a+96|0;X=h+125|0;Q=h+36|0;R=h+24|0;M=h+20|0;Y=M+24|0;S=M+16|0;I=(e|0)<1;while(1){d=0;C=l;n=i[(l<<2)+m>>2];g:{if((n|0)==-1){break g}r=n+((n>>>0)%3|0?-1:2)|0;z=r>>>5|0;l=1;D=1<>2];f=0;m=n;while(1){h:{if(i[E+(m>>>3&536870908)>>2]>>>m&1){break h}d=i[i[i[y+64>>2]+12>>2]+(m<<2)>>2];if((d|0)==-1){break h}p=i[V>>2];k=i[y+28>>2];A=i[p+(i[k+(d<<2)>>2]<<2)>>2];if((A|0)>=(C|0)){break h}t=d+1|0;t=i[p+(i[k+(((t>>>0)%3|0?t:d+ -2|0)<<2)>>2]<<2)>>2];if((t|0)>=(C|0)){break h}d=i[p+(i[k+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(C|0)){break h}if(!I){p=i[(h+144|0)+o(f,12)>>2];d=o(d,e);t=o(e,t);A=o(e,A);k=0;while(1){i[p+(k<<2)>>2]=(i[(d+k<<2)+b>>2]+i[(k+t<<2)+b>>2]|0)-i[(k+A<<2)+b>>2];k=k+1|0;if((k|0)!=(e|0)){continue}break}}d=4;f=f+1|0;if((f|0)==4){break g}}i:{if(l&1){k=-1;d=m+1|0;d=(d>>>0)%3|0?d:m+ -2|0;if((d|0)==-1|i[i[y>>2]+(d>>>3&536870908)>>2]>>>d&1){break i}d=i[i[i[y+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break i}m=d+1|0;k=(m>>>0)%3|0?m:d+ -2|0;break i}k=-1;d=((m>>>0)%3|0?-1:2)+m|0;if((d|0)==-1|i[i[y>>2]+(d>>>3&536870908)>>2]>>>d&1){break i}d=i[i[i[y+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break i}if((d>>>0)%3|0){k=d+ -1|0;break i}k=d+2|0}if((k|0)==(n|0)){d=f;break g}m=k;d=(k|0)!=-1;k=(d|l^-1)&1;m=k?m:-1;l=d&l;if(!((r|0)==-1|k)){if(D&i[i[y>>2]+(z<<2)>>2]){d=f;break g}d=i[i[i[y+64>>2]+12>>2]+(r<<2)>>2];if((d|0)==-1){d=f;break g}l=0;if((d>>>0)%3|0){m=d+ -1|0}else{m=d+2|0}}d=f;if((m|0)!=-1){continue}break}}m=0;g[h+16|0]=0;i[h+8>>2]=0;i[h+12>>2]=0;i[Y>>2]=0;i[S>>2]=0;i[S+4>>2]=0;f=M;i[f+8>>2]=0;i[f+12>>2]=0;i[f>>2]=0;i[f+4>>2]=0;T=o(e,C)<<2;E=T+b|0;r=(o(J+ -2|0,e)<<2)+b|0;n=i[a+136>>2];l=0;if(!I){while(1){k=l<<2;f=i[k+r>>2]-i[k+E>>2]|0;i[k+B>>2]=f;i[k+n>>2]=(f|0)>-1?f<<1:(f^-1)<<1|1;k=f;f=f>>31;m=(k+f^f)+m|0;l=l+1|0;if((l|0)!=(e|0)){continue}break}}dg(h+216|0,L,n,e);f=gg(h+216|0);l=H;k=hg(h+216|0);f=k+f|0;l=H+l|0;l=f>>>0>>0?l+1|0:l;k=f;N=(d|0)<1;if(!N){p=(d<<3)+ -8|0;n=p+(h+48|0)|0;z=n;t=n;f=i[n+4>>2];D=d+i[n>>2]|0;if(D>>>0>>0){f=f+1|0}n=D;i[t>>2]=n;i[z+4>>2]=f;w=v(bg(n,i[p+(h+80|0)>>2])*(+(n>>>0)+ +(f|0)*4294967296));j:{if(q(w)<0x8000000000000000){n=q(w)>=1?w>0?~~s(u(w*2.3283064365386963e-10),4294967295)>>>0:~~v((w- +(~~w>>>0>>>0))*2.3283064365386963e-10)>>>0:0;f=~~w>>>0;break j}n=-2147483648;f=0}l=l+n|0;f=f+k|0;if(f>>>0>>0){l=l+1|0}k=f}i[h+20>>2]=0;g[h+16|0]=0;i[h+8>>2]=k;i[h+12>>2]=m;ra(R,r,r+P|0);Hd(Q,B,O);if(!N){z=(h+124|0)+d|0;D=z+ -2|0;r=z+ -1|0;f=(d<<3)+ -8|0;U=f+(h+48|0)|0;Z=f+(h+80|0)|0;f=1;A=0;while(1){ip(h+124|0,1,d);A=A+1|0;ip(h+124|0,0,A);k:{l:while(1){if(!I){ip(i[h+128>>2],0,P)}p=0;m=i[h+128>>2];t=0;while(1){if(!j[(h+124|0)+p|0]){if(!I){l=i[(h+144|0)+o(p,12)>>2];k=0;while(1){n=k<<2;G=n+m|0;i[G>>2]=i[G>>2]+i[l+n>>2];k=k+1|0;if((k|0)!=(e|0)){continue}break}}t=1<>2];while(1){l=m+(k<<2)|0;i[l>>2]=i[l>>2]/(f|0);k=k+1|0;if((k|0)!=(e|0)){continue}break}if((e|0)>0){break n}}n=i[a+136>>2];m=0;break m}G=i[h+128>>2];n=i[a+136>>2];m=0;l=0;while(1){p=l<<2;k=i[p+G>>2]-i[p+E>>2]|0;i[p+B>>2]=k;i[n+p>>2]=(k|0)>-1?k<<1:(k^-1)<<1|1;p=m;m=k>>31;m=p+(m+k^m)|0;l=l+1|0;if((l|0)!=(e|0)){continue}break}}dg(h+216|0,L,n,e);k=gg(h+216|0)+hg(h+216|0)|0;if((d|0)>0){l=i[U+4>>2];n=i[U>>2];w=v(bg(n,i[Z>>2]+f|0)*(+(n>>>0)+ +(l|0)*4294967296));o:{if(q(w)<0x8000000000000000){n=~~w>>>0;break o}n=0}k=n+k|0}l=i[h+8>>2];if(!((k|0)>(l|0)|(m|0)>=i[h+12>>2]?(k|0)>=(l|0):0)){i[h+20>>2]=f;g[h+16|0]=t;i[h+8>>2]=k;i[h+12>>2]=m;Hd(R,i[h+128>>2],i[h+132>>2]);Hd(Q,B,O)}if((r|0)==(h+124|0)){break k}m=-1;p=j[r|0];k=p;while(1){n=k&255;l=m+ -1|0;t=l+z|0;k=j[t|0];if(k>>>0>>0){n=r;l=z;if(k>>>0>=(p&255)>>>0){while(1){p=n;n=n+ -1|0;G=l+ -2|0;l=p;if(k>>>0>=j[G|0]){continue}break}p=1}l=m+z|0;g[t|0]=p;g[n|0]=k;k=r;if((m|0)==-1){continue l}while(1){m=j[l|0];g[l|0]=j[k|0];g[k|0]=m;l=l+1|0;k=k+ -1|0;if(l>>>0>>0){continue}break}continue l}m=l;if((t|0)!=(h+124|0)){continue}break}break}if(r>>>0<=h+124>>>0){break k}m=j[h+124|0];g[h+124|0]=p;g[r|0]=m;m=X;k=D;if(m>>>0>=k>>>0){break k}while(1){l=j[m|0];g[m|0]=j[k|0];g[k|0]=l;m=m+1|0;k=k+ -1|0;if(m>>>0>>0){continue}break}}f=f+1|0;if((d|0)!=(A|0)){continue}break}}if((d|0)>0){f=((d<<3)+h|0)+72|0;l=f;k=i[h+20>>2];m=k+i[f>>2]|0;f=i[f+4>>2]+(k>>31)|0;i[l>>2]=m;i[l+4>>2]=m>>>0>>0?f+1|0:f}p:{if((e|0)<=0){l=i[K>>2];break p}l=i[K>>2];k=0;m=i[h+36>>2];while(1){n=k<<2;f=i[n+m>>2];i[l+n>>2]=(f|0)>-1?f<<1:(f^-1)<<1|1;k=k+1|0;if((k|0)!=(e|0)){continue}break}}fg(h+216|0,L,l,e);q:{if(N){break q}f=o(d,12)+a|0;p=f+40|0;n=f+36|0;f=f+32|0;m=0;while(1){r:{r=i[p>>2];l=r<<5;k=i[n>>2];s:{if(!(j[h+16|0]>>>m&1)){if((k|0)==(l|0)){if((k+1|0)<=-1){break r}l=f;if(k>>>0<=1073741822){k=k+32&-32;r=r<<6;k=r>>>0>>0?k:r}else{k=2147483647}bd(l,k);k=i[n>>2]}i[n>>2]=k+1;l=i[f>>2]+(k>>>3&536870908)|0;i[l>>2]=i[l>>2]|1<>>0<=1073741822){k=k+32&-32;r=r<<6;k=r>>>0>>0?k:r}else{k=2147483647}bd(l,k);k=i[n>>2]}i[n>>2]=k+1;l=i[f>>2]+(k>>>3&536870908)|0;r=i[l>>2];_=l,$=yp(-2,k)&r,i[_>>2]=$}m=m+1|0;if((m|0)!=(d|0)){continue}break q}break}Ho();x()}d=i[h+24>>2];f=i[d>>2];d=i[d+4>>2];m=i[E+4>>2];i[h+208>>2]=i[E>>2];i[h+212>>2]=m;i[h+200>>2]=f;i[h+204>>2]=d;ze(h+216|0,W,h+208|0,h+200|0);d=c+T|0;i[d>>2]=i[h+216>>2];i[d+4>>2]=i[h+220>>2];d=i[h+36>>2];if(d){i[h+40>>2]=d;bp(d)}d=i[h+24>>2];if(d){i[h+28>>2]=d;bp(d)}if((J|0)<3){break d}J=C;d=i[a+40>>2];m=i[d>>2];l=C+ -1|0;if(i[d+4>>2]-m>>2>>>0>l>>>0){continue}break}}Io();x()}Ho();x()}if((e|0)>=1){ip(i[h+144>>2],0,e<<2)}d=i[h+144>>2];e=i[d>>2];d=i[d+4>>2];f=i[b+4>>2];i[h+216>>2]=i[b>>2];i[h+220>>2]=f;i[h+208>>2]=e;i[h+212>>2]=d;ze(h+8|0,a+8|0,h+216|0,h+208|0);i[c>>2]=i[h+8>>2];i[c+4>>2]=i[h+12>>2];if(B){bp(B)}a=i[h+128>>2];if(a){i[h+132>>2]=a;bp(a)}a=i[h+180>>2];if(a){i[h+184>>2]=a;bp(a)}a=i[h+168>>2];if(a){i[h+172>>2]=a;bp(a)}a=i[h+156>>2];if(a){i[h+160>>2]=a;bp(a)}a=i[h+144>>2];if(a){i[h+148>>2]=a;bp(a)}F=h+240|0;return 1}function Rb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,k=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=p(0),z=0,A=0,B=0,C=0,D=0;c=F+ -64|0;F=c;n=i[a+28>>2];r=i[n+4>>2];z=i[r+80>>2];q=i[a+4>>2];e=i[a+8>>2];k=(q|0)==(e|0);a:{if(k){break a}f=e-q|0;b=(f|0)>-1?f:-1;s=(b|0)<1?b:1;b=q-e|0;b=o(s,((b|0)>(f|0)?b:f)>>>2|0);e=b>>>0>1?b:1;b=i[r+8>>2];while(1){d=g[i[b+(i[(h<<2)+q>>2]<<2)>>2]+24|0]+d|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}i[a+72>>2]=d;b:{if(k){h=1;break b}A=a+60|0;B=a+36|0;C=a+48|0;D=c+48|0;while(1){c:{d:{e:{f:{g:{h:{i:{j:{u=i[(w<<2)+q>>2];t=i[i[r+8>>2]+(u<<2)>>2];switch(i[t+28>>2]+ -1|0){case 0:case 2:case 4:break i;case 8:break j;default:break c}}i[c+44>>2]=-1;i[c+40>>2]=1140;b=D;i[b+8>>2]=0;i[b+12>>2]=0;i[b>>2]=0;i[b+4>>2]=0;k=i[n+48>>2];f=ho(32);i[c+24>>2]=f;i[c+28>>2]=17;i[c+32>>2]=-2147483616;g[f+17|0]=0;g[f+16|0]=j[1664];e=j[1660]|j[1661]<<8|(j[1662]<<16|j[1663]<<24);b=j[1656]|j[1657]<<8|(j[1658]<<16|j[1659]<<24);g[f+8|0]=b;g[f+9|0]=b>>>8;g[f+10|0]=b>>>16;g[f+11|0]=b>>>24;g[f+12|0]=e;g[f+13|0]=e>>>8;g[f+14|0]=e>>>16;g[f+15|0]=e>>>24;e=j[1652]|j[1653]<<8|(j[1654]<<16|j[1655]<<24);b=j[1648]|j[1649]<<8|(j[1650]<<16|j[1651]<<24);g[f|0]=b;g[f+1|0]=b>>>8;g[f+2|0]=b>>>16;g[f+3|0]=b>>>24;g[f+4|0]=e;g[f+5|0]=e>>>8;g[f+6|0]=e>>>16;g[f+7|0]=e>>>24;k:{l:{e=k+16|0;d=e;h=i[d>>2];if(!h){break l}while(1){b=i[h+16>>2]<(u|0);d=b?d:h;h=i[(b<<2)+h>>2];if(h){continue}break}if((d|0)==(e|0)|(u|0)>2]){break l}b=d+20|0;if(!Sb(b,c+24|0)){break l}s=$j(b,c+24|0,-1);break k}s=$j(k,c+24|0,-1)}if(g[c+35|0]<=-1){bp(i[c+24>>2])}m:{if((s|0)<1){break m}q=i[i[a+28>>2]+48>>2];d=ho(32);i[c+24>>2]=d;i[c+28>>2]=19;i[c+32>>2]=-2147483616;g[d+19|0]=0;v=j[1681]|j[1682]<<8|(j[1683]<<16|j[1684]<<24);g[d+15|0]=v;g[d+16|0]=v>>>8;g[d+17|0]=v>>>16;g[d+18|0]=v>>>24;e=j[1678]|j[1679]<<8|(j[1680]<<16|j[1681]<<24);r=e;f=j[1674]|j[1675]<<8|(j[1676]<<16|j[1677]<<24);b=f;g[d+8|0]=b;g[d+9|0]=b>>>8;g[d+10|0]=b>>>16;g[d+11|0]=b>>>24;g[d+12|0]=e;g[d+13|0]=e>>>8;g[d+14|0]=e>>>16;g[d+15|0]=e>>>24;n=j[1670]|j[1671]<<8|(j[1672]<<16|j[1673]<<24);k=n;e=j[1666]|j[1667]<<8|(j[1668]<<16|j[1669]<<24);b=e;g[d|0]=b;g[d+1|0]=b>>>8;g[d+2|0]=b>>>16;g[d+3|0]=b>>>24;g[d+4|0]=k;g[d+5|0]=k>>>8;g[d+6|0]=k>>>16;g[d+7|0]=k>>>24;n:{o:{n=q+16|0;d=n;h=i[d>>2];if(!h){break o}while(1){b=i[h+16>>2]<(u|0);d=b?d:h;h=i[(b<<2)+h>>2];if(h){continue}break}if((d|0)==(n|0)|(u|0)>2]){break o}n=Sb(d+20|0,c+24|0);break n}n=Sb(q,c+24|0)}b=0;p:{if(!n){break p}q=i[i[a+28>>2]+48>>2];d=ho(32);i[c+8>>2]=d;i[c+12>>2]=18;i[c+16>>2]=-2147483616;g[d+18|0]=0;b=j[1702]|j[1703]<<8;g[d+16|0]=b;g[d+17|0]=b>>>8;n=j[1698]|j[1699]<<8|(j[1700]<<16|j[1701]<<24);b=j[1694]|j[1695]<<8|(j[1696]<<16|j[1697]<<24);g[d+8|0]=b;g[d+9|0]=b>>>8;g[d+10|0]=b>>>16;g[d+11|0]=b>>>24;g[d+12|0]=n;g[d+13|0]=n>>>8;g[d+14|0]=n>>>16;g[d+15|0]=n>>>24;n=j[1690]|j[1691]<<8|(j[1692]<<16|j[1693]<<24);b=j[1686]|j[1687]<<8|(j[1688]<<16|j[1689]<<24);g[d|0]=b;g[d+1|0]=b>>>8;g[d+2|0]=b>>>16;g[d+3|0]=b>>>24;g[d+4|0]=n;g[d+5|0]=n>>>8;g[d+6|0]=n>>>16;g[d+7|0]=n>>>24;q:{r:{n=q+16|0;d=n;h=i[d>>2];if(!h){break r}while(1){b=i[h+16>>2]<(u|0);d=b?d:h;h=i[(b<<2)+h>>2];if(h){continue}break}if((d|0)==(n|0)|(u|0)>2]){break r}b=Sb(d+20|0,c+8|0);break q}b=Sb(q,c+8|0)}if(g[c+19|0]<=-1){bp(i[c+8>>2])}b=(b|0)!=0}if(g[c+35|0]<=-1){bp(i[c+24>>2])}s:{if(b){b=g[t+24|0];q=0;i[c+32>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;if(b){if((b|0)<=-1){break h}n=b<<2;q=ho(n);i[c+24>>2]=q;b=n+q|0;i[c+32>>2]=b;ip(q,0,n);i[c+28>>2]=b}n=i[i[a+28>>2]+48>>2];b=ho(32);i[c+8>>2]=b;i[c+12>>2]=19;i[c+16>>2]=-2147483616;g[b+19|0]=0;g[b+15|0]=v;g[b+16|0]=v>>>8;g[b+17|0]=v>>>16;g[b+18|0]=v>>>24;g[b+8|0]=f;g[b+9|0]=f>>>8;g[b+10|0]=f>>>16;g[b+11|0]=f>>>24;g[b+12|0]=r;g[b+13|0]=r>>>8;g[b+14|0]=r>>>16;g[b+15|0]=r>>>24;g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=k;g[b+5|0]=k>>>8;g[b+6|0]=k>>>16;g[b+7|0]=k>>>24;k=g[t+24|0];t:{u:{e=n+16|0;d=e;h=i[d>>2];if(!h){break u}while(1){b=i[h+16>>2]<(u|0);d=b?d:h;h=i[(b<<2)+h>>2];if(h){continue}break}if((d|0)==(e|0)|(u|0)>2]){break u}b=d+20|0;if(!Sb(b,c+8|0)){break u}Tb(b,c+8|0,k,q);break t}Tb(n,c+8|0,k,q)}if(g[c+19|0]<=-1){bp(i[c+8>>2])}k=i[i[a+28>>2]+48>>2];f=ho(32);i[c+8>>2]=f;i[c+12>>2]=18;i[c+16>>2]=-2147483616;g[f+18|0]=0;b=j[1702]|j[1703]<<8;g[f+16|0]=b;g[f+17|0]=b>>>8;e=j[1698]|j[1699]<<8|(j[1700]<<16|j[1701]<<24);b=j[1694]|j[1695]<<8|(j[1696]<<16|j[1697]<<24);g[f+8|0]=b;g[f+9|0]=b>>>8;g[f+10|0]=b>>>16;g[f+11|0]=b>>>24;g[f+12|0]=e;g[f+13|0]=e>>>8;g[f+14|0]=e>>>16;g[f+15|0]=e>>>24;e=j[1690]|j[1691]<<8|(j[1692]<<16|j[1693]<<24);b=j[1686]|j[1687]<<8|(j[1688]<<16|j[1689]<<24);g[f|0]=b;g[f+1|0]=b>>>8;g[f+2|0]=b>>>16;g[f+3|0]=b>>>24;g[f+4|0]=e;g[f+5|0]=e>>>8;g[f+6|0]=e>>>16;g[f+7|0]=e>>>24;v:{w:{e=k+16|0;d=e;h=i[d>>2];if(!h){break w}while(1){b=i[h+16>>2]<(u|0);d=b?d:h;h=i[(b<<2)+h>>2];if(h){continue}break}if((d|0)==(e|0)|(u|0)>2]){break w}b=d+20|0;if(!Sb(b,c+8|0)){break w}y=ak(b,c+8|0);break v}y=ak(k,c+8|0)}if(g[c+19|0]<=-1){bp(i[c+8>>2])}qa(c+40|0,s,i[c+24>>2],g[t+24|0],y);b=i[c+24>>2];if(!b){break s}i[c+28>>2]=b;bp(b);break s}if(!sa(c+40|0,t,s)){break m}}k=i[a+40>>2];x:{if((k|0)!=i[a+44>>2]){i[k>>2]=1140;b=i[c+44>>2];i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;i[k+4>>2]=b;e=i[c+52>>2]-i[c+48>>2]|0;if(e){b=e>>2;if(b>>>0>=1073741824){break g}e=ho(e);i[k+8>>2]=e;i[k+12>>2]=e;i[k+16>>2]=e+(b<<2);b=k;f=i[c+48>>2];r=i[c+52>>2]-f|0;if((r|0)>=1){e=hp(e,f,r)+r|0}i[b+12>>2]=e}m[k+20>>2]=m[c+60>>2];i[a+40>>2]=k+24;break x}Ub(B,c+40|0)}Aa(c+8|0,c+40|0,t,z);i[c+32>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;ma(c+40|0,t,c+24|0,i[c+8>>2]);b=i[c+24>>2];if(b){i[c+28>>2]=b;bp(b)}e=i[a+64>>2];y:{if(e>>>0>2]){b=i[c+8>>2];i[c+8>>2]=0;i[e>>2]=b;i[a+64>>2]=e+4;break y}Vb(A,c+8|0)}b=i[c+8>>2];i[c+8>>2]=0;if(b){Wb(b)}i[c+40>>2]=1140;b=i[c+48>>2];if(!b){break c}i[c+52>>2]=b;bp(b);break c}i[c+40>>2]=1140;a=i[c+48>>2];if(a){i[c+52>>2]=a;bp(a)}h=0;break b}b=g[t+24|0];q=0;i[c+48>>2]=0;i[c+40>>2]=0;i[c+44>>2]=0;d=0;if(b){if((b|0)<=-1){break f}b=b<<2;h=ho(b);i[c+40>>2]=h;b=b+h|0;i[c+48>>2]=b;while(1){i[h>>2]=2147483647;h=h+4|0;if((b|0)!=(h|0)){continue}break}i[c+44>>2]=b;d=j[t+24|0]}i[c+32>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;if(d&255){b=d<<24>>24;if((b|0)<=-1){break e}e=b<<2;q=ho(e);i[c+24>>2]=q;b=e+q|0;i[c+32>>2]=b;ip(q,0,e);i[c+28>>2]=b}s=j[t+24|0];n=0;if(!i[t+80>>2]){break d}while(1){Xb(t,n,s<<24>>24,q);b=j[t+24|0];s=b<<24>>24;if((s|0)>=1){r=b>>>0>1?b:1;h=0;f=i[c+24>>2];k=i[c+40>>2];while(1){b=h<<2;e=b+k|0;b=i[b+f>>2];if(i[e>>2]>(b|0)){i[e>>2]=b}h=h+1|0;if((r|0)!=(h|0)){continue}break}}n=n+1|0;if(n>>>0>=l[t+80>>2]){break d}q=i[c+24>>2];continue}}Ho();x()}Ho();x()}Ho();x()}Ho();x()}h=0;z:{if(s<<24>>24<=0){break z}A:{while(1){B:{r=i[c+40>>2]+(h<<2)|0;b=i[a+52>>2];C:{if((b|0)!=i[a+56>>2]){i[b>>2]=i[r>>2];i[a+52>>2]=b+4;break C}n=i[C>>2];s=b-n|0;f=s>>2;k=f+1|0;if(k>>>0>=1073741824){break B}e=s>>1;k=f>>>0<536870911?e>>>0>>0?k:e:1073741823;b=0;D:{if(!k){break D}if(k>>>0>=1073741824){break A}b=ho(k<<2)}e=b+(f<<2)|0;i[e>>2]=i[r>>2];k=b+(k<<2)|0;e=e+4|0;if((s|0)>=1){hp(b,n,s)}i[a+56>>2]=k;i[a+52>>2]=e;i[a+48>>2]=b;if(!n){break C}bp(n)}h=h+1|0;if((h|0)>2];if(b){i[c+28>>2]=b;bp(b)}b=i[c+40>>2];if(!b){break c}i[c+44>>2]=b;bp(b)}h=1;w=w+1|0;q=i[a+4>>2];if(w>>>0>=i[a+8>>2]-q>>2>>>0){break b}n=i[a+28>>2];r=i[n+4>>2];continue}}F=c- -64|0;return h|0}function Te(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 h=0,k=0,l=0,m=0,n=0,p=0,r=0,t=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=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,_=0,$=0;h=F-240|0;F=h;V=i[a+36>>2];N=i[a+32>>2];i[h+184>>2]=0;i[h+188>>2]=0;i[h+176>>2]=0;i[h+180>>2]=0;i[h+168>>2]=0;i[h+172>>2]=0;d=h+160|0;i[d>>2]=0;i[d+4>>2]=0;i[h+152>>2]=0;i[h+156>>2]=0;i[h+144>>2]=0;i[h+148>>2]=0;if(e){Bd(h+144|0,e);m=i[d>>2];d=i[h+156>>2]}else{d=0}f=m-d>>2;a:{if(f>>>0>=e>>>0){if(f>>>0<=e>>>0){break a}i[h+160>>2]=d+(e<<2);break a}Bd(h+144|12,e-f|0)}f=i[h+168>>2];d=i[h+172>>2]-f>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}i[h+172>>2]=f+(e<<2);break b}Bd(h+168|0,e-d|0)}f=i[h+180>>2];d=i[h+184>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}i[h+184>>2]=f+(e<<2);break c}Bd(h+180|0,e-d|0)}i[h+136>>2]=0;i[h+128>>2]=0;i[h+132>>2]=0;d:{e:{if(e){if(e>>>0>=1073741824){break e}d=e<<2;f=ho(d);i[h+128>>2]=f;l=d+f|0;i[h+136>>2]=l;ip(f,0,d);i[h+132>>2]=l}J=a+136|0;f=i[a+136>>2];d=i[a+140>>2]-f>>2;f:{if(d>>>0>>0){Bd(J,e-d|0);break f}if(d>>>0<=e>>>0){break f}i[a+140>>2]=f+(e<<2)}i[h+104>>2]=0;i[h+108>>2]=0;i[h+96>>2]=0;i[h+100>>2]=0;i[h+88>>2]=0;i[h+92>>2]=0;i[h+80>>2]=0;i[h+84>>2]=0;i[h+72>>2]=0;i[h+76>>2]=0;d=h- -64|0;i[d>>2]=0;i[d+4>>2]=0;i[h+56>>2]=0;i[h+60>>2]=0;i[h+48>>2]=0;i[h+52>>2]=0;if(e){d=e<<2;B=ho(d);d=ip(B,0,d)+d|0}else{d=0}f=i[a+40>>2];m=i[f>>2];f=i[f+4>>2]-m|0;if((f|0)<5){break d}O=d;I=f>>>2|0;d=I+ -1|0;if(f>>2>>>0>d>>>0){P=e<<2;W=a+8|0;K=a+96|0;X=h+125|0;Q=h+36|0;R=h+24|0;L=h+20|0;Y=L+24|0;S=L+16|0;G=(e|0)<1;while(1){l=0;D=d;d=i[(d<<2)+m>>2];g:{if((d|0)==-1){break g}t=i[N+12>>2];C=d+((d>>>0)%3|0?-1:2)|0;r=t+(C<<2)|0;m=1;n=0;f=d;while(1){l=i[t+(f<<2)>>2];h:{if((l|0)==-1){break h}p=-1;w=i[V>>2];k=i[N>>2];A=i[w+(i[k+(l<<2)>>2]<<2)>>2];y=l+1|0;y=(y>>>0)%3|0?y:l+ -2|0;if((y|0)!=-1){y=i[k+(y<<2)>>2]}else{y=-1}l=l+((l>>>0)%3|0?-1:2)|0;if((l|0)!=-1){p=i[k+(l<<2)>>2]}if((A|0)>=(D|0)){break h}l=i[(y<<2)+w>>2];if((l|0)>=(D|0)){break h}k=i[w+(p<<2)>>2];if((k|0)>=(D|0)){break h}p=i[(h+144|0)+o(n,12)>>2];if(!G){w=o(e,k);l=o(e,l);A=o(e,A);k=0;while(1){i[p+(k<<2)>>2]=(i[(k+w<<2)+b>>2]+i[(k+l<<2)+b>>2]|0)-i[(k+A<<2)+b>>2];k=k+1|0;if((k|0)!=(e|0)){continue}break}}l=4;n=n+1|0;if((n|0)==4){break g}}i:{if(m&1){p=f+1|0;f=(p>>>0)%3|0?p:f+ -2|0;l=-1;if((f|0)==-1){break i}f=i[t+(f<<2)>>2];l=-1;if((f|0)==-1){break i}l=f+1|0;l=(l>>>0)%3|0?l:f+ -2|0;break i}f=((f>>>0)%3|0?-1:2)+f|0;l=-1;if((f|0)==-1){break i}f=i[t+(f<<2)>>2];l=-1;if((f|0)==-1){break i}l=f+ -1|0;if((f>>>0)%3|0){break i}l=f+2|0}if((l|0)==(d|0)){l=n;break g}f=l;l=(l|0)!=-1;k=(l|m^-1)&1;f=k?f:-1;m=m&l;if(!((C|0)==-1|k)){l=i[r>>2];if((l|0)==-1){l=n;break g}m=0;if((l>>>0)%3|0){f=l+ -1|0}else{f=l+2|0}}l=n;if((f|0)!=-1){continue}break}}f=0;g[h+16|0]=0;i[h+8>>2]=0;i[h+12>>2]=0;i[Y>>2]=0;i[S>>2]=0;i[S+4>>2]=0;d=L;i[d+8>>2]=0;i[d+12>>2]=0;i[d>>2]=0;i[d+4>>2]=0;T=o(e,D)<<2;y=T+b|0;p=(o(I+ -2|0,e)<<2)+b|0;m=i[a+136>>2];d=0;if(!G){while(1){k=d<<2;n=i[k+p>>2]-i[k+y>>2]|0;i[k+B>>2]=n;i[k+m>>2]=(n|0)>-1?n<<1:(n^-1)<<1|1;k=f;f=n>>31;f=k+(f+n^f)|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}dg(h+216|0,K,m,e);d=gg(h+216|0);k=H;m=hg(h+216|0);n=m+d|0;d=H+k|0;d=n>>>0>>0?d+1|0:d;k=n;M=(l|0)<1;if(!M){t=(l<<3)+ -8|0;m=t+(h+48|0)|0;w=m;r=m;n=i[m+4>>2];A=l+i[m>>2]|0;if(A>>>0>>0){n=n+1|0}m=A;i[r>>2]=m;i[w+4>>2]=n;z=v(bg(m,i[t+(h+80|0)>>2])*(+(m>>>0)+ +(n|0)*4294967296));j:{if(q(z)<0x8000000000000000){m=q(z)>=1?z>0?~~s(u(z*2.3283064365386963e-10),4294967295)>>>0:~~v((z- +(~~z>>>0>>>0))*2.3283064365386963e-10)>>>0:0;n=~~z>>>0;break j}m=-2147483648;n=0}d=d+m|0;n=k+n|0;if(n>>>0>>0){d=d+1|0}k=n}i[h+20>>2]=0;g[h+16|0]=0;i[h+8>>2]=k;i[h+12>>2]=f;ra(R,p,p+P|0);Hd(Q,B,O);if(!M){w=(h+124|0)+l|0;A=w+ -2|0;t=w+ -1|0;d=(l<<3)+ -8|0;U=d+(h+48|0)|0;Z=d+(h+80|0)|0;n=1;C=0;while(1){ip(h+124|0,1,l);C=C+1|0;ip(h+124|0,0,C);k:{l:while(1){if(!G){ip(i[h+128>>2],0,P)}f=0;d=i[h+128>>2];m=0;while(1){if(!j[(h+124|0)+f|0]){if(!G){p=i[(h+144|0)+o(f,12)>>2];k=0;while(1){r=k<<2;E=r+d|0;i[E>>2]=i[E>>2]+i[p+r>>2];k=k+1|0;if((k|0)!=(e|0)){continue}break}}m=1<>2];while(1){f=d+(k<<2)|0;i[f>>2]=i[f>>2]/(n|0);k=k+1|0;if((k|0)!=(e|0)){continue}break}if((e|0)>0){break n}}p=i[a+136>>2];f=0;break m}E=i[h+128>>2];p=i[a+136>>2];f=0;d=0;while(1){r=d<<2;k=i[r+E>>2]-i[r+y>>2]|0;i[r+B>>2]=k;i[p+r>>2]=(k|0)>-1?k<<1:(k^-1)<<1|1;r=f;f=k>>31;f=r+(f+k^f)|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}dg(h+216|0,K,p,e);k=gg(h+216|0)+hg(h+216|0)|0;if((l|0)>0){d=i[U+4>>2];p=i[U>>2];z=v(bg(p,i[Z>>2]+n|0)*(+(p>>>0)+ +(d|0)*4294967296));o:{if(q(z)<0x8000000000000000){d=~~z>>>0;break o}d=0}k=d+k|0}d=i[h+8>>2];if(!((k|0)>(d|0)|(f|0)>=i[h+12>>2]?(k|0)>=(d|0):0)){i[h+20>>2]=n;g[h+16|0]=m;i[h+8>>2]=k;i[h+12>>2]=f;Hd(R,i[h+128>>2],i[h+132>>2]);Hd(Q,B,O)}if((t|0)==(h+124|0)){break k}m=-1;f=j[t|0];k=f;while(1){p=k&255;d=m+ -1|0;r=d+w|0;k=j[r|0];if(k>>>0

>>0){p=t;d=w;if(k>>>0>=(f&255)>>>0){while(1){f=p;p=f+ -1|0;E=d+ -2|0;d=f;if(k>>>0>=j[E|0]){continue}break}f=1}d=m+w|0;g[r|0]=f;g[p|0]=k;k=t;if((m|0)==-1){continue l}while(1){f=j[d|0];g[d|0]=j[k|0];g[k|0]=f;d=d+1|0;k=k+ -1|0;if(d>>>0>>0){continue}break}continue l}m=d;if((r|0)!=(h+124|0)){continue}break}break}if(t>>>0<=h+124>>>0){break k}d=j[h+124|0];g[h+124|0]=f;g[t|0]=d;m=X;k=A;if(m>>>0>=k>>>0){break k}while(1){d=j[m|0];g[m|0]=j[k|0];g[k|0]=d;m=m+1|0;k=k+ -1|0;if(m>>>0>>0){continue}break}}n=n+1|0;if((l|0)!=(C|0)){continue}break}}if((l|0)>0){d=((l<<3)+h|0)+72|0;n=d;k=i[h+20>>2];f=k+i[d>>2]|0;d=i[d+4>>2]+(k>>31)|0;i[n>>2]=f;i[n+4>>2]=f>>>0>>0?d+1|0:d}p:{if((e|0)<=0){d=i[J>>2];break p}d=i[J>>2];k=0;n=i[h+36>>2];while(1){m=k<<2;f=i[m+n>>2];i[d+m>>2]=(f|0)>-1?f<<1:(f^-1)<<1|1;k=k+1|0;if((k|0)!=(e|0)){continue}break}}fg(h+216|0,K,d,e);q:{if(M){break q}d=o(l,12)+a|0;t=d+40|0;n=d+36|0;d=d+32|0;m=0;while(1){r:{p=i[t>>2];f=p<<5;k=i[n>>2];s:{if(!(j[h+16|0]>>>m&1)){if((f|0)==(k|0)){if((k+1|0)<=-1){break r}f=d;if(k>>>0<=1073741822){k=k+32&-32;p=p<<6;k=p>>>0>>0?k:p}else{k=2147483647}bd(f,k);k=i[n>>2]}i[n>>2]=k+1;f=i[d>>2]+(k>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<>>0<=1073741822){k=k+32&-32;p=p<<6;k=p>>>0>>0?k:p}else{k=2147483647}bd(f,k);k=i[n>>2]}i[n>>2]=k+1;f=i[d>>2]+(k>>>3&536870908)|0;p=i[f>>2];_=f,$=yp(-2,k)&p,i[_>>2]=$}m=m+1|0;if((l|0)!=(m|0)){continue}break q}break}Ho();x()}d=i[h+24>>2];f=i[d>>2];d=i[d+4>>2];l=i[y+4>>2];i[h+208>>2]=i[y>>2];i[h+212>>2]=l;i[h+200>>2]=f;i[h+204>>2]=d;ze(h+216|0,W,h+208|0,h+200|0);d=c+T|0;i[d>>2]=i[h+216>>2];i[d+4>>2]=i[h+220>>2];d=i[h+36>>2];if(d){i[h+40>>2]=d;bp(d)}d=i[h+24>>2];if(d){i[h+28>>2]=d;bp(d)}if((I|0)<3){break d}I=D;d=i[a+40>>2];m=i[d>>2];f=i[d+4>>2]-m>>2;d=D+ -1|0;if(f>>>0>d>>>0){continue}break}}Io();x()}Ho();x()}if((e|0)>=1){ip(i[h+144>>2],0,e<<2)}d=i[h+144>>2];e=i[d>>2];d=i[d+4>>2];f=i[b+4>>2];i[h+216>>2]=i[b>>2];i[h+220>>2]=f;i[h+208>>2]=e;i[h+212>>2]=d;ze(h+8|0,a+8|0,h+216|0,h+208|0);i[c>>2]=i[h+8>>2];i[c+4>>2]=i[h+12>>2];if(B){bp(B)}a=i[h+128>>2];if(a){i[h+132>>2]=a;bp(a)}a=i[h+180>>2];if(a){i[h+184>>2]=a;bp(a)}a=i[h+168>>2];if(a){i[h+172>>2]=a;bp(a)}a=i[h+156>>2];if(a){i[h+160>>2]=a;bp(a)}a=i[h+144>>2];if(a){i[h+148>>2]=a;bp(a)}F=h+240|0;return 1}function yj(a,b,c,d){var e=0,f=0,h=0,k=0;f=F-32|0;F=f;i[b+44>>2]=d;i[b+48>>2]=c;d=i[b+12>>2];e=i[b+8>>2];if((d|0)!=(e|0)){while(1){d=d+ -4|0;h=i[d>>2];i[d>>2]=0;if(h){I[i[i[h>>2]+4>>2]](h)}if((d|0)!=(e|0)){continue}break}}i[b+12>>2]=e;i[b+24>>2]=i[b+20>>2];i[b+36>>2]=i[b+32>>2];a:{if(!i[b+4>>2]){b=ho(32);i[f+8>>2]=b;i[f+12>>2]=23;i[f+16>>2]=-2147483616;g[b+23|0]=0;c=j[13555]|j[13556]<<8|(j[13557]<<16|j[13558]<<24);d=j[13551]|j[13552]<<8|(j[13553]<<16|j[13554]<<24);g[b+15|0]=d;g[b+16|0]=d>>>8;g[b+17|0]=d>>>16;g[b+18|0]=d>>>24;g[b+19|0]=c;g[b+20|0]=c>>>8;g[b+21|0]=c>>>16;g[b+22|0]=c>>>24;c=j[13548]|j[13549]<<8|(j[13550]<<16|j[13551]<<24);d=j[13544]|j[13545]<<8|(j[13546]<<16|j[13547]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[13540]|j[13541]<<8|(j[13542]<<16|j[13543]<<24);d=j[13536]|j[13537]<<8|(j[13538]<<16|j[13539]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;ro(a+4|0,f+8|0);if(g[f+19|0]>-1){break a}bp(i[f+8>>2]);break a}zj(a,b);if(i[a>>2]){break a}h=a+4|0;if(g[a+15|0]<=-1){bp(i[h>>2])}d=i[i[b+4>>2]+4>>2];b:{if(!d){i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;break b}if(!im(f+24|0,i[b+44>>2],d)){d=ho(32);i[f+8>>2]=d;i[f+12>>2]=26;i[f+16>>2]=-2147483616;g[d+26|0]=0;e=j[13718]|j[13719]<<8;g[d+24|0]=e;g[d+25|0]=e>>>8;e=j[13714]|j[13715]<<8|(j[13716]<<16|j[13717]<<24);k=j[13710]|j[13711]<<8|(j[13712]<<16|j[13713]<<24);g[d+16|0]=k;g[d+17|0]=k>>>8;g[d+18|0]=k>>>16;g[d+19|0]=k>>>24;g[d+20|0]=e;g[d+21|0]=e>>>8;g[d+22|0]=e>>>16;g[d+23|0]=e>>>24;e=j[13706]|j[13707]<<8|(j[13708]<<16|j[13709]<<24);k=j[13702]|j[13703]<<8|(j[13704]<<16|j[13705]<<24);g[d+8|0]=k;g[d+9|0]=k>>>8;g[d+10|0]=k>>>16;g[d+11|0]=k>>>24;g[d+12|0]=e;g[d+13|0]=e>>>8;g[d+14|0]=e>>>16;g[d+15|0]=e>>>24;e=j[13698]|j[13699]<<8|(j[13700]<<16|j[13701]<<24);k=j[13694]|j[13695]<<8|(j[13696]<<16|j[13697]<<24);g[d|0]=k;g[d+1|0]=k>>>8;g[d+2|0]=k>>>16;g[d+3|0]=k>>>24;g[d+4|0]=e;g[d+5|0]=e>>>8;g[d+6|0]=e>>>16;g[d+7|0]=e>>>24;i[a>>2]=-1;ro(h,f+8|0);if(g[f+19|0]<=-1){bp(i[f+8>>2])}if(i[a>>2]){break a}break b}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}if(g[h+11|0]<=-1){bp(i[h>>2])}if(!(I[i[i[b>>2]+16>>2]](b)|0)){b=ho(32);i[f+8>>2]=b;i[f+12>>2]=29;i[f+16>>2]=-2147483616;g[b+29|0]=0;c=j[13585]|j[13586]<<8|(j[13587]<<16|j[13588]<<24);d=j[13581]|j[13582]<<8|(j[13583]<<16|j[13584]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=j[13580]|j[13581]<<8|(j[13582]<<16|j[13583]<<24);d=j[13576]|j[13577]<<8|(j[13578]<<16|j[13579]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[13572]|j[13573]<<8|(j[13574]<<16|j[13575]<<24);d=j[13568]|j[13569]<<8|(j[13570]<<16|j[13571]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[13564]|j[13565]<<8|(j[13566]<<16|j[13567]<<24);d=j[13560]|j[13561]<<8|(j[13562]<<16|j[13563]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;ro(h,f+8|0);if(g[f+19|0]>-1){break a}bp(i[f+8>>2]);break a}if(!(I[i[i[b>>2]+20>>2]](b)|0)){b=ho(32);i[f+8>>2]=b;i[f+12>>2]=31;i[f+16>>2]=-2147483616;g[b+31|0]=0;c=j[13617]|j[13618]<<8|(j[13619]<<16|j[13620]<<24);d=j[13613]|j[13614]<<8|(j[13615]<<16|j[13616]<<24);g[b+23|0]=d;g[b+24|0]=d>>>8;g[b+25|0]=d>>>16;g[b+26|0]=d>>>24;g[b+27|0]=c;g[b+28|0]=c>>>8;g[b+29|0]=c>>>16;g[b+30|0]=c>>>24;c=j[13610]|j[13611]<<8|(j[13612]<<16|j[13613]<<24);d=j[13606]|j[13607]<<8|(j[13608]<<16|j[13609]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[13602]|j[13603]<<8|(j[13604]<<16|j[13605]<<24);d=j[13598]|j[13599]<<8|(j[13600]<<16|j[13601]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[13594]|j[13595]<<8|(j[13596]<<16|j[13597]<<24);d=j[13590]|j[13591]<<8|(j[13592]<<16|j[13593]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;ro(h,f+8|0);if(g[f+19|0]>-1){break a}bp(i[f+8>>2]);break a}I[i[i[b>>2]+24>>2]](a,b);if(i[a>>2]){break a}if(g[h+11|0]<=-1){bp(i[h>>2])}if(!(I[i[i[b>>2]+28>>2]](b)|0)){b=ho(48);i[f+8>>2]=b;i[f+12>>2]=34;i[f+16>>2]=-2147483600;g[b+34|0]=0;c=j[13654]|j[13655]<<8;g[b+32|0]=c;g[b+33|0]=c>>>8;c=j[13650]|j[13651]<<8|(j[13652]<<16|j[13653]<<24);d=j[13646]|j[13647]<<8|(j[13648]<<16|j[13649]<<24);g[b+24|0]=d;g[b+25|0]=d>>>8;g[b+26|0]=d>>>16;g[b+27|0]=d>>>24;g[b+28|0]=c;g[b+29|0]=c>>>8;g[b+30|0]=c>>>16;g[b+31|0]=c>>>24;c=j[13642]|j[13643]<<8|(j[13644]<<16|j[13645]<<24);d=j[13638]|j[13639]<<8|(j[13640]<<16|j[13641]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[13634]|j[13635]<<8|(j[13636]<<16|j[13637]<<24);d=j[13630]|j[13631]<<8|(j[13632]<<16|j[13633]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[13626]|j[13627]<<8|(j[13628]<<16|j[13629]<<24);d=j[13622]|j[13623]<<8|(j[13624]<<16|j[13625]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;ro(h,f+8|0);if(g[f+19|0]>-1){break a}bp(i[f+8>>2]);break a}d=ho(32);i[f+8>>2]=d;i[f+12>>2]=30;i[f+16>>2]=-2147483616;g[d+30|0]=0;h=j[13683]|j[13684]<<8|(j[13685]<<16|j[13686]<<24);e=j[13679]|j[13680]<<8|(j[13681]<<16|j[13682]<<24);g[d+22|0]=e;g[d+23|0]=e>>>8;g[d+24|0]=e>>>16;g[d+25|0]=e>>>24;g[d+26|0]=h;g[d+27|0]=h>>>8;g[d+28|0]=h>>>16;g[d+29|0]=h>>>24;h=j[13677]|j[13678]<<8|(j[13679]<<16|j[13680]<<24);e=j[13673]|j[13674]<<8|(j[13675]<<16|j[13676]<<24);g[d+16|0]=e;g[d+17|0]=e>>>8;g[d+18|0]=e>>>16;g[d+19|0]=e>>>24;g[d+20|0]=h;g[d+21|0]=h>>>8;g[d+22|0]=h>>>16;g[d+23|0]=h>>>24;h=j[13669]|j[13670]<<8|(j[13671]<<16|j[13672]<<24);e=j[13665]|j[13666]<<8|(j[13667]<<16|j[13668]<<24);g[d+8|0]=e;g[d+9|0]=e>>>8;g[d+10|0]=e>>>16;g[d+11|0]=e>>>24;g[d+12|0]=h;g[d+13|0]=h>>>8;g[d+14|0]=h>>>16;g[d+15|0]=h>>>24;h=j[13661]|j[13662]<<8|(j[13663]<<16|j[13664]<<24);e=j[13657]|j[13658]<<8|(j[13659]<<16|j[13660]<<24);g[d|0]=e;g[d+1|0]=e>>>8;g[d+2|0]=e>>>16;g[d+3|0]=e>>>24;g[d+4|0]=h;g[d+5|0]=h>>>8;g[d+6|0]=h>>>16;g[d+7|0]=h>>>24;c=ck(c,f+8|0,0);if(g[f+19|0]<=-1){bp(i[f+8>>2])}if(c){I[i[i[b>>2]+48>>2]](b)}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}F=f+32|0}function _m(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;var h=0,k=0,l=0,m=0,n=0,p=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;p=F-560|0;F=p;i[p+44>>2]=0;Ep(+b);h=Bp(1)|0;Bp(0)|0;a:{if((h|0)<-1?1:(h|0)<=-1){B=1;b=-b;Ep(+b);h=Bp(1)|0;Bp(0)|0;w=17504;break a}B=1;w=17507;if(e&2048){break a}w=17510;if(e&1){break a}B=0;E=1;w=17505}b:{if((h&2146435072)==2146435072){n=B+3|0;Zm(a,32,c,n,e&-65537);Tm(a,w,B);d=f&32;Tm(a,b!=b?d?17531:17535:d?17523:17527,3);break b}x=p+16|0;c:{d:{e:{b=Qm(b,p+44|0);b=b+b;if(b!=0){h=i[p+44>>2];i[p+44>>2]=h+ -1;y=f|32;if((y|0)!=97){break e}break c}y=f|32;if((y|0)==97){break c}n=i[p+44>>2];r=(d|0)<0?6:d;break d}n=h+ -29|0;i[p+44>>2]=n;b=b*268435456;r=(d|0)<0?6:d}t=(n|0)<0?p+48|0:p+336|0;m=t;while(1){d=m;if(b<4294967296&b>=0){h=~~b>>>0}else{h=0}i[d>>2]=h;m=m+4|0;b=(b- +(h>>>0))*1e9;if(b!=0){continue}break}f:{if((n|0)<1){d=n;h=m;k=t;break f}k=t;d=n;while(1){s=(d|0)<29?d:29;h=m+ -4|0;g:{if(h>>>0>>0){break g}d=s;l=0;while(1){u=h;C=l;D=i[h>>2];v=d&31;if(32<=(d&63)>>>0){l=D<>>32-v;D=D<>>0>>0?l+1|0:l;l=wp(v,l,1e9,0);C=u;u=up(l,H,1e9,0);i[C>>2]=v-u;h=h+ -4|0;if(h>>>0>=k>>>0){continue}break}if(!l){break g}k=k+ -4|0;i[k>>2]=l}while(1){h=m;if(h>>>0>k>>>0){m=h+ -4|0;if(!i[m>>2]){continue}}break}d=i[p+44>>2]-s|0;i[p+44>>2]=d;m=h;if((d|0)>0){continue}break}}if((d|0)<=-1){z=((r+25|0)/9|0)+1|0;s=(y|0)==102;while(1){l=(d|0)<-9?9:0-d|0;h:{if(k>>>0>=h>>>0){k=i[k>>2]?k:k+4|0;break h}u=1e9>>>l|0;v=-1<>2];i[m>>2]=C+(d>>>l|0);d=o(u,d&v);m=m+4|0;if(m>>>0>>0){continue}break}k=i[k>>2]?k:k+4|0;if(!d){break h}i[h>>2]=d;h=h+4|0}d=l+i[p+44>>2]|0;i[p+44>>2]=d;m=s?t:k;h=h-m>>2>(z|0)?m+(z<<2)|0:h;if((d|0)<0){continue}break}}m=0;i:{if(k>>>0>=h>>>0){break i}m=o(t-k>>2,9);d=10;l=i[k>>2];if(l>>>0<10){break i}while(1){m=m+1|0;d=o(d,10);if(l>>>0>=d>>>0){continue}break}}d=(r-((y|0)==102?0:m)|0)-((y|0)==103&(r|0)!=0)|0;if((d|0)<(o(h-t>>2,9)+ -9|0)){l=d+9216|0;s=(l|0)/9|0;n=((s<<2)+((n|0)<0?p+48|4:p+340|0)|0)+ -4096|0;d=10;l=l-o(s,9)|0;if((l|0)<=7){while(1){d=o(d,10);l=l+1|0;if((l|0)!=8){continue}break}}s=i[n>>2];u=(s>>>0)/(d>>>0)|0;z=n+4|0;l=s-o(d,u)|0;j:{if(l?0:(z|0)==(h|0)){break j}v=d>>>1|0;A=l>>>0>>0?.5:(h|0)==(z|0)?(v|0)==(l|0)?1:1.5:1.5;b=u&1?9007199254740994:9007199254740992;if(!(j[w|0]!=45|E)){A=-A;b=-b}l=s-l|0;i[n>>2]=l;if(b+A==b){break j}d=d+l|0;i[n>>2]=d;if(d>>>0>=1e9){while(1){i[n>>2]=0;n=n+ -4|0;if(n>>>0>>0){k=k+ -4|0;i[k>>2]=0}d=i[n>>2]+1|0;i[n>>2]=d;if(d>>>0>999999999){continue}break}}m=o(t-k>>2,9);d=10;l=i[k>>2];if(l>>>0<10){break j}while(1){m=m+1|0;d=o(d,10);if(l>>>0>=d>>>0){continue}break}}d=n+4|0;h=h>>>0>d>>>0?d:h}while(1){d=h;n=h>>>0<=k>>>0;if(!n){h=d+ -4|0;if(!i[h>>2]){continue}}break}k:{if((y|0)!=103){s=e&8;break k}h=r?r:1;l=(h|0)>(m|0)&(m|0)>-5;r=(l?m^-1:-1)+h|0;f=(l?-1:-2)+f|0;s=e&8;if(s){break k}h=-9;l:{if(n){break l}s=i[d+ -4>>2];if(!s){break l}l=10;h=0;if((s>>>0)%10|0){break l}while(1){n=h;h=h+1|0;l=o(l,10);if(!((s>>>0)%(l>>>0)|0)){continue}break}h=n^-1}n=o(d-t>>2,9);if((f&-33)==70){s=0;h=(h+n|0)+ -9|0;h=(h|0)>0?h:0;r=(r|0)<(h|0)?r:h;break k}s=0;h=((m+n|0)+h|0)+ -9|0;h=(h|0)>0?h:0;r=(r|0)<(h|0)?r:h}u=r|s;v=(u|0)!=0;C=a;l=c;y=f&-33;h=(m|0)>0?m:0;m:{if((y|0)==70){break m}h=m>>31;h=Ym(h+m^h,0,x);if((x-h|0)<=1){while(1){h=h+ -1|0;g[h|0]=48;if((x-h|0)<2){continue}break}}z=h+ -2|0;g[z|0]=f;g[h+ -1|0]=(m|0)<0?45:43;h=x-z|0}n=(h+(v+(r+B|0)|0)|0)+1|0;Zm(C,32,l,n,e);Tm(a,w,B);Zm(a,48,c,n,e^65536);n:{o:{p:{if((y|0)==70){f=p+16|8;m=p+16|9;l=k>>>0>t>>>0?t:k;k=l;while(1){h=Ym(i[k>>2],0,m);q:{if((k|0)!=(l|0)){if(h>>>0<=p+16>>>0){break q}while(1){h=h+ -1|0;g[h|0]=48;if(h>>>0>p+16>>>0){continue}break}break q}if((h|0)!=(m|0)){break q}g[p+24|0]=48;h=f}Tm(a,h,m-h|0);k=k+4|0;if(k>>>0<=t>>>0){continue}break}if(u){Tm(a,17539,1)}if((r|0)<1|k>>>0>=d>>>0){break p}while(1){h=Ym(i[k>>2],0,m);if(h>>>0>p+16>>>0){while(1){h=h+ -1|0;g[h|0]=48;if(h>>>0>p+16>>>0){continue}break}}Tm(a,h,(r|0)<9?r:9);h=r+ -9|0;k=k+4|0;if(k>>>0>=d>>>0){break o}f=(r|0)>9;r=h;if(f){continue}break}break o}r:{if((r|0)<0){break r}t=d>>>0>k>>>0?d:k+4|0;d=p+16|8;f=p+16|9;m=k;while(1){h=Ym(i[m>>2],0,f);if((f|0)==(h|0)){g[p+24|0]=48;h=d}s:{if((k|0)!=(m|0)){if(h>>>0<=p+16>>>0){break s}while(1){h=h+ -1|0;g[h|0]=48;if(h>>>0>p+16>>>0){continue}break}break s}Tm(a,h,1);h=h+1|0;if((r|0)<1?!s:0){break s}Tm(a,17539,1)}u=h;h=f-h|0;Tm(a,u,(r|0)>(h|0)?h:r);r=r-h|0;m=m+4|0;if(m>>>0>=t>>>0){break r}if((r|0)>-1){continue}break}}Zm(a,48,r+18|0,18,0);Tm(a,z,x-z|0);break n}h=r}Zm(a,48,h+9|0,9,0)}break b}r=f&32;l=r?w+9|0:w;t:{if(d>>>0>11){break t}h=12-d|0;if(!h){break t}A=8;while(1){A=A*16;h=h+ -1|0;if(h){continue}break}if(j[l|0]==45){b=-(A+(-b-A));break t}b=b+A-A}m=i[p+44>>2];h=m>>31;h=Ym(h^h+m,0,x);if((x|0)==(h|0)){g[p+15|0]=48;h=p+15|0}m=B|2;k=i[p+44>>2];t=h+ -2|0;g[t|0]=f+15;g[h+ -1|0]=(k|0)<0?45:43;n=e&8;k=p+16|0;while(1){f=k;u=k;k=r;if(q(b)<2147483648){h=~~b}else{h=-2147483648}g[u|0]=k|j[h+17488|0];b=(b- +(h|0))*16;k=f+1|0;if(!((k-(p+16|0)|0)!=1|(b==0?!((d|0)>0|n):0))){g[f+1|0]=46;k=f+2|0}if(b!=0){continue}break}h=a;f=c;if(!d|((k-p|0)+ -18|0)>=(d|0)){r=((x-(p+16|0)|0)-t|0)+k|0}else{r=((d+x|0)-t|0)+2|0}d=r;n=d+m|0;Zm(h,32,f,n,e);Tm(a,l,m);Zm(a,48,c,n,e^65536);f=k-(p+16|0)|0;Tm(a,p+16|0,f);d=x-t|0;Zm(a,48,r-(d+f|0)|0,0,0);Tm(a,t,d)}Zm(a,32,c,n,e^8192);F=p+560|0;return((n|0)<(c|0)?c:n)|0}function Zb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0;c=F-1696|0;F=c;d=10-_b(i[i[a+28>>2]+48>>2])|0;d=(d|0)<6?d:6;g[c+1695|0]=d;if(!((d&255)!=6|i[a+72>>2]<16)){g[c+1695|0]=5}d=i[b+20>>2];if((d|0)<0?1:(d|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],c+1695|0,c+1696|0)}f=i[a+28>>2];m=i[i[f+4>>2]+80>>2];e=i[a+72>>2];i[c+1684>>2]=0;i[c+1676>>2]=0;i[c+1680>>2]=0;i[c+1668>>2]=e;i[c+1664>>2]=m;i[c+1672>>2]=e<<2;a:{h=o(e,m);if(h){if(h>>>0>=1073741824){break a}d=h<<2;k=ho(d);i[c+1676>>2]=k;n=d+k|0;i[c+1684>>2]=n;ip(k,0,d);i[c+1680>>2]=n}i[c+1688>>2]=k;b:{d=i[a+4>>2];c:{if((d|0)!=i[a+8>>2]){while(1){f=i[i[i[f+4>>2]+8>>2]+(i[(s<<2)+d>>2]<<2)>>2];d=i[f+28>>2];if(d+ -1>>>0>=6){if((d|0)!=9){break c}f=i[i[a+60>>2]+(v<<2)>>2];if(!f){break c}v=v+1|0;d=i[f+28>>2]}d:{e:{switch(d+ -1|0){case 5:if(!m){break d}d=0;while(1){e=d;h=(i[c+1688>>2]+(p<<2)|0)+(o(i[c+1668>>2],d)<<2)|0;k=i[i[f>>2]>>2];n=i[f+48>>2];t=i[f+40>>2];u=i[f+44>>2];if(!j[f+84|0]){e=i[i[f+68>>2]+(d<<2)>>2]}q=h;h=up(t,u,e,0)+n|0;hp(q,h+k|0,g[f+24|0]<<2);d=d+1|0;if((m|0)!=(d|0)){continue}break}break d;case 0:case 2:case 4:e=g[f+24|0];d=0;i[c+464>>2]=0;i[c+456>>2]=0;i[c+460>>2]=0;h=0;f:{if(e){if((e|0)<=-1){break f}e=e<<2;h=ho(e);i[c+456>>2]=h;k=e+h|0;i[c+464>>2]=k;ip(h,0,e);i[c+460>>2]=k;h=j[f+24|0]}i[c+1656>>2]=0;i[c+1648>>2]=0;i[c+1652>>2]=0;g:{if(h&255){d=h<<24>>24;if((d|0)<=-1){break g}e=d<<2;d=ho(e);i[c+1648>>2]=d;h=d+e|0;i[c+1656>>2]=h;ip(d,0,e);i[c+1652>>2]=h}if(m){e=0;while(1){d=e;h=f;if(!j[f+84|0]){d=i[i[f+68>>2]+(e<<2)>>2]}Xb(h,d,g[f+24|0],i[c+456>>2]);k=g[f+24|0];h:{if((k|0)<=0){h=i[c+1648>>2];break h}k=k&255;n=k>>>0>1?k:1;t=i[a+48>>2];d=0;h=i[c+1648>>2];u=i[c+456>>2];while(1){q=d<<2;i[q+h>>2]=i[u+q>>2]-i[t+(d+w<<2)>>2];d=d+1|0;if((n|0)!=(d|0)){continue}break}}hp((i[c+1688>>2]+(p<<2)|0)+(o(i[c+1668>>2],e)<<2)|0,h,k<<2);e=e+1|0;if((e|0)!=(m|0)){continue}break}d=i[c+1648>>2]}e=g[f+24|0];if(d){i[c+1652>>2]=d;bp(d)}d=i[c+456>>2];if(d){i[c+460>>2]=d;bp(d)}w=e+w|0;break d}Ho();x()}Ho();x();default:break e}}e=g[f+24|0];d=0;i[c+464>>2]=0;i[c+456>>2]=0;i[c+460>>2]=0;if(e){if((e|0)<=-1){break b}e=e<<2;d=ho(e);i[c+456>>2]=d;h=d+e|0;i[c+464>>2]=h;ip(d,0,e);i[c+460>>2]=h}if(m){d=0;while(1){e=d;h=f;if(!j[f+84|0]){e=i[i[f+68>>2]+(d<<2)>>2]}$b(h,e,g[f+24|0],i[c+456>>2]);hp((i[c+1688>>2]+(p<<2)|0)+(o(i[c+1668>>2],d)<<2)|0,i[c+456>>2],g[f+24|0]<<2);d=d+1|0;if((m|0)!=(d|0)){continue}break}d=i[c+456>>2]}if(!d){break d}i[c+460>>2]=d;bp(d)}s=s+1|0;d=i[a+4>>2];if(s>>>0>2]-d>>2>>>0){p=g[f+24|0]+p|0;f=i[a+28>>2];continue}break}k=i[c+1688>>2];e=i[a+72>>2];h=o(m,e)}f=0;if((h|0)>0){d=0;while(1){a=i[(d<<2)+k>>2];if(a){a=r(a);f=(a^31)<(f|0)?f:32-a|0}d=d+1|0;if((h|0)!=(d|0)){continue}break}}i:{j:{switch(j[c+1695|0]){case 6:d=cc(c+456|0,e);a=i[c+1668>>2];i[c+448>>2]=a;i[c+432>>2]=a;i[c+32>>2]=a;i[c+16>>2]=a;i[c+440>>2]=0;i[c+424>>2]=i[c+1664>>2];i[c+444>>2]=c+1664;a=i[c+444>>2];i[c+24>>2]=i[c+440>>2];i[c+28>>2]=a;i[c+428>>2]=c+1664;i[c+1648>>2]=f;a=i[c+428>>2];i[c+8>>2]=i[c+424>>2];i[c+12>>2]=a;a=ac(d,c+24|0,c+8|0,c+1648|0,b);bc(d);if(a){break i}break c;case 5:d=cc(c+456|0,e);a=i[c+1668>>2];i[c+416>>2]=a;i[c+400>>2]=a;i[c- -64>>2]=a;i[c+48>>2]=a;i[c+408>>2]=0;i[c+392>>2]=i[c+1664>>2];i[c+412>>2]=c+1664;a=i[c+412>>2];i[c+56>>2]=i[c+408>>2];i[c+60>>2]=a;i[c+396>>2]=c+1664;i[c+1648>>2]=f;a=i[c+396>>2];i[c+40>>2]=i[c+392>>2];i[c+44>>2]=a;a=dc(d,c+56|0,c+40|0,c+1648|0,b);bc(d);if(a){break i}break c;case 4:d=cc(c+456|0,e);a=i[c+1668>>2];i[c+384>>2]=a;i[c+368>>2]=a;i[c+96>>2]=a;i[c+80>>2]=a;i[c+376>>2]=0;i[c+360>>2]=i[c+1664>>2];i[c+380>>2]=c+1664;a=i[c+380>>2];i[c+88>>2]=i[c+376>>2];i[c+92>>2]=a;i[c+364>>2]=c+1664;i[c+1648>>2]=f;a=i[c+364>>2];i[c+72>>2]=i[c+360>>2];i[c+76>>2]=a;a=dc(d,c+88|0,c+72|0,c+1648|0,b);bc(d);if(a){break i}break c;case 3:d=ec(c+456|0,e);a=i[c+1668>>2];i[c+352>>2]=a;i[c+336>>2]=a;i[c+128>>2]=a;i[c+112>>2]=a;i[c+344>>2]=0;i[c+328>>2]=i[c+1664>>2];i[c+348>>2]=c+1664;a=i[c+348>>2];i[c+120>>2]=i[c+344>>2];i[c+124>>2]=a;i[c+332>>2]=c+1664;i[c+1648>>2]=f;a=i[c+332>>2];i[c+104>>2]=i[c+328>>2];i[c+108>>2]=a;a=fc(d,c+120|0,c+104|0,c+1648|0,b);gc(d);if(a){break i}break c;case 2:d=ec(c+456|0,e);a=i[c+1668>>2];i[c+320>>2]=a;i[c+304>>2]=a;i[c+160>>2]=a;i[c+144>>2]=a;i[c+312>>2]=0;i[c+296>>2]=i[c+1664>>2];i[c+316>>2]=c+1664;a=i[c+316>>2];i[c+152>>2]=i[c+312>>2];i[c+156>>2]=a;i[c+300>>2]=c+1664;i[c+1648>>2]=f;a=i[c+300>>2];i[c+136>>2]=i[c+296>>2];i[c+140>>2]=a;a=fc(d,c+152|0,c+136|0,c+1648|0,b);gc(d);if(a){break i}break c;case 1:d=hc(c+456|0,e);a=i[c+1668>>2];i[c+288>>2]=a;i[c+272>>2]=a;i[c+192>>2]=a;i[c+176>>2]=a;i[c+280>>2]=0;i[c+264>>2]=i[c+1664>>2];i[c+284>>2]=c+1664;a=i[c+284>>2];i[c+184>>2]=i[c+280>>2];i[c+188>>2]=a;i[c+268>>2]=c+1664;i[c+1648>>2]=f;a=i[c+268>>2];i[c+168>>2]=i[c+264>>2];i[c+172>>2]=a;a=ic(d,c+184|0,c+168|0,c+1648|0,b);jc(d);if(a){break i}break c;case 0:break j;default:break c}}d=hc(c+456|0,e);a=i[c+1668>>2];i[c+256>>2]=a;i[c+240>>2]=a;i[c+224>>2]=a;i[c+208>>2]=a;i[c+248>>2]=0;i[c+232>>2]=i[c+1664>>2];i[c+252>>2]=c+1664;a=i[c+252>>2];i[c+216>>2]=i[c+248>>2];i[c+220>>2]=a;i[c+236>>2]=c+1664;i[c+1648>>2]=f;a=i[c+236>>2];i[c+200>>2]=i[c+232>>2];i[c+204>>2]=a;a=ic(d,c+216|0,c+200|0,c+1648|0,b);jc(d);if(!a){break c}}y=1}a=i[c+1676>>2];if(a){i[c+1680>>2]=a;bp(a)}F=c+1696|0;return y|0}Ho();x()}Ho();x()}function gi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;l=F-32|0;F=l;d=i[a+16>>2];i[a+20>>2]=d;a:{if((d|0)!=i[a+24>>2]){i[d>>2]=b;b=d+4|0;i[a+20>>2]=b;g=d;break a}g=ho(4);i[g>>2]=b;b=g+4|0;i[a+24>>2]=b;i[a+20>>2]=b;i[a+16>>2]=g;if(!d){break a}bp(d);b=i[a+20>>2];g=i[a+16>>2]}d=i[a+8>>2];q=i[d+100>>2]-i[d+96>>2]|0;d=(q|0)/12|0;b:{if((b|0)!=(g|0)){u=a+16|0;v=(d|0)>1?d:1;w=a+120|0;n=a+268|0;y=a+72|0;while(1){c:{d:{d=b+ -4|0;b=i[d>>2];if((b|0)==-1){break d}g=i[a+28>>2];e=(b>>>0)/3|0;if(i[g+(e>>>3&268435452)>>2]>>>e&1){break d}h=0;if((q|0)<=0){break c}while(1){i[a+164>>2]=i[a+164>>2]+1;j=(b>>>0)/3|0;m=(b|0)==-1;k=m?-1:j;d=(k>>>3&536870908)+g|0;i[d>>2]=i[d>>2]|1<>2];i:{if((d|0)!=i[a+80>>2]){i[d>>2]=b;i[a+76>>2]=d+4;break i}g=i[y>>2];e=d-g|0;f=e>>2;c=f+1|0;if(c>>>0>=1073741824){break h}p=e>>1;c=f>>>0<536870911?p>>>0>>0?c:p:1073741823;d=0;j:{if(!c){break j}if(c>>>0>=1073741824){break b}d=ho(c<<2)}f=d+(f<<2)|0;i[f>>2]=b;c=d+(c<<2)|0;f=f+4|0;if((e|0)>=1){hp(d,g,e)}i[a+80>>2]=c;i[a+76>>2]=f;i[a+72>>2]=d;if(!g){break i}bp(g)}d=-1;d=(b|0)!=-1?i[i[i[a+12>>2]>>2]+(b<<2)>>2]:d;r=d<<2;p=i[r+i[a+152>>2]>>2];k:{g=i[a+84>>2]+(d>>>3&536870908)|0;e=i[g>>2];d=1<>2]=d|e;if((p|0)!=-1){break k}d=i[a+272>>2];l:{if((d|0)!=i[a+276>>2]){i[d>>2]=0;i[a+272>>2]=d+4;break l}g=i[n>>2];e=d-g|0;f=e>>2;c=f+1|0;if(c>>>0>=1073741824){break g}k=e>>1;c=f>>>0<536870911?k>>>0>>0?c:k:1073741823;d=0;m:{if(!c){break m}if(c>>>0>=1073741824){break b}d=ho(c<<2)}f=d+(f<<2)|0;i[f>>2]=0;c=d+(c<<2)|0;f=f+4|0;if((e|0)>=1){hp(d,g,e)}i[a+276>>2]=c;i[a+272>>2]=f;i[a+268>>2]=d;if(!g){break l}bp(g)}d=-1;if((b|0)==-1){break e}g=b+1|0;b=(g>>>0)%3|0?g:b+ -2|0;if((b|0)==-1){break e}d=i[i[i[a+12>>2]+12>>2]+(b<<2)>>2];break e}n:{o:{p:{if(m){break p}d=-1;g=-1;e=b+1|0;c=(e>>>0)%3|0?e:b+ -2|0;if((c|0)!=-1){g=i[i[i[a+12>>2]+12>>2]+(c<<2)>>2]}e=(b-o(j,3)|0?-1:2)+b|0;if((e|0)!=-1){d=i[i[i[a+12>>2]+12>>2]+(e<<2)>>2]}f=(d|0)==-1;j=f?-1:(d>>>0)/3|0;m=(g>>>0)/3|0;q:{if((c|0)==-1){break q}s=i[i[a+12>>2]+12>>2];c=i[s+(c<<2)>>2];if((c|0)==-1){break q}t=i[a+28>>2];c=(c>>>0)/3|0;if(!(i[t+(c>>>3&268435452)>>2]>>>c&1)){break n}}b=(g|0)==-1;if(!b){oi(a,i[a+164>>2],1,b?-1:m)}r:{if((e|0)==-1){break r}b=i[i[i[a+12>>2]+12>>2]+(e<<2)>>2];if((b|0)==-1){break r}b=(b>>>0)/3|0;if(!(i[i[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1)){break o}}if(f){break p}oi(a,i[a+164>>2],0,j)}b=i[a+272>>2];s:{if((b|0)!=i[a+276>>2]){i[b>>2]=7;i[a+272>>2]=b+4;break s}d=i[n>>2];g=b-d|0;c=g>>2;e=c+1|0;if(e>>>0>=1073741824){break g}h=g>>1;e=c>>>0<536870911?h>>>0>>0?e:h:1073741823;b=0;t:{if(!e){break t}if(e>>>0>=1073741824){break b}b=ho(e<<2)}c=b+(c<<2)|0;i[c>>2]=7;e=b+(e<<2)|0;c=c+4|0;if((g|0)>=1){hp(b,d,g)}i[a+276>>2]=e;i[a+272>>2]=c;i[a+268>>2]=b;if(!d){break s}bp(d)}i[a+20>>2]=i[a+20>>2]+ -4;break c}b=i[a+272>>2];if((b|0)!=i[a+276>>2]){i[b>>2]=5;i[a+272>>2]=b+4;break e}g=i[n>>2];e=b-g|0;f=e>>2;c=f+1|0;if(c>>>0>=1073741824){break g}k=e>>1;c=f>>>0<536870911?k>>>0>>0?c:k:1073741823;b=0;u:{if(!c){break u}if(c>>>0>=1073741824){break b}b=ho(c<<2)}f=b+(f<<2)|0;i[f>>2]=5;c=b+(c<<2)|0;f=f+4|0;if((e|0)>=1){hp(b,g,e)}i[a+276>>2]=c;i[a+272>>2]=f;i[a+268>>2]=b;if(!g){break e}bp(g);break e}v:{w:{if((e|0)==-1){break w}e=i[(e<<2)+s>>2];if((e|0)==-1){break w}e=(e>>>0)/3|0;if(!(i[(e>>>3&268435452)+t>>2]>>>e&1)){break v}}if(!f){oi(a,i[a+164>>2],0,j)}b=i[a+272>>2];if((b|0)!=i[a+276>>2]){i[b>>2]=3;i[a+272>>2]=b+4;d=g;break e}d=i[n>>2];e=b-d|0;f=e>>2;c=f+1|0;if(c>>>0>=1073741824){break g}k=e>>1;c=f>>>0<536870911?k>>>0>>0?c:k:1073741823;b=0;x:{if(!c){break x}if(c>>>0>=1073741824){break b}b=ho(c<<2)}f=b+(f<<2)|0;i[f>>2]=3;c=b+(c<<2)|0;f=f+4|0;if((e|0)>=1){hp(b,d,e)}i[a+276>>2]=c;i[a+272>>2]=f;i[a+268>>2]=b;if(d){bp(d)}d=g;break e}e=i[a+272>>2];y:{if((e|0)!=i[a+276>>2]){i[e>>2]=1;i[a+272>>2]=e+4;break y}c=i[n>>2];h=e-c|0;j=h>>2;f=j+1|0;if(f>>>0>=1073741824){break g}m=h>>1;f=j>>>0<536870911?m>>>0>>0?f:m:1073741823;e=0;z:{if(!f){break z}if(f>>>0>=1073741824){break b}e=ho(f<<2)}j=e+(j<<2)|0;i[j>>2]=1;f=e+(f<<2)|0;j=j+4|0;if((h|0)>=1){hp(e,c,h)}i[a+276>>2]=f;i[a+272>>2]=j;i[a+268>>2]=e;if(!c){break y}bp(c)}i[a+168>>2]=i[a+168>>2]+1;A:{if((p|0)==-1){break A}e=i[r+i[a+152>>2]>>2];if(i[i[a+140>>2]+(e>>>3&536870908)>>2]>>>e&1){break A}hi(a,b,0)}b=i[a+164>>2];i[l+4>>2]=k;i[l+16>>2]=l+4;pi(l+24|0,w,l+4|0,l+16|0);i[i[l+24>>2]+12>>2]=b;b=i[a+20>>2];i[b+ -4>>2]=d;if((b|0)!=i[a+24>>2]){i[b>>2]=g;i[a+20>>2]=b+4;break c}d=i[u>>2];e=b-d|0;h=e>>2;c=h+1|0;if(c>>>0>=1073741824){break f}f=e>>1;c=h>>>0<536870911?f>>>0>>0?c:f:1073741823;b=0;B:{if(!c){break B}if(c>>>0>=1073741824){break b}b=ho(c<<2)}h=b+(h<<2)|0;i[h>>2]=g;g=b+(c<<2)|0;c=h+4|0;if((e|0)>=1){hp(b,d,e)}i[a+24>>2]=g;i[a+20>>2]=c;i[a+16>>2]=b;if(!d){break c}bp(d);break c}Ho();x()}Ho();x()}Ho();x()}h=h+1|0;if((v|0)==(h|0)){break c}g=i[a+28>>2];b=d;continue}}i[a+20>>2]=d}b=i[a+20>>2];if((b|0)!=i[a+16>>2]){continue}break}}F=l+32|0;return 1}za(11708);x()}function yn(a,b,c,d,e,f,g,h,j){var k=0,l=0,m=0,n=0,o=0,p=0,q=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,I=0,J=0,K=0,L=0,M=0;m=F-96|0;F=m;u=c;w=(g&131071)<<15|f>>>17;k=j&65535;o=k;n=h;l=h;z=l<<15|g>>>17;p=(e^j)&-2147483648;v=e&65535;l=v;q=d;x=l;v=0;B=(k&131071)<<15|h>>>17;C=j>>>16&32767;D=e>>>16&32767;a:{b:{if(C+ -1>>>0<32766?D+ -1>>>0<=32765:0){break b}s=e&2147483647;y=s;k=d;if(!(!d&(s|0)==2147418112?!(b|c):(s|0)==2147418112&d>>>0<0|s>>>0<2147418112)){A=d;p=e|32768;break a}s=j&2147483647;e=s;d=h;if(!(!d&(e|0)==2147418112?!(f|g):(e|0)==2147418112&d>>>0<0|e>>>0<2147418112)){A=h;p=j|32768;b=f;c=g;break a}if(!(b|k|(y^2147418112|c))){if(!(d|f|(e|g))){p=2147450880;b=0;c=0;break a}p=p|2147418112;b=0;c=0;break a}if(!(d|f|(e^2147418112|g))){d=b|k;e=c|y;b=0;c=0;if(!(d|e)){p=2147450880;break a}p=p|2147418112;break a}if(!(b|k|(c|y))){b=0;c=0;break a}if(!(d|f|(e|g))){b=0;c=0;break a}if((y|0)==65535|y>>>0<65535){j=b;d=!(l|q);h=d<<6;k=r(d?b:q)+32|0;b=r(d?c:l);b=h+((b|0)==32?k:b)|0;sn(m+80|0,j,c,q,l,b+ -15|0);t=16-b|0;q=i[m+88>>2];u=i[m+84>>2];x=i[m+92>>2];b=i[m+80>>2]}if(e>>>0>65535){break b}c=!(n|o);d=c<<6;e=r(c?f:n)+32|0;c=r(c?g:o);c=d+((c|0)==32?e:c)|0;sn(m- -64|0,f,g,n,o,c+ -15|0);t=(t-c|0)+16|0;f=i[m+76>>2];c=f;h=i[m+68>>2];g=h;e=i[m+72>>2];d=e;z=d<<15|g>>>17;d=g;f=i[m+64>>2];w=(d&131071)<<15|f>>>17;B=(c&131071)<<15|e>>>17}L=(C+D|0)+t|0;o=z;s=0;t=0;h=up(o,s,q,t);d=H;j=0;n=w;C=0;x=x|65536;l=up(n,C,x,v);e=l+h|0;c=H+d|0;c=e>>>0>>0?c+1|0:c;l=e;k=e;e=c;g=(d|0)==(c|0)&k>>>0>>0|c>>>0>>0;B=B&2147483647|-2147483648;D=0;h=up(B,D,u,0);d=h+k|0;k=H+c|0;E=d;c=d;k=c>>>0>>0?k+1|0:k;d=k;c=(e|0)==(d|0)&c>>>0>>0|d>>>0>>0;e=g+c|0;if(e>>>0>>0){j=1}M=e;h=j;l=d;e=up(n,C,u,I);c=H;k=c;j=0;G=f<<15&-32768;g=up(G,0,q,t);f=g+e|0;c=H+c|0;c=f>>>0>>0?c+1|0:c;g=f;f=(k|0)==(c|0)&g>>>0>>0|c>>>0>>0;w=b;e=up(o,s,b,0);b=e+g|0;k=H+c|0;k=b>>>0>>0?k+1|0:k;z=b;e=k;b=(c|0)==(k|0)&b>>>0>>0|k>>>0>>0;c=f+b|0;if(c>>>0>>0){j=1}b=c+E|0;f=j+l|0;y=b;k=h;f=b>>>0>>0?f+1|0:f;g=f;b=(d|0)==(f|0)&b>>>0>>0|f>>>0>>0;c=b+M|0;if(c>>>0>>0){k=k+1|0}b=c;c=up(x,v,B,D);b=b+c|0;l=H+k|0;l=b>>>0>>0?l+1|0:l;d=up(q,t,B,D);c=H;j=b;h=up(o,s,x,v);b=h+d|0;f=H+c|0;f=b>>>0>>0?f+1|0:f;h=b;k=b;b=f;f=(c|0)==(b|0)&k>>>0>>0|b>>>0>>0;d=j+b|0;k=f+l|0;c=d;f=c>>>0>>0?k+1|0:k;c=h;h=0;b=h+y|0;j=c+g|0;j=b>>>0>>0?j+1|0:j;h=b;c=b;b=j;c=(g|0)==(b|0)&c>>>0>>0|b>>>0>>0;d=d+c|0;if(d>>>0>>0){f=f+1|0}E=d;c=h;y=b;t=up(q,t,n,C);q=H;g=up(G,J,x,v);d=g+t|0;l=H+q|0;l=d>>>0>>0?l+1|0:l;x=d;k=up(o,s,u,I);d=d+k|0;g=l;j=g+H|0;j=d>>>0>>0?j+1|0:j;o=d;l=up(w,K,B,D);d=d+l|0;k=H+j|0;v=d;k=d>>>0>>0?k+1|0:k;d=k;s=d;k=0;l=f;d=(d|0)==(j|0)&v>>>0>>0|d>>>0>>0;f=(g|0)==(j|0)&o>>>0>>0|j>>>0>>0;g=f+((g|0)==(q|0)&x>>>0>>0|g>>>0>>0)|0;g>>>0>>0;g=d+g|0;f=s;c=c+f|0;k=(g|k)+y|0;k=c>>>0>>0?k+1|0:k;j=c;g=k;b=(b|0)==(k|0)&c>>>0>>0|k>>>0>>0;c=b+E|0;if(c>>>0>>0){l=l+1|0}t=c;b=l;l=j;o=g;k=z;s=up(w,K,n,C);n=H;h=up(G,J,u,I);c=h+s|0;f=H+n|0;q=c;f=c>>>0>>0?f+1|0:f;h=f;f=0;c=(h|0)==(n|0)&c>>>0>>0|h>>>0>>0;n=h+k|0;k=(c|f)+e|0;k=n>>>0>>0?k+1|0:k;f=n;c=k;u=(e|0)==(c|0)&f>>>0>>0|c>>>0>>0;h=l;f=0;k=c+v|0;l=0;d=l+n|0;if(d>>>0>>0){k=k+1|0}e=d;d=k;c=(c|0)==(d|0)&e>>>0>>0|d>>>0>>0;l=c+u|0;if(l>>>0>>0){f=1}k=l;c=h+k|0;l=f+o|0;l=c>>>0>>0?l+1|0:l;v=c;k=b;b=l;c=(g|0)==(b|0)&c>>>0>>0|b>>>0>>0;f=c+t|0;if(f>>>0>>0){k=k+1|0}o=f;c=k;f=c&65536;k=f;n=0;u=k>>>16|0;g=(u+L|0)+ -16383|0;if((g|0)>=32767){p=p|2147418112;b=0;c=0;break a}l=o;j=c<<1|l>>>31;f=l<<1|b>>>31;z=!(k|n);l=z;o=l?f:o;n=l?j:c;j=d;h=0;f=up(w,K,G,J);d=h+f|0;k=q;c=k+H|0;c=d>>>0>>0?c+1|0:c;q=d;f=c;c=e+((k|0)==(c|0)&d>>>0>>0|c>>>0>>0)|0;if(c>>>0>>0){j=j+1|0}w=c;c=j;h=c;e=w;l=u^1;d=l&31;if(32<=(l&63)>>>0){k=e<>>32-d|h<>>1|0;h=(d&1)<<31|q>>>1;j=u|62;d=j&31;if(32<=(j&63)>>>0){j=0;d=k>>>d|0}else{j=k>>>d|0;d=((1<>>d}d=w|d;e=e|j;j=v;k=b<<1|j>>>31;h=z?j<<1|c>>>31:j;j=z?k:b;c=q;b=l&31;if(32<=(l&63)>>>0){f=c<>>32-b|f<>>0>=128){b=0;c=0;break a}g=g+127|0;sn(m+48|0,b,c,d,e,g);sn(m+32|0,h,j,o,n,g);vn(m+16|0,b,c,d,e,f);vn(m,h,j,o,n,f);b=(i[m+48>>2]|i[m+56>>2])!=0|(i[m+52>>2]|i[m+60>>2])!=0|(i[m+32>>2]|i[m+16>>2]);c=i[m+36>>2]|i[m+20>>2];d=i[m+40>>2]|i[m+24>>2];e=i[m+44>>2]|i[m+28>>2];h=i[m>>2];j=i[m+4>>2];g=i[m+12>>2];o=i[m+8>>2];break c}g=n&65535|g<<16}A=o|A;p=g|p;if(!(!d&(e|0)==-2147483648?!(b|c):(e|0)>-1)){k=p;l=j;b=h+1|0;if(b>>>0<1){l=l+1|0}d=b;c=l;d=(j|0)==(c|0)&d>>>0>>0|c>>>0>>0;e=d+A|0;if(e>>>0>>0){k=k+1|0}A=e;p=k;break a}if(b|d|(e^-2147483648|c)){b=h;c=j;break a}l=p;f=j;b=h&1;c=b+h|0;if(c>>>0>>0){f=f+1|0}b=c;d=c;c=f;d=(j|0)==(c|0)&d>>>0>>0|c>>>0>>0;e=d+A|0;if(e>>>0>>0){l=l+1|0}A=e;p=l}i[a>>2]=b;i[a+4>>2]=c;i[a+8>>2]=A;i[a+12>>2]=p;F=m+96|0}function Pd(a,b,c,d){var e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=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;k=F-80|0;F=k;h=-1;e=-1;a:{if((b|0)==-1){break a}e=b+1|0;h=(e>>>0)%3|0?e:b+ -2|0;e=b+ -1|0;if((b>>>0)%3|0){break a}e=b+2|0}f=i[a+36>>2];b=i[f>>2];b:{c:{d:{e:{f:{g:{h:{i:{f=i[f+4>>2]-b>>2;m=h<<2;h=i[i[a+32>>2]+28>>2];l=i[m+h>>2];if(f>>>0<=l>>>0){break i}e=i[h+(e<<2)>>2];if(f>>>0<=e>>>0){break i}K=i[b+(l<<2)>>2];M=(K|0)>=(d|0);if(M){break d}l=i[b+(e<<2)>>2];if((l|0)>=(d|0)){break d}b=l<<3;f=i[(b|4)+c>>2];e=K<<3;h=i[(e|4)+c>>2];J=i[b+c>>2];z=i[c+e>>2];if(!((J|0)!=(z|0)|(f|0)!=(h|0))){i[a+8>>2]=z;i[a+12>>2]=h;break c}b=i[i[a+4>>2]+(d<<2)>>2];i[k+72>>2]=0;i[k+76>>2]=0;e=k- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[k+56>>2]=0;i[k+60>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}Qd(e,b,g[e+24|0],k+56|0);b=i[i[a+4>>2]+(K<<2)>>2];i[k+48>>2]=0;i[k+52>>2]=0;i[k+40>>2]=0;i[k+44>>2]=0;i[k+32>>2]=0;i[k+36>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}Qd(e,b,g[e+24|0],k+32|0);b=i[i[a+4>>2]+(l<<2)>>2];i[k+24>>2]=0;i[k+28>>2]=0;i[k+16>>2]=0;i[k+20>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}Qd(e,b,g[e+24|0],k+8|0);A=i[k+44>>2];e=i[k+16>>2];b=i[k+40>>2];n=i[k+20>>2]-(A+(e>>>0>>0)|0)|0;l=e-b|0;e=up(l,n,l,n);r=H;m=e;y=i[k+36>>2];e=i[k+8>>2];u=i[k+32>>2];o=u;s=i[k+12>>2]-(y+(e>>>0>>0)|0)|0;o=e-o|0;p=up(o,s,o,s);m=m+p|0;e=H+r|0;e=m>>>0

>>0?e+1|0:e;q=m;t=i[k+52>>2];m=i[k+24>>2];v=i[k+48>>2];p=v;r=i[k+28>>2]-(t+(m>>>0

>>0)|0)|0;m=m-p|0;C=up(m,r,m,r);p=q+C|0;e=H+e|0;w=p;p=p>>>0>>0?e+1|0:e;if(!(w|p)){break d}e=i[k+64>>2];C=e-b|0;N=i[k+68>>2]-((e>>>0>>0)+A|0)|0;b=up(C,N,l,n);e=H;q=b;b=i[k+56>>2];E=b-u|0;O=i[k+60>>2]-((b>>>0>>0)+y|0)|0;u=up(E,O,o,s);b=q+u|0;e=H+e|0;e=b>>>0>>0?e+1|0:e;q=b;b=i[k+72>>2];G=b-v|0;P=i[k+76>>2]-((b>>>0>>0)+t|0)|0;u=up(G,P,m,r);b=q+u|0;e=H+e|0;v=b;e=b>>>0>>0?e+1|0:e;A=e;B=b;u=e;e=r;y=e>>31;b=e>>31;e=b+e|0;t=y;q=t+m|0;if(q>>>0>>0){e=e+1|0}y=y^q;b=b^e;Q=b;q=y;I=b;e=n;b=e>>31;e=e>>31;D=b;b=b+n|0;L=e+l|0;if(L>>>0>>0){b=b+1|0}e=e^L;b=b^D;R=b;L=b;S=B;T=q;q=e;B=s>>31;b=B+s|0;t=s>>31;D=t+o|0;if(D>>>0>>0){b=b+1|0}t=t^D;e=t>>>0>>0;b=b^B;e=(b|0)<(R|0)?1:(b|0)<=(R|0)?e:0;t=e?q:t;b=e?L:b;e=(b|0)<(Q|0)?1:(b|0)<=(Q|0)?t>>>0>>0:0;e=S>>>0>wp(-1,2147483647,e?T:t,e?I:b)>>>0;b=H;if((u|0)>(b|0)?1:(u|0)>=(b|0)?e:0){break e}b=f;e=h;B=b-e|0;h=e>>31;q=(b>>31)-(h+(b>>>0>>0)|0)|0;b=up(v,A,B,q);f=H;e=up(e,h,w,p);b=e+b|0;f=H+f|0;u=b;y=b>>>0>>0?f+1|0:f;b=J;e=z;I=b-e|0;f=e>>31;D=(b>>31)-(f+(b>>>0>>0)|0)|0;b=up(v,A,I,D);h=H;f=up(e,f,w,p);e=f+b|0;b=H+h|0;z=e;J=e>>>0>>0?b+1|0:b;h=1;e=0;b=vp(up(l,n,v,A),H,w,p);f=N-(H+(C>>>0>>0)|0)|0;b=C-b|0;b=up(b,f,b,f);l=H;n=b;b=vp(up(o,s,v,A),H,w,p);f=O-(H+(E>>>0>>0)|0)|0;b=E-b|0;o=up(b,f,b,f);b=n+o|0;f=H+l|0;f=b>>>0>>0?f+1|0:f;n=b;b=vp(up(m,r,v,A),H,w,p);l=P-(H+(G>>>0>>0)|0)|0;b=G-b|0;o=up(b,l,b,l);l=n+o|0;b=H+f|0;l=up(l,l>>>0>>0?b+1|0:b,w,p);b=H;o=b;if(!b&l>>>0<=1|b>>>0<0){break h}m=l;f=o;while(1){b=e<<1|h>>>31;h=h<<1;e=b;n=!f&m>>>0>7|f>>>0>0;m=(f&3)<<30|m>>>2;f=f>>>2|0;if(n){continue}break}break g}Io();x()}h=l;e=o;if(h-1|0){break f}}while(1){b=wp(l,o,h,e)+h|0;e=e+H|0;e=b>>>0>>0?e+1|0:e;h=(e&1)<<31|b>>>1;e=e>>>1|0;b=up(h,e,h,e);f=H;if((o|0)==(f|0)&b>>>0>l>>>0|f>>>0>o>>>0){continue}break}}o=a+16|0;t=i[a+24>>2];C=t<<5;b=i[a+20>>2];v=d<<3;n=i[(v|4)+c>>2];m=n;f=u;E=up(h,e,I,D);l=E;G=H;l=vp(f-l|0,y-(G+(f>>>0>>0)|0)|0,w,p);r=m>>31;f=m;s=r-(H+(f>>>0>>0)|0)|0;f=f-l|0;I=up(f,s,f,s);D=H;n=i[c+v>>2];f=n>>31;v=n;s=n;A=f;n=up(h,e,B,q);B=H;e=J+B|0;h=z;q=h+n|0;if(q>>>0>>0){e=e+1|0}h=vp(q,e,w,p);e=h;f=f-(H+(s>>>0>>0)|0)|0;e=s-e|0;s=up(e,f,e,f);e=s+I|0;f=H+D|0;q=e;s=e>>>0>>0?f+1|0:f;e=y+G|0;f=u+E|0;if(f>>>0>>0){e=e+1|0}e=vp(f,e,w,p);r=r-(H+(m>>>0>>0)|0)|0;f=m-e|0;f=up(f,r,f,r);u=H;m=vp(z-n|0,J-((z>>>0>>0)+B|0)|0,w,p);n=f;f=m;r=A-(H+(v>>>0>>0)|0)|0;f=v-f|0;z=up(f,r,f,r);r=n+z|0;f=H+u|0;f=r>>>0>>0?f+1|0:f;j:{if((f|0)==(s|0)&q>>>0>>0|s>>>0>>0){if((b|0)==(C|0)){if((b+1|0)<=-1){break b}if(b>>>0<=1073741822){b=b+32&-32;e=t<<6;b=e>>>0>>0?b:e}else{b=2147483647}bd(o,b);b=i[a+20>>2]}i[a+20>>2]=b+1;e=i[a+16>>2]+(b>>>3&536870908)|0;i[e>>2]=i[e>>2]|1<>>0<=1073741822){b=b+32&-32;h=t<<6;b=h>>>0>>0?b:h}else{b=2147483647}bd(o,b);b=i[a+20>>2]}i[a+20>>2]=b+1;h=i[a+16>>2]+(b>>>3&536870908)|0;f=i[h>>2];U=h,V=yp(-2,b)&f,i[U>>2]=V;l=e;h=m}i[a+8>>2]=h;i[a+12>>2]=l}if(!(p|w)){break d}break c}e=a;if(M){if((d|0)<=0){i[a+8>>2]=0;i[a+12>>2]=0;break c}b=(d<<1)+ -2|0}else{b=K<<1}b=(b<<2)+c|0;i[e+8>>2]=i[b>>2];i[a+12>>2]=i[b+4>>2]}F=k+80|0;return}Ho();x()} - - - -function lc(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;e=F+ -64|0;F=e;g=i[a+8>>2];i[e+48>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;a:{if(g){if(g>>>0>=1073741824){break a}d=g<<2;f=ho(d);i[e+40>>2]=f;k=d+f|0;i[e+48>>2]=k;ip(f,0,d);i[e+44>>2]=k}h=i[a+1164>>2];d=i[h>>2];if(d){i[h+4>>2]=d;bp(d);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;g=i[a+8>>2];k=i[e+44>>2];f=i[e+40>>2]}i[h+4>>2]=k;i[h>>2]=f;i[h+8>>2]=i[e+48>>2];f=0;i[e+48>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;d=0;b:{if(g){if(g>>>0>=1073741824){break b}h=g<<2;d=ho(h);i[e+40>>2]=d;f=d+h|0;i[e+48>>2]=f;ip(d,0,h);i[e+44>>2]=f}n=i[a+1176>>2];h=i[n>>2];if(h){i[n+4>>2]=h;bp(h);i[n+8>>2]=0;i[n>>2]=0;i[n+4>>2]=0;d=i[e+40>>2];f=i[e+44>>2]}i[n+4>>2]=f;i[n>>2]=d;i[n+8>>2]=i[e+48>>2];z=i[b+4>>2];G=i[b+8>>2];A=i[c+4>>2];H=i[c+8>>2];q=i[c>>2];j=i[b>>2];d=e+56|0;i[d>>2]=0;i[d+4>>2]=0;f=e+48|0;i[f>>2]=0;i[f+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;n=q-j|0;vc(e+40|0);g=0;h=i[e+44>>2];if((h|0)!=i[f>>2]){d=i[d>>2]+i[e+60>>2]|0;f=(d>>>0)/113|0;g=i[h+(f<<2)>>2]+o(d-o(f,113)|0,36)|0}i[g+32>>2]=0;i[g+28>>2]=n;i[g+24>>2]=0;i[g+16>>2]=A;i[g+20>>2]=H;i[g+12>>2]=q;i[g+4>>2]=z;i[g+8>>2]=G;i[g>>2]=j;f=i[e+60>>2];g=f+1|0;i[e+60>>2]=g;if(g>>>0>=f>>>0){n=A;q=z;J=a+1068|0;K=a+1108|0;L=i[c+8>>2];u=i[b+8>>2];while(1){f=i[e+44>>2];j=g+ -1|0;m=j+i[e+56>>2]|0;d=(m>>>0)/113|0;d=i[f+(d<<2)>>2]+o(m-o(d,113)|0,36)|0;B=i[d+32>>2];p=i[d+12>>2];h=i[d>>2];i[e+60>>2]=j;d=i[e+48>>2];f=d-f|0;if((f?o(f>>2,113)+ -1|0:0)-m>>>0>=226){bp(i[d+ -4>>2]);i[e+48>>2]=i[e+48>>2]+ -4}i[b>>2]=h;i[c>>2]=p;j=i[a+1164>>2];d=i[a+1176>>2];i[e+32>>2]=i[b+8>>2];f=i[b+4>>2];i[e+24>>2]=i[b>>2];i[e+28>>2]=f;i[e+16>>2]=i[c+8>>2];f=i[c+4>>2];i[e+8>>2]=i[c>>2];i[e+12>>2]=f;C=o(B,12);k=j+C|0;m=d+C|0;g=wc(a,e+24|0,e+8|0,k,m);v=g<<2;f=i[a>>2]-i[v+i[m>>2]>>2]|0;c:{d:{if(!f){break d}e:{f:{w=p-h|0;if(w>>>0<=2){j=i[a+1152>>2];i[j>>2]=g;f=1;d=i[a+8>>2];if(d>>>0>1){break f}break e}j=1<>2];d=D+f|0;if((d|0)!=(k|0)){ra(d,i[k>>2],i[k+4>>2]);f=i[a+1164>>2]}f=v+i[f+D>>2]|0;E=j+i[f>>2]|0;i[f>>2]=E;f=h;g:{if((p|0)==(f|0)){break g}M=i[q+24>>2];d=h;f=p;while(1){s=M+(o(d,u)<<2)|0;if(l[s+v>>2]>>0){d=d+1|0;if((f|0)!=(d|0)){continue}break g}while(1){f=f+ -1|0;if((f|0)==(d|0)){f=d;break g}t=i[n+24>>2]+(o(f,L)<<2)|0;if(l[v+t>>2]>=E>>>0){continue}break}y=0;if(u){while(1){k=y<<2;j=k+s|0;m=i[j>>2];N=j;j=k+t|0;i[N>>2]=i[j>>2];i[j>>2]=m;y=y+1|0;if((u|0)!=(y|0)){continue}break}}d=d+1|0;if((f|0)!=(d|0)){continue}break}}d=r(w);s=f-h|0;t=p-f|0;if((s|0)!=(t|0)){xc(K,s>>>0>>0)}m=d^31;d=w>>>1|0;h:{if(s>>>0>>0){if(!m){break h}j=d-s|0;d=1<>>1|0;k=k+1|0;if((m|0)!=(k|0)){continue}break}break h}if(!m){break h}j=d-t|0;d=1<>>1|0;k=k+1|0;if((m|0)!=(k|0)){continue}break}}k=i[a+1176>>2];m=k+C|0;j=i[m>>2];d=j+v|0;i[d>>2]=i[d>>2]+1;ra(k+D|0,j,i[m+4>>2]);if((f|0)!=(h|0)){k=i[e+60>>2]+i[e+56>>2]|0;m=i[e+48>>2];d=i[e+44>>2];j=m-d|0;if((k|0)==((j?o(j>>2,113)+ -1|0:0)|0)){vc(e+40|0);k=i[e+56>>2]+i[e+60>>2]|0;m=i[e+48>>2];d=i[e+44>>2]}j=0;i:{if((d|0)==(m|0)){break i}j=d;d=(k>>>0)/113|0;j=i[j+(d<<2)>>2]+o(k-o(d,113)|0,36)|0}i[j+32>>2]=B;i[j+28>>2]=s;i[j+24>>2]=g;i[j+20>>2]=u;i[j+16>>2]=q;i[j+12>>2]=f;i[j+4>>2]=z;i[j+8>>2]=G;i[j>>2]=h;i[e+60>>2]=i[e+60>>2]+1}if((f|0)==(p|0)){break d}k=i[e+60>>2]+i[e+56>>2]|0;m=i[e+48>>2];d=i[e+44>>2];h=m-d|0;if((k|0)==((h?o(h>>2,113)+ -1|0:0)|0)){vc(e+40|0);k=i[e+56>>2]+i[e+60>>2]|0;m=i[e+48>>2];d=i[e+44>>2]}h=0;j:{if((d|0)==(m|0)){break j}h=d;d=(k>>>0)/113|0;h=i[h+(d<<2)>>2]+o(k-o(d,113)|0,36)|0}i[h+32>>2]=I;i[h+28>>2]=t;i[h+24>>2]=g;i[h+16>>2]=A;i[h+20>>2]=H;i[h+12>>2]=p;i[h+8>>2]=u;i[h+4>>2]=q;i[h>>2]=f;g=i[e+60>>2]+1|0;i[e+60>>2]=g;break c}while(1){g=(d+ -1|0)==(g|0)?0:g+1|0;i[j+(f<<2)>>2]=g;f=f+1|0;d=i[a+8>>2];if(f>>>0>>0){continue}break}}k=0;f=d;if(!w){break d}while(1){k:{if(!f){f=0;break k}p=i[q+24>>2]+(o(i[q+4>>2],h+k|0)<<2)|0;g=0;while(1){j=i[i[a+1152>>2]+(g<<2)>>2]<<2;f=i[a>>2]-i[j+i[m>>2]>>2]|0;if(f){yc(J,f,i[j+p>>2]);d=i[a+8>>2]}f=d;g=g+1|0;if(g>>>0>>0){continue}break}}k=k+1|0;if((w|0)!=(k|0)){continue}break}}g=i[e+60>>2]}if(g){continue}break}}i[e+60>>2]=0;a=i[e+48>>2];g=i[e+44>>2];d=a-g>>2;if(d>>>0>=3){while(1){bp(i[g>>2]);g=i[e+44>>2]+4|0;i[e+44>>2]=g;a=i[e+48>>2];d=a-g>>2;if(d>>>0>2){continue}break}}f=56;l:{switch(d+ -1|0){case 1:f=113;case 0:i[e+56>>2]=f;break;default:break l}}m:{if((a|0)==(g|0)){break m}while(1){bp(i[g>>2]);g=g+4|0;if((g|0)!=(a|0)){continue}break}b=i[e+48>>2];a=i[e+44>>2];if((b|0)==(a|0)){break m}i[e+48>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[e+40>>2];if(a){bp(a)}F=e- -64|0;return}Ho();x()}Ho();x()}function he(a,b,c,d){var e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=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-80|0;F=h;e=-1;k=-1;a:{if((b|0)==-1){break a}f=((b>>>0)%3|0?-1:2)+b|0;l=i[a+32>>2];m=b+1|0;b=(m>>>0)%3|0?m:b+ -2|0;if((b|0)!=-1){e=i[i[l>>2]+(b<<2)>>2]}if((f|0)==-1){break a}k=i[i[l>>2]+(f<<2)>>2]}f=i[a+36>>2];b=i[f>>2];b:{c:{d:{e:{f:{g:{h:{f=i[f+4>>2]-b>>2;if(!(f>>>0<=e>>>0|f>>>0<=k>>>0)){K=i[b+(e<<2)>>2];M=(K|0)>=(d|0);if(M){break d}l=i[b+(k<<2)>>2];if((l|0)>=(d|0)){break d}b=l<<3;f=i[(b|4)+c>>2];e=K<<3;k=i[(e|4)+c>>2];J=i[b+c>>2];z=i[c+e>>2];if(!((J|0)!=(z|0)|(f|0)!=(k|0))){i[a+8>>2]=z;i[a+12>>2]=k;break c}b=i[i[a+4>>2]+(d<<2)>>2];i[h+72>>2]=0;i[h+76>>2]=0;e=h- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[h+56>>2]=0;i[h+60>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}Qd(e,b,g[e+24|0],h+56|0);b=i[i[a+4>>2]+(K<<2)>>2];i[h+48>>2]=0;i[h+52>>2]=0;i[h+40>>2]=0;i[h+44>>2]=0;i[h+32>>2]=0;i[h+36>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}Qd(e,b,g[e+24|0],h+32|0);b=i[i[a+4>>2]+(l<<2)>>2];i[h+24>>2]=0;i[h+28>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;i[h+8>>2]=0;i[h+12>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}Qd(e,b,g[e+24|0],h+8|0);A=i[h+44>>2];e=i[h+16>>2];b=i[h+40>>2];o=i[h+20>>2]-(A+(e>>>0>>0)|0)|0;l=e-b|0;e=up(l,o,l,o);q=H;n=e;y=i[h+36>>2];e=i[h+8>>2];t=i[h+32>>2];m=t;r=i[h+12>>2]-(y+(e>>>0>>0)|0)|0;m=e-m|0;p=up(m,r,m,r);n=n+p|0;e=H+q|0;e=n>>>0

>>0?e+1|0:e;u=n;s=i[h+52>>2];n=i[h+24>>2];v=i[h+48>>2];p=v;q=i[h+28>>2]-(s+(n>>>0

>>0)|0)|0;n=n-p|0;C=up(n,q,n,q);p=u+C|0;e=H+e|0;w=p;p=p>>>0>>0?e+1|0:e;if(!(w|p)){break d}e=i[h+64>>2];C=e-b|0;N=i[h+68>>2]-((e>>>0>>0)+A|0)|0;b=up(C,N,l,o);e=H;u=b;b=i[h+56>>2];E=b-t|0;O=i[h+60>>2]-((b>>>0>>0)+y|0)|0;t=up(E,O,m,r);b=u+t|0;e=H+e|0;e=b>>>0>>0?e+1|0:e;u=b;b=i[h+72>>2];G=b-v|0;P=i[h+76>>2]-((b>>>0>>0)+s|0)|0;t=up(G,P,n,q);b=u+t|0;e=H+e|0;v=b;e=b>>>0>>0?e+1|0:e;A=e;B=b;t=e;e=q;y=e>>31;b=e>>31;e=b+e|0;s=y;u=s+n|0;if(u>>>0>>0){e=e+1|0}y=y^u;b=b^e;Q=b;u=y;I=b;e=o;b=e>>31;e=e>>31;D=b;b=b+o|0;L=e+l|0;if(L>>>0>>0){b=b+1|0}e=e^L;b=b^D;R=b;L=b;S=B;T=e;B=r>>31;b=B+r|0;s=r>>31;D=s+m|0;if(D>>>0>>0){b=b+1|0}s=s^D;e=s>>>0>>0;b=b^B;e=(b|0)<(R|0)?1:(b|0)<=(R|0)?e:0;s=e?T:s;b=e?L:b;e=(b|0)<(Q|0)?1:(b|0)<=(Q|0)?s>>>0>>0:0;e=S>>>0>wp(-1,2147483647,e?u:s,e?I:b)>>>0;b=H;if((t|0)>(b|0)?1:(t|0)>=(b|0)?e:0){break e}b=f;e=k;B=b-e|0;k=e>>31;u=(b>>31)-(k+(b>>>0>>0)|0)|0;b=up(v,A,B,u);f=H;e=up(e,k,w,p);b=e+b|0;f=H+f|0;t=b;y=b>>>0>>0?f+1|0:f;b=J;e=z;I=b-e|0;f=e>>31;D=(b>>31)-(f+(b>>>0>>0)|0)|0;b=up(v,A,I,D);k=H;f=up(e,f,w,p);e=f+b|0;b=H+k|0;z=e;J=e>>>0>>0?b+1|0:b;k=1;e=0;b=vp(up(l,o,v,A),H,w,p);f=N-(H+(C>>>0>>0)|0)|0;b=C-b|0;b=up(b,f,b,f);l=H;o=b;b=vp(up(m,r,v,A),H,w,p);f=O-(H+(E>>>0>>0)|0)|0;b=E-b|0;m=up(b,f,b,f);b=o+m|0;f=H+l|0;f=b>>>0>>0?f+1|0:f;o=b;b=vp(up(n,q,v,A),H,w,p);l=P-(H+(G>>>0>>0)|0)|0;b=G-b|0;m=up(b,l,b,l);l=o+m|0;b=H+f|0;l=up(l,l>>>0>>0?b+1|0:b,w,p);b=H;m=b;if(!b&l>>>0<=1|b>>>0<0){break h}n=l;f=m;while(1){b=e<<1|k>>>31;k=k<<1;e=b;o=!f&n>>>0>7|f>>>0>0;n=(f&3)<<30|n>>>2;f=f>>>2|0;if(o){continue}break}break g}Io();x()}k=l;e=m;if(k-1|0){break f}}while(1){b=wp(l,m,k,e)+k|0;e=e+H|0;e=b>>>0>>0?e+1|0:e;k=(e&1)<<31|b>>>1;e=e>>>1|0;b=up(k,e,k,e);f=H;if((m|0)==(f|0)&b>>>0>l>>>0|f>>>0>m>>>0){continue}break}}m=a+16|0;s=i[a+24>>2];C=s<<5;b=i[a+20>>2];v=d<<3;o=i[(v|4)+c>>2];n=o;f=t;E=up(k,e,I,D);l=E;G=H;l=vp(f-l|0,y-(G+(f>>>0>>0)|0)|0,w,p);q=n>>31;f=n;r=q-(H+(f>>>0>>0)|0)|0;f=f-l|0;I=up(f,r,f,r);D=H;o=i[c+v>>2];f=o>>31;v=o;r=o;A=f;o=up(k,e,B,u);B=H;e=J+B|0;k=z;u=k+o|0;if(u>>>0>>0){e=e+1|0}k=vp(u,e,w,p);e=k;f=f-(H+(r>>>0>>0)|0)|0;e=r-e|0;r=up(e,f,e,f);e=r+I|0;f=H+D|0;u=e;r=e>>>0>>0?f+1|0:f;e=y+G|0;f=t+E|0;if(f>>>0>>0){e=e+1|0}e=vp(f,e,w,p);q=q-(H+(n>>>0>>0)|0)|0;f=n-e|0;f=up(f,q,f,q);t=H;n=vp(z-o|0,J-((z>>>0>>0)+B|0)|0,w,p);o=f;f=n;q=A-(H+(v>>>0>>0)|0)|0;f=v-f|0;z=up(f,q,f,q);q=o+z|0;f=H+t|0;f=q>>>0>>0?f+1|0:f;i:{if((f|0)==(r|0)&u>>>0>>0|r>>>0>>0){if((b|0)==(C|0)){if((b+1|0)<=-1){break b}if(b>>>0<=1073741822){b=b+32&-32;e=s<<6;b=e>>>0>>0?b:e}else{b=2147483647}bd(m,b);b=i[a+20>>2]}i[a+20>>2]=b+1;e=i[a+16>>2]+(b>>>3&536870908)|0;i[e>>2]=i[e>>2]|1<>>0<=1073741822){b=b+32&-32;k=s<<6;b=k>>>0>>0?b:k}else{b=2147483647}bd(m,b);b=i[a+20>>2]}i[a+20>>2]=b+1;k=i[a+16>>2]+(b>>>3&536870908)|0;f=i[k>>2];U=k,V=yp(-2,b)&f,i[U>>2]=V;l=e;k=n}i[a+8>>2]=k;i[a+12>>2]=l}if(!(p|w)){break d}break c}e=a;if(M){if((d|0)<=0){i[a+8>>2]=0;i[a+12>>2]=0;break c}b=(d<<1)+ -2|0}else{b=K<<1}b=(b<<2)+c|0;i[e+8>>2]=i[b>>2];i[a+12>>2]=i[b+4>>2]}F=h+80|0;return}Ho();x()}function af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,q=0,r=p(0);h=F-32|0;F=h;a:{b:{if(!fd(a,b,c)){break b}n=i[i[i[b+4>>2]+8>>2]+(c<<2)>>2];if(i[n+28>>2]!=9){break b}k=i[b+48>>2];d=ho(32);i[h+16>>2]=d;i[h+20>>2]=17;i[h+24>>2]=-2147483616;g[d+17|0]=0;g[d+16|0]=j[9828];l=j[9824]|j[9825]<<8|(j[9826]<<16|j[9827]<<24);e=j[9820]|j[9821]<<8|(j[9822]<<16|j[9823]<<24);g[d+8|0]=e;g[d+9|0]=e>>>8;g[d+10|0]=e>>>16;g[d+11|0]=e>>>24;g[d+12|0]=l;g[d+13|0]=l>>>8;g[d+14|0]=l>>>16;g[d+15|0]=l>>>24;l=j[9816]|j[9817]<<8|(j[9818]<<16|j[9819]<<24);e=j[9812]|j[9813]<<8|(j[9814]<<16|j[9815]<<24);g[d|0]=e;g[d+1|0]=e>>>8;g[d+2|0]=e>>>16;g[d+3|0]=e>>>24;g[d+4|0]=l;g[d+5|0]=l>>>8;g[d+6|0]=l>>>16;g[d+7|0]=l>>>24;c:{d:{l=k+16|0;f=i[l>>2];if(!f){break d}d=l;while(1){e=i[f+16>>2]<(c|0);d=e?d:f;f=i[(e<<2)+f>>2];if(f){continue}break}if((d|0)==(l|0)|i[d+16>>2]>(c|0)){break d}d=d+20|0;if(!Sb(d,h+16|0)){break d}l=$j(d,h+16|0,-1);break c}l=$j(k,h+16|0,-1)}if(g[h+27|0]<=-1){bp(i[h+16>>2])}if((l|0)<1){f=0;break b}k=i[b+48>>2];d=ho(32);i[h+16>>2]=d;i[h+20>>2]=19;i[h+24>>2]=-2147483616;g[d+19|0]=0;e=j[9845]|j[9846]<<8|(j[9847]<<16|j[9848]<<24);g[d+15|0]=e;g[d+16|0]=e>>>8;g[d+17|0]=e>>>16;g[d+18|0]=e>>>24;e=j[9842]|j[9843]<<8|(j[9844]<<16|j[9845]<<24);f=j[9838]|j[9839]<<8|(j[9840]<<16|j[9841]<<24);g[d+8|0]=f;g[d+9|0]=f>>>8;g[d+10|0]=f>>>16;g[d+11|0]=f>>>24;g[d+12|0]=e;g[d+13|0]=e>>>8;g[d+14|0]=e>>>16;g[d+15|0]=e>>>24;e=j[9834]|j[9835]<<8|(j[9836]<<16|j[9837]<<24);f=j[9830]|j[9831]<<8|(j[9832]<<16|j[9833]<<24);g[d|0]=f;g[d+1|0]=f>>>8;g[d+2|0]=f>>>16;g[d+3|0]=f>>>24;g[d+4|0]=e;g[d+5|0]=e>>>8;g[d+6|0]=e>>>16;g[d+7|0]=e>>>24;e:{f:{e=k+16|0;f=i[e>>2];if(!f){break f}d=e;while(1){m=i[f+16>>2]<(c|0);d=m?d:f;f=i[(m<<2)+f>>2];if(f){continue}break}if((d|0)==(e|0)|i[d+16>>2]>(c|0)){break f}e=Sb(d+20|0,h+16|0);break e}e=Sb(k,h+16|0)}d=0;g:{if(!e){break g}k=i[b+48>>2];d=ho(32);i[h>>2]=d;i[h+4>>2]=18;i[h+8>>2]=-2147483616;g[d+18|0]=0;e=j[9866]|j[9867]<<8;g[d+16|0]=e;g[d+17|0]=e>>>8;e=j[9862]|j[9863]<<8|(j[9864]<<16|j[9865]<<24);f=j[9858]|j[9859]<<8|(j[9860]<<16|j[9861]<<24);g[d+8|0]=f;g[d+9|0]=f>>>8;g[d+10|0]=f>>>16;g[d+11|0]=f>>>24;g[d+12|0]=e;g[d+13|0]=e>>>8;g[d+14|0]=e>>>16;g[d+15|0]=e>>>24;e=j[9854]|j[9855]<<8|(j[9856]<<16|j[9857]<<24);f=j[9850]|j[9851]<<8|(j[9852]<<16|j[9853]<<24);g[d|0]=f;g[d+1|0]=f>>>8;g[d+2|0]=f>>>16;g[d+3|0]=f>>>24;g[d+4|0]=e;g[d+5|0]=e>>>8;g[d+6|0]=e>>>16;g[d+7|0]=e>>>24;h:{i:{e=k+16|0;f=i[e>>2];if(!f){break i}d=e;while(1){m=i[f+16>>2]<(c|0);d=m?d:f;f=i[(m<<2)+f>>2];if(f){continue}break}if((d|0)==(e|0)|i[d+16>>2]>(c|0)){break i}d=Sb(d+20|0,h);break h}d=Sb(k,h)}if(g[h+11|0]<=-1){bp(i[h>>2])}d=(d|0)!=0}if(g[h+27|0]<=-1){bp(i[h+16>>2])}j:{if(d){d=g[n+24|0];i[h+24>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;k=0;if(d){if((d|0)<=-1){break a}d=d<<2;k=ho(d);i[h+16>>2]=k;e=d+k|0;i[h+24>>2]=e;ip(k,0,d);i[h+20>>2]=e}m=i[b+48>>2];d=ho(32);i[h>>2]=d;i[h+4>>2]=19;i[h+8>>2]=-2147483616;g[d+19|0]=0;e=j[9845]|j[9846]<<8|(j[9847]<<16|j[9848]<<24);g[d+15|0]=e;g[d+16|0]=e>>>8;g[d+17|0]=e>>>16;g[d+18|0]=e>>>24;e=j[9842]|j[9843]<<8|(j[9844]<<16|j[9845]<<24);f=j[9838]|j[9839]<<8|(j[9840]<<16|j[9841]<<24);g[d+8|0]=f;g[d+9|0]=f>>>8;g[d+10|0]=f>>>16;g[d+11|0]=f>>>24;g[d+12|0]=e;g[d+13|0]=e>>>8;g[d+14|0]=e>>>16;g[d+15|0]=e>>>24;e=j[9834]|j[9835]<<8|(j[9836]<<16|j[9837]<<24);f=j[9830]|j[9831]<<8|(j[9832]<<16|j[9833]<<24);g[d|0]=f;g[d+1|0]=f>>>8;g[d+2|0]=f>>>16;g[d+3|0]=f>>>24;g[d+4|0]=e;g[d+5|0]=e>>>8;g[d+6|0]=e>>>16;g[d+7|0]=e>>>24;o=g[n+24|0];k:{l:{e=m+16|0;f=i[e>>2];if(!f){break l}d=e;while(1){q=i[f+16>>2]<(c|0);d=q?d:f;f=i[(q<<2)+f>>2];if(f){continue}break}if((d|0)==(e|0)|i[d+16>>2]>(c|0)){break l}d=d+20|0;if(!Sb(d,h)){break l}Tb(d,h,o,k);break k}Tb(m,h,o,k)}if(g[h+11|0]<=-1){bp(i[h>>2])}k=i[b+48>>2];b=ho(32);i[h>>2]=b;i[h+4>>2]=18;i[h+8>>2]=-2147483616;g[b+18|0]=0;d=j[9866]|j[9867]<<8;g[b+16|0]=d;g[b+17|0]=d>>>8;d=j[9862]|j[9863]<<8|(j[9864]<<16|j[9865]<<24);e=j[9858]|j[9859]<<8|(j[9860]<<16|j[9861]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[9854]|j[9855]<<8|(j[9856]<<16|j[9857]<<24);e=j[9850]|j[9851]<<8|(j[9852]<<16|j[9853]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;m:{n:{b=k+16|0;f=i[b>>2];if(!f){break n}d=b;while(1){e=i[f+16>>2]<(c|0);d=e?d:f;f=i[(e<<2)+f>>2];if(f){continue}break}if((b|0)==(d|0)|i[d+16>>2]>(c|0)){break n}b=d+20|0;if(!Sb(b,h)){break n}r=ak(b,h);break m}r=ak(k,h)}if(g[h+11|0]<=-1){bp(i[h>>2])}b=qa(a+40|0,l,i[h+16>>2],g[n+24|0],r);a=i[h+16>>2];if(a){i[h+20>>2]=a;bp(a)}f=0;if(b){break j}break b}f=0;if(!sa(a+40|0,n,l)){break b}}f=1}F=h+32|0;return f|0}Ho();x()}function Sm(a,b,c,d){var e=0,f=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=F-80|0;F=f;i[f+76>>2]=18485;z=f+55|0;w=f+56|0;a:{b:while(1){c:{if((t|0)<0){break c}if((e|0)>(2147483647-t|0)){i[4805]=61;t=-1;break c}t=e+t|0}d:{e:{f:{m=i[f+76>>2];e=m;k=j[e|0];if(k){while(1){g:{k=k&255;h:{if(!k){k=e;break h}if((k|0)!=37){break g}k=e;while(1){if(j[e+1|0]!=37){break h}l=e+2|0;i[f+76>>2]=l;k=k+1|0;p=j[e+2|0];e=l;if((p|0)==37){continue}break}}e=k-m|0;if(a){Tm(a,m,e)}if(e){continue b}k=f;l=!Mm(g[i[f+76>>2]+1|0]);e=i[f+76>>2];i:{if(!(l|j[e+2|0]!=36)){v=g[e+1|0]+ -48|0;x=1;e=e+3|0;break i}v=-1;e=e+1|0}i[k+76>>2]=e;q=0;u=g[e|0];l=u+ -32|0;j:{if(l>>>0>31){k=e;break j}k=e;l=1<>2]=k;q=l|q;u=g[e+1|0];l=u+ -32|0;if(l>>>0>=32){break j}e=k;l=1<>2];if(j[e+2|0]!=36){break m}i[((g[e+1|0]<<2)+d|0)+ -192>>2]=10;r=i[((g[e+1|0]<<3)+c|0)+ -384>>2];x=1;e=e+3|0;break l}if(x){break f}x=0;r=0;if(a){e=i[b>>2];i[b>>2]=e+4;r=i[e>>2]}e=i[f+76>>2]+1|0}i[l+76>>2]=e;if((r|0)>-1){break k}r=0-r|0;q=q|8192;break k}r=Um(f+76|0);if((r|0)<0){break f}e=i[f+76>>2]}p=-1;n:{if(j[e|0]!=46){break n}if(j[e+1|0]==42){o:{if(!Mm(g[e+2|0])){break o}e=i[f+76>>2];if(j[e+3|0]!=36){break o}i[((g[e+2|0]<<2)+d|0)+ -192>>2]=10;p=i[((g[e+2|0]<<3)+c|0)+ -384>>2];e=e+4|0;i[f+76>>2]=e;break n}if(x){break f}if(a){e=i[b>>2];i[b>>2]=e+4;p=i[e>>2]}else{p=0}e=i[f+76>>2]+2|0;i[f+76>>2]=e;break n}i[f+76>>2]=e+1;p=Um(f+76|0);e=i[f+76>>2]}k=0;while(1){y=k;s=-1;if(g[e|0]+ -65>>>0>57){break a}u=e+1|0;i[f+76>>2]=u;k=g[e|0];e=u;k=j[(k+o(y,58)|0)+16959|0];if(k+ -1>>>0<8){continue}break}p:{q:{if((k|0)!=19){if(!k){break a}if((v|0)>=0){i[(v<<2)+d>>2]=k;e=(v<<3)+c|0;k=i[e+4>>2];i[f+64>>2]=i[e>>2];i[f+68>>2]=k;break q}if(!a){break d}Vm(f- -64|0,k,b);u=i[f+76>>2];break p}if((v|0)>-1){break a}}e=0;if(!a){continue b}}l=q&-65537;k=q&8192?l:q;s=0;v=16996;q=w;r:{s:{t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{e=g[u+ -1|0];e=y?(e&15)==3?e&-33:e:e;switch(e+ -88|0){case 11:break r;case 9:case 13:case 14:case 15:break s;case 27:break x;case 12:case 17:break A;case 23:break B;case 0:case 32:break C;case 24:break D;case 22:break E;case 29:break F;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 e;default:break G}}H:{switch(e+ -65|0){case 0:case 4:case 5:case 6:break s;case 2:break v;case 1:case 3:break e;default:break H}}if((e|0)==83){break w}break e}e=i[f+64>>2];m=i[f+68>>2];v=16996;break z}e=0;I:{switch(y&255){case 0:i[i[f+64>>2]>>2]=t;continue b;case 1:i[i[f+64>>2]>>2]=t;continue b;case 2:k=i[f+64>>2];i[k>>2]=t;i[k+4>>2]=t>>31;continue b;case 3:h[i[f+64>>2]>>1]=t;continue b;case 4:g[i[f+64>>2]]=t;continue b;case 6:i[i[f+64>>2]>>2]=t;continue b;case 7:break I;default:continue b}}k=i[f+64>>2];i[k>>2]=t;i[k+4>>2]=t>>31;continue b}p=p>>>0>8?p:8;k=k|8;e=120}m=Wm(i[f+64>>2],i[f+68>>2],w,e&32);if(!(k&8)|!(i[f+64>>2]|i[f+68>>2])){break y}v=(e>>>4|0)+16996|0;s=2;break y}m=Xm(i[f+64>>2],i[f+68>>2],w);if(!(k&8)){break y}e=w-m|0;p=(p|0)>(e|0)?p:e+1|0;break y}l=i[f+68>>2];m=l;e=i[f+64>>2];if((l|0)<-1?1:(l|0)<=-1){m=0-(m+(0>>0)|0)|0;e=0-e|0;i[f+64>>2]=e;i[f+68>>2]=m;s=1;v=16996;break z}if(k&2048){s=1;v=16997;break z}s=k&1;v=s?16998:16996}m=Ym(e,m,w)}k=(p|0)>-1?k&-65537:k;e=i[f+64>>2];l=i[f+68>>2];if(!(!!(e|l)|p)){p=0;m=w;break e}e=!(e|l)+(w-m|0)|0;p=(p|0)>(e|0)?p:e;break e}e=i[f+64>>2];m=e?e:17006;e=Nm(m,p);q=e?e:p+m|0;k=l;p=e?e-m|0:p;break e}l=i[f+64>>2];if(p){break u}e=0;Zm(a,32,r,0,k);break t}i[f+12>>2]=0;i[f+8>>2]=i[f+64>>2];i[f+64>>2]=f+8;p=-1;l=f+8|0}e=0;J:{while(1){m=i[l>>2];if(!m){break J}m=Pm(f+4|0,m);q=(m|0)<0;if(!(q|m>>>0>p-e>>>0)){l=l+4|0;e=e+m|0;if(p>>>0>e>>>0){continue}break J}break}s=-1;if(q){break a}}Zm(a,32,r,e,k);if(!e){e=0;break t}u=0;l=i[f+64>>2];while(1){m=i[l>>2];if(!m){break t}m=Pm(f+4|0,m);u=m+u|0;if((u|0)>(e|0)){break t}Tm(a,f+4|0,m);l=l+4|0;if(u>>>0>>0){continue}break}}Zm(a,32,r,e,k^8192);e=(r|0)>(e|0)?r:e;continue b}e=I[368](a,n[f+64>>3],r,p,k,e)|0;continue b}g[f+55|0]=i[f+64>>2];p=1;m=z;k=l;break e}l=e+1|0;i[f+76>>2]=l;k=j[e+1|0];e=l;continue}}s=t;if(a){break a}if(!x){break d}e=1;while(1){a=i[(e<<2)+d>>2];if(a){Vm((e<<3)+c|0,a,b);s=1;e=e+1|0;if((e|0)!=10){continue}break a}break}s=1;if(e>>>0>=10){break a}while(1){if(i[(e<<2)+d>>2]){break f}e=e+1|0;if((e|0)!=10){continue}break}break a}s=-1;break a}q=q-m|0;p=(p|0)<(q|0)?q:p;l=p+s|0;e=(r|0)<(l|0)?l:r;Zm(a,32,e,l,k);Tm(a,v,s);Zm(a,48,e,l,k^65536);Zm(a,48,p,q,0);Tm(a,m,q);Zm(a,32,e,l,k^8192);continue}break}s=0}F=f+80|0;return s}function Fn(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=F-16|0;F=e;i[e+12>>2]=a;a:{if(a>>>0<=211){a=i[Gn(17648,17840,e+12|0)>>2];break a}if(a>>>0>=4294967292){In();x()}f=(a>>>0)/210|0;d=o(f,210);i[e+8>>2]=a-d;g=Gn(17840,18032,e+8|0)-17840>>2;b:{while(1){a=i[(g<<2)+17840>>2]+d|0;d=5;b=h;c:{d:{while(1){h=b;if((d|0)==47){d=211;while(1){b=(a>>>0)/(d>>>0)|0;if(b>>>0>>0){break c}if((o(b,d)|0)==(a|0)){break d}b=d+10|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+12|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+16|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+18|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+22|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+28|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+30|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+36|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+40|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+42|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+46|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+52|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+58|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+60|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+66|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+70|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+72|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+78|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+82|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+88|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+96|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+100|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+102|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+106|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+108|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+112|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+120|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+126|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+130|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+136|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+138|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+142|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+148|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+150|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+156|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+162|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+166|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+168|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+172|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+178|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+180|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+186|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+190|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+192|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+196|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+198|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+208|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0>>0){break c}d=d+210|0;if((o(b,c)|0)!=(a|0)){continue}break}break d}b=i[(d<<2)+17648>>2];c=(a>>>0)/(b>>>0)|0;j=o(b,c);c=c>>>0>>0;if(!c){b=c?a:h;d=d+1|0;if((a|0)!=(j|0)){continue}}break}if((a|0)!=(j|0)|c){break b}}b=g+1|0;a=(b|0)==48;g=a?0:b;f=a+f|0;d=o(f,210);continue}break}i[e+12>>2]=a;break a}i[e+12>>2]=a;a=c?a:h}F=e+16|0;return a}function pc(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0,K=0,L=0;e=F-32|0;F=e;g=i[a+8>>2];i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(g){if(g>>>0>=1073741824){break a}d=g<<2;f=ho(d);i[e+8>>2]=f;k=d+f|0;i[e+16>>2]=k;ip(f,0,d);i[e+12>>2]=k}h=i[a+1164>>2];d=i[h>>2];if(d){i[h+4>>2]=d;bp(d);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;g=i[a+8>>2];k=i[e+12>>2];f=i[e+8>>2]}i[h+4>>2]=k;i[h>>2]=f;i[h+8>>2]=i[e+16>>2];f=0;i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;d=0;b:{if(g){if(g>>>0>=1073741824){break b}h=g<<2;d=ho(h);i[e+8>>2]=d;f=d+h|0;i[e+16>>2]=f;ip(d,0,h);i[e+12>>2]=f}n=i[a+1176>>2];h=i[n>>2];if(h){i[n+4>>2]=h;bp(h);i[n+8>>2]=0;i[n>>2]=0;i[n+4>>2]=0;d=i[e+8>>2];f=i[e+12>>2]}i[n+4>>2]=f;i[n>>2]=d;i[n+8>>2]=i[e+16>>2];B=i[b+4>>2];H=i[b+8>>2];C=i[c+4>>2];I=i[c+8>>2];q=i[c>>2];j=i[b>>2];d=e+24|0;i[d>>2]=0;i[d+4>>2]=0;f=e+16|0;i[f>>2]=0;i[f+4>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;n=q-j|0;vc(e+8|0);g=0;h=i[e+12>>2];if((h|0)!=i[f>>2]){d=i[d>>2]+i[e+28>>2]|0;f=(d>>>0)/113|0;g=i[h+(f<<2)>>2]+o(d-o(f,113)|0,36)|0}i[g+32>>2]=0;i[g+28>>2]=n;i[g+24>>2]=0;i[g+16>>2]=C;i[g+20>>2]=I;i[g+12>>2]=q;i[g+4>>2]=B;i[g+8>>2]=H;i[g>>2]=j;f=i[e+28>>2];g=f+1|0;i[e+28>>2]=g;if(g>>>0>=f>>>0){n=C;q=B;J=a+1068|0;K=a+1108|0;L=i[c+8>>2];u=i[b+8>>2];while(1){f=i[e+12>>2];j=g+ -1|0;m=j+i[e+24>>2]|0;d=(m>>>0)/113|0;d=i[f+(d<<2)>>2]+o(m-o(d,113)|0,36)|0;D=i[d+32>>2];k=i[d+24>>2];p=i[d+12>>2];h=i[d>>2];i[e+28>>2]=j;d=i[e+16>>2];f=d-f|0;if((f?o(f>>2,113)+ -1|0:0)-m>>>0>=226){bp(i[d+ -4>>2]);i[e+16>>2]=i[e+16>>2]+ -4}i[b>>2]=h;i[c>>2]=p;g=(k|0)==(i[a+8>>2]+ -1|0)?0:k+1|0;v=g<<2;z=o(D,12);m=z+i[a+1176>>2]|0;d=i[a>>2]-i[v+i[m>>2]>>2]|0;c:{d:{if(!d){break d}e:{f:{w=p-h|0;if(w>>>0<=2){j=i[a+1152>>2];i[j>>2]=g;f=1;d=i[a+8>>2];if(d>>>0>1){break f}break e}f=i[a+1164>>2];j=f+z|0;E=f;f=z+12|0;ra(E+f|0,i[j>>2],i[j+4>>2]);f=v+i[f+i[a+1164>>2]>>2]|0;G=i[f>>2]+(1<>2]=G;f=h;g:{if((p|0)==(f|0)){break g}t=i[q+24>>2];d=h;f=p;while(1){s=t+(o(d,u)<<2)|0;if(l[s+v>>2]>>0){d=d+1|0;if((f|0)!=(d|0)){continue}break g}while(1){f=f+ -1|0;if((f|0)==(d|0)){f=d;break g}y=i[n+24>>2]+(o(f,L)<<2)|0;if(l[y+v>>2]>=G>>>0){continue}break}A=0;if(u){while(1){k=A<<2;j=k+s|0;m=i[j>>2];E=j;j=k+y|0;i[E>>2]=i[j>>2];i[j>>2]=m;A=A+1|0;if((u|0)!=(A|0)){continue}break}}d=d+1|0;if((f|0)!=(d|0)){continue}break}}d=r(w);t=f-h|0;s=p-f|0;if((t|0)!=(s|0)){xc(K,t>>>0>>0)}y=D+1|0;m=d^31;d=w>>>1|0;h:{if(t>>>0>>0){if(!m){break h}j=d-t|0;d=1<>>1|0;k=k+1|0;if((m|0)!=(k|0)){continue}break}break h}if(!m){break h}j=d-s|0;d=1<>>1|0;k=k+1|0;if((m|0)!=(k|0)){continue}break}}k=i[a+1176>>2];m=k+z|0;j=i[m>>2];d=j+v|0;i[d>>2]=i[d>>2]+1;ra(k+o(y,12)|0,j,i[m+4>>2]);if((f|0)!=(h|0)){k=i[e+28>>2]+i[e+24>>2]|0;m=i[e+16>>2];d=i[e+12>>2];j=m-d|0;if((k|0)==((j?o(j>>2,113)+ -1|0:0)|0)){vc(e+8|0);k=i[e+24>>2]+i[e+28>>2]|0;m=i[e+16>>2];d=i[e+12>>2]}j=0;i:{if((d|0)==(m|0)){break i}j=d;d=(k>>>0)/113|0;j=i[j+(d<<2)>>2]+o(k-o(d,113)|0,36)|0}i[j+32>>2]=D;i[j+28>>2]=t;i[j+24>>2]=g;i[j+20>>2]=u;i[j+16>>2]=q;i[j+12>>2]=f;i[j+4>>2]=B;i[j+8>>2]=H;i[j>>2]=h;i[e+28>>2]=i[e+28>>2]+1}if((f|0)==(p|0)){break d}k=i[e+28>>2]+i[e+24>>2]|0;m=i[e+16>>2];d=i[e+12>>2];h=m-d|0;if((k|0)==((h?o(h>>2,113)+ -1|0:0)|0)){vc(e+8|0);k=i[e+24>>2]+i[e+28>>2]|0;m=i[e+16>>2];d=i[e+12>>2]}h=0;j:{if((d|0)==(m|0)){break j}h=d;d=(k>>>0)/113|0;h=i[h+(d<<2)>>2]+o(k-o(d,113)|0,36)|0}i[h+32>>2]=y;i[h+28>>2]=s;i[h+24>>2]=g;i[h+16>>2]=C;i[h+20>>2]=I;i[h+12>>2]=p;i[h+8>>2]=u;i[h+4>>2]=q;i[h>>2]=f;g=i[e+28>>2]+1|0;i[e+28>>2]=g;break c}while(1){g=(d+ -1|0)==(g|0)?0:g+1|0;i[j+(f<<2)>>2]=g;f=f+1|0;d=i[a+8>>2];if(f>>>0>>0){continue}break}}k=0;f=d;if(!w){break d}while(1){k:{if(!f){f=0;break k}p=i[q+24>>2]+(o(i[q+4>>2],h+k|0)<<2)|0;g=0;while(1){j=i[i[a+1152>>2]+(g<<2)>>2]<<2;f=i[a>>2]-i[j+i[m>>2]>>2]|0;if(f){yc(J,f,i[j+p>>2]);d=i[a+8>>2]}f=d;g=g+1|0;if(g>>>0>>0){continue}break}}k=k+1|0;if((w|0)!=(k|0)){continue}break}}g=i[e+28>>2]}if(g){continue}break}}i[e+28>>2]=0;a=i[e+16>>2];g=i[e+12>>2];d=a-g>>2;if(d>>>0>=3){while(1){bp(i[g>>2]);g=i[e+12>>2]+4|0;i[e+12>>2]=g;a=i[e+16>>2];d=a-g>>2;if(d>>>0>2){continue}break}}f=56;l:{switch(d+ -1|0){case 1:f=113;case 0:i[e+24>>2]=f;break;default:break l}}m:{if((a|0)==(g|0)){break m}while(1){bp(i[g>>2]);g=g+4|0;if((g|0)!=(a|0)){continue}break}b=i[e+16>>2];a=i[e+12>>2];if((b|0)==(a|0)){break m}i[e+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[e+8>>2];if(a){bp(a)}F=e+32|0;return}Ho();x()}Ho();x()}function Qd(a,b,c,d){var e=0,f=0,l=0,o=0,r=p(0),t=0,w=0,x=0;a:{b:{if(!d){break b}c:{switch(i[a+28>>2]+ -1|0){case 0:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=g[b|0];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 1:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=j[b|0];i[e+4>>2]=0;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 2:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=h[b>>1];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 3:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=k[b>>1];i[e+4>>2]=0;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 4:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=i[b>>2];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 5:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=i[b>>2];i[e+4>>2]=0;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 6:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}l=i[b+4>>2];e=(f<<3)+d|0;i[e>>2]=i[b>>2];i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 7:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=i[b+4>>2];l=e;w=i[b>>2];if((e|0)<0?1:(e|0)<=0?w>>>0<0:0){return}e=(f<<3)+d|0;i[e>>2]=w;i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 8:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;w=i[e+4>>2];f=0;while(1){if(w>>>0<=b>>>0){return}e=(f<<3)+d|0;o=e;r=m[b>>2];d:{if(p(q(r))=p(1)?r>p(0)?~~p(s(p(u(p(r*p(2.3283064365386963e-10)))),p(4294967296)))>>>0:~~p(v(p(p(r-p(~~r>>>0>>>0))*p(2.3283064365386963e-10))))>>>0:0;x=~~r>>>0;break d}l=-2147483648;x=0}i[o>>2]=x;i[e+4>>2]=l;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 9:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;w=i[e+4>>2];f=0;while(1){if(w>>>0<=b>>>0){return}e=(f<<3)+d|0;o=e;t=n[b>>3];e:{if(q(t)<0x8000000000000000){l=q(t)>=1?t>0?~~s(u(t*2.3283064365386963e-10),4294967295)>>>0:~~v((t- +(~~t>>>0>>>0))*2.3283064365386963e-10)>>>0:0;x=~~t>>>0;break e}l=-2147483648;x=0}i[o>>2]=x;i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 10:break c;default:break b}}e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=j[b|0];i[e+4>>2]=0;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}ip((e<<3)+d|0,0,c-e<<3)}return}ip((e<<3)+d|0,0,c-e<<3)}function rc(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;e=F-32|0;F=e;g=i[a+8>>2];i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(g){if(g>>>0>=1073741824){break a}d=g<<2;f=ho(d);i[e+8>>2]=f;k=d+f|0;i[e+16>>2]=k;ip(f,0,d);i[e+12>>2]=k}h=i[a+128>>2];d=i[h>>2];if(d){i[h+4>>2]=d;bp(d);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;g=i[a+8>>2];k=i[e+12>>2];f=i[e+8>>2]}i[h+4>>2]=k;i[h>>2]=f;i[h+8>>2]=i[e+16>>2];f=0;i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;d=0;b:{if(g){if(g>>>0>=1073741824){break b}h=g<<2;d=ho(h);i[e+8>>2]=d;f=d+h|0;i[e+16>>2]=f;ip(d,0,h);i[e+12>>2]=f}n=i[a+140>>2];h=i[n>>2];if(h){i[n+4>>2]=h;bp(h);i[n+8>>2]=0;i[n>>2]=0;i[n+4>>2]=0;d=i[e+8>>2];f=i[e+12>>2]}i[n+4>>2]=f;i[n>>2]=d;i[n+8>>2]=i[e+16>>2];B=i[b+4>>2];H=i[b+8>>2];C=i[c+4>>2];I=i[c+8>>2];q=i[c>>2];j=i[b>>2];d=e+24|0;i[d>>2]=0;i[d+4>>2]=0;f=e+16|0;i[f>>2]=0;i[f+4>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;n=q-j|0;vc(e+8|0);g=0;h=i[e+12>>2];if((h|0)!=i[f>>2]){d=i[d>>2]+i[e+28>>2]|0;f=(d>>>0)/113|0;g=i[h+(f<<2)>>2]+o(d-o(f,113)|0,36)|0}i[g+32>>2]=0;i[g+28>>2]=n;i[g+24>>2]=0;i[g+16>>2]=C;i[g+20>>2]=I;i[g+12>>2]=q;i[g+4>>2]=B;i[g+8>>2]=H;i[g>>2]=j;f=i[e+28>>2];g=f+1|0;i[e+28>>2]=g;if(g>>>0>=f>>>0){n=C;q=B;J=a+32|0;K=a+12|0;L=a+72|0;M=i[c+8>>2];u=i[b+8>>2];while(1){f=i[e+12>>2];j=g+ -1|0;m=j+i[e+24>>2]|0;d=(m>>>0)/113|0;d=i[f+(d<<2)>>2]+o(m-o(d,113)|0,36)|0;D=i[d+32>>2];k=i[d+24>>2];p=i[d+12>>2];h=i[d>>2];i[e+28>>2]=j;d=i[e+16>>2];f=d-f|0;if((f?o(f>>2,113)+ -1|0:0)-m>>>0>=226){bp(i[d+ -4>>2]);i[e+16>>2]=i[e+16>>2]+ -4}i[b>>2]=h;i[c>>2]=p;g=(k|0)==(i[a+8>>2]+ -1|0)?0:k+1|0;v=g<<2;z=o(D,12);m=z+i[a+140>>2]|0;d=i[a>>2]-i[v+i[m>>2]>>2]|0;c:{d:{if(!d){break d}e:{f:{w=p-h|0;if(w>>>0<=2){j=i[a+116>>2];i[j>>2]=g;f=1;d=i[a+8>>2];if(d>>>0>1){break f}break e}f=i[a+128>>2];j=f+z|0;E=f;f=z+12|0;ra(E+f|0,i[j>>2],i[j+4>>2]);f=v+i[f+i[a+128>>2]>>2]|0;G=i[f>>2]+(1<>2]=G;f=h;g:{if((p|0)==(f|0)){break g}t=i[q+24>>2];d=h;f=p;while(1){s=t+(o(d,u)<<2)|0;if(l[s+v>>2]>>0){d=d+1|0;if((f|0)!=(d|0)){continue}break g}while(1){f=f+ -1|0;if((f|0)==(d|0)){f=d;break g}y=i[n+24>>2]+(o(f,M)<<2)|0;if(l[v+y>>2]>=G>>>0){continue}break}A=0;if(u){while(1){k=A<<2;j=k+s|0;m=i[j>>2];E=j;j=k+y|0;i[E>>2]=i[j>>2];i[j>>2]=m;A=A+1|0;if((A|0)!=(u|0)){continue}break}}d=d+1|0;if((f|0)!=(d|0)){continue}break}}y=D+1|0;d=r(w)^31;t=f-h|0;s=p-f|0;if((t|0)!=(s|0)){xc(L,t>>>0>>0)}yc(K,d,(w>>>1|0)-(t>>>0>>0?t:s)|0);k=i[a+140>>2];m=k+z|0;j=i[m>>2];d=j+v|0;i[d>>2]=i[d>>2]+1;ra(k+o(y,12)|0,j,i[m+4>>2]);if((f|0)!=(h|0)){k=i[e+28>>2]+i[e+24>>2]|0;m=i[e+16>>2];d=i[e+12>>2];j=m-d|0;if((k|0)==((j?o(j>>2,113)+ -1|0:0)|0)){vc(e+8|0);k=i[e+24>>2]+i[e+28>>2]|0;m=i[e+16>>2];d=i[e+12>>2]}j=0;h:{if((d|0)==(m|0)){break h}j=d;d=(k>>>0)/113|0;j=i[j+(d<<2)>>2]+o(k-o(d,113)|0,36)|0}i[j+32>>2]=D;i[j+28>>2]=t;i[j+24>>2]=g;i[j+20>>2]=u;i[j+16>>2]=q;i[j+12>>2]=f;i[j+4>>2]=B;i[j+8>>2]=H;i[j>>2]=h;i[e+28>>2]=i[e+28>>2]+1}if((f|0)==(p|0)){break d}k=i[e+28>>2]+i[e+24>>2]|0;j=i[e+16>>2];d=i[e+12>>2];h=j-d|0;if((k|0)==((h?o(h>>2,113)+ -1|0:0)|0)){vc(e+8|0);k=i[e+24>>2]+i[e+28>>2]|0;j=i[e+16>>2];d=i[e+12>>2]}h=0;i:{if((d|0)==(j|0)){break i}h=d;d=(k>>>0)/113|0;h=i[h+(d<<2)>>2]+o(k-o(d,113)|0,36)|0}i[h+32>>2]=y;i[h+28>>2]=s;i[h+24>>2]=g;i[h+16>>2]=C;i[h+20>>2]=I;i[h+12>>2]=p;i[h+8>>2]=u;i[h+4>>2]=q;i[h>>2]=f;g=i[e+28>>2]+1|0;i[e+28>>2]=g;break c}while(1){g=(d+ -1|0)==(g|0)?0:g+1|0;i[j+(f<<2)>>2]=g;f=f+1|0;d=i[a+8>>2];if(f>>>0>>0){continue}break}}k=0;f=d;if(!w){break d}while(1){j:{if(!f){f=0;break j}p=i[q+24>>2]+(o(i[q+4>>2],h+k|0)<<2)|0;g=0;while(1){j=i[i[a+116>>2]+(g<<2)>>2]<<2;f=i[a>>2]-i[j+i[m>>2]>>2]|0;if(f){yc(J,f,i[j+p>>2]);d=i[a+8>>2]}g=g+1|0;f=d;if(g>>>0>>0){continue}break}}k=k+1|0;if((w|0)!=(k|0)){continue}break}}g=i[e+28>>2]}if(g){continue}break}}i[e+28>>2]=0;d=i[e+16>>2];g=i[e+12>>2];a=d-g>>2;if(a>>>0>=3){while(1){bp(i[g>>2]);g=i[e+12>>2]+4|0;i[e+12>>2]=g;d=i[e+16>>2];a=d-g>>2;if(a>>>0>2){continue}break}}f=56;k:{switch(a+ -1|0){case 1:f=113;case 0:i[e+24>>2]=f;break;default:break k}}l:{if((d|0)==(g|0)){break l}while(1){bp(i[g>>2]);g=g+4|0;if((g|0)!=(d|0)){continue}break}b=i[e+16>>2];a=i[e+12>>2];if((b|0)==(a|0)){break l}i[e+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[e+8>>2];if(a){bp(a)}F=e+32|0;return}Ho();x()}Ho();x()}function qc(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;e=F-32|0;F=e;g=i[a+8>>2];i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(g){if(g>>>0>=1073741824){break a}d=g<<2;f=ho(d);i[e+8>>2]=f;k=d+f|0;i[e+16>>2]=k;ip(f,0,d);i[e+12>>2]=k}h=i[a+140>>2];d=i[h>>2];if(d){i[h+4>>2]=d;bp(d);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;g=i[a+8>>2];k=i[e+12>>2];f=i[e+8>>2]}i[h+4>>2]=k;i[h>>2]=f;i[h+8>>2]=i[e+16>>2];f=0;i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;d=0;b:{if(g){if(g>>>0>=1073741824){break b}h=g<<2;d=ho(h);i[e+8>>2]=d;f=d+h|0;i[e+16>>2]=f;ip(d,0,h);i[e+12>>2]=f}n=i[a+152>>2];h=i[n>>2];if(h){i[n+4>>2]=h;bp(h);i[n+8>>2]=0;i[n>>2]=0;i[n+4>>2]=0;d=i[e+8>>2];f=i[e+12>>2]}i[n+4>>2]=f;i[n>>2]=d;i[n+8>>2]=i[e+16>>2];B=i[b+4>>2];H=i[b+8>>2];C=i[c+4>>2];I=i[c+8>>2];q=i[c>>2];j=i[b>>2];d=e+24|0;i[d>>2]=0;i[d+4>>2]=0;f=e+16|0;i[f>>2]=0;i[f+4>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;n=q-j|0;vc(e+8|0);g=0;h=i[e+12>>2];if((h|0)!=i[f>>2]){d=i[d>>2]+i[e+28>>2]|0;f=(d>>>0)/113|0;g=i[h+(f<<2)>>2]+o(d-o(f,113)|0,36)|0}i[g+32>>2]=0;i[g+28>>2]=n;i[g+24>>2]=0;i[g+16>>2]=C;i[g+20>>2]=I;i[g+12>>2]=q;i[g+4>>2]=B;i[g+8>>2]=H;i[g>>2]=j;f=i[e+28>>2];g=f+1|0;i[e+28>>2]=g;if(g>>>0>=f>>>0){n=C;q=B;J=a+44|0;K=a+12|0;L=a+84|0;M=i[c+8>>2];u=i[b+8>>2];while(1){f=i[e+12>>2];j=g+ -1|0;m=j+i[e+24>>2]|0;d=(m>>>0)/113|0;d=i[f+(d<<2)>>2]+o(m-o(d,113)|0,36)|0;D=i[d+32>>2];k=i[d+24>>2];p=i[d+12>>2];h=i[d>>2];i[e+28>>2]=j;d=i[e+16>>2];f=d-f|0;if((f?o(f>>2,113)+ -1|0:0)-m>>>0>=226){bp(i[d+ -4>>2]);i[e+16>>2]=i[e+16>>2]+ -4}i[b>>2]=h;i[c>>2]=p;g=(k|0)==(i[a+8>>2]+ -1|0)?0:k+1|0;v=g<<2;z=o(D,12);m=z+i[a+152>>2]|0;d=i[a>>2]-i[v+i[m>>2]>>2]|0;c:{d:{if(!d){break d}e:{f:{w=p-h|0;if(w>>>0<=2){j=i[a+128>>2];i[j>>2]=g;f=1;d=i[a+8>>2];if(d>>>0>1){break f}break e}f=i[a+140>>2];j=f+z|0;E=f;f=z+12|0;ra(E+f|0,i[j>>2],i[j+4>>2]);f=v+i[f+i[a+140>>2]>>2]|0;G=i[f>>2]+(1<>2]=G;f=h;g:{if((p|0)==(f|0)){break g}t=i[q+24>>2];d=h;f=p;while(1){s=t+(o(d,u)<<2)|0;if(l[s+v>>2]>>0){d=d+1|0;if((f|0)!=(d|0)){continue}break g}while(1){f=f+ -1|0;if((f|0)==(d|0)){f=d;break g}y=i[n+24>>2]+(o(f,M)<<2)|0;if(l[v+y>>2]>=G>>>0){continue}break}A=0;if(u){while(1){k=A<<2;j=k+s|0;m=i[j>>2];E=j;j=k+y|0;i[E>>2]=i[j>>2];i[j>>2]=m;A=A+1|0;if((A|0)!=(u|0)){continue}break}}d=d+1|0;if((f|0)!=(d|0)){continue}break}}y=D+1|0;d=r(w)^31;t=f-h|0;s=p-f|0;if((t|0)!=(s|0)){xc(L,t>>>0>>0)}rf(K,d,(w>>>1|0)-(t>>>0>>0?t:s)|0);k=i[a+152>>2];m=k+z|0;j=i[m>>2];d=j+v|0;i[d>>2]=i[d>>2]+1;ra(k+o(y,12)|0,j,i[m+4>>2]);if((f|0)!=(h|0)){k=i[e+28>>2]+i[e+24>>2]|0;m=i[e+16>>2];d=i[e+12>>2];j=m-d|0;if((k|0)==((j?o(j>>2,113)+ -1|0:0)|0)){vc(e+8|0);k=i[e+24>>2]+i[e+28>>2]|0;m=i[e+16>>2];d=i[e+12>>2]}j=0;h:{if((d|0)==(m|0)){break h}j=d;d=(k>>>0)/113|0;j=i[j+(d<<2)>>2]+o(k-o(d,113)|0,36)|0}i[j+32>>2]=D;i[j+28>>2]=t;i[j+24>>2]=g;i[j+20>>2]=u;i[j+16>>2]=q;i[j+12>>2]=f;i[j+4>>2]=B;i[j+8>>2]=H;i[j>>2]=h;i[e+28>>2]=i[e+28>>2]+1}if((f|0)==(p|0)){break d}k=i[e+28>>2]+i[e+24>>2]|0;j=i[e+16>>2];d=i[e+12>>2];h=j-d|0;if((k|0)==((h?o(h>>2,113)+ -1|0:0)|0)){vc(e+8|0);k=i[e+24>>2]+i[e+28>>2]|0;j=i[e+16>>2];d=i[e+12>>2]}h=0;i:{if((d|0)==(j|0)){break i}h=d;d=(k>>>0)/113|0;h=i[h+(d<<2)>>2]+o(k-o(d,113)|0,36)|0}i[h+32>>2]=y;i[h+28>>2]=s;i[h+24>>2]=g;i[h+16>>2]=C;i[h+20>>2]=I;i[h+12>>2]=p;i[h+8>>2]=u;i[h+4>>2]=q;i[h>>2]=f;g=i[e+28>>2]+1|0;i[e+28>>2]=g;break c}while(1){g=(d+ -1|0)==(g|0)?0:g+1|0;i[j+(f<<2)>>2]=g;f=f+1|0;d=i[a+8>>2];if(f>>>0>>0){continue}break}}k=0;f=d;if(!w){break d}while(1){j:{if(!f){f=0;break j}p=i[q+24>>2]+(o(i[q+4>>2],h+k|0)<<2)|0;g=0;while(1){j=i[i[a+128>>2]+(g<<2)>>2]<<2;f=i[a>>2]-i[j+i[m>>2]>>2]|0;if(f){yc(J,f,i[j+p>>2]);d=i[a+8>>2]}g=g+1|0;f=d;if(g>>>0>>0){continue}break}}k=k+1|0;if((w|0)!=(k|0)){continue}break}}g=i[e+28>>2]}if(g){continue}break}}i[e+28>>2]=0;d=i[e+16>>2];g=i[e+12>>2];a=d-g>>2;if(a>>>0>=3){while(1){bp(i[g>>2]);g=i[e+12>>2]+4|0;i[e+12>>2]=g;d=i[e+16>>2];a=d-g>>2;if(a>>>0>2){continue}break}}f=56;k:{switch(a+ -1|0){case 1:f=113;case 0:i[e+24>>2]=f;break;default:break k}}l:{if((d|0)==(g|0)){break l}while(1){bp(i[g>>2]);g=g+4|0;if((g|0)!=(d|0)){continue}break}b=i[e+16>>2];a=i[e+12>>2];if((b|0)==(a|0)){break l}i[e+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[e+8>>2];if(a){bp(a)}F=e+32|0;return}Ho();x()}Ho();x()}function kn(a,b,c,d,e){var f=0,g=0,h=0,k=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=F-432|0;F=f;g=i[b+4>>2];a:{if(g>>>0>2]){i[b+4>>2]=g+1;h=j[g|0];break a}h=fn(b)}b:{c:{while(1){d:{if((h|0)!=48){if((h|0)!=46){break b}g=i[b+4>>2];if(g>>>0>=l[b+104>>2]){break d}i[b+4>>2]=g+1;h=j[g|0];break c}g=i[b+4>>2];if(g>>>0>2]){y=1;i[b+4>>2]=g+1;h=j[g|0]}else{y=1;h=fn(b)}continue}break}h=fn(b)}x=1;if((h|0)!=48){break b}while(1){q=q+ -1|0;g=u+ -1|0;if((g|0)!=-1){q=q+1|0}u=g;g=i[b+4>>2];e:{if(g>>>0>2]){i[b+4>>2]=g+1;h=j[g|0];break e}h=fn(b)}if((h|0)==48){continue}break}y=1}g=1073676288;while(1){f:{z=h|32;g:{h:{A=h+ -48|0;if(A>>>0<10){break h}if(z+ -97>>>0>5?(h|0)!=46:0){break f}if((h|0)!=46){break h}if(x){break f}x=1;u=o;q=k;break g}h=(h|0)>57?z+ -87|0:A;i:{if((k|0)<0?1:(k|0)<=0?o>>>0<=7:0){r=h+(r<<4)|0;break i}if((k|0)<0?1:(k|0)<=0?o>>>0<=28:0){An(f+48|0,h);yn(f+32|0,v,w,p,g,0,0,0,1073414144);v=i[f+32>>2];w=i[f+36>>2];p=i[f+40>>2];g=i[f+44>>2];yn(f+16|0,v,w,p,g,i[f+48>>2],i[f+52>>2],i[f+56>>2],i[f+60>>2]);tn(f,m,n,s,t,i[f+16>>2],i[f+20>>2],i[f+24>>2],i[f+28>>2]);s=i[f+8>>2];t=i[f+12>>2];m=i[f>>2];n=i[f+4>>2];break i}if(!h|D){break i}yn(f+80|0,v,w,p,g,0,0,0,1073610752);tn(f- -64|0,m,n,s,t,i[f+80>>2],i[f+84>>2],i[f+88>>2],i[f+92>>2]);s=i[f+72>>2];t=i[f+76>>2];D=1;m=i[f+64>>2];n=i[f+68>>2]}o=o+1|0;if(o>>>0<1){k=k+1|0}y=1}h=i[b+4>>2];if(h>>>0>2]){i[b+4>>2]=h+1;h=j[h|0]}else{h=fn(b)}continue}break}j:{k:{if(!y){if(!i[b+104>>2]){break k}c=i[b+4>>2];i[b+4>>2]=c+ -1;i[b+4>>2]=c+ -2;if(!x){break k}i[b+4>>2]=c+ -3;break k}if((k|0)<0?1:(k|0)<=0?o>>>0<=7:0){p=o;g=k;while(1){r=r<<4;p=p+1|0;if(p>>>0<1){g=g+1|0}if((p|0)!=8|g){continue}break}}l:{if((h&-33)==80){p=mn(b);h=H;g=h;if(p|(g|0)!=-2147483648){break l}p=0;g=0;if(!i[b+104>>2]){break l}i[b+4>>2]=i[b+4>>2]+ -1;break l}p=0;g=0;if(!i[b+104>>2]){break l}i[b+4>>2]=i[b+4>>2]+ -1}if(!r){xn(f+112|0,+(e|0)*0);m=i[f+112>>2];n=i[f+116>>2];c=i[f+120>>2];b=i[f+124>>2];break j}b=x?q:k;k=x?u:o;q=b<<2|k>>>30;b=p+(k<<2)|0;k=g+q|0;k=b>>>0

>>0?k+1|0:k;b=b+ -32|0;g=k+ -1|0;o=b;k=b>>>0<4294967264?g+1|0:g;if((k|0)>0?1:(k|0)>=0?b>>>0>0-d>>>0:0){i[4805]=68;An(f+160|0,e);yn(f+144|0,i[f+160>>2],i[f+164>>2],i[f+168>>2],i[f+172>>2],-1,-1,-1,2147418111);yn(f+128|0,i[f+144>>2],i[f+148>>2],i[f+152>>2],i[f+156>>2],-1,-1,-1,2147418111);m=i[f+128>>2];n=i[f+132>>2];c=i[f+136>>2];b=i[f+140>>2];break j}b=d+ -226|0;h=o>>>0>=b>>>0;b=b>>31;if((k|0)>(b|0)?1:(k|0)>=(b|0)?h:0){if((r|0)>-1){while(1){tn(f+416|0,m,n,s,t,0,0,0,-1073807360);h=rn(m,n,s,t,1073610752);g=(h|0)<0;b=g;tn(f+400|0,m,n,s,t,b?m:i[f+416>>2],b?n:i[f+420>>2],b?s:i[f+424>>2],b?t:i[f+428>>2]);k=k+ -1|0;b=o+ -1|0;if((b|0)!=-1){k=k+1|0}o=b;s=i[f+408>>2];t=i[f+412>>2];m=i[f+400>>2];n=i[f+404>>2];r=r<<1|(h|0)>-1;if((r|0)>-1){continue}break}}g=o;b=d;h=(g-b|0)+32|0;k=k-((b>>31)+(g>>>0>>0)|0)|0;b=h;k=b>>>0<32?k+1|0:k;c=((k|0)<0?1:(k|0)<=0?b>>>0>>0:0)?(b|0)>0?b:0:c;m:{if((c|0)>=113){An(f+384|0,e);u=i[f+392>>2];q=i[f+396>>2];v=i[f+384>>2];w=i[f+388>>2];d=0;b=0;break m}xn(f+352|0,fp(144-c|0));An(f+336|0,e);v=i[f+336>>2];w=i[f+340>>2];u=i[f+344>>2];q=i[f+348>>2];gn(f+368|0,i[f+352>>2],i[f+356>>2],i[f+360>>2],i[f+364>>2],v,w,u,q);B=i[f+376>>2];C=i[f+380>>2];d=i[f+372>>2];b=i[f+368>>2]}c=!(r&1)&((qn(m,n,s,t,0,0,0,0)|0)!=0&(c|0)<32);En(f+320|0,c+r|0);yn(f+304|0,v,w,u,q,i[f+320>>2],i[f+324>>2],i[f+328>>2],i[f+332>>2]);tn(f+272|0,i[f+304>>2],i[f+308>>2],i[f+312>>2],i[f+316>>2],b,d,B,C);yn(f+288|0,c?0:m,c?0:n,c?0:s,c?0:t,v,w,u,q);tn(f+256|0,i[f+288>>2],i[f+292>>2],i[f+296>>2],i[f+300>>2],i[f+272>>2],i[f+276>>2],i[f+280>>2],i[f+284>>2]);zn(f+240|0,i[f+256>>2],i[f+260>>2],i[f+264>>2],i[f+268>>2],b,d,B,C);e=i[f+240>>2];d=i[f+244>>2];c=i[f+248>>2];b=i[f+252>>2];if(!qn(e,d,c,b,0,0,0,0)){i[4805]=68}hn(f+224|0,e,d,c,b,o);m=i[f+224>>2];n=i[f+228>>2];c=i[f+232>>2];b=i[f+236>>2];break j}i[4805]=68;An(f+208|0,e);yn(f+192|0,i[f+208>>2],i[f+212>>2],i[f+216>>2],i[f+220>>2],0,0,0,65536);yn(f+176|0,i[f+192>>2],i[f+196>>2],i[f+200>>2],i[f+204>>2],0,0,0,65536);m=i[f+176>>2];n=i[f+180>>2];c=i[f+184>>2];b=i[f+188>>2];break j}xn(f+96|0,+(e|0)*0);m=i[f+96>>2];n=i[f+100>>2];c=i[f+104>>2];b=i[f+108>>2]}i[a>>2]=m;i[a+4>>2]=n;i[a+8>>2]=c;i[a+12>>2]=b;F=f+432|0}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,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;l=F-48|0;F=l;i[a+68>>2]=f;q=a+112|0;pf(q);d=i[a+56>>2];f=i[d>>2];j=i[d+4>>2];i[l+40>>2]=0;i[l+32>>2]=0;i[l+36>>2]=0;i[l+16>>2]=0;i[l+20>>2]=0;i[l+8>>2]=0;i[l+12>>2]=0;i[l>>2]=0;i[l+4>>2]=0;a:{g=j-f|0;if((g|0)<1){break a}e=i[d>>2];if((e|0)!=i[d+4>>2]){t=a+60|0;d=f-j|0;d=((d|0)>(g|0)?d:g)>>>2|0;u=d>>>0>1?d:1;v=c+4|0;while(1){le(t,i[(n<<2)+e>>2],l+32|0);f=i[l+36>>2];g=f>>31;j=i[l+32>>2];k=j>>31;e=i[l+40>>2];h=e>>31;d=0;h=h^e+h;g=h+((g^f+g)+(k^j+k)|0)|0;if(g>>>0>>0){d=1}k=g;b:{if(!(d|g)){m=i[a+108>>2];g=m;break b}m=i[a+108>>2];h=m;o=h>>31;g=vp(up(h,o,j,j>>31),H,k,d);f=vp(up(h,o,f,f>>31),H,k,d);if((e|0)>=0){e=(((g|0)<0?g:0-g|0)+m|0)+((f|0)<0?f:0-f|0)|0;break b}d=g>>31;e=(d+g^d)-m|0;d=f>>31;e=e+(d+f^d)|0}c:{if((g|0)>=0){j=f+m|0;h=e+m|0;break c}d:{if((f|0)<=-1){d=e>>31;j=d+e^d;break d}j=i[a+100>>2]+((e|0)<0?e:0-e|0)|0}if((e|0)<=-1){d=f>>31;h=d+f^d;break c}h=i[a+100>>2]+((f|0)<0?f:0-f|0)|0}e:{if(!(h|j)){d=i[a+100>>2];h=d;k=d;break e}d=i[a+100>>2];f:{g:{h:{i:{if(!j){if((d|0)==(h|0)){d=h;k=d;break e}k=0;if(d|h){break i}h=0;break e}if((d|0)!=(j|0)|h){break h}d=j;h=d;k=d;break e}if((m|0)<(h|0)){h=(m<<1)-h|0;break e}if(d){break f}break g}if((d|0)!=(j|0)){break f}}d=j;if((m|0)<=(h|0)){break f}h=(m<<1)-h|0;k=j;break e}if(!((d|0)!=(h|0)|(m|0)<=(j|0))){k=(m<<1)-j|0;break e}if(h){k=j;break e}h=0;if((m|0)>=(j|0)){k=j;break e}k=(m<<1)-j|0}i[l+28>>2]=h;i[l+24>>2]=k;j=0-e|0;i[l+40>>2]=j;k=0-f|0;i[l+36>>2]=k;i[l+32>>2]=0-g;j:{k:{l:{if((g|0)<=0){g=m-f|0;e=m-e|0;break l}g=e>>31;h=((e|0)<0?e:j)+d|0;j=(f|0)>0;g=j?g+e^g:h;if((e|0)>=1){e=f>>31;e=e+f^e;break l}e=(j?k:f)+d|0}if(!(e|g)){break k}m:{n:{o:{if(!g){if((d|0)==(e|0)){break k}f=0;if(d|e){break o}e=0;break j}if((d|0)==(g|0)?!e:0){break k}if((d|0)==(g|0)){break n}break m}if((m|0)<(e|0)){e=(m<<1)-e|0;break j}if(d){break m}}d=g;if((m|0)<=(e|0)){break m}e=(m<<1)-e|0;f=g;break j}if(!((d|0)!=(e|0)|(m|0)<=(g|0))){f=(m<<1)-g|0;break j}if(e){f=g;break j}e=0;if((m|0)>=(g|0)){f=g;break j}f=(m<<1)-g|0;break j}e=d;f=d}i[l+20>>2]=e;i[l+16>>2]=f;g=i[a+8>>2];p:{if((g|0)<1){break p}r=(n<<3)+b|0;m=l+24|0;j=0;while(1){f=0;q:{if((g|0)<=0){e=i[a+32>>2];break q}while(1){d=f<<2;g=i[d+m>>2];k=i[a+16>>2];r:{if((g|0)>(k|0)){e=i[a+32>>2];i[d+e>>2]=k;break r}e=i[a+32>>2];d=d+e|0;k=i[a+12>>2];if((g|0)<(k|0)){i[d>>2]=k;break r}i[d>>2]=g}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){continue}break}}f=j<<2;d=f+(l+8|0)|0;f=i[f+r>>2]-i[e+f>>2]|0;i[d>>2]=f;k=i[a+28>>2];h=f+i[a+20>>2]|0;s:{t:{if((f|0)<(k|0)){break t}if((f|0)<=i[a+24>>2]){break s}h=f-i[a+20>>2]|0}i[d>>2]=h}m=e;j=j+1|0;if((j|0)<(g|0)){continue}break}p=0;o=l+16|0;j=e;f=e;if((g|0)<1){break p}while(1){d=0;if((g|0)>=1){while(1){f=e;h=f;s=d<<2;k=i[s+o>>2];g=i[a+16>>2];if((k|0)<=(g|0)){g=i[a+12>>2];f=(k|0)<(g|0);g=f?g:k;h=m;f=f?h:j}i[f+s>>2]=g;m=h;j=f;d=d+1|0;g=i[a+8>>2];if((d|0)<(g|0)){continue}break}k=i[a+28>>2]}h=p<<2;d=h+l|0;h=i[h+r>>2]-i[f+h>>2]|0;i[d>>2]=h;u:{if((h|0)<(k|0)){h=h+i[a+20>>2]|0}else{if((h|0)<=i[a+24>>2]){break u}h=h-i[a+20>>2]|0}i[d>>2]=h}o=f;p=p+1|0;if((p|0)<(g|0)){continue}break}}j=i[a+108>>2];e=i[l+8>>2];v:{if((j|0)<(e|0)){e=e-i[a+96>>2]|0;break v}if((e|0)>=(0-j|0)){break v}e=i[a+96>>2]+e|0}i[l+8>>2]=e;g=i[l+12>>2];w:{if((j|0)<(g|0)){g=g-i[a+96>>2]|0;break w}if((g|0)>=(0-j|0)){break w}g=i[a+96>>2]+g|0}i[l+12>>2]=g;d=i[l>>2];x:{if((j|0)<(d|0)){d=d-i[a+96>>2]|0;break x}if((d|0)>=(0-j|0)){break x}d=i[a+96>>2]+d|0}i[l>>2]=d;f=i[l+4>>2];y:{if((j|0)<(f|0)){f=f-i[a+96>>2]|0;break y}if((f|0)>=(0-j|0)){break y}f=i[a+96>>2]+f|0}j=n<<1;i[l+4>>2]=f;k=g>>31;k=k+g^k;h=e>>31;h=h+e^h;m=h>>>0>(k^2147483647)>>>0?2147483647:k+h|0;k=f>>31;k=k+f^k;h=d>>31;h=h+d^h;z:{if(m>>>0<(h>>>0>(k^2147483647)>>>0?2147483647:k+h|0)>>>0){qf(q,0);d=(j<<2)+c|0;if((e|0)<=-1){e=i[a+96>>2]+e|0}i[d>>2]=e;if((g|0)>-1){f=g;break z}f=i[a+96>>2]+g|0;break z}qf(q,1);e=(j<<2)+c|0;if((d|0)<=-1){d=i[a+96>>2]+d|0}i[e>>2]=d;if((f|0)>-1){break z}f=i[a+96>>2]+f|0}i[(j<<2)+v>>2]=f;n=n+1|0;if((u|0)==(n|0)){break a}d=i[a+56>>2];e=i[d>>2];if(i[d+4>>2]-e>>2>>>0>n>>>0){continue}break}}Io();x()}F=l+48|0;return 1}function Xd(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,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;l=F-48|0;F=l;i[a+68>>2]=f;q=a+112|0;pf(q);d=i[a+56>>2];f=i[d>>2];j=i[d+4>>2];i[l+40>>2]=0;i[l+32>>2]=0;i[l+36>>2]=0;i[l+16>>2]=0;i[l+20>>2]=0;i[l+8>>2]=0;i[l+12>>2]=0;i[l>>2]=0;i[l+4>>2]=0;a:{g=j-f|0;if((g|0)<1){break a}e=i[d>>2];if((e|0)!=i[d+4>>2]){t=a+60|0;d=f-j|0;d=((d|0)>(g|0)?d:g)>>>2|0;u=d>>>0>1?d:1;v=c+4|0;while(1){Yd(t,i[(n<<2)+e>>2],l+32|0);f=i[l+36>>2];g=f>>31;j=i[l+32>>2];k=j>>31;e=i[l+40>>2];h=e>>31;d=0;h=h^e+h;g=h+((g^f+g)+(k^j+k)|0)|0;if(g>>>0>>0){d=1}k=g;b:{if(!(d|g)){m=i[a+108>>2];g=m;break b}m=i[a+108>>2];h=m;o=h>>31;g=vp(up(h,o,j,j>>31),H,k,d);f=vp(up(h,o,f,f>>31),H,k,d);if((e|0)>=0){e=(((g|0)<0?g:0-g|0)+m|0)+((f|0)<0?f:0-f|0)|0;break b}d=g>>31;e=(d+g^d)-m|0;d=f>>31;e=e+(d+f^d)|0}c:{if((g|0)>=0){j=f+m|0;h=e+m|0;break c}d:{if((f|0)<=-1){d=e>>31;j=d+e^d;break d}j=i[a+100>>2]+((e|0)<0?e:0-e|0)|0}if((e|0)<=-1){d=f>>31;h=d+f^d;break c}h=i[a+100>>2]+((f|0)<0?f:0-f|0)|0}e:{if(!(h|j)){d=i[a+100>>2];h=d;k=d;break e}d=i[a+100>>2];f:{g:{h:{i:{if(!j){if((d|0)==(h|0)){d=h;k=d;break e}k=0;if(d|h){break i}h=0;break e}if((d|0)!=(j|0)|h){break h}d=j;h=d;k=d;break e}if((m|0)<(h|0)){h=(m<<1)-h|0;break e}if(d){break f}break g}if((d|0)!=(j|0)){break f}}d=j;if((m|0)<=(h|0)){break f}h=(m<<1)-h|0;k=j;break e}if(!((d|0)!=(h|0)|(m|0)<=(j|0))){k=(m<<1)-j|0;break e}if(h){k=j;break e}h=0;if((m|0)>=(j|0)){k=j;break e}k=(m<<1)-j|0}i[l+28>>2]=h;i[l+24>>2]=k;j=0-e|0;i[l+40>>2]=j;k=0-f|0;i[l+36>>2]=k;i[l+32>>2]=0-g;j:{k:{l:{if((g|0)<=0){g=m-f|0;e=m-e|0;break l}g=e>>31;h=((e|0)<0?e:j)+d|0;j=(f|0)>0;g=j?g+e^g:h;if((e|0)>=1){e=f>>31;e=e+f^e;break l}e=(j?k:f)+d|0}if(!(e|g)){break k}m:{n:{o:{if(!g){if((d|0)==(e|0)){break k}f=0;if(d|e){break o}e=0;break j}if((d|0)==(g|0)?!e:0){break k}if((d|0)==(g|0)){break n}break m}if((m|0)<(e|0)){e=(m<<1)-e|0;break j}if(d){break m}}d=g;if((m|0)<=(e|0)){break m}e=(m<<1)-e|0;f=g;break j}if(!((d|0)!=(e|0)|(m|0)<=(g|0))){f=(m<<1)-g|0;break j}if(e){f=g;break j}e=0;if((m|0)>=(g|0)){f=g;break j}f=(m<<1)-g|0;break j}e=d;f=d}i[l+20>>2]=e;i[l+16>>2]=f;g=i[a+8>>2];p:{if((g|0)<1){break p}r=(n<<3)+b|0;m=l+24|0;j=0;while(1){f=0;q:{if((g|0)<=0){e=i[a+32>>2];break q}while(1){d=f<<2;g=i[d+m>>2];k=i[a+16>>2];r:{if((g|0)>(k|0)){e=i[a+32>>2];i[d+e>>2]=k;break r}e=i[a+32>>2];d=d+e|0;k=i[a+12>>2];if((g|0)<(k|0)){i[d>>2]=k;break r}i[d>>2]=g}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){continue}break}}f=j<<2;d=f+(l+8|0)|0;f=i[f+r>>2]-i[e+f>>2]|0;i[d>>2]=f;k=i[a+28>>2];h=f+i[a+20>>2]|0;s:{t:{if((f|0)<(k|0)){break t}if((f|0)<=i[a+24>>2]){break s}h=f-i[a+20>>2]|0}i[d>>2]=h}m=e;j=j+1|0;if((j|0)<(g|0)){continue}break}p=0;o=l+16|0;j=e;f=e;if((g|0)<1){break p}while(1){d=0;if((g|0)>=1){while(1){f=e;h=f;s=d<<2;k=i[s+o>>2];g=i[a+16>>2];if((k|0)<=(g|0)){g=i[a+12>>2];f=(k|0)<(g|0);g=f?g:k;h=m;f=f?h:j}i[f+s>>2]=g;m=h;j=f;d=d+1|0;g=i[a+8>>2];if((d|0)<(g|0)){continue}break}k=i[a+28>>2]}h=p<<2;d=h+l|0;h=i[h+r>>2]-i[f+h>>2]|0;i[d>>2]=h;u:{if((h|0)<(k|0)){h=h+i[a+20>>2]|0}else{if((h|0)<=i[a+24>>2]){break u}h=h-i[a+20>>2]|0}i[d>>2]=h}o=f;p=p+1|0;if((p|0)<(g|0)){continue}break}}j=i[a+108>>2];e=i[l+8>>2];v:{if((j|0)<(e|0)){e=e-i[a+96>>2]|0;break v}if((e|0)>=(0-j|0)){break v}e=i[a+96>>2]+e|0}i[l+8>>2]=e;g=i[l+12>>2];w:{if((j|0)<(g|0)){g=g-i[a+96>>2]|0;break w}if((g|0)>=(0-j|0)){break w}g=i[a+96>>2]+g|0}i[l+12>>2]=g;d=i[l>>2];x:{if((j|0)<(d|0)){d=d-i[a+96>>2]|0;break x}if((d|0)>=(0-j|0)){break x}d=i[a+96>>2]+d|0}i[l>>2]=d;f=i[l+4>>2];y:{if((j|0)<(f|0)){f=f-i[a+96>>2]|0;break y}if((f|0)>=(0-j|0)){break y}f=i[a+96>>2]+f|0}j=n<<1;i[l+4>>2]=f;k=g>>31;k=k+g^k;h=e>>31;h=h+e^h;m=h>>>0>(k^2147483647)>>>0?2147483647:k+h|0;k=f>>31;k=k+f^k;h=d>>31;h=h+d^h;z:{if(m>>>0<(h>>>0>(k^2147483647)>>>0?2147483647:k+h|0)>>>0){qf(q,0);d=(j<<2)+c|0;if((e|0)<=-1){e=i[a+96>>2]+e|0}i[d>>2]=e;if((g|0)>-1){f=g;break z}f=i[a+96>>2]+g|0;break z}qf(q,1);e=(j<<2)+c|0;if((d|0)<=-1){d=i[a+96>>2]+d|0}i[e>>2]=d;if((f|0)>-1){break z}f=i[a+96>>2]+f|0}i[(j<<2)+v>>2]=f;n=n+1|0;if((u|0)==(n|0)){break a}d=i[a+56>>2];e=i[d>>2];if(i[d+4>>2]-e>>2>>>0>n>>>0){continue}break}}Io();x()}F=l+48|0;return 1}function Xb(a,b,c,d){var e=0,f=0,l=0,o=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=h[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=g[a+24|0];if(((o|0)>(c|0)?c:o)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;e=i[e+4>>2];while(1){if(e>>>0<=b>>>0){break b}o=0;r=i[b>>2];if((r|0)<0){break c}i[(f<<2)+d>>2]=r;b=b+4|0;f=f+1|0;o=g[a+24|0];if((f|0)<((o|0)>(c|0)?c:o)<<24>>24){continue}break}}if((o|0)>=(c|0)){return 1}ip((o<<2)+d|0,0,c-o<<2);return 1;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=i[b+4>>2];l=i[b>>2];if(l+ -2147483648>>>0<2147483648){e=e+1|0}if(e>>>0>0){break b}i[(f<<2)+d>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=i[b+4>>2];l=i[b>>2];if(!e&l>>>0>2147483647|e>>>0>0){break b}i[(f<<2)+d>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=(f<<2)+d|0;s=m[b>>2];e:{if(p(q(s))>2]=l;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=(f<<2)+d|0;t=n[b>>3];f:{if(q(t)<2147483648){l=~~t;break f}l=-2147483648}i[e>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}ip((e<<2)+d|0,0,c-e<<2)}return o}return 0}ip((e<<2)+d|0,0,c-e<<2);return 1}function $b(a,b,c,d){var e=0,f=0,o=0,q=0,r=p(0),s=0;a:{b:{if(!d){break b}c:{switch(i[a+28>>2]+ -1|0){case 0:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}i[(f<<2)+d>>2]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 1:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 2:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}i[(f<<2)+d>>2]=h[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 3:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}i[(f<<2)+d>>2]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 4:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 5:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 6:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=i[b>>2];if(l[b+4>>2]>0){return}i[(f<<2)+d>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 7:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=i[b>>2];if(l[b+4>>2]>0){return}i[(f<<2)+d>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 8:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}q=(f<<2)+d|0;r=m[b>>2];d:{if(r=p(0)){e=~~r>>>0;break d}e=0}i[q>>2]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 9:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}q=(f<<2)+d|0;s=n[b>>3];e:{if(s<4294967296&s>=0){e=~~s>>>0;break e}e=0}i[q>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 10:break c;default:break b}}e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+up(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}ip((e<<2)+d|0,0,c-e<<2)}return}ip((e<<2)+d|0,0,c-e<<2)}function Em(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0,t=p(0),u=0,w=0,y=0,z=0,A=0,B=0,C=p(0),D=0,E=0;d=F+ -64|0;F=d;h=i[a+80>>2];i[d+40>>2]=0;i[d+44>>2]=0;i[d+56>>2]=a;i[d+48>>2]=a;i[d+32>>2]=0;i[d+36>>2]=0;i[d+52>>2]=1065353216;Fm(d+32|0,h);h=i[a+80>>2];i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;a:{if(h){if(h>>>0>=1073741824){break a}c=h<<2;b=ho(c);i[d+16>>2]=b;f=c+b|0;i[d+24>>2]=f;ip(b,0,c);i[d+20>>2]=f}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;b:{c:{d:{if(!h){break d}D=d+40|0;h=0;while(1){c=0;b=i[d+48>>2];s=i[b+12>>2];q=i[b+8>>2];r=s-q|0;u=(r|0)<1;if(!u){b=q-s|0;b=((b|0)>(r|0)?b:r)>>>2|0;f=b>>>0>1?b:1;e=0;while(1){b=h;k=i[q+(e<<2)>>2];if(!j[k+84|0]){b=i[i[k+68>>2]+(h<<2)>>2]}c=b<<2^c<<1;e=e+1|0;if((f|0)!=(e|0)){continue}break}}e:{f:{g=i[d+36>>2];if(!g){break f}f=i[d+32>>2];z=xp(g)>>>0>1;b=g+ -1&c;g:{if(!z){break g}b=c;if(c>>>0>>0){break g}b=(c>>>0)%(g>>>0)|0}f=i[f+(b<<2)>>2];if(!f){break f}o=i[f>>2];if(!o){break f}n=b;E=g+ -1|0;y=i[d+56>>2];h:{while(1){i:{j:{e=i[o+4>>2];if((c|0)!=(e|0)){k:{if(!z){e=e&E;break k}if(e>>>0>>0){break k}e=(e>>>0)%(g>>>0)|0}if((e|0)==(n|0)){break j}break f}A=i[y+8>>2];b=i[y+12>>2]-A|0;if((b|0)<1){break h}f=i[o+8>>2];l=b>>>2|0;l=l>>>0>1?l:1;e=0;while(1){b=f;k=h;B=i[A+(e<<2)>>2];if(!j[B+84|0]){b=i[B+68>>2];k=i[b+(h<<2)>>2];b=i[b+(f<<2)>>2]}if((b|0)!=(k|0)){break j}e=e+1|0;if((l|0)!=(e|0)){continue}break}break i}o=i[o>>2];if(o){continue}break f}break}if(!o){break f}}i[i[d+16>>2]+(h<<2)>>2]=i[o+12>>2];break e}l:{if(u){c=0;break l}c=q-s|0;c=((c|0)>(r|0)?c:r)>>>2|0;f=c>>>0>1?c:1;c=0;e=0;while(1){b=h;k=i[q+(e<<2)>>2];if(!j[k+84|0]){b=i[i[k+68>>2]+(h<<2)>>2]}c=b<<2^c<<1;e=e+1|0;if((f|0)!=(e|0)){continue}break}}m:{n:{if(!g){break n}b=i[d+32>>2];q=xp(g)>>>0>1;l=g+ -1&c;o:{if(!q){break o}l=c;if(c>>>0>>0){break o}l=(c>>>0)%(g>>>0)|0}b=i[b+(l<<2)>>2];if(!b){break n}n=i[b>>2];if(!n){break n}r=g+ -1|0;o=i[d+56>>2];while(1){e=i[n+4>>2];if((c|0)!=(e|0)){p:{if(!q){e=e&r;break p}if(e>>>0>>0){break p}e=(e>>>0)%(g>>>0)|0}if((e|0)!=(l|0)){break n}}s=i[o+8>>2];b=i[o+12>>2]-s|0;if((b|0)<1){break m}f=i[n+8>>2];b=b>>>2|0;y=b>>>0>1?b:1;e=0;while(1){b=f;k=h;u=i[s+(e<<2)>>2];if(!j[u+84|0]){b=i[u+68>>2];k=i[b+(h<<2)>>2];b=i[b+(f<<2)>>2]}if((b|0)==(k|0)){e=e+1|0;if((y|0)==(e|0)){break m}continue}break}n=i[n>>2];if(n){continue}break}}b=ho(16);i[b+12>>2]=w;i[b+8>>2]=h;i[b+4>>2]=c;i[b>>2]=0;t=m[d+52>>2];C=p(i[d+44>>2]+1>>>0);q:{if(p(t*p(g>>>0))>>0<3|g<<1;k=d+32|0;t=p(v(p(C/t)));r:{if(t=p(0)){l=~~t>>>0;break r}l=0}Fm(k,f>>>0>>0?l:f);g=i[d+36>>2];l=g+ -1|0;if(!(g&l)){l=c&l;break q}if(c>>>0>>0){l=c;break q}l=(c>>>0)%(g>>>0)|0}f=i[d+32>>2]+(l<<2)|0;c=i[f>>2];s:{t:{if(!c){i[b>>2]=i[d+40>>2];i[d+40>>2]=b;i[f>>2]=D;c=i[b>>2];if(!c){break s}c=i[c+4>>2];f=g+ -1|0;u:{if(!(f&g)){c=c&f;break u}if(c>>>0>>0){break u}c=(c>>>0)%(g>>>0)|0}c=i[d+32>>2]+(c<<2)|0;break t}i[b>>2]=i[c>>2]}i[c>>2]=b}i[d+44>>2]=i[d+44>>2]+1}i[i[d+16>>2]+(h<<2)>>2]=w;w=w+1|0;c=i[d+4>>2];if((c|0)!=i[d+8>>2]){i[c>>2]=h;i[d+4>>2]=c+4;break e}b=i[d>>2];f=c-b|0;n=f>>2;k=n+1|0;if(k>>>0>=1073741824){break c}e=f>>1;k=n>>>0<536870911?e>>>0>>0?k:e:1073741823;c=0;v:{if(!k){break v}if(k>>>0>=1073741824){break b}c=ho(k<<2)}n=c+(n<<2)|0;i[n>>2]=h;k=c+(k<<2)|0;n=n+4|0;if((f|0)>=1){hp(c,b,f)}i[d+8>>2]=k;i[d+4>>2]=n;i[d>>2]=c;if(!b){break e}bp(b)}h=h+1|0;c=i[a+80>>2];if(h>>>0>>0){continue}break}if((c|0)!=(w|0)){I[i[i[a>>2]+24>>2]](a,d+16|0,d);i[a+80>>2]=w}a=i[d>>2];if(!a){break d}i[d+4>>2]=a;bp(a)}a=i[d+16>>2];if(a){i[d+20>>2]=a;bp(a)}h=i[d+40>>2];if(h){while(1){a=i[h>>2];bp(h);h=a;if(h){continue}break}}a=i[d+32>>2];i[d+32>>2]=0;if(a){bp(a)}F=d- -64|0;return}Ho();x()}za(16928);x()}Ho();x()}function ui(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=F-80|0;F=e;a:{b:{c:{d:{if(!j[a+352|0]){break d}c=1;d=I[i[i[a>>2]+40>>2]](a)|0;if((i[d+12>>2]-i[d+8>>2]|0)<1){break d}Rh(i[i[(I[i[i[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;h=i[c+i[i[(I[i[i[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];k=i[c+i[i[(I[i[i[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];m=-1;d=i[a+176>>2];f=i[a+172>>2];e:{if((d|0)==(f|0)){break e}d=(d-f|0)/136|0;c=0;while(1){if(i[f+o(c,136)>>2]==(b|0)){d=f;m=c;break e}c=c+1|0;if(c>>>0>>0){continue}break}d=f}f:{g:{h:{i:{j:{k:{l:{m:{if(!j[a+352|0]){c=i[k+56>>2];if(!j[(o(m,136)+d|0)+28|0]|(h|0)!=1?!(!h|!c):0){break k}if(c){break m}}c=a+40|0;break l}c=i[a+12>>2];f=i[c+28>>2];c=i[c+24>>2];i[e+16>>2]=-1;n=d;d=o(m,136);h=n+d|0;Sh(h+116|0,f-c>>2,e+16|0);g[(d+i[a+172>>2]|0)+100|0]=0;c=h+104|0}h=0;if(_b(i[(I[i[i[a>>2]+40>>2]](a)|0)+48>>2])|i[k+56>>2]){break j}n:{if(!j[a+352|0]){h=1;break n}d=i[a+8>>2];d=i[d+12>>2]-i[d+8>>2]|0;h=(d|0)<5;if((d|0)>4){break j}}Th(e+16|0,a,c);break i}d=o(m,136)+d|0;c=i[d+56>>2];f=i[d+60>>2];i[e+16>>2]=-1;Sh(d+116|0,f-c>>2,e+16|0);c=ho(80);h=i[a+8>>2];i[c+12>>2]=0;i[c+16>>2]=0;i[c>>2]=12880;i[c+4>>2]=0;k=c+20|0;f=k;i[f>>2]=0;i[f+4>>2]=0;r=c+28|0;f=r;i[f>>2]=0;i[f+4>>2]=0;i[c+36>>2]=0;i[c+40>>2]=0;n=c+44|0;f=n;i[f>>2]=0;i[f+4>>2]=0;i[c+52>>2]=0;i[c+76>>2]=0;s=d+104|0;i[c+72>>2]=s;i[c+68>>2]=h;i[c+64>>2]=0;i[c+56>>2]=0;i[c+60>>2]=0;i[c+8>>2]=11784;t=e+52|0;f=t;i[f>>2]=0;i[f+4>>2]=0;u=e+44|0;f=u;i[f>>2]=0;i[f+4>>2]=0;p=e+36|0;f=p;i[f>>2]=0;i[f+4>>2]=0;f=e+28|0;i[f>>2]=0;i[f+4>>2]=0;i[e+68>>2]=0;i[e+72>>2]=0;i[e+60>>2]=0;i[e+64>>2]=0;i[e+20>>2]=0;i[e+24>>2]=0;i[e+16>>2]=11784;v=d+4|0;i[e+20>>2]=v;d=i[d+68>>2];q=i[d>>2];d=i[d+4>>2];g[e+79|0]=0;Uh(e+40|0,(d-q>>2>>>0)/3|0,e+79|0);d=i[e+20>>2];q=i[d+56>>2];d=i[d+52>>2];g[e+79|0]=0;Uh(t,q-d>>2,e+79|0);i[p>>2]=c;i[e+32>>2]=h;i[f>>2]=s;i[e+24>>2]=v;i[c+76>>2]=a+72;i[r>>2]=i[p>>2];d=i[f+4>>2];i[k>>2]=i[f>>2];i[k+4>>2]=d;d=i[e+24>>2];i[c+12>>2]=i[e+20>>2];i[c+16>>2]=d;d=c;h=i[u>>2];if(h){f=c+32|0;o:{if(h>>>0<=i[c+40>>2]<<5>>>0){k=h+ -1>>>5|0;h=i[f>>2];break o}f=i[f>>2];if(f){bp(f);i[c+40>>2]=0;i[c+32>>2]=0;i[c+36>>2]=0;h=i[e+44>>2]}if((h|0)<=-1){break h}k=h+ -1>>>5|0;f=k+1|0;h=ho(f<<2);i[c+40>>2]=f;i[c+36>>2]=0;i[c+32>>2]=h}jp(h,i[e+40>>2],(k<<2)+4|0);f=i[e+44>>2]}else{f=0}i[d+36>>2]=f;f=c;h=i[e+56>>2];if(h){p:{if(h>>>0<=i[c+52>>2]<<5>>>0){d=h+ -1>>>5|0;h=i[n>>2];break p}d=i[n>>2];if(d){bp(d);i[c+52>>2]=0;i[c+44>>2]=0;i[c+48>>2]=0;h=i[e+56>>2]}if((h|0)<=-1){break g}d=h+ -1>>>5|0;k=d+1|0;h=ho(k<<2);i[c+52>>2]=k;i[c+48>>2]=0;i[c+44>>2]=h}jp(h,i[e+52>>2],(d<<2)+4|0);d=i[e+56>>2]}else{d=0}i[f+48>>2]=d;Vh(c+56|0,i[e+64>>2],i[e+68>>2]);i[e+16>>2]=11784;d=i[e+64>>2];if(d){i[e+68>>2]=d;bp(d)}i[e+16>>2]=12036;d=i[e+52>>2];if(d){bp(d)}d=i[e+40>>2];if(d){bp(d)}h=0;break f}Wh(e+16|0,a,c)}c=i[e+16>>2];if(c){break f}c=0;break c}Ho();x()}Ho();x()}i[((m|0)==-1?a+68|0:(i[a+172>>2]+o(m,136)|0)+132|0)>>2]=h;d=ho(76);i[e+8>>2]=c;Mc(d,e+8|0,b);b=i[e+8>>2];i[e+8>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}b=i[a+188>>2];q:{if((b|0)!=i[a+192>>2]){i[b>>2]=m;i[a+188>>2]=b+4;break q}c=i[a+184>>2];f=b-c|0;k=f>>2;h=k+1|0;if(h>>>0>=1073741824){break b}n=f>>1;h=k>>>0<536870911?n>>>0>>0?h:n:1073741823;b=0;r:{if(!h){break r}if(h>>>0>=1073741824){break a}b=ho(h<<2)}k=b+(k<<2)|0;i[k>>2]=m;m=b+(h<<2)|0;h=k+4|0;if((f|0)>=1){hp(b,c,f)}i[a+192>>2]=m;i[a+188>>2]=h;i[a+184>>2]=b;if(!c){break q}bp(c)}a=I[i[i[a>>2]+40>>2]](a)|0;i[e>>2]=d;b=i[a+12>>2];s:{if(b>>>0>2]){i[e>>2]=0;i[b>>2]=d;i[a+12>>2]=b+4;break s}Xh(a+8|0,e)}a=i[e>>2];i[e>>2]=0;c=1;if(!a){break c}I[i[i[a>>2]+4>>2]](a)}F=e+80|0;return c|0}Ho();x()}za(11708);x()}function Qh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=F-80|0;F=e;a:{b:{c:{d:{if(!j[a+288|0]){break d}c=1;d=I[i[i[a>>2]+40>>2]](a)|0;if((i[d+12>>2]-i[d+8>>2]|0)<1){break d}Rh(i[i[(I[i[i[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;h=i[c+i[i[(I[i[i[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];k=i[c+i[i[(I[i[i[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];m=-1;d=i[a+176>>2];f=i[a+172>>2];e:{if((d|0)==(f|0)){break e}d=(d-f|0)/136|0;c=0;while(1){if(i[f+o(c,136)>>2]==(b|0)){d=f;m=c;break e}c=c+1|0;if(c>>>0>>0){continue}break}d=f}f:{g:{h:{i:{j:{k:{l:{m:{if(!j[a+288|0]){c=i[k+56>>2];if(!j[(o(m,136)+d|0)+28|0]|(h|0)!=1?!(!h|!c):0){break k}if(c){break m}}c=a+40|0;break l}c=i[a+12>>2];f=i[c+28>>2];c=i[c+24>>2];i[e+16>>2]=-1;n=d;d=o(m,136);h=n+d|0;Sh(h+116|0,f-c>>2,e+16|0);g[(d+i[a+172>>2]|0)+100|0]=0;c=h+104|0}h=0;if(_b(i[(I[i[i[a>>2]+40>>2]](a)|0)+48>>2])|i[k+56>>2]){break j}n:{if(!j[a+288|0]){h=1;break n}d=i[a+8>>2];d=i[d+12>>2]-i[d+8>>2]|0;h=(d|0)<5;if((d|0)>4){break j}}Th(e+16|0,a,c);break i}d=o(m,136)+d|0;c=i[d+56>>2];f=i[d+60>>2];i[e+16>>2]=-1;Sh(d+116|0,f-c>>2,e+16|0);c=ho(80);h=i[a+8>>2];i[c+12>>2]=0;i[c+16>>2]=0;i[c>>2]=12880;i[c+4>>2]=0;k=c+20|0;f=k;i[f>>2]=0;i[f+4>>2]=0;r=c+28|0;f=r;i[f>>2]=0;i[f+4>>2]=0;i[c+36>>2]=0;i[c+40>>2]=0;n=c+44|0;f=n;i[f>>2]=0;i[f+4>>2]=0;i[c+52>>2]=0;i[c+76>>2]=0;s=d+104|0;i[c+72>>2]=s;i[c+68>>2]=h;i[c+64>>2]=0;i[c+56>>2]=0;i[c+60>>2]=0;i[c+8>>2]=11784;t=e+52|0;f=t;i[f>>2]=0;i[f+4>>2]=0;u=e+44|0;f=u;i[f>>2]=0;i[f+4>>2]=0;p=e+36|0;f=p;i[f>>2]=0;i[f+4>>2]=0;f=e+28|0;i[f>>2]=0;i[f+4>>2]=0;i[e+68>>2]=0;i[e+72>>2]=0;i[e+60>>2]=0;i[e+64>>2]=0;i[e+20>>2]=0;i[e+24>>2]=0;i[e+16>>2]=11784;v=d+4|0;i[e+20>>2]=v;d=i[d+68>>2];q=i[d>>2];d=i[d+4>>2];g[e+79|0]=0;Uh(e+40|0,(d-q>>2>>>0)/3|0,e+79|0);d=i[e+20>>2];q=i[d+56>>2];d=i[d+52>>2];g[e+79|0]=0;Uh(t,q-d>>2,e+79|0);i[p>>2]=c;i[e+32>>2]=h;i[f>>2]=s;i[e+24>>2]=v;i[c+76>>2]=a+72;i[r>>2]=i[p>>2];d=i[f+4>>2];i[k>>2]=i[f>>2];i[k+4>>2]=d;d=i[e+24>>2];i[c+12>>2]=i[e+20>>2];i[c+16>>2]=d;d=c;h=i[u>>2];if(h){f=c+32|0;o:{if(h>>>0<=i[c+40>>2]<<5>>>0){k=h+ -1>>>5|0;h=i[f>>2];break o}f=i[f>>2];if(f){bp(f);i[c+40>>2]=0;i[c+32>>2]=0;i[c+36>>2]=0;h=i[e+44>>2]}if((h|0)<=-1){break h}k=h+ -1>>>5|0;f=k+1|0;h=ho(f<<2);i[c+40>>2]=f;i[c+36>>2]=0;i[c+32>>2]=h}jp(h,i[e+40>>2],(k<<2)+4|0);f=i[e+44>>2]}else{f=0}i[d+36>>2]=f;f=c;h=i[e+56>>2];if(h){p:{if(h>>>0<=i[c+52>>2]<<5>>>0){d=h+ -1>>>5|0;h=i[n>>2];break p}d=i[n>>2];if(d){bp(d);i[c+52>>2]=0;i[c+44>>2]=0;i[c+48>>2]=0;h=i[e+56>>2]}if((h|0)<=-1){break g}d=h+ -1>>>5|0;k=d+1|0;h=ho(k<<2);i[c+52>>2]=k;i[c+48>>2]=0;i[c+44>>2]=h}jp(h,i[e+52>>2],(d<<2)+4|0);d=i[e+56>>2]}else{d=0}i[f+48>>2]=d;Vh(c+56|0,i[e+64>>2],i[e+68>>2]);i[e+16>>2]=11784;d=i[e+64>>2];if(d){i[e+68>>2]=d;bp(d)}i[e+16>>2]=12036;d=i[e+52>>2];if(d){bp(d)}d=i[e+40>>2];if(d){bp(d)}h=0;break f}Wh(e+16|0,a,c)}c=i[e+16>>2];if(c){break f}c=0;break c}Ho();x()}Ho();x()}i[((m|0)==-1?a+68|0:(i[a+172>>2]+o(m,136)|0)+132|0)>>2]=h;d=ho(76);i[e+8>>2]=c;Mc(d,e+8|0,b);b=i[e+8>>2];i[e+8>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}b=i[a+188>>2];q:{if((b|0)!=i[a+192>>2]){i[b>>2]=m;i[a+188>>2]=b+4;break q}c=i[a+184>>2];f=b-c|0;k=f>>2;h=k+1|0;if(h>>>0>=1073741824){break b}n=f>>1;h=k>>>0<536870911?n>>>0>>0?h:n:1073741823;b=0;r:{if(!h){break r}if(h>>>0>=1073741824){break a}b=ho(h<<2)}k=b+(k<<2)|0;i[k>>2]=m;m=b+(h<<2)|0;h=k+4|0;if((f|0)>=1){hp(b,c,f)}i[a+192>>2]=m;i[a+188>>2]=h;i[a+184>>2]=b;if(!c){break q}bp(c)}a=I[i[i[a>>2]+40>>2]](a)|0;i[e>>2]=d;b=i[a+12>>2];s:{if(b>>>0>2]){i[e>>2]=0;i[b>>2]=d;i[a+12>>2]=b+4;break s}Xh(a+8|0,e)}a=i[e>>2];i[e>>2]=0;c=1;if(!a){break c}I[i[i[a>>2]+4>>2]](a)}F=e+80|0;return c|0}Ho();x()}za(11708);x()}function kg(a,b,c,d,e){var f=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;k=F-48|0;F=k;a:{b:{c:{d:{e:{if((b|0)<0){break e}if(!b){p=1;break e}if(b>>>0>=1073741824){break a}A=(c|0)>1?c:1;s=b<<2;f=ho(s);i[k+36>>2]=f;i[k+32>>2]=f;z=f+s|0;i[k+40>>2]=z;s=f;n=f;while(1){m=1;p=i[(B<<2)+a>>2];if((c|0)>1){while(1){v=i[(m+B<<2)+a>>2];p=p>>>0>>0?v:p;m=m+1|0;if((A|0)!=(m|0)){continue}break}}t=p?(r(p)^31)+1|0:1;f:{if(n>>>0>>0){i[n>>2]=t;n=n+4|0;i[k+36>>2]=n;break f}u=n-s|0;v=u>>2;q=v+1|0;if(q>>>0>=1073741824){break d}n=z-s|0;m=n>>1;n=n>>2>>>0<536870911?m>>>0>>0?q:m:1073741823;f=0;g:{if(!n){break g}if(n>>>0>=1073741824){break c}f=ho(n<<2)}m=f+(v<<2)|0;i[m>>2]=t;z=(n<<2)+f|0;n=m+4|0;if((u|0)>=1){hp(f,s,u)}i[k+40>>2]=z;i[k+36>>2]=n;i[k+32>>2]=f;if(s){bp(s)}s=f}w=p>>>0>w>>>0?p:w;B=A+B|0;if((B|0)<(b|0)){continue}break}m=0;i[k+24>>2]=0;i[k+16>>2]=0;i[k+20>>2]=0;p=0;n=n-f|0;if(n){c=n>>2;if(c>>>0>=1073741824){break b}m=ho(n);i[k+16>>2]=m;i[k+24>>2]=(c<<2)+m;s=k;if((n|0)<1){c=m}else{c=hp(m,f,n)+n|0}p=c;i[s+20>>2]=p}n=p-m|0;if(n){c=m-p|0;f=((c|0)>(n|0)?c:n)>>>2|0;c=(n|0)>-1?n:-1;c=o(f,(c|0)<1?c:1);s=c>>>0>1?c:1;p=0;while(1){f=i[(p<<2)+m>>2];c=f+y|0;if(c>>>0>>0){h=h+1|0}y=c;p=p+1|0;if((s|0)!=(p|0)){continue}break}}f=ag(m,n>>2,32,k);v=H;m=i[k>>2];c=i[k+16>>2];if(c){i[k+20>>2]=c;bp(c)}p=ag(a,b,w,k);n=H;u=i[k>>2];s=(w-u|0)/64|0;h:{i:{if(!d){break i}c=ho(32);i[k>>2]=c;i[k+4>>2]=22;i[k+8>>2]=-2147483616;g[c+22|0]=0;t=j[10820]|j[10821]<<8|(j[10822]<<16|j[10823]<<24);q=j[10816]|j[10817]<<8|(j[10818]<<16|j[10819]<<24);g[c+14|0]=q;g[c+15|0]=q>>>8;g[c+16|0]=q>>>16;g[c+17|0]=q>>>24;g[c+18|0]=t;g[c+19|0]=t>>>8;g[c+20|0]=t>>>16;g[c+21|0]=t>>>24;t=j[10814]|j[10815]<<8|(j[10816]<<16|j[10817]<<24);q=j[10810]|j[10811]<<8|(j[10812]<<16|j[10813]<<24);g[c+8|0]=q;g[c+9|0]=q>>>8;g[c+10|0]=q>>>16;g[c+11|0]=q>>>24;g[c+12|0]=t;g[c+13|0]=t>>>8;g[c+14|0]=t>>>16;g[c+15|0]=t>>>24;t=j[10806]|j[10807]<<8|(j[10808]<<16|j[10809]<<24);q=j[10802]|j[10803]<<8|(j[10804]<<16|j[10805]<<24);g[c|0]=q;g[c+1|0]=q>>>8;g[c+2|0]=q>>>16;g[c+3|0]=q>>>24;g[c+4|0]=t;g[c+5|0]=t>>>8;g[c+6|0]=t>>>16;g[c+7|0]=t>>>24;c=Sb(d,k);if(g[k+11|0]<=-1){bp(i[k>>2])}if(!c){break i}c=ho(32);i[k>>2]=c;i[k+4>>2]=22;i[k+8>>2]=-2147483616;g[c+22|0]=0;h=j[10820]|j[10821]<<8|(j[10822]<<16|j[10823]<<24);f=j[10816]|j[10817]<<8|(j[10818]<<16|j[10819]<<24);g[c+14|0]=f;g[c+15|0]=f>>>8;g[c+16|0]=f>>>16;g[c+17|0]=f>>>24;g[c+18|0]=h;g[c+19|0]=h>>>8;g[c+20|0]=h>>>16;g[c+21|0]=h>>>24;h=j[10814]|j[10815]<<8|(j[10816]<<16|j[10817]<<24);f=j[10810]|j[10811]<<8|(j[10812]<<16|j[10813]<<24);g[c+8|0]=f;g[c+9|0]=f>>>8;g[c+10|0]=f>>>16;g[c+11|0]=f>>>24;g[c+12|0]=h;g[c+13|0]=h>>>8;g[c+14|0]=h>>>16;g[c+15|0]=h>>>24;h=j[10806]|j[10807]<<8|(j[10808]<<16|j[10809]<<24);f=j[10802]|j[10803]<<8|(j[10804]<<16|j[10805]<<24);g[c|0]=f;g[c+1|0]=f>>>8;g[c+2|0]=f>>>16;g[c+3|0]=f>>>24;g[c+4|0]=h;g[c+5|0]=h>>>8;g[c+6|0]=h>>>16;g[c+7|0]=h>>>24;m=_j(d,k);if(g[k+11|0]>-1){break h}bp(i[k>>2]);break h}if((r(w>>>0>1?w:1)^30)>>>0<18){c=f;f=up(y,h,A,0);h=c+f|0;c=H+v|0;c=h>>>0>>0?c+1|0:c;y=h;h=m<<3;f=h>>31;m=h;h=f<<1|h>>>31;f=m<<1;m=y+f|0;c=c+h|0;c=m>>>0>>0?c+1|0:c;h=s+u<<3;f=h;s=f>>31;y=m;q=f;h=u<<3;f=h;m=f+p|0;h=(f>>31)+n|0;h=m>>>0>>0?h+1|0:h;f=m;m=q+f|0;h=h+s|0;h=m>>>0>>0?h+1|0:h;m=(c|0)>(h|0)?1:(c|0)>=(h|0)?y>>>0>=m>>>0:0}else{m=0}}g[k|0]=m;c=i[e+20>>2];if((c|0)<0?1:(c|0)<=0?l[e+16>>2]<=0:0){ca(e,i[e+4>>2],k,k+1|0)}p=0;j:{k:{switch(m|0){case 0:p=lg(a,b,A,k+32|0,e);break j;case 1:break k;default:break j}}p=mg(a,b,w,u,d,e)}a=i[k+32>>2];if(!a){break e}i[k+36>>2]=a;bp(a)}F=k+48|0;return p}Ho();x()}za(10859);x()}Ho();x()}za(10859);x()}function Si(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;a:{b:{c:{d:{e:{f:{g:{if(i[a+92>>2]==i[a+88>>2]){break g}d=i[a+52>>2];h:{if((d|0)!=i[a+56>>2]){i[d>>2]=b;i[a+52>>2]=d+4;break h}h=i[a+48>>2];g=d-h|0;f=g>>2;c=f+1|0;if(c>>>0>=1073741824){break a}e=g>>1;c=f>>>0<536870911?e>>>0>>0?c:e:1073741823;d=0;i:{if(!c){break i}if(c>>>0>=1073741824){break b}d=ho(c<<2)}e=d+(f<<2)|0;i[e>>2]=b;c=d+(c<<2)|0;e=e+4|0;if((g|0)>=1){hp(d,h,g)}i[a+56>>2]=c;i[a+52>>2]=e;i[a+48>>2]=d;if(!h){break h}bp(h)}i[a+84>>2]=0;e=-1;d=-1;j:{if((b|0)==-1){break j}f=i[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)!=-1){e=i[i[f>>2]+(c<<2)>>2]}c=((b>>>0)%3|0?-1:2)+b|0;if((c|0)==-1){break j}d=i[i[f>>2]+(c<<2)>>2]}c=i[a+36>>2];h=c+(e>>>3&536870908)|0;g=i[h>>2];f=1<>2]=f|g;f=a+8|0;if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0}else{c=-1}Ti(f,e,c);c=i[a+36>>2]}f=(d>>>3&536870908)+c|0;c=i[f>>2];e=1<>2]=c|e;c=a+8|0;e=-1;k:{if((b|0)==-1){break k}e=b+ -1|0;if((b>>>0)%3|0){break k}e=b+2|0}Ti(c,d,e)}e=-1;e=(b|0)!=-1?i[i[i[a+4>>2]>>2]+(b<<2)>>2]:e;f=i[a+36>>2]+(e>>>3&536870908)|0;c=i[f>>2];d=1<>2]=c|d;Ti(a+8|0,e,b)}c=i[a+84>>2];if((c|0)>2){break g}q=a+8|0;while(1){b=o(c,12)+a|0;e=b+52|0;d=i[e>>2];if((d|0)==i[b+48>>2]){c=c+1|0;if((c|0)!=3){continue}break g}d=d+ -4|0;b=i[d>>2];i[e>>2]=d;i[a+84>>2]=c;if((b|0)==-1){break g}e=i[a+24>>2];d=(b>>>0)/3|0;l:{if(i[e+(d>>>3&268435452)>>2]>>>d&1){break l}m:{while(1){g=(b>>>0)/3|0;d=(g>>>3&268435452)+e|0;i[d>>2]=i[d>>2]|1<>2]>>2]+(b<<2)>>2]:e;f=i[a+36>>2]+(e>>>3&536870908)|0;c=i[f>>2];d=1<>2]=c|d;Ti(q,e,b)}if((b|0)==-1){break m}h=i[a+4>>2];d=-1;e=-1;c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)!=-1){e=i[i[h+12>>2]+(c<<2)>>2]}b=(b-o(g,3)|0?-1:2)+b|0;if((b|0)!=-1){d=i[i[h+12>>2]+(b<<2)>>2]}g=(d|0)==-1;f=(d>>>0)/3|0;c=(e>>>0)/3|0;n:{o:{p:{q:{b=(e|0)==-1;if(!b){b=b?-1:c;b=i[i[a+24>>2]+(b>>>3&536870908)>>2]&1<>2]+(b>>>3&536870908)>>2]>>>b&1){break r}b=0;c=i[i[h>>2]+(d<<2)>>2];if(!(i[i[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){b=i[a+88>>2]+(c<<2)|0;c=i[b>>2];i[b>>2]=c+1;b=(c|0)<1?2:1}if(!(!p|(b|0)>i[a+84>>2])){b=d;e=i[a+24>>2];continue}c=o(b,12)+a|0;k=c+52|0;f=i[k>>2];m=c+56|0;s:{if((f|0)!=i[m>>2]){i[f>>2]=d;i[k>>2]=f+4;break s}h=c+48|0;n=i[h>>2];j=f-n|0;l=j>>2;g=l+1|0;if(g>>>0>=1073741824){break f}f=j>>1;f=l>>>0<536870911?f>>>0>>0?g:f:1073741823;c=0;t:{if(!f){break t}if(f>>>0>=1073741824){break e}c=ho(f<<2)}g=c+(l<<2)|0;i[g>>2]=d;f=c+(f<<2)|0;d=g+4|0;if((j|0)>=1){hp(c,n,j)}i[h>>2]=c;i[k>>2]=d;i[m>>2]=f;if(!n){break s}bp(n)}if(i[a+84>>2]<=(b|0)){break r}i[a+84>>2]=b}if(p){break m}b=-1;if((e|0)==-1){break n}}b=i[i[i[a+4>>2]>>2]+(e<<2)>>2]}d=0;if(!(i[i[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=i[a+88>>2]+(b<<2)|0;d=i[b>>2];i[b>>2]=d+1;d=(d|0)<1?2:1}if((d|0)<=i[a+84>>2]){b=e;e=i[a+24>>2];continue}break}b=o(d,12)+a|0;l=b+52|0;c=i[l>>2];h=b+56|0;u:{if((c|0)!=i[h>>2]){i[c>>2]=e;i[l>>2]=c+4;break u}g=b+48|0;j=i[g>>2];k=c-j|0;m=k>>2;f=m+1|0;if(f>>>0>=1073741824){break d}c=k>>1;c=m>>>0<536870911?c>>>0>>0?f:c:1073741823;b=0;v:{if(!c){break v}if(c>>>0>=1073741824){break c}b=ho(c<<2)}f=b+(m<<2)|0;i[f>>2]=e;c=b+(c<<2)|0;e=f+4|0;if((k|0)>=1){hp(b,j,k)}i[g>>2]=b;i[l>>2]=e;i[h>>2]=c;if(!j){break u}bp(j)}c=i[a+84>>2];if((c|0)<=(d|0)){break l}i[a+84>>2]=d;c=d;break l}c=i[a+84>>2]}if((c|0)<3){continue}break}}return 1}Ho();x()}za(11708);x()}Ho();x()}za(11708);x()}za(11708);x()}Ho();x()}function tn(a,b,c,d,e,f,g,h,j){var k=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;m=F-112|0;F=m;n=h;o=j&2147483647;l=c+ -1|0;k=b+ -1|0;if((k|0)!=-1){l=l+1|0}p=k;t=(k|0)==-1&(l|0)==-1;q=e&2147483647;k=q;s=d;l=(c|0)==(l|0)&p>>>0>>0|l>>>0>>0;p=d+l|0;if(p>>>0>>0){k=k+1|0}l=p+ -1|0;k=k+ -1|0;k=(l|0)!=-1?k+1|0:k;a:{b:{if(!((l|0)==-1&(k|0)==2147418111?t:k>>>0>2147418111)){l=g+ -1|0;k=f+ -1|0;if((k|0)!=-1){l=l+1|0}p=k;t=(k|0)!=-1|(l|0)!=-1;k=o;l=(g|0)==(l|0)&p>>>0>>0|l>>>0>>0;p=l+n|0;if(p>>>0>>0){k=k+1|0}l=p+ -1|0;k=k+ -1|0;k=(l|0)!=-1?k+1|0:k;if((l|0)==-1&(k|0)==2147418111?t:(k|0)==2147418111&(l|0)!=-1|k>>>0<2147418111){break b}}if(!(!s&(q|0)==2147418112?!(b|c):(q|0)==2147418112&s>>>0<0|q>>>0<2147418112)){h=d;j=e|32768;f=b;g=c;break a}if(!(!n&(o|0)==2147418112?!(f|g):(o|0)==2147418112&n>>>0<0|o>>>0<2147418112)){j=j|32768;break a}if(!(b|s|(q^2147418112|c))){k=d;d=!(b^f|d^h|(c^g|e^j^-2147483648));h=d?0:k;j=d?2147450880:e;f=d?0:b;g=d?0:c;break a}if(!(f|n|(o^2147418112|g))){break a}if(!(b|s|(c|q))){if(f|n|(g|o)){break a}f=b&f;g=c&g;h=d&h;j=e&j;break a}if(f|n|(g|o)){break b}f=b;g=c;h=d;j=e;break a}k=(n|0)==(s|0)&(o|0)==(q|0)?(c|0)==(g|0)&f>>>0>b>>>0|g>>>0>c>>>0:(o|0)==(q|0)&n>>>0>s>>>0|o>>>0>q>>>0;q=k?f:b;l=k?g:c;n=k?j:e;s=n;p=k?h:d;n=n&65535;e=k?e:j;u=e;h=k?d:h;t=e>>>16&32767;o=s>>>16&32767;if(!o){d=!(n|p);e=d<<6;j=r(d?q:p)+32|0;d=r(d?l:n);d=e+((d|0)==32?j:d)|0;sn(m+96|0,q,l,p,n,d+ -15|0);p=i[m+104>>2];n=i[m+108>>2];q=i[m+96>>2];o=16-d|0;l=i[m+100>>2]}f=k?b:f;g=k?c:g;j=u&65535;if(!t){b=!(h|j);c=b<<6;d=r(b?f:h)+32|0;b=r(b?g:j);b=c+((b|0)==32?d:b)|0;sn(m+80|0,f,g,h,j,b+ -15|0);t=16-b|0;h=i[m+88>>2];j=i[m+92>>2];g=i[m+84>>2];f=i[m+80>>2]}b=h;k=j<<3|b>>>29;h=b<<3|g>>>29;j=k|524288;b=p;d=n<<3|b>>>29;e=b<<3|l>>>29;p=d;n=s^u;b=f;k=g<<3|b>>>29;b=b<<3;c=k;f=o-t|0;d=b;c:{if(!f){break c}if(f>>>0>127){h=0;j=0;k=0;d=1;break c}sn(m- -64|0,b,c,h,j,128-f|0);vn(m+48|0,b,c,h,j,f);h=i[m+56>>2];j=i[m+60>>2];k=i[m+52>>2];d=i[m+48>>2]|((i[m+64>>2]|i[m+72>>2])!=0|(i[m+68>>2]|i[m+76>>2])!=0)}f=k;p=p|524288;b=q;k=l<<3|b>>>29;c=b<<3;d:{if((n|0)<-1?1:(n|0)<=-1){l=d;b=c-d|0;n=h;q=e-h|0;d=(f|0)==(k|0)&c>>>0>>0|k>>>0>>0;h=q-d|0;c=k-((c>>>0>>0)+f|0)|0;j=(p-((e>>>0>>0)+j|0)|0)-(q>>>0>>0)|0;if(!(b|h|(c|j))){f=0;g=0;h=0;j=0;break a}if(j>>>0>524287){break d}f=b;d=!(h|j);e=d<<6;g=r(d?b:h)+32|0;b=r(d?c:j);b=e+((b|0)==32?g:b)|0;b=b+ -12|0;sn(m+32|0,f,c,h,j,b);o=o-b|0;h=i[m+40>>2];j=i[m+44>>2];b=i[m+32>>2];c=i[m+36>>2];break d}k=f+k|0;b=d;c=b+c|0;if(c>>>0>>0){k=k+1|0}b=c;c=k;g=(f|0)==(k|0)&b>>>0>>0|k>>>0>>0;l=j+p|0;d=e+h|0;if(d>>>0>>0){l=l+1|0}f=d;e=g+d|0;d=l;h=e;j=h>>>0>>0?d+1|0:d;if(!(j&1048576)){break d}b=b&1|((c&1)<<31|b>>>1);c=h<<31|c>>>1;o=o+1|0;h=(j&1)<<31|h>>>1;j=j>>>1|0}l=0;n=s&-2147483648;if((o|0)>=32767){h=l;j=n|2147418112;f=0;g=0;break a}e=0;e:{if((o|0)>0){e=o;break e}sn(m+16|0,b,c,h,j,o+127|0);vn(m,b,c,h,j,1-o|0);b=i[m>>2]|((i[m+16>>2]|i[m+24>>2])!=0|(i[m+20>>2]|i[m+28>>2])!=0);c=i[m+4>>2];h=i[m+8>>2];j=i[m+12>>2]}f=h<<29;d=c>>>3|0;c=(c&7)<<29|b>>>3;d=d|f;k=d;b=b&7;f=b>>>0>4;g=f+c|0;if(g>>>0>>0){k=k+1|0}f=g;g=k;c=(d|0)==(k|0)&f>>>0>>0|k>>>0>>0;d=l|((j&7)<<29|h>>>3);k=n|j>>>3&65535|e<<16;c=d+c|0;if(c>>>0>>0){k=k+1|0}h=c;j=k;f:{if((b|0)==4){b=0;d=g+b|0;c=f&1;e=f+c|0;if(e>>>0>>0){d=d+1|0}f=e;g=d;b=(b|0)==(d|0)&f>>>0>>0|d>>>0>>0;c=b+h|0;if(c>>>0>>0){k=k+1|0}h=c;j=k;break f}if(!b){break a}}}i[a>>2]=f;i[a+4>>2]=g;i[a+8>>2]=h;i[a+12>>2]=j;F=m+112|0}function Ze(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,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;k=F-48|0;F=k;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;r=a+96|0;pf(r);d=i[a+40>>2];e=i[d>>2];f=i[d+4>>2];i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;a:{g=f-e|0;if((g|0)<1){break a}j=i[d>>2];if((j|0)!=i[d+4>>2]){s=a+8|0;t=a+44|0;d=e-f|0;d=((d|0)>(g|0)?d:g)>>>2|0;u=d>>>0>1?d:1;v=c+4|0;while(1){le(t,i[(o<<2)+j>>2],k+8|0);f=i[k+12>>2];g=f>>31;e=i[k+8>>2];l=e>>31;j=i[k+16>>2];h=j>>31;d=0;h=h^j+h;g=h+((g^f+g)+(l^e+l)|0)|0;if(g>>>0>>0){d=1}l=g;b:{if(!(d|g)){n=i[a+92>>2];g=n;break b}n=i[a+92>>2];h=n;q=h>>31;g=vp(up(h,q,e,e>>31),H,l,d);f=vp(up(h,q,f,f>>31),H,l,d);if((j|0)>=0){j=(((g|0)<0?g:0-g|0)+n|0)+((f|0)<0?f:0-f|0)|0;break b}d=g>>31;e=(d+g^d)-n|0;d=f>>31;j=e+(d+f^d)|0}c:{if((g|0)>=0){e=f+n|0;h=j+n|0;break c}d:{if((f|0)<=-1){d=j>>31;e=d+j^d;break d}e=i[a+84>>2]+((j|0)<0?j:0-j|0)|0}if((j|0)<=-1){d=f>>31;h=d+f^d;break c}h=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}e:{if(!(e|h)){d=i[a+84>>2];h=d;l=d;break e}d=i[a+84>>2];f:{g:{h:{i:{if(!e){if((d|0)==(h|0)){d=h;l=d;break e}l=0;if(d|h){break i}h=0;break e}if((d|0)!=(e|0)|h){break h}d=e;h=d;l=d;break e}if((n|0)<(h|0)){h=(n<<1)-h|0;break e}if(d){break f}break g}if((d|0)!=(e|0)){break f}}d=e;if((n|0)<=(h|0)){break f}h=(n<<1)-h|0;l=e;break e}if(!((d|0)!=(h|0)|(n|0)<=(e|0))){l=(n<<1)-e|0;break e}if(h){l=e;break e}h=0;if((n|0)>=(e|0)){l=e;break e}l=(n<<1)-e|0}e=0-j|0;i[k+16>>2]=e;q=0-f|0;i[k+12>>2]=q;i[k+8>>2]=0-g;j:{k:{l:{if((g|0)<=0){g=n-f|0;e=n-j|0;break l}g=j>>31;w=((j|0)<0?j:e)+d|0;e=(f|0)>0;g=e?g+j^g:w;if((j|0)>=1){e=f>>31;e=e+f^e;break l}e=(e?q:f)+d|0}if(!(e|g)){break k}m:{n:{o:{if(!g){if((d|0)==(e|0)){break k}f=0;if(d|e){break o}e=0;break j}if((d|0)==(g|0)?!e:0){break k}if((d|0)==(g|0)){break n}break m}if((n|0)<(e|0)){e=(n<<1)-e|0;break j}if(d){break m}}d=g;if((n|0)<=(e|0)){break m}e=(n<<1)-e|0;f=g;break j}if(!((d|0)!=(e|0)|(n|0)<=(g|0))){f=(n<<1)-g|0;break j}if(e){f=g;break j}e=0;if((n|0)>=(g|0)){f=g;break j}f=(n<<1)-g|0;break j}e=d;f=d}d=(o<<3)+b|0;g=i[d+4>>2];i[k+32>>2]=i[d>>2];i[k+36>>2]=g;i[k+28>>2]=h;i[k+24>>2]=l;ze(k+40|0,s,k+32|0,k+24|0);g=i[k+44>>2];j=i[k+40>>2];l=i[d+4>>2];i[k+32>>2]=i[d>>2];i[k+36>>2]=l;i[k+28>>2]=e;i[k+24>>2]=f;ze(k+40|0,s,k+32|0,k+24|0);f=i[k+44>>2];d=i[k+40>>2];e=i[a+92>>2];p:{if((e|0)<(j|0)){j=j-i[a+80>>2]|0;break p}if((j|0)>=(0-e|0)){break p}j=i[a+80>>2]+j|0}q:{if((e|0)<(g|0)){g=g-i[a+80>>2]|0;break q}if((g|0)>=(0-e|0)){break q}g=i[a+80>>2]+g|0}r:{if((e|0)<(d|0)){d=d-i[a+80>>2]|0;break r}if((d|0)>=(0-e|0)){break r}d=i[a+80>>2]+d|0}s:{if((e|0)<(f|0)){f=f-i[a+80>>2]|0;break s}if((f|0)>=(0-e|0)){break s}f=i[a+80>>2]+f|0}e=o<<1;l=g>>31;l=l+g^l;h=j>>31;h=h+j^h;n=h>>>0>(l^2147483647)>>>0?2147483647:l+h|0;l=f>>31;l=l+f^l;h=d>>31;h=h+d^h;t:{if(n>>>0<(h>>>0>(l^2147483647)>>>0?2147483647:l+h|0)>>>0){qf(r,0);d=(e<<2)+c|0;if((j|0)<=-1){j=i[a+80>>2]+j|0}i[d>>2]=j;if((g|0)>-1){f=g;break t}f=i[a+80>>2]+g|0;break t}qf(r,1);g=(e<<2)+c|0;if((d|0)<=-1){d=i[a+80>>2]+d|0}i[g>>2]=d;if((f|0)>-1){break t}f=i[a+80>>2]+f|0}i[(e<<2)+v>>2]=f;o=o+1|0;if((u|0)==(o|0)){break a}d=i[a+40>>2];j=i[d>>2];if(i[d+4>>2]-j>>2>>>0>o>>>0){continue}break}}Io();x()}F=k+48|0;return 1}function Pe(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,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;k=F-48|0;F=k;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;r=a+96|0;pf(r);d=i[a+40>>2];e=i[d>>2];f=i[d+4>>2];i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;a:{g=f-e|0;if((g|0)<1){break a}j=i[d>>2];if((j|0)!=i[d+4>>2]){s=a+8|0;t=a+44|0;d=e-f|0;d=((d|0)>(g|0)?d:g)>>>2|0;u=d>>>0>1?d:1;v=c+4|0;while(1){Yd(t,i[(o<<2)+j>>2],k+8|0);f=i[k+12>>2];g=f>>31;e=i[k+8>>2];l=e>>31;j=i[k+16>>2];h=j>>31;d=0;h=h^j+h;g=h+((g^f+g)+(l^e+l)|0)|0;if(g>>>0>>0){d=1}l=g;b:{if(!(d|g)){n=i[a+92>>2];g=n;break b}n=i[a+92>>2];h=n;q=h>>31;g=vp(up(h,q,e,e>>31),H,l,d);f=vp(up(h,q,f,f>>31),H,l,d);if((j|0)>=0){j=(((g|0)<0?g:0-g|0)+n|0)+((f|0)<0?f:0-f|0)|0;break b}d=g>>31;e=(d+g^d)-n|0;d=f>>31;j=e+(d+f^d)|0}c:{if((g|0)>=0){e=f+n|0;h=j+n|0;break c}d:{if((f|0)<=-1){d=j>>31;e=d+j^d;break d}e=i[a+84>>2]+((j|0)<0?j:0-j|0)|0}if((j|0)<=-1){d=f>>31;h=d+f^d;break c}h=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}e:{if(!(e|h)){d=i[a+84>>2];h=d;l=d;break e}d=i[a+84>>2];f:{g:{h:{i:{if(!e){if((d|0)==(h|0)){d=h;l=d;break e}l=0;if(d|h){break i}h=0;break e}if((d|0)!=(e|0)|h){break h}d=e;h=d;l=d;break e}if((n|0)<(h|0)){h=(n<<1)-h|0;break e}if(d){break f}break g}if((d|0)!=(e|0)){break f}}d=e;if((n|0)<=(h|0)){break f}h=(n<<1)-h|0;l=e;break e}if(!((d|0)!=(h|0)|(n|0)<=(e|0))){l=(n<<1)-e|0;break e}if(h){l=e;break e}h=0;if((n|0)>=(e|0)){l=e;break e}l=(n<<1)-e|0}e=0-j|0;i[k+16>>2]=e;q=0-f|0;i[k+12>>2]=q;i[k+8>>2]=0-g;j:{k:{l:{if((g|0)<=0){g=n-f|0;e=n-j|0;break l}g=j>>31;w=((j|0)<0?j:e)+d|0;e=(f|0)>0;g=e?g+j^g:w;if((j|0)>=1){e=f>>31;e=e+f^e;break l}e=(e?q:f)+d|0}if(!(e|g)){break k}m:{n:{o:{if(!g){if((d|0)==(e|0)){break k}f=0;if(d|e){break o}e=0;break j}if((d|0)==(g|0)?!e:0){break k}if((d|0)==(g|0)){break n}break m}if((n|0)<(e|0)){e=(n<<1)-e|0;break j}if(d){break m}}d=g;if((n|0)<=(e|0)){break m}e=(n<<1)-e|0;f=g;break j}if(!((d|0)!=(e|0)|(n|0)<=(g|0))){f=(n<<1)-g|0;break j}if(e){f=g;break j}e=0;if((n|0)>=(g|0)){f=g;break j}f=(n<<1)-g|0;break j}e=d;f=d}d=(o<<3)+b|0;g=i[d+4>>2];i[k+32>>2]=i[d>>2];i[k+36>>2]=g;i[k+28>>2]=h;i[k+24>>2]=l;ze(k+40|0,s,k+32|0,k+24|0);g=i[k+44>>2];j=i[k+40>>2];l=i[d+4>>2];i[k+32>>2]=i[d>>2];i[k+36>>2]=l;i[k+28>>2]=e;i[k+24>>2]=f;ze(k+40|0,s,k+32|0,k+24|0);f=i[k+44>>2];d=i[k+40>>2];e=i[a+92>>2];p:{if((e|0)<(j|0)){j=j-i[a+80>>2]|0;break p}if((j|0)>=(0-e|0)){break p}j=i[a+80>>2]+j|0}q:{if((e|0)<(g|0)){g=g-i[a+80>>2]|0;break q}if((g|0)>=(0-e|0)){break q}g=i[a+80>>2]+g|0}r:{if((e|0)<(d|0)){d=d-i[a+80>>2]|0;break r}if((d|0)>=(0-e|0)){break r}d=i[a+80>>2]+d|0}s:{if((e|0)<(f|0)){f=f-i[a+80>>2]|0;break s}if((f|0)>=(0-e|0)){break s}f=i[a+80>>2]+f|0}e=o<<1;l=g>>31;l=l+g^l;h=j>>31;h=h+j^h;n=h>>>0>(l^2147483647)>>>0?2147483647:l+h|0;l=f>>31;l=l+f^l;h=d>>31;h=h+d^h;t:{if(n>>>0<(h>>>0>(l^2147483647)>>>0?2147483647:l+h|0)>>>0){qf(r,0);d=(e<<2)+c|0;if((j|0)<=-1){j=i[a+80>>2]+j|0}i[d>>2]=j;if((g|0)>-1){f=g;break t}f=i[a+80>>2]+g|0;break t}qf(r,1);g=(e<<2)+c|0;if((d|0)<=-1){d=i[a+80>>2]+d|0}i[g>>2]=d;if((f|0)>-1){break t}f=i[a+80>>2]+f|0}i[(e<<2)+v>>2]=f;o=o+1|0;if((u|0)==(o|0)){break a}d=i[a+40>>2];j=i[d>>2];if(i[d+4>>2]-j>>2>>>0>o>>>0){continue}break}}Io();x()}F=k+48|0;return 1}function le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0;f=F-96|0;F=f;e=i[a+16>>2];g[f+92|0]=1;i[f+88>>2]=b;i[f+84>>2]=b;i[f+80>>2]=e;d=-1;d=(b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:d;h=i[a+20>>2];e=i[h>>2];a:{b:{if(i[h+4>>2]-e>>2>>>0>d>>>0){e=i[i[a+8>>2]+(i[e+(d<<2)>>2]<<2)>>2];d=i[a+4>>2];if(!j[d+84|0]){e=i[i[d+68>>2]+(e<<2)>>2]}i[f+72>>2]=0;i[f+76>>2]=0;h=f- -64|0;i[h>>2]=0;i[h+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;Qd(d,e,g[d+24|0],f+56|0);if((b|0)!=-1){d=b+1|0;h=(d>>>0)%3|0?d:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;n=f+48|0;o=f+40|0;while(1){e=h;d=m;c:{if(!i[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b+ -2|0;d=b+ -1|0;if((b>>>0)%3|0){break c}d=b+2|0}b=-1;b=(e|0)!=-1?i[i[i[a+16>>2]>>2]+(e<<2)>>2]:b;k=i[a+20>>2];e=i[k>>2];if(i[k+4>>2]-e>>2>>>0<=b>>>0){break b}e=i[i[a+8>>2]+(i[e+(b<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}i[n>>2]=0;i[n+4>>2]=0;i[o>>2]=0;i[o+4>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;Qd(b,e,g[b+24|0],f+32|0);b=-1;b=(d|0)!=-1?i[i[i[a+16>>2]>>2]+(d<<2)>>2]:b;e=i[a+20>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0<=b>>>0){break a}d=i[i[a+8>>2]+(i[d+(b<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;k=f+16|0;i[k>>2]=0;i[k+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Qd(b,d,g[b+24|0],f+8|0);d=i[f+8>>2];b=i[f+56>>2];s=d-b|0;y=i[f+60>>2];t=i[f+12>>2]-(y+(d>>>0>>0)|0)|0;z=i[f+40>>2];d=i[f+64>>2];D=z-d|0;A=i[f+68>>2];z=i[f+44>>2]-(A+(z>>>0>>0)|0)|0;B=up(s,t,D,z);C=l-B|0;u=u-(H+(l>>>0>>0)|0)|0;l=i[k>>2];B=l-d|0;k=i[k+4>>2]-((l>>>0>>0)+A|0)|0;l=i[f+32>>2];A=l-b|0;y=i[f+36>>2]-((l>>>0>>0)+y|0)|0;d=up(B,k,A,y);l=d+C|0;b=H+u|0;b=l>>>0>>0?b+1|0:b;u=b;E=p;w=s;G=t;b=i[f+48>>2];p=i[f+72>>2];d=p;t=b-d|0;s=i[f+76>>2];C=i[f+52>>2]-(s+(b>>>0>>0)|0)|0;w=up(w,G,t,C);d=E+w|0;b=H+q|0;b=d>>>0>>0?b+1|0:b;q=i[e>>2];w=q-p|0;e=i[e+4>>2]-((q>>>0

>>0)+s|0)|0;q=up(w,e,A,y);p=d-q|0;q=b-(H+(d>>>0>>0)|0)|0;b=up(B,k,t,C);d=r-b|0;b=v-(H+(r>>>0>>0)|0)|0;v=up(w,e,D,z);r=v+d|0;b=H+b|0;b=r>>>0>>0?b+1|0:b;v=b;me(f+80|0);b=i[f+88>>2];if((b|0)!=-1){continue}break}}d=v;b=d>>31;d=d>>31;h=b;b=v+b|0;m=d+r|0;if(m>>>0>>0){b=b+1|0}o=d^m;n=b^h;t=-1;e=2147483647;d=q;b=d>>31;d=d>>31;m=b;b=q+b|0;k=d+p|0;if(k>>>0>>0){b=b+1|0}d=d^k;b=b^m;h=b;m=d^-1;b=b^2147483647;d:{if(!i[a+28>>2]){if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break d}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}d=b;h=a;b=u;e=b>>31;o=b>>31;b=o+b|0;k=e+l|0;if(k>>>0>>0){b=b+1|0}e=e^k;m=b^o;n=e+h|0;b=n;h=m^2147483647;a=(h|0)==(d|0)&a>>>0>(e^-1)>>>0|d>>>0>h>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;l=vp(l,u,a,b);p=vp(p,q,a,b);r=vp(r,v,a,b);break d}e:{if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break e}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}m=b;n=a;d=b;h=u;b=h>>31;h=h>>31;k=b;b=u+b|0;s=h+l|0;if(s>>>0>>0){b=b+1|0}h=h^s;b=b^k;o=b;b=b^2147483647;if((b|0)==(d|0)&n>>>0>(h^-1)>>>0|d>>>0>b>>>0){break e}b=m+o|0;d=a+h|0;if(d>>>0>>0){b=b+1|0}t=d;e=b;if(!b&d>>>0<536870913|b>>>0<0){break d}}a=(e&536870911)<<3|t>>>29;b=e>>>29|0;l=vp(l,u,a,b);p=vp(p,q,a,b);r=vp(r,v,a,b)}i[c+8>>2]=l;i[c+4>>2]=p;i[c>>2]=r;F=f+96|0;return}Io();x()}Io();x()}Io();x()}function Yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=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,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0;f=F-96|0;F=f;d=i[a+16>>2];g[f+92|0]=1;i[f+88>>2]=b;i[f+84>>2]=b;i[f+80>>2]=d;h=i[a+20>>2];e=i[h>>2];a:{b:{d=i[i[d+28>>2]+(b<<2)>>2];if(i[h+4>>2]-e>>2>>>0>d>>>0){d=i[i[a+8>>2]+(i[e+(d<<2)>>2]<<2)>>2];e=i[a+4>>2];if(!j[e+84|0]){d=i[i[e+68>>2]+(d<<2)>>2]}i[f+72>>2]=0;i[f+76>>2]=0;h=f- -64|0;i[h>>2]=0;i[h+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;Qd(e,d,g[e+24|0],f+56|0);if((b|0)!=-1){d=b+1|0;h=(d>>>0)%3|0?d:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;n=f+48|0;o=f+40|0;while(1){e=h;d=m;c:{if(!i[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b+ -2|0;d=b+ -1|0;if((b>>>0)%3|0){break c}d=b+2|0}k=i[a+20>>2];b=i[k>>2];e=i[i[i[a+16>>2]+28>>2]+(e<<2)>>2];if(i[k+4>>2]-b>>2>>>0<=e>>>0){break b}e=i[i[a+8>>2]+(i[b+(e<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}i[n>>2]=0;i[n+4>>2]=0;i[o>>2]=0;i[o+4>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;Qd(b,e,g[b+24|0],f+32|0);e=i[a+20>>2];b=i[e>>2];d=i[i[i[a+16>>2]+28>>2]+(d<<2)>>2];if(i[e+4>>2]-b>>2>>>0<=d>>>0){break a}e=i[i[a+8>>2]+(i[b+(d<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}k=f+24|0;d=k;i[d>>2]=0;i[d+4>>2]=0;r=f+16|0;d=r;i[d>>2]=0;i[d+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Qd(b,e,g[b+24|0],f+8|0);d=i[f+8>>2];b=i[f+56>>2];t=d-b|0;y=i[f+60>>2];e=i[f+12>>2]-(y+(d>>>0>>0)|0)|0;z=i[f+40>>2];d=i[f+64>>2];D=z-d|0;A=i[f+68>>2];z=i[f+44>>2]-(A+(z>>>0>>0)|0)|0;B=up(t,e,D,z);C=l-B|0;u=u-(H+(l>>>0>>0)|0)|0;l=i[r>>2];B=l-d|0;r=i[r+4>>2]-((l>>>0>>0)+A|0)|0;l=i[f+32>>2];A=l-b|0;y=i[f+36>>2]-((l>>>0>>0)+y|0)|0;d=up(B,r,A,y);l=d+C|0;b=H+u|0;b=l>>>0>>0?b+1|0:b;u=b;E=p;w=t;G=e;b=i[f+48>>2];p=i[f+72>>2];d=p;e=b-d|0;t=i[f+76>>2];C=i[f+52>>2]-(t+(b>>>0>>0)|0)|0;w=up(w,G,e,C);d=E+w|0;b=H+q|0;b=d>>>0>>0?b+1|0:b;q=i[k>>2];w=q-p|0;k=i[k+4>>2]-((q>>>0

>>0)+t|0)|0;q=up(w,k,A,y);p=d-q|0;q=b-(H+(d>>>0>>0)|0)|0;b=up(B,r,e,C);d=s-b|0;b=v-(H+(s>>>0>>0)|0)|0;v=up(w,k,D,z);s=v+d|0;b=H+b|0;b=s>>>0>>0?b+1|0:b;v=b;$d(f+80|0);b=i[f+88>>2];if((b|0)!=-1){continue}break}}d=v;b=d>>31;d=d>>31;h=b;b=v+b|0;m=d+s|0;if(m>>>0>>0){b=b+1|0}o=d^m;n=b^h;r=-1;e=2147483647;d=q;b=d>>31;d=d>>31;m=b;b=q+b|0;k=d+p|0;if(k>>>0>>0){b=b+1|0}d=d^k;b=b^m;h=b;m=d^-1;b=b^2147483647;d:{if(!i[a+28>>2]){if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break d}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}d=b;h=a;b=u;e=b>>31;o=b>>31;b=o+b|0;k=e+l|0;if(k>>>0>>0){b=b+1|0}e=e^k;m=b^o;n=e+h|0;b=n;h=m^2147483647;a=(h|0)==(d|0)&a>>>0>(e^-1)>>>0|d>>>0>h>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;l=vp(l,u,a,b);p=vp(p,q,a,b);s=vp(s,v,a,b);break d}e:{if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break e}b=h+n|0;a=d+o|0;if(a>>>0>>0){b=b+1|0}m=b;n=a;d=b;h=u;b=h>>31;h=h>>31;k=b;b=u+b|0;t=h+l|0;if(t>>>0>>0){b=b+1|0}h=h^t;b=b^k;o=b;b=b^2147483647;if((b|0)==(d|0)&n>>>0>(h^-1)>>>0|d>>>0>b>>>0){break e}b=m+o|0;d=a+h|0;if(d>>>0>>0){b=b+1|0}r=d;e=b;if(!b&d>>>0<536870913|b>>>0<0){break d}}a=(e&536870911)<<3|r>>>29;b=e>>>29|0;l=vp(l,u,a,b);p=vp(p,q,a,b);s=vp(s,v,a,b)}i[c+8>>2]=l;i[c+4>>2]=p;i[c>>2]=s;F=f+96|0;return}Io();x()}Io();x()}Io();x()}function bm(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;i[a+56>>2]=i[a+52>>2];i[a+44>>2]=i[a+40>>2];a:{b:{c:{g=i[a+64>>2];d=i[g+24>>2];if((d|0)!=i[g+28>>2]){r=a+40|0;s=a+52|0;while(1){g=e;m=i[(q<<2)+d>>2];d:{if((m|0)==-1){break d}if((m|0)<0){d=-1}else{e=(m>>>0)/3|0;d=i[(i[b+96>>2]+o(e,12)|0)+(m-o(e,3)<<2)>>2]}d=j[c+84|0]?d:i[i[c+68>>2]+(d<<2)>>2];e=i[a+56>>2];f=i[a+60>>2];e:{if(e>>>0>>0){i[e>>2]=d;i[a+56>>2]=e+4;break e}n=i[s>>2];p=e-n|0;k=p>>2;l=k+1|0;if(l>>>0>=1073741824){break c}h=f-n|0;f=h>>1;f=h>>2>>>0<536870911?f>>>0>>0?l:f:1073741823;e=0;f:{if(!f){break f}if(f>>>0>=1073741824){break a}e=ho(f<<2)}h=e+(k<<2)|0;i[h>>2]=d;f=e+(f<<2)|0;d=h+4|0;if((p|0)>=1){hp(e,n,p)}i[a+60>>2]=f;i[a+56>>2]=d;i[a+52>>2]=e;if(!n){break e}bp(n)}g:{if(!(i[i[a+12>>2]+(q>>>3&536870908)>>2]>>>q&1)){break g}e=m+1|0;e=(e>>>0)%3|0?e:m+ -2|0;if((e|0)==-1|i[i[a>>2]+(e>>>3&536870908)>>2]>>>e&1){break g}d=i[i[i[a+64>>2]+12>>2]+(e<<2)>>2];if((d|0)==-1){break g}e=d+1|0;d=(e>>>0)%3|0?e:d+ -2|0;if((d|0)==-1){break g}while(1){e=d+1|0;m=d;e=(e>>>0)%3|0?e:d+ -2|0;if((e|0)==-1|i[i[a>>2]+(e>>>3&536870908)>>2]>>>e&1){break g}d=i[i[i[a+64>>2]+12>>2]+(e<<2)>>2];if((d|0)==-1){break g}e=d+1|0;d=(e>>>0)%3|0?e:d+ -2|0;if((d|0)!=-1){continue}break}}i[i[a+28>>2]+(m<<2)>>2]=g;e=i[a+44>>2];h:{if((e|0)!=i[a+48>>2]){i[e>>2]=m;i[a+44>>2]=e+4;break h}l=i[r>>2];k=e-l|0;h=k>>2;f=h+1|0;if(f>>>0>=1073741824){break b}d=k>>1;f=h>>>0<536870911?d>>>0>>0?f:d:1073741823;e=0;i:{if(!f){break i}if(f>>>0>=1073741824){break a}e=ho(f<<2)}d=e+(h<<2)|0;i[d>>2]=m;f=e+(f<<2)|0;d=d+4|0;if((k|0)>=1){hp(e,l,k)}i[a+48>>2]=f;i[a+44>>2]=d;i[a+40>>2]=e;if(!l){break h}bp(l)}e=g+1|0;d=((m>>>0)%3|0?-1:2)+m|0;if((d|0)==-1){break d}d=i[i[i[a+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break d}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1|(d|0)==(m|0)){break d}while(1){f=d+1|0;f=(f>>>0)%3|0?f:d+ -2|0;if(i[i[a>>2]+(f>>>3&536870908)>>2]>>>f&1){g=(d|0)<0?-1:i[(i[b+96>>2]+o((d>>>0)/3|0,12)|0)+((d>>>0)%3<<2)>>2];g=j[c+84|0]?g:i[i[c+68>>2]+(g<<2)>>2];f=i[a+56>>2];h=i[a+60>>2];j:{if(f>>>0>>0){i[f>>2]=g;i[a+56>>2]=f+4;break j}l=i[s>>2];n=f-l|0;f=n>>2;p=f+1|0;if(p>>>0>=1073741824){break c}t=f<<2;k=h-l|0;h=k>>1;h=k>>2>>>0<536870911?h>>>0

>>0?p:h:1073741823;f=0;k:{if(!h){break k}if(h>>>0>=1073741824){break a}f=ho(h<<2)}k=t+f|0;i[k>>2]=g;h=f+(h<<2)|0;g=k+4|0;if((n|0)>=1){hp(f,l,n)}i[a+60>>2]=h;i[a+56>>2]=g;i[a+52>>2]=f;if(!l){break j}bp(l)}f=e+1|0;g=i[a+44>>2];l:{if((g|0)!=i[a+48>>2]){i[g>>2]=d;i[a+44>>2]=g+4;break l}n=i[r>>2];p=g-n|0;l=p>>2;k=l+1|0;if(k>>>0>=1073741824){break b}h=p>>1;k=l>>>0<536870911?h>>>0>>0?k:h:1073741823;g=0;m:{if(!k){break m}if(k>>>0>=1073741824){break a}g=ho(k<<2)}h=g+(l<<2)|0;i[h>>2]=d;k=g+(k<<2)|0;h=h+4|0;if((p|0)>=1){hp(g,n,p)}i[a+48>>2]=k;i[a+44>>2]=h;i[a+40>>2]=g;if(!n){break l}bp(n)}g=e;e=f}i[i[a+28>>2]+(d<<2)>>2]=g;d=((d>>>0)%3|0?-1:2)+d|0;if((d|0)==-1){break d}d=i[i[i[a+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break d}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1){break d}if((d|0)!=(m|0)){continue}break}}g=i[a+64>>2];d=i[g+24>>2];q=q+1|0;if(q>>>0>2]-d>>2>>>0){continue}break}}return}Ho();x()}Ho();x()}za(16720);x()}function yi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;j=F-32|0;F=j;c=i[a+16>>2];i[a+20>>2]=c;a:{if((c|0)!=i[a+24>>2]){i[c>>2]=b;b=c+4|0;i[a+20>>2]=b;e=c;break a}e=ho(4);i[e>>2]=b;b=e+4|0;i[a+24>>2]=b;i[a+20>>2]=b;i[a+16>>2]=e;if(!c){break a}bp(c);b=i[a+20>>2];e=i[a+16>>2]}c=i[a+8>>2];q=i[c+100>>2]-i[c+96>>2]|0;c=(q|0)/12|0;if((b|0)!=(e|0)){t=a+16|0;u=(c|0)>1?c:1;v=a+120|0;m=a+200|0;w=a+72|0;while(1){b:{c:{c=b+ -4|0;b=i[c>>2];if((b|0)==-1){break c}e=i[a+28>>2];d=(b>>>0)/3|0;if(i[e+(d>>>3&268435452)>>2]>>>d&1){break c}h=0;if((q|0)<=0){break b}d:{e:{f:{while(1){g:{i[a+164>>2]=i[a+164>>2]+1;k=(b>>>0)/3|0;n=(b|0)==-1;l=n?-1:k;c=(l>>>3&536870908)+e|0;i[c>>2]=i[c>>2]|1<>2];h:{if((c|0)!=i[a+80>>2]){i[c>>2]=b;i[a+76>>2]=c+4;break h}e=i[w>>2];d=c-e|0;g=d>>2;f=g+1|0;if(f>>>0>=1073741824){break g}p=d>>1;f=g>>>0<536870911?p>>>0>>0?f:p:1073741823;c=0;i:{if(!f){break i}if(f>>>0>=1073741824){break f}c=ho(f<<2)}g=c+(g<<2)|0;i[g>>2]=b;f=c+(f<<2)|0;g=g+4|0;if((d|0)>=1){hp(c,e,d)}i[a+80>>2]=f;i[a+76>>2]=g;i[a+72>>2]=c;if(!e){break h}bp(e)}i[a+320>>2]=b;c=-1;c=(b|0)!=-1?i[i[i[a+12>>2]>>2]+(b<<2)>>2]:c;p=c<<2;g=i[p+i[a+152>>2]>>2];j:{k:{e=i[a+84>>2]+(c>>>3&536870908)|0;d=i[e>>2];c=1<>2]=c|d;if((g|0)!=-1){break k}Ci(m,0);c=-1;if((b|0)==-1){break j}e=b+1|0;b=(e>>>0)%3|0?e:b+ -2|0;if((b|0)==-1){break j}c=i[i[i[a+12>>2]+12>>2]+(b<<2)>>2];break j}l:{m:{n:{if(n){break n}e=-1;c=-1;d=b+1|0;f=(d>>>0)%3|0?d:b+ -2|0;if((f|0)!=-1){c=i[i[i[a+12>>2]+12>>2]+(f<<2)>>2]}d=(b-o(k,3)|0?-1:2)+b|0;if((d|0)!=-1){e=i[i[i[a+12>>2]+12>>2]+(d<<2)>>2]}k=(e|0)==-1;n=k?-1:(e>>>0)/3|0;y=(c>>>0)/3|0;o:{if((f|0)==-1){break o}r=i[i[a+12>>2]+12>>2];f=i[r+(f<<2)>>2];if((f|0)==-1){break o}s=i[a+28>>2];f=(f>>>0)/3|0;if(!(i[s+(f>>>3&268435452)>>2]>>>f&1)){break m}}b=(c|0)==-1;if(!b){oi(a,i[a+164>>2],1,b?-1:y)}p:{if((d|0)==-1){break p}b=i[i[i[a+12>>2]+12>>2]+(d<<2)>>2];if((b|0)==-1){break p}b=(b>>>0)/3|0;if(!(i[i[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1)){break l}}if(k){break n}oi(a,i[a+164>>2],0,n)}Ci(m,7);i[a+20>>2]=i[a+20>>2]+ -4;break b}q:{r:{if((d|0)==-1){break r}d=i[(d<<2)+r>>2];if((d|0)==-1){break r}d=(d>>>0)/3|0;if(!(i[(d>>>3&268435452)+s>>2]>>>d&1)){break q}}if(!k){oi(a,i[a+164>>2],0,n)}Ci(m,3);break j}Ci(m,1);i[a+168>>2]=i[a+168>>2]+1;s:{if((g|0)==-1){break s}d=i[p+i[a+152>>2]>>2];if(i[i[a+140>>2]+(d>>>3&536870908)>>2]>>>d&1){break s}hi(a,b,0)}b=i[a+164>>2];i[j+4>>2]=l;i[j+16>>2]=j+4;pi(j+24|0,v,j+4|0,j+16|0);i[i[j+24>>2]+12>>2]=b;b=i[a+20>>2];i[b+ -4>>2]=e;if((b|0)!=i[a+24>>2]){i[b>>2]=c;i[a+20>>2]=b+4;break b}e=i[t>>2];d=b-e|0;h=d>>2;f=h+1|0;if(f>>>0>=1073741824){break e}l=d>>1;f=h>>>0<536870911?l>>>0>>0?f:l:1073741823;b=0;t:{if(!f){break t}if(f>>>0>=1073741824){break d}b=ho(f<<2)}h=b+(h<<2)|0;i[h>>2]=c;c=b+(f<<2)|0;f=h+4|0;if((d|0)>=1){hp(b,e,d)}i[a+24>>2]=c;i[a+20>>2]=f;i[a+16>>2]=b;if(!e){break b}bp(e);break b}Ci(m,5);c=e}h=h+1|0;if((u|0)==(h|0)){break b}e=i[a+28>>2];b=c;continue}break}Ho();x()}za(11708);x()}Ho();x()}za(11708);x()}i[a+20>>2]=c}b=i[a+20>>2];if((b|0)!=i[a+16>>2]){continue}break}}F=j+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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;i[a+8>>2]=e;g=a+32|0;l=i[g>>2];f=i[a+36>>2]-l>>2;a:{if(f>>>0>>0){Bd(g,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=l+(e<<2)}b:{if(!d){break b}h=1;g=i[b>>2];c:{if((d|0)<=1){f=g;break c}f=g;while(1){l=i[(h<<2)+b>>2];j=(l|0)<(f|0);f=j?l:f;g=j?g:(l|0)>(g|0)?l:g;h=h+1|0;if((h|0)!=(d|0)){continue}break}}i[a+16>>2]=g;i[a+12>>2]=f;d=(g>>31)-((f>>31)+(g>>>0>>0)|0)|0;f=g-f|0;if(!d&f>>>0>2147483646|d>>>0>0){break b}d=f+1|0;i[a+20>>2]=d;f=(d|0)/2|0;i[a+24>>2]=f;i[a+28>>2]=0-f;if(d&1){break b}i[a+24>>2]=f+ -1}d=(e&1073741823)!=(e|0)?-1:e<<2;l=ip(ho(d),0,d);d=i[a+56>>2];s=i[d>>2];d=i[d+4>>2]-s|0;if((d|0)>=5){t=i[a+48>>2];v=i[a+52>>2];u=d>>2;j=u;while(1){q=j;d:{e:{j=j+ -1|0;if(u>>>0>j>>>0){k=o(e,j);d=i[(j<<2)+s>>2];if((d|0)==-1){break e}d=i[i[t+12>>2]+(d<<2)>>2];if((d|0)==-1){break e}h=-1;g=i[v>>2];f=i[t>>2];p=i[g+(i[f+(d<<2)>>2]<<2)>>2];m=d+1|0;m=(m>>>0)%3|0?m:d+ -2|0;if((m|0)!=-1){m=i[f+(m<<2)>>2]}else{m=-1}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)!=-1){h=i[f+(d<<2)>>2]}if((p|0)>=(j|0)){break e}d=i[(m<<2)+g>>2];if((d|0)>=(j|0)){break e}f=i[g+(h<<2)>>2];if((f|0)>=(j|0)){break e}if((e|0)>=1){f=o(e,f);d=o(d,e);h=o(e,p);g=0;while(1){i[(g<<2)+l>>2]=(i[(f+g<<2)+b>>2]+i[(d+g<<2)+b>>2]|0)-i[(g+h<<2)+b>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}}f=i[a+8>>2];if((f|0)<1){break d}d=k<<2;m=d+c|0;r=b+d|0;d=l;h=0;while(1){g=0;f:{if((f|0)<=0){f=i[a+32>>2];break f}while(1){k=g<<2;p=i[k+d>>2];n=i[a+16>>2];g:{if((p|0)>(n|0)){f=i[a+32>>2];i[k+f>>2]=n;break g}f=i[a+32>>2];k=k+f|0;n=i[a+12>>2];if((p|0)<(n|0)){i[k>>2]=n;break g}i[k>>2]=p}g=g+1|0;if((g|0)>2]){continue}break}}g=h<<2;d=g+m|0;g=i[g+r>>2]-i[f+g>>2]|0;i[d>>2]=g;h:{if((g|0)>2]){g=g+i[a+20>>2]|0}else{if((g|0)<=i[a+24>>2]){break h}g=g-i[a+20>>2]|0}i[d>>2]=g}d=f;h=h+1|0;f=i[a+8>>2];if((h|0)<(f|0)){continue}break}break d}Io();x()}f=i[a+8>>2];if((f|0)<1){break d}d=k<<2;m=d+c|0;r=b+d|0;d=(o(q+ -2|0,e)<<2)+b|0;h=0;while(1){g=0;i:{if((f|0)<=0){f=i[a+32>>2];break i}while(1){k=g<<2;p=i[k+d>>2];n=i[a+16>>2];j:{if((p|0)>(n|0)){f=i[a+32>>2];i[k+f>>2]=n;break j}f=i[a+32>>2];k=k+f|0;n=i[a+12>>2];if((p|0)<(n|0)){i[k>>2]=n;break j}i[k>>2]=p}g=g+1|0;if((g|0)>2]){continue}break}}g=h<<2;d=g+m|0;g=i[g+r>>2]-i[f+g>>2]|0;i[d>>2]=g;k:{if((g|0)>2]){g=g+i[a+20>>2]|0}else{if((g|0)<=i[a+24>>2]){break k}g=g-i[a+20>>2]|0}i[d>>2]=g}d=f;h=h+1|0;f=i[a+8>>2];if((h|0)<(f|0)){continue}break}}if((q|0)>2){continue}break}}if((e|0)>=1){ip(l,0,e<<2)}f=i[a+8>>2];if((f|0)>=1){d=l;h=0;while(1){g=0;l:{if((f|0)<=0){f=i[a+32>>2];break l}while(1){e=g<<2;j=i[e+d>>2];q=i[a+16>>2];m:{if((j|0)>(q|0)){f=i[a+32>>2];i[e+f>>2]=q;break m}f=i[a+32>>2];e=e+f|0;q=i[a+12>>2];if((j|0)<(q|0)){i[e>>2]=q;break m}i[e>>2]=j}g=g+1|0;if((g|0)>2]){continue}break}}e=h<<2;d=e+c|0;e=i[b+e>>2]-i[e+f>>2]|0;i[d>>2]=e;n:{if((e|0)>2]){e=e+i[a+20>>2]|0}else{if((e|0)<=i[a+24>>2]){break n}e=e-i[a+20>>2]|0}i[d>>2]=e}d=f;h=h+1|0;f=i[a+8>>2];if((h|0)<(f|0)){continue}break}}bp(l);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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;i[a+8>>2]=e;g=a+32|0;l=i[g>>2];f=i[a+36>>2]-l>>2;a:{if(f>>>0>>0){Bd(g,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=l+(e<<2)}b:{if(!d){break b}l=1;g=i[b>>2];c:{if((d|0)<=1){f=g;break c}f=g;while(1){h=i[(l<<2)+b>>2];n=(h|0)<(f|0);f=n?h:f;g=n?g:(h|0)>(g|0)?h:g;l=l+1|0;if((l|0)!=(d|0)){continue}break}}i[a+16>>2]=g;i[a+12>>2]=f;d=(g>>31)-((f>>31)+(g>>>0>>0)|0)|0;f=g-f|0;if(!d&f>>>0>2147483646|d>>>0>0){break b}d=f+1|0;i[a+20>>2]=d;f=(d|0)/2|0;i[a+24>>2]=f;i[a+28>>2]=0-f;if(d&1){break b}i[a+24>>2]=f+ -1}d=(e&1073741823)!=(e|0)?-1:e<<2;l=ip(ho(d),0,d);d=i[a+56>>2];t=i[d>>2];d=i[d+4>>2]-t|0;if((d|0)>=5){q=i[a+48>>2];v=i[a+52>>2];u=d>>2;h=u;while(1){n=h;d:{e:{h=h+ -1|0;if(u>>>0>h>>>0){k=o(e,h);d=i[(h<<2)+t>>2];if((d|0)==-1|i[i[q>>2]+(d>>>3&536870908)>>2]>>>d&1){break e}d=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break e}g=i[v>>2];f=i[q+28>>2];j=i[g+(i[f+(d<<2)>>2]<<2)>>2];if((j|0)>=(h|0)){break e}m=d+1|0;m=i[g+(i[f+(((m>>>0)%3|0?m:d+ -2|0)<<2)>>2]<<2)>>2];if((m|0)>=(h|0)){break e}d=i[g+(i[f+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(h|0)){break e}if((e|0)>=1){d=o(d,e);f=o(e,m);j=o(e,j);g=0;while(1){i[(g<<2)+l>>2]=(i[(d+g<<2)+b>>2]+i[(f+g<<2)+b>>2]|0)-i[(g+j<<2)+b>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}}f=i[a+8>>2];if((f|0)<1){break d}d=k<<2;r=d+c|0;s=b+d|0;d=l;k=0;while(1){g=0;f:{if((f|0)<=0){f=i[a+32>>2];break f}while(1){j=g<<2;m=i[j+d>>2];p=i[a+16>>2];g:{if((m|0)>(p|0)){f=i[a+32>>2];i[j+f>>2]=p;break g}f=i[a+32>>2];j=j+f|0;p=i[a+12>>2];if((m|0)<(p|0)){i[j>>2]=p;break g}i[j>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}g=k<<2;d=g+r|0;g=i[g+s>>2]-i[f+g>>2]|0;i[d>>2]=g;h:{if((g|0)>2]){g=g+i[a+20>>2]|0}else{if((g|0)<=i[a+24>>2]){break h}g=g-i[a+20>>2]|0}i[d>>2]=g}d=f;k=k+1|0;f=i[a+8>>2];if((k|0)<(f|0)){continue}break}break d}Io();x()}f=i[a+8>>2];if((f|0)<1){break d}d=k<<2;r=d+c|0;s=b+d|0;d=(o(n+ -2|0,e)<<2)+b|0;k=0;while(1){g=0;i:{if((f|0)<=0){f=i[a+32>>2];break i}while(1){j=g<<2;m=i[j+d>>2];p=i[a+16>>2];j:{if((m|0)>(p|0)){f=i[a+32>>2];i[j+f>>2]=p;break j}f=i[a+32>>2];j=j+f|0;p=i[a+12>>2];if((m|0)<(p|0)){i[j>>2]=p;break j}i[j>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}g=k<<2;d=g+r|0;g=i[g+s>>2]-i[f+g>>2]|0;i[d>>2]=g;k:{if((g|0)>2]){g=g+i[a+20>>2]|0}else{if((g|0)<=i[a+24>>2]){break k}g=g-i[a+20>>2]|0}i[d>>2]=g}d=f;k=k+1|0;f=i[a+8>>2];if((k|0)<(f|0)){continue}break}}if((n|0)>2){continue}break}}if((e|0)>=1){ip(l,0,e<<2)}f=i[a+8>>2];if((f|0)>=1){d=l;k=0;while(1){g=0;l:{if((f|0)<=0){f=i[a+32>>2];break l}while(1){e=g<<2;h=i[e+d>>2];n=i[a+16>>2];m:{if((h|0)>(n|0)){f=i[a+32>>2];i[e+f>>2]=n;break m}f=i[a+32>>2];e=e+f|0;n=i[a+12>>2];if((h|0)<(n|0)){i[e>>2]=n;break m}i[e>>2]=h}g=g+1|0;if((g|0)>2]){continue}break}}e=k<<2;d=e+c|0;e=i[b+e>>2]-i[e+f>>2]|0;i[d>>2]=e;n:{if((e|0)>2]){e=e+i[a+20>>2]|0}else{if((e|0)<=i[a+24>>2]){break n}e=e-i[a+20>>2]|0}i[d>>2]=e}d=f;k=k+1|0;f=i[a+8>>2];if((k|0)<(f|0)){continue}break}}bp(l);return 1}function bp(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;a:{if(!a){break a}d=a+ -8|0;b=i[a+ -4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=i[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=i[d+8>>2];b=b>>>3|0;c=i[d+12>>2];if((c|0)==(e|0)){j=19292,k=i[4823]&yp(-2,b),i[j>>2]=k;break b}i[e+12>>2]=c;i[c+8>>2]=e;break b}h=i[d+24>>2];b=i[d+12>>2];c:{if((b|0)!=(d|0)){c=i[d+8>>2];i[c+12>>2]=b;i[b+8>>2]=c;break c}d:{e=d+20|0;c=i[e>>2];if(c){break d}e=d+16|0;c=i[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=i[e>>2];if(c){continue}e=b+16|0;c=i[b+16>>2];if(c){continue}break}i[g>>2]=0}if(!h){break b}e=i[d+28>>2];c=(e<<2)+19596|0;e:{if(i[c>>2]==(d|0)){i[c>>2]=b;if(b){break e}j=19296,k=i[4824]&yp(-2,e),i[j>>2]=k;break b}i[h+(i[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}i[b+24>>2]=h;c=i[d+16>>2];if(c){i[b+16>>2]=c;i[c+24>>2]=b}c=i[d+20>>2];if(!c){break b}i[b+20>>2]=c;i[c+24>>2]=b;break b}b=i[f+4>>2];if((b&3)!=3){break b}i[4825]=a;i[f+4>>2]=b&-2;i[d+4>>2]=a|1;i[a+d>>2]=a;return}if(f>>>0<=d>>>0){break a}b=i[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if((f|0)==i[4829]){i[4829]=d;a=i[4826]+a|0;i[4826]=a;i[d+4>>2]=a|1;if(i[4828]!=(d|0)){break a}i[4825]=0;i[4828]=0;return}if((f|0)==i[4828]){i[4828]=d;a=i[4825]+a|0;i[4825]=a;i[d+4>>2]=a|1;i[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){c=i[f+8>>2];b=b>>>3|0;e=i[f+12>>2];if((c|0)==(e|0)){j=19292,k=i[4823]&yp(-2,b),i[j>>2]=k;break g}i[c+12>>2]=e;i[e+8>>2]=c;break g}h=i[f+24>>2];b=i[f+12>>2];h:{if((f|0)!=(b|0)){c=i[f+8>>2];i[c+12>>2]=b;i[b+8>>2]=c;break h}i:{e=f+20|0;c=i[e>>2];if(c){break i}e=f+16|0;c=i[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=i[e>>2];if(c){continue}e=b+16|0;c=i[b+16>>2];if(c){continue}break}i[g>>2]=0}if(!h){break g}e=i[f+28>>2];c=(e<<2)+19596|0;j:{if((f|0)==i[c>>2]){i[c>>2]=b;if(b){break j}j=19296,k=i[4824]&yp(-2,e),i[j>>2]=k;break g}i[h+((f|0)==i[h+16>>2]?16:20)>>2]=b;if(!b){break g}}i[b+24>>2]=h;c=i[f+16>>2];if(c){i[b+16>>2]=c;i[c+24>>2]=b}c=i[f+20>>2];if(!c){break g}i[b+20>>2]=c;i[c+24>>2]=b}i[d+4>>2]=a|1;i[a+d>>2]=a;if(i[4828]!=(d|0)){break f}i[4825]=a;return}i[f+4>>2]=b&-2;i[d+4>>2]=a|1;i[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+19332|0;c=i[4823];a=1<>2]}i[b+8>>2]=d;i[a+12>>2]=d;i[d+12>>2]=b;i[d+8>>2]=a;return}e=31;i[d+16>>2]=0;i[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}i[d+28>>2]=e;g=(e<<2)+19596|0;l:{m:{c=i[4824];b=1<>2]=d;i[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=i[g>>2];while(1){c=b;if((i[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=(c+(b&4)|0)+16|0;b=i[g>>2];if(b){continue}break}i[g>>2]=d;i[d+24>>2]=c}i[d+12>>2]=d;i[d+8>>2]=d;break l}a=i[c+8>>2];i[a+12>>2]=d;i[c+8>>2]=d;i[d+24>>2]=0;i[d+12>>2]=c;i[d+8>>2]=a}a=i[4831]+ -1|0;i[4831]=a;if(a){break a}d=19748;while(1){a=i[d>>2];d=a+8|0;if(a){continue}break}i[4831]=-1}}function jd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0;e=F-32|0;F=e;a:{b:{if(!i[i[a+8>>2]+80>>2]){d=1;break b}g[e+31|0]=254;k=i[a+36>>2];if(k){if(!(I[i[i[a>>2]+40>>2]](a,k)|0)){break b}d=i[a+36>>2];q=e,s=I[i[i[d>>2]+8>>2]](d)|0,g[q+31|0]=s}d=i[c+20>>2];if((d|0)<0?1:(d|0)<=0?l[c+16>>2]<=0:0){ca(c,i[c+4>>2],e+31|0,e+32|0)}d=i[a+36>>2];c:{if(!d){break c}q=e,s=I[i[i[d>>2]+36>>2]](d)|0,g[q+16|0]=s;d=i[c+20>>2];if((d|0)>0?1:(d|0)>=0?l[c+16>>2]>0:0){break c}ca(c,i[c+4>>2],e+16|0,e+17|0)}d=i[a+32>>2];h=i[d+48>>2];n=i[i[d>>2]>>2];k=i[d+80>>2];m=g[d+24|0];d=0;i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;k=o(k,m);if(k){if(k>>>0>=1073741824){break a}f=k<<2;d=ho(f);i[e+16>>2]=d;p=d+f|0;i[e+24>>2]=p;ip(d,0,f);i[e+20>>2]=p}f=h+n|0;h=i[a+36>>2];d:{e:{if(!h){break e}I[i[i[h>>2]+44>>2]](h,f,d,k,m,i[b>>2])|0;d=i[a+36>>2];if(!d){d=i[e+16>>2];break e}if(I[i[i[d>>2]+32>>2]](d)|0){break d}d=i[e+16>>2];f=i[a+36>>2]?d:f}Nj(f,k,d)}f:{g:{h:{i:{j:{d=i[a+4>>2];if(!d){break j}n=i[d+48>>2];d=ho(48);i[e>>2]=d;i[e+4>>2]=34;i[e+8>>2]=-2147483600;g[d+34|0]=0;f=j[2336]|j[2337]<<8;g[d+32|0]=f;g[d+33|0]=f>>>8;f=j[2332]|j[2333]<<8|(j[2334]<<16|j[2335]<<24);h=j[2328]|j[2329]<<8|(j[2330]<<16|j[2331]<<24);g[d+24|0]=h;g[d+25|0]=h>>>8;g[d+26|0]=h>>>16;g[d+27|0]=h>>>24;g[d+28|0]=f;g[d+29|0]=f>>>8;g[d+30|0]=f>>>16;g[d+31|0]=f>>>24;f=j[2324]|j[2325]<<8|(j[2326]<<16|j[2327]<<24);h=j[2320]|j[2321]<<8|(j[2322]<<16|j[2323]<<24);g[d+16|0]=h;g[d+17|0]=h>>>8;g[d+18|0]=h>>>16;g[d+19|0]=h>>>24;g[d+20|0]=f;g[d+21|0]=f>>>8;g[d+22|0]=f>>>16;g[d+23|0]=f>>>24;f=j[2316]|j[2317]<<8|(j[2318]<<16|j[2319]<<24);h=j[2312]|j[2313]<<8|(j[2314]<<16|j[2315]<<24);g[d+8|0]=h;g[d+9|0]=h>>>8;g[d+10|0]=h>>>16;g[d+11|0]=h>>>24;g[d+12|0]=f;g[d+13|0]=f>>>8;g[d+14|0]=f>>>16;g[d+15|0]=f>>>24;f=j[2308]|j[2309]<<8|(j[2310]<<16|j[2311]<<24);h=j[2304]|j[2305]<<8|(j[2306]<<16|j[2307]<<24);g[d|0]=h;g[d+1|0]=h>>>8;g[d+2|0]=h>>>16;g[d+3|0]=h>>>24;g[d+4|0]=f;g[d+5|0]=f>>>8;g[d+6|0]=f>>>16;g[d+7|0]=f>>>24;d=ck(n,e,1);if(g[e+11|0]<=-1){bp(i[e>>2])}if(d){break j}if(!k){break i}d=0;m=i[e+16>>2];b=0;while(1){b=i[m+(d<<2)>>2]|b;d=d+1|0;if((k|0)!=(d|0)){continue}break}if(!b){break i}b=4-(r(b)>>>3|0)|0;break h}g[e|0]=1;d=i[c+20>>2];if((d|0)<0?1:(d|0)<=0?l[c+16>>2]<=0:0){ca(c,i[c+4>>2],e,e+1|0)}d=Xj(e);k=i[a+4>>2];if(k){jg(d,10-_b(i[k+48>>2])|0)}b=kg(i[e+16>>2],o(m,i[b+4>>2]-i[b>>2]>>2),m,d,c);kd(d,i[d+4>>2]);d=0;if(b){break g}break f}b=1}g[e|0]=0;m=i[c+20>>2];d=m;f=i[c+16>>2];if((d|0)<0?1:(d|0)<=0?f>>>0<=0:0){ca(c,i[c+4>>2],e,e+1|0);f=i[c+16>>2];d=i[c+20>>2]}g[e|0]=b;if((d|0)<0?1:(d|0)<=0?f>>>0<=0:0){ca(c,i[c+4>>2],e,e+1|0)}if((Sj(5)|0)!=(b|0)){if(!k){break g}d=0;while(1){m=i[c+20>>2];if((m|0)<0?1:(m|0)<=0?l[c+16>>2]<=0:0){m=i[e+16>>2]+(d<<2)|0;ca(c,i[c+4>>2],m,b+m|0)}d=d+1|0;if((k|0)!=(d|0)){continue}break}break g}b=i[c+20>>2];if((b|0)>0?1:(b|0)>=0?l[c+16>>2]>0:0){break g}b=i[e+16>>2];ca(c,i[c+4>>2],b,b+(k<<2)|0)}d=1;a=i[a+36>>2];if(!a){break f}I[i[i[a>>2]+40>>2]](a,c)|0}a=i[e+16>>2];if(!a){break b}i[e+20>>2]=a;bp(a)}F=e+32|0;return d|0}Ho();x()}function mg(a,b,c,d,e,f){var h=0,k=0,m=0,n=0;n=F-16|0;F=n;a:{if((d|0)<=0){d=1}else{d=r(d)^31;if(d>>>0>17){break a}d=d+1|0}b:{if(!e){break b}h=ho(48);i[n>>2]=h;i[n+4>>2]=33;i[n+8>>2]=-2147483600;g[h+33|0]=0;g[h+32|0]=j[10857];k=j[10853]|j[10854]<<8|(j[10855]<<16|j[10856]<<24);m=j[10849]|j[10850]<<8|(j[10851]<<16|j[10852]<<24);g[h+24|0]=m;g[h+25|0]=m>>>8;g[h+26|0]=m>>>16;g[h+27|0]=m>>>24;g[h+28|0]=k;g[h+29|0]=k>>>8;g[h+30|0]=k>>>16;g[h+31|0]=k>>>24;k=j[10845]|j[10846]<<8|(j[10847]<<16|j[10848]<<24);m=j[10841]|j[10842]<<8|(j[10843]<<16|j[10844]<<24);g[h+16|0]=m;g[h+17|0]=m>>>8;g[h+18|0]=m>>>16;g[h+19|0]=m>>>24;g[h+20|0]=k;g[h+21|0]=k>>>8;g[h+22|0]=k>>>16;g[h+23|0]=k>>>24;k=j[10837]|j[10838]<<8|(j[10839]<<16|j[10840]<<24);m=j[10833]|j[10834]<<8|(j[10835]<<16|j[10836]<<24);g[h+8|0]=m;g[h+9|0]=m>>>8;g[h+10|0]=m>>>16;g[h+11|0]=m>>>24;g[h+12|0]=k;g[h+13|0]=k>>>8;g[h+14|0]=k>>>16;g[h+15|0]=k>>>24;k=j[10829]|j[10830]<<8|(j[10831]<<16|j[10832]<<24);m=j[10825]|j[10826]<<8|(j[10827]<<16|j[10828]<<24);g[h|0]=m;g[h+1|0]=m>>>8;g[h+2|0]=m>>>16;g[h+3|0]=m>>>24;g[h+4|0]=k;g[h+5|0]=k>>>8;g[h+6|0]=k>>>16;g[h+7|0]=k>>>24;h=Sb(e,n);if(g[n+11|0]<=-1){bp(i[n>>2])}if(!h){break b}h=ho(48);i[n>>2]=h;i[n+4>>2]=33;i[n+8>>2]=-2147483600;g[h+33|0]=0;g[h+32|0]=j[10857];k=j[10853]|j[10854]<<8|(j[10855]<<16|j[10856]<<24);m=j[10849]|j[10850]<<8|(j[10851]<<16|j[10852]<<24);g[h+24|0]=m;g[h+25|0]=m>>>8;g[h+26|0]=m>>>16;g[h+27|0]=m>>>24;g[h+28|0]=k;g[h+29|0]=k>>>8;g[h+30|0]=k>>>16;g[h+31|0]=k>>>24;k=j[10845]|j[10846]<<8|(j[10847]<<16|j[10848]<<24);m=j[10841]|j[10842]<<8|(j[10843]<<16|j[10844]<<24);g[h+16|0]=m;g[h+17|0]=m>>>8;g[h+18|0]=m>>>16;g[h+19|0]=m>>>24;g[h+20|0]=k;g[h+21|0]=k>>>8;g[h+22|0]=k>>>16;g[h+23|0]=k>>>24;k=j[10837]|j[10838]<<8|(j[10839]<<16|j[10840]<<24);m=j[10833]|j[10834]<<8|(j[10835]<<16|j[10836]<<24);g[h+8|0]=m;g[h+9|0]=m>>>8;g[h+10|0]=m>>>16;g[h+11|0]=m>>>24;g[h+12|0]=k;g[h+13|0]=k>>>8;g[h+14|0]=k>>>16;g[h+15|0]=k>>>24;k=j[10829]|j[10830]<<8|(j[10831]<<16|j[10832]<<24);m=j[10825]|j[10826]<<8|(j[10827]<<16|j[10828]<<24);g[h|0]=m;g[h+1|0]=m>>>8;g[h+2|0]=m>>>16;g[h+3|0]=m>>>24;g[h+4|0]=k;g[h+5|0]=k>>>8;g[h+6|0]=k>>>16;g[h+7|0]=k>>>24;e=_j(e,n);if(g[n+11|0]<=-1){bp(i[n>>2])}if((e|0)<=3){d=d+ -2|0;break b}if((e|0)<=5){d=d+ -1|0;break b}if((e|0)>=10){d=d+2|0;break b}d=((e|0)>7)+d|0}d=(d|0)>1?d:1;d=(d|0)<18?d:18;i[n+12>>2]=d;g[n|0]=d;e=i[f+20>>2];if((e|0)<0?1:(e|0)<=0?l[f+16>>2]<=0:0){ca(f,i[f+4>>2],n,n+1|0)}h=0;c:{switch(d|0){case 0:case 1:h=pg(a,b,c,f);break a;case 2:h=qg(a,b,c,f);break a;case 3:h=rg(a,b,c,f);break a;case 4:h=sg(a,b,c,f);break a;case 5:h=tg(a,b,c,f);break a;case 6:h=ug(a,b,c,f);break a;case 7:h=vg(a,b,c,f);break a;case 8:h=wg(a,b,c,f);break a;case 9:h=xg(a,b,c,f);break a;case 10:h=yg(a,b,c,f);break a;case 11:h=zg(a,b,c,f);break a;case 12:h=Ag(a,b,c,f);break a;case 13:h=Bg(a,b,c,f);break a;case 14:h=Cg(a,b,c,f);break a;case 15:h=Dg(a,b,c,f);break a;case 16:h=Eg(a,b,c,f);break a;case 17:h=Fg(a,b,c,f);break a;case 18:break c;default:break a}}h=Gg(a,b,c,f)}F=n+16|0;return h}function Tf(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;k=F-16|0;F=k;h=ho(16);i[k>>2]=h;i[k+4>>2]=15;i[k+8>>2]=-2147483632;g[h+15|0]=0;e=j[10535]|j[10536]<<8|(j[10537]<<16|j[10538]<<24);f=j[10531]|j[10532]<<8|(j[10533]<<16|j[10534]<<24);g[h+7|0]=f;g[h+8|0]=f>>>8;g[h+9|0]=f>>>16;g[h+10|0]=f>>>24;g[h+11|0]=e;g[h+12|0]=e>>>8;g[h+13|0]=e>>>16;g[h+14|0]=e>>>24;e=j[10528]|j[10529]<<8|(j[10530]<<16|j[10531]<<24);f=j[10524]|j[10525]<<8|(j[10526]<<16|j[10527]<<24);g[h|0]=f;g[h+1|0]=f>>>8;g[h+2|0]=f>>>16;g[h+3|0]=f>>>24;g[h+4|0]=e;g[h+5|0]=e>>>8;g[h+6|0]=e>>>16;g[h+7|0]=e>>>24;h=b+4|0;o=$j(h,k,-1);if(g[k+11|0]<=-1){bp(i[k>>2])}p=14012;a:{b:{c:{switch(o+1|0){case 0:if((_b(h)|0)==10){break b}break;case 1:break b;default:break c}}d:{f=i[c+12>>2];l=i[c+8>>2];if((f-l|0)<1){break d}m=b+20|0;while(1){e:{e=i[i[(n<<2)+l>>2]+28>>2];if(e+ -1>>>0>=6){if((e|0)!=9){break e}e=ho(32);i[k>>2]=e;i[k+4>>2]=17;i[k+8>>2]=-2147483616;g[e+17|0]=0;g[e+16|0]=j[10556];f=j[10552]|j[10553]<<8|(j[10554]<<16|j[10555]<<24);l=j[10548]|j[10549]<<8|(j[10550]<<16|j[10551]<<24);g[e+8|0]=l;g[e+9|0]=l>>>8;g[e+10|0]=l>>>16;g[e+11|0]=l>>>24;g[e+12|0]=f;g[e+13|0]=f>>>8;g[e+14|0]=f>>>16;g[e+15|0]=f>>>24;f=j[10544]|j[10545]<<8|(j[10546]<<16|j[10547]<<24);l=j[10540]|j[10541]<<8|(j[10542]<<16|j[10543]<<24);g[e|0]=l;g[e+1|0]=l>>>8;g[e+2|0]=l>>>16;g[e+3|0]=l>>>24;g[e+4|0]=f;g[e+5|0]=f>>>8;g[e+6|0]=f>>>16;g[e+7|0]=f>>>24;f=m;l=i[f>>2];e=h;f:{if(!l){break f}while(1){e=i[l+16>>2]<(n|0);f=e?f:l;l=i[(e<<2)+l>>2];if(l){continue}break}e=h;if((f|0)==(m|0)){break f}e=h;if((n|0)>2]){break f}e=f+20|0;e=Sb(e,k)?e:h}e=$j(e,k,-1);if(g[k+11|0]<=-1){bp(i[k>>2])}if((e|0)<1){break e}l=i[c+8>>2];f=i[c+12>>2]}n=n+1|0;if((n|0)>2){continue}break d}break}if((o|0)!=1){break b}b=ho(32);i[k>>2]=b;i[k+4>>2]=24;i[k+8>>2]=-2147483616;g[b+24|0]=0;c=j[10578]|j[10579]<<8|(j[10580]<<16|j[10581]<<24);d=j[10574]|j[10575]<<8|(j[10576]<<16|j[10577]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[10570]|j[10571]<<8|(j[10572]<<16|j[10573]<<24);d=j[10566]|j[10567]<<8|(j[10568]<<16|j[10569]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[10562]|j[10563]<<8|(j[10564]<<16|j[10565]<<24);d=j[10558]|j[10559]<<8|(j[10560]<<16|j[10561]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;ro(a+4|0,k);if(g[k+11|0]>-1){break a}bp(i[k>>2]);break a}p=13836}m=ho(56);e=m;i[e>>2]=0;i[e+4>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;f=xj(e);i[e>>2]=p;aa(f,c);yj(a,f,h,d);if(!i[a>>2]){if(g[a+15|0]<=-1){bp(i[a+4>>2])}c=i[m+52>>2];i[b+44>>2]=0;i[b+40>>2]=c;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0}I[i[i[m>>2]+4>>2]](f)}F=k+16|0}function Bh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0;e=F-16|0;F=e;f=i[a+48>>2];b=ho(32);i[e>>2]=b;i[e+4>>2]=20;i[e+8>>2]=-2147483616;g[b+20|0]=0;c=j[11024]|j[11025]<<8|(j[11026]<<16|j[11027]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;c=j[11020]|j[11021]<<8|(j[11022]<<16|j[11023]<<24);d=j[11016]|j[11017]<<8|(j[11018]<<16|j[11019]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11012]|j[11013]<<8|(j[11014]<<16|j[11015]<<24);d=j[11008]|j[11009]<<8|(j[11010]<<16|j[11011]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;f=bk(f+24|0,e);if(g[e+11|0]<=-1){bp(i[e>>2])}h=i[a+48>>2];b=ho(32);i[e>>2]=b;i[e+4>>2]=22;i[e+8>>2]=-2147483616;g[b+22|0]=0;c=j[11047]|j[11048]<<8|(j[11049]<<16|j[11050]<<24);d=j[11043]|j[11044]<<8|(j[11045]<<16|j[11046]<<24);g[b+14|0]=d;g[b+15|0]=d>>>8;g[b+16|0]=d>>>16;g[b+17|0]=d>>>24;g[b+18|0]=c;g[b+19|0]=c>>>8;g[b+20|0]=c>>>16;g[b+21|0]=c>>>24;c=j[11041]|j[11042]<<8|(j[11043]<<16|j[11044]<<24);d=j[11037]|j[11038]<<8|(j[11039]<<16|j[11040]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11033]|j[11034]<<8|(j[11035]<<16|j[11036]<<24);d=j[11029]|j[11030]<<8|(j[11031]<<16|j[11032]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;h=bk(h+24|0,e);if(g[e+11|0]<=-1){bp(i[e>>2])}b=i[a+64>>2];i[a+64>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}b=i[a+56>>2];k=i[b+100>>2];m=i[a+48>>2];n=i[b+96>>2];b=ho(32);i[e>>2]=b;i[e+4>>2]=18;i[e+8>>2]=-2147483616;g[b+18|0]=0;c=j[11068]|j[11069]<<8;g[b+16|0]=c;g[b+17|0]=c>>>8;c=j[11064]|j[11065]<<8|(j[11066]<<16|j[11067]<<24);d=j[11060]|j[11061]<<8|(j[11062]<<16|j[11063]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11056]|j[11057]<<8|(j[11058]<<16|j[11059]<<24);d=j[11052]|j[11053]<<8|(j[11054]<<16|j[11055]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;b=(k-n|0)/12|0;c=$j(m,e,-1);if(g[e+11|0]<=-1){bp(i[e>>2])}a:{b:{c:{d:{e:{f:{g:{switch(c+1|0){case 3:break f;case 0:break g;case 1:break e;default:break c}}if(!f){break f}if(b>>>0<1e3|(_b(i[a+48>>2])|0)>4|h^1){break d}}b=i[a+44>>2];g[e|0]=2;c=i[b+20>>2];if((c|0)<0?1:(c|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],e,e+1|0)}b=ho(360);si(b);c=i[a+64>>2];i[a+64>>2]=b;if(!c){break b}I[i[i[c>>2]+4>>2]](c);break c}if(!f){break c}}b=i[a+44>>2];g[e|0]=0;c=i[b+20>>2];if((c|0)<0?1:(c|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],e,e+1|0)}b=ho(296);Mh(b);c=i[a+64>>2];i[a+64>>2]=b;if(!c){break b}I[i[i[c>>2]+4>>2]](c)}b=i[a+64>>2];if(!b){break a}}a=I[i[i[b>>2]+8>>2]](b,a)|0;F=e+16|0;return a|0}F=e+16|0;return 0}function cm(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;i[a+56>>2]=i[a+52>>2];i[a+44>>2]=i[a+40>>2];a:{b:{c:{e=i[a+64>>2];d=i[e+24>>2];if((d|0)!=i[e+28>>2]){n=a+40|0;o=a+52|0;while(1){e=c;j=i[(l<<2)+d>>2];d:{if((j|0)==-1){break d}c=i[a+56>>2];e:{if((c|0)!=i[a+60>>2]){i[c>>2]=e;i[a+56>>2]=c+4;break e}h=i[o>>2];g=c-h|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break c}b=g>>1;d=f>>>0<536870911?b>>>0>>0?d:b:1073741823;c=0;f:{if(!d){break f}if(d>>>0>=1073741824){break a}c=ho(d<<2)}b=c+(f<<2)|0;i[b>>2]=e;d=c+(d<<2)|0;b=b+4|0;if((g|0)>=1){hp(c,h,g)}i[a+60>>2]=d;i[a+56>>2]=b;i[a+52>>2]=c;if(!h){break e}bp(h)}g:{if(!(i[i[a+12>>2]+(l>>>3&536870908)>>2]>>>l&1)){break g}c=j+1|0;c=(c>>>0)%3|0?c:j+ -2|0;if((c|0)==-1|i[i[a>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[a+64>>2]+12>>2]+(c<<2)>>2];if((b|0)==-1){break g}c=b+1|0;d=(c>>>0)%3|0?c:b+ -2|0;if((d|0)==-1){break g}while(1){c=d+1|0;j=d;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1|i[i[a>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[a+64>>2]+12>>2]+(c<<2)>>2];if((b|0)==-1){break g}c=b+1|0;d=(c>>>0)%3|0?c:b+ -2|0;if((d|0)!=-1){continue}break}}i[i[a+28>>2]+(j<<2)>>2]=e;c=i[a+44>>2];h:{if((c|0)!=i[a+48>>2]){i[c>>2]=j;i[a+44>>2]=c+4;break h}h=i[n>>2];g=c-h|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break b}b=g>>1;d=f>>>0<536870911?b>>>0>>0?d:b:1073741823;c=0;i:{if(!d){break i}if(d>>>0>=1073741824){break a}c=ho(d<<2)}b=c+(f<<2)|0;i[b>>2]=j;d=c+(d<<2)|0;b=b+4|0;if((g|0)>=1){hp(c,h,g)}i[a+48>>2]=d;i[a+44>>2]=b;i[a+40>>2]=c;if(!h){break h}bp(h)}c=e+1|0;b=((j>>>0)%3|0?-1:2)+j|0;if((b|0)==-1){break d}b=i[i[i[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break d}d=b+((b>>>0)%3|0?-1:2)|0;if((d|0)==-1|(d|0)==(j|0)){break d}while(1){b=d+1|0;b=(b>>>0)%3|0?b:d+ -2|0;if(i[i[a>>2]+(b>>>3&536870908)>>2]>>>b&1){e=i[a+56>>2];j:{if((e|0)!=i[a+60>>2]){i[e>>2]=c;i[a+56>>2]=e+4;break j}k=i[o>>2];h=e-k|0;g=h>>2;f=g+1|0;if(f>>>0>=1073741824){break c}b=h>>1;f=g>>>0<536870911?b>>>0>>0?f:b:1073741823;e=0;k:{if(!f){break k}if(f>>>0>=1073741824){break a}e=ho(f<<2)}b=e+(g<<2)|0;i[b>>2]=c;f=e+(f<<2)|0;b=b+4|0;if((h|0)>=1){hp(e,k,h)}i[a+60>>2]=f;i[a+56>>2]=b;i[a+52>>2]=e;if(!k){break j}bp(k)}b=c+1|0;e=i[a+44>>2];l:{if((e|0)!=i[a+48>>2]){i[e>>2]=d;i[a+44>>2]=e+4;break l}m=i[n>>2];k=e-m|0;h=k>>2;g=h+1|0;if(g>>>0>=1073741824){break b}f=k>>1;g=h>>>0<536870911?f>>>0>>0?g:f:1073741823;e=0;m:{if(!g){break m}if(g>>>0>=1073741824){break a}e=ho(g<<2)}f=e+(h<<2)|0;i[f>>2]=d;g=e+(g<<2)|0;f=f+4|0;if((k|0)>=1){hp(e,m,k)}i[a+48>>2]=g;i[a+44>>2]=f;i[a+40>>2]=e;if(!m){break l}bp(m)}e=c;c=b}i[i[a+28>>2]+(d<<2)>>2]=e;b=((d>>>0)%3|0?-1:2)+d|0;if((b|0)==-1){break d}b=i[i[i[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break d}d=b+((b>>>0)%3|0?-1:2)|0;if((d|0)==-1){break d}if((d|0)!=(j|0)){continue}break}}e=i[a+64>>2];d=i[e+24>>2];l=l+1|0;if(l>>>0>2]-d>>2>>>0){continue}break}}return}Ho();x()}Ho();x()}za(16720);x()}function hj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(i[i[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=i[a+48>>2];i[a+52>>2]=c;a:{if((c|0)!=i[a+56>>2]){i[c>>2]=b;i[a+52>>2]=c+4;break a}f=ho(4);i[f>>2]=b;e=f+4|0;i[a+56>>2]=e;i[a+52>>2]=e;i[a+48>>2]=f;if(!c){break a}bp(c)}e=i[i[a+4>>2]+28>>2];c=b+1|0;f=(c>>>0)%3|0?c:b+ -2|0;c=i[e+(f<<2)>>2];if((c|0)==-1){return 0}h=(b-o(d,3)|0?-1:2)+b|0;d=i[e+(h<<2)>>2];if((d|0)==-1){return 0}b=i[a+36>>2];e=b+(c>>>3&536870908)|0;g=i[e>>2];j=1<>2]=g|j;Ti(a+8|0,c,f);b=i[a+36>>2]}b=(d>>>3&536870908)+b|0;c=i[b>>2];f=1<>2]=c|f;Ti(a+8|0,d,h)}c=i[a+52>>2];if((c|0)==i[a+48>>2]){return 1}l=a+48|0;m=a+8|0;while(1){c=c+ -4|0;b=i[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}f=i[a+24>>2]+(d>>>3&268435452)|0;e=i[f>>2];d=1<>2]=d|e;f=i[a+4>>2];c=i[i[f+28>>2]+(b<<2)>>2];if((c|0)==-1){return 0}while(1){d=b;d:{b=i[a+36>>2]+(c>>>3&536870908)|0;e=i[b>>2];h=1<>2]+(c<<2)>>2];if((g|0)!=-1){f:{j=g+1|0;g=(j>>>0)%3|0?j:g+ -2|0;if((g|0)==-1|i[i[f>>2]+(g>>>3&536870908)>>2]>>>g&1){break f}f=i[i[i[f+64>>2]+12>>2]+(g<<2)>>2];if((f|0)==-1){break f}i[b>>2]=e|h;Ti(m,c,d);b=f+1|0;if((((b>>>0)%3|0?b:f+ -2|0)|0)==-1){break e}b=-1;f=i[a+4>>2];g:{if((d|0)==-1){break g}c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1|i[i[f>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[f+64>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];j=c>>>5|0;e=i[d+(j<<2)>>2];break d}}i[b>>2]=e|h;Ti(m,c,d)}h:{i:{if((d|0)==-1){break i}f=i[a+4>>2];b=-1;e=d+1|0;e=(e>>>0)%3|0?e:d+ -2|0;c=-1;j:{if((e|0)==-1){break j}c=-1;if(i[i[f>>2]+(e>>>3&536870908)>>2]>>>e&1){break j}c=i[i[i[f+64>>2]+12>>2]+(e<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if(!((d|0)==-1|i[i[f>>2]+(d>>>3&536870908)>>2]>>>d&1)){b=i[i[i[f+64>>2]+12>>2]+(d<<2)>>2]}k=(b|0)==-1;h=k?-1:(b>>>0)/3|0;e=(c>>>0)/3|0;g=(c|0)==-1;if(!g){d=i[a+24>>2];g=g?-1:e;j=g>>>5|0;e=i[d+(j<<2)>>2];g=1<>2];j=h>>>5|0;e=i[d+(j<<2)>>2];if(!(g&e)){break d}}c=i[a+52>>2]+ -4|0;i[a+52>>2]=c;break b}if(k){b=c;break d}if(i[(h>>>3&536870908)+d>>2]>>>h&1){b=c;break d}d=i[a+52>>2];i[d+ -4>>2]=b;if((d|0)!=i[a+56>>2]){i[d>>2]=c;c=d+4|0;break c}k:{b=d;d=i[l>>2];f=b-d|0;h=f>>2;e=h+1|0;if(e>>>0<1073741824){g=f>>1;e=h>>>0<536870911?g>>>0>>0?e:g:1073741823;b=0;l:{if(!e){break l}if(e>>>0>=1073741824){break k}b=ho(e<<2)}h=b+(h<<2)|0;i[h>>2]=c;e=b+(e<<2)|0;c=h+4|0;if((f|0)>=1){hp(b,d,f)}i[a+56>>2]=e;i[a+52>>2]=c;i[a+48>>2]=b;if(!d){break b}bp(d);c=i[a+52>>2];break b}Ho();x()}za(11708);x()}i[(j<<2)+d>>2]=e|g;c=i[i[f+28>>2]+(b<<2)>>2];if((c|0)!=-1){continue}break}return 0}i[a+52>>2]=c}if(i[l>>2]!=(c|0)){continue}break}}return 1}function se(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,l=0,n=0;e=F-48|0;F=e;h=i[b+12>>2];k=i[i[b+4>>2]+48>>2];c=ho(32);i[e+24>>2]=c;i[e+28>>2]=17;i[e+32>>2]=-2147483616;g[c+17|0]=0;g[c+16|0]=j[6044];f=j[6040]|j[6041]<<8|(j[6042]<<16|j[6043]<<24);d=j[6036]|j[6037]<<8|(j[6038]<<16|j[6039]<<24);g[c+8|0]=d;g[c+9|0]=d>>>8;g[c+10|0]=d>>>16;g[c+11|0]=d>>>24;g[c+12|0]=f;g[c+13|0]=f>>>8;g[c+14|0]=f>>>16;g[c+15|0]=f>>>24;f=j[6032]|j[6033]<<8|(j[6034]<<16|j[6035]<<24);d=j[6028]|j[6029]<<8|(j[6030]<<16|j[6031]<<24);g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;g[c+4|0]=f;g[c+5|0]=f>>>8;g[c+6|0]=f>>>16;g[c+7|0]=f>>>24;a:{b:{f=k+16|0;d=i[f>>2];if(!d){break b}c=f;while(1){l=i[d+16>>2]<(h|0);c=l?c:d;d=i[(l<<2)+d>>2];if(d){continue}break}if((c|0)==(f|0)|(h|0)>2]){break b}c=c+20|0;if(!Sb(c,e+24|0)){break b}c=$j(c,e+24|0,-1);break a}c=$j(k,e+24|0,-1)}if(g[e+35|0]<=-1){bp(i[e+24>>2])}i[e+32>>2]=-1;i[e+36>>2]=1065353216;i[e+24>>2]=-1;i[e+28>>2]=-1;i[e+40>>2]=-1;c=-1<>>0>28){break c}i[e+24>>2]=c+1;c=-2<>2]=c^-1;c=-2-c|0;i[e+32>>2]=c;i[e+40>>2]=(c|0)/2;m[e+36>>2]=p(2)/p(c|0)}h=ff(i[b+12>>2],i[b+4>>2]);k=i[b+12>>2];l=i[i[b+4>>2]+48>>2];c=ho(32);i[e+8>>2]=c;i[e+12>>2]=17;i[e+16>>2]=-2147483616;g[c+17|0]=0;g[c+16|0]=j[6184];f=j[6180]|j[6181]<<8|(j[6182]<<16|j[6183]<<24);d=j[6176]|j[6177]<<8|(j[6178]<<16|j[6179]<<24);g[c+8|0]=d;g[c+9|0]=d>>>8;g[c+10|0]=d>>>16;g[c+11|0]=d>>>24;g[c+12|0]=f;g[c+13|0]=f>>>8;g[c+14|0]=f>>>16;g[c+15|0]=f>>>24;f=j[6172]|j[6173]<<8|(j[6174]<<16|j[6175]<<24);d=j[6168]|j[6169]<<8|(j[6170]<<16|j[6171]<<24);g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;g[c+4|0]=f;g[c+5|0]=f>>>8;g[c+6|0]=f>>>16;g[c+7|0]=f>>>24;d:{e:{f=l+16|0;d=i[f>>2];if(!d){break e}c=f;while(1){n=i[d+16>>2]<(k|0);c=n?c:d;d=i[(n<<2)+d>>2];if(d){continue}break}if((c|0)==(f|0)|(k|0)>2]){break e}c=c+20|0;if(!Sb(c,e+8|0)){break e}c=$j(c,e+8|0,h);break d}c=$j(l,e+8|0,h)}if(g[e+19|0]<=-1){bp(i[e+8>>2])}f:{g:{switch(c|0){case 6:c=i[b+4>>2];b=i[b+12>>2];f=i[i[i[c+4>>2]+8>>2]+(b<<2)>>2];h:{if((I[i[i[c>>2]+8>>2]](c)|0)==1){te(e+8|0,c,b,e+24|0);d=i[e+8>>2];if(d){break h}}d=ho(28);i[d+4>>2]=f;b=i[e+28>>2];i[d+8>>2]=i[e+24>>2];i[d+12>>2]=b;b=i[e+36>>2];i[d+16>>2]=i[e+32>>2];i[d+20>>2]=b;i[d+24>>2]=i[e+40>>2];i[d>>2]=9572}i[a>>2]=d;break f;case 0:c=i[b+4>>2];f=i[i[i[c+4>>2]+8>>2]+(i[b+12>>2]<<2)>>2];if((I[i[i[c>>2]+8>>2]](c)|0)==1){I[i[i[c>>2]+8>>2]](c)|0}b=ho(28);i[b+4>>2]=f;c=i[e+28>>2];i[b+8>>2]=i[e+24>>2];i[b+12>>2]=c;c=i[e+36>>2];i[b+16>>2]=i[e+32>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+40>>2];i[b>>2]=9572;i[a>>2]=b;break f;default:break g}}i[a>>2]=0}F=e+48|0}function oj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,k=0,m=0,n=0,p=0;f=F-16|0;F=f;c=i[b+56>>2];m=i[c+100>>2]-i[c+96>>2]|0;d=(m|0)/12|0;Jb(d,i[b+44>>2]);Jb(i[i[b+56>>2]+80>>2],i[b+44>>2]);n=i[b+48>>2];c=ho(32);i[f>>2]=c;i[f+4>>2]=21;i[f+8>>2]=-2147483616;g[c+21|0]=0;e=j[13293]|j[13294]<<8|(j[13295]<<16|j[13296]<<24);k=j[13289]|j[13290]<<8|(j[13291]<<16|j[13292]<<24);g[c+13|0]=k;g[c+14|0]=k>>>8;g[c+15|0]=k>>>16;g[c+16|0]=k>>>24;g[c+17|0]=e;g[c+18|0]=e>>>8;g[c+19|0]=e>>>16;g[c+20|0]=e>>>24;e=j[13288]|j[13289]<<8|(j[13290]<<16|j[13291]<<24);k=j[13284]|j[13285]<<8|(j[13286]<<16|j[13287]<<24);g[c+8|0]=k;g[c+9|0]=k>>>8;g[c+10|0]=k>>>16;g[c+11|0]=k>>>24;g[c+12|0]=e;g[c+13|0]=e>>>8;g[c+14|0]=e>>>16;g[c+15|0]=e>>>24;e=j[13280]|j[13281]<<8|(j[13282]<<16|j[13283]<<24);k=j[13276]|j[13277]<<8|(j[13278]<<16|j[13279]<<24);g[c|0]=k;g[c+1|0]=k>>>8;g[c+2|0]=k>>>16;g[c+3|0]=k>>>24;g[c+4|0]=e;g[c+5|0]=e>>>8;g[c+6|0]=e>>>16;g[c+7|0]=e>>>24;e=ck(n,f,0);if(g[f+11|0]<=-1){bp(i[f>>2])}c=i[b+44>>2];a:{if(e){g[f|0]=0;d=i[c+20>>2];if((d|0)<0?1:(d|0)<=0?l[c+16>>2]<=0:0){ca(c,i[c+4>>2],f,f+1|0)}pj(b);break a}g[f|0]=1;e=i[c+20>>2];if((e|0)<0?1:(e|0)<=0?l[c+16>>2]<=0:0){ca(c,i[c+4>>2],f,f+1|0)}e=i[b+56>>2];c=i[e+80>>2];if(c>>>0<=255){if(!m){break a}p=d>>>0>1?d:1;k=f+1|0;m=0;while(1){c=i[b+44>>2];n=i[e+96>>2]+o(m,12)|0;g[f|0]=i[n>>2];d=i[c+20>>2];e=i[c+16>>2];if((d|0)<0?1:(d|0)<=0?e>>>0<=0:0){ca(c,i[c+4>>2],f,k);c=i[b+44>>2];e=i[c+16>>2];d=i[c+20>>2]}g[f|0]=i[n+4>>2];if((d|0)<0?1:(d|0)<=0?e>>>0<=0:0){ca(c,i[c+4>>2],f,k);c=i[b+44>>2];e=i[c+16>>2];d=i[c+20>>2]}g[f|0]=i[n+8>>2];if((d|0)<0?1:(d|0)<=0?e>>>0<=0:0){ca(c,i[c+4>>2],f,k)}m=m+1|0;if((p|0)==(m|0)){break a}e=i[b+56>>2];continue}}if(c>>>0<=65535){if(!m){break a}p=d>>>0>1?d:1;k=f+2|0;m=0;while(1){c=i[b+44>>2];n=i[e+96>>2]+o(m,12)|0;h[f>>1]=i[n>>2];d=i[c+20>>2];e=i[c+16>>2];if((d|0)<0?1:(d|0)<=0?e>>>0<=0:0){ca(c,i[c+4>>2],f,k);c=i[b+44>>2];e=i[c+16>>2];d=i[c+20>>2]}h[f>>1]=i[n+4>>2];if((d|0)<0?1:(d|0)<=0?e>>>0<=0:0){ca(c,i[c+4>>2],f,k);c=i[b+44>>2];e=i[c+16>>2];d=i[c+20>>2]}h[f>>1]=i[n+8>>2];if((d|0)<0?1:(d|0)<=0?e>>>0<=0:0){ca(c,i[c+4>>2],f,k)}m=m+1|0;if((p|0)==(m|0)){break a}e=i[b+56>>2];continue}}if(c>>>0>=2097152){if(!m){break a}k=d>>>0>1?d:1;c=0;while(1){d=i[b+44>>2];m=i[d+20>>2];if((m|0)<0?1:(m|0)<=0?l[d+16>>2]<=0:0){n=d;m=i[d+4>>2];d=i[e+96>>2]+o(c,12)|0;ca(n,m,d,d+12|0)}c=c+1|0;if((k|0)==(c|0)){break a}e=i[b+56>>2];continue}}if(!m){break a}m=d>>>0>1?d:1;c=0;while(1){d=i[e+96>>2]+o(c,12)|0;Jb(i[d>>2],i[b+44>>2]);Jb(i[d+4>>2],i[b+44>>2]);Jb(i[d+8>>2],i[b+44>>2]);c=c+1|0;if((m|0)==(c|0)){break a}e=i[b+56>>2];continue}}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;F=f+16|0}function zh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){zh(f,d,c);a=d+4|0;continue c}zh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function yh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){yh(f,d,c);a=d+4|0;continue c}yh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function xh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){xh(f,d,c);a=d+4|0;continue c}xh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function wh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){wh(f,d,c);a=d+4|0;continue c}wh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function vh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){vh(f,d,c);a=d+4|0;continue c}vh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function uh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){uh(f,d,c);a=d+4|0;continue c}uh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function th(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){th(f,d,c);a=d+4|0;continue c}th(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function sh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){sh(f,d,c);a=d+4|0;continue c}sh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function rh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){rh(f,d,c);a=d+4|0;continue c}rh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function qh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){qh(f,d,c);a=d+4|0;continue c}qh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function ph(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){ph(f,d,c);a=d+4|0;continue c}ph(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function oh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){oh(f,d,c);a=d+4|0;continue c}oh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function nh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){nh(f,d,c);a=d+4|0;continue c}nh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function mh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){mh(f,d,c);a=d+4|0;continue c}mh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function lh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){lh(f,d,c);a=d+4|0;continue c}lh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function kh(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){kh(f,d,c);a=d+4|0;continue c}kh(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function Hg(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){Hg(f,d,c);a=d+4|0;continue c}Hg(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function Ah(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0;a:{b:while(1){n=b+ -4|0;c:while(1){f=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{a=b-f|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break j;case 4:break k;case 2:break l;case 3:break g;default:break i}}c=i[c>>2];a=i[c>>2];c=i[c+4>>2]-a>>3;d=b+ -4|0;b=i[d>>2];if(c>>>0<=b>>>0){break h}n=c;c=i[f>>2];if(n>>>0<=c>>>0){break h}if(l[a+(b<<3)>>2]>=l[a+(c<<3)>>2]){break a}i[f>>2]=b;i[d>>2]=c;return}Kg(f,f+4|0,f+8|0,b+ -4|0,c);return}Lg(f,f+4|0,f+8|0,f+12|0,b+ -4|0,c);return}if((a|0)<=123){Mg(f,b,c);return}j=((d|0)/2<<2)+f|0;m:{if((a|0)>=3997){a=(d|0)/4<<2;m=Lg(f,a+f|0,j,a+j|0,n,c);break m}m=Ng(f,j,n,c)}a=i[c>>2];h=i[a>>2];g=i[a+4>>2]-h>>3;a=i[f>>2];if(g>>>0<=a>>>0){break e}d=i[j>>2];if(g>>>0<=d>>>0){break e}e=n;k=i[h+(a<<3)>>2];o=i[h+(d<<3)>>2];if(k>>>0>=o>>>0){while(1){e=e+ -4|0;if((e|0)==(f|0)){a=i[n>>2];if(g>>>0<=a>>>0){break e}d=f+4|0;if(k>>>0>2]){break f}if((d|0)==(n|0)){break a}while(1){e=i[d>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){i[d>>2]=a;i[n>>2]=e;d=d+4|0;break f}d=d+4|0;if((n|0)!=(d|0)){continue}break}break a}d=i[e>>2];if(g>>>0<=d>>>0){break e}if(l[h+(d<<3)>>2]>=o>>>0){continue}break}i[f>>2]=d;i[e>>2]=a;m=m+1|0}n:{d=f+4|0;if(d>>>0>=e>>>0){break n}a=i[d>>2];if(g>>>0<=a>>>0){break e}while(1){k=i[j>>2];o=h+(k<<3)|0;while(1){if(g>>>0<=k>>>0){break e}p=i[o>>2];if(l[h+(a<<3)>>2]

>>0){a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break e}break}while(1){e=e+ -4|0;k=i[e>>2];if(g>>>0<=k>>>0){break e}if(l[h+(k<<3)>>2]>=p>>>0){continue}break}if(d>>>0>e>>>0){break n}i[d>>2]=k;i[e>>2]=a;j=(d|0)==(j|0)?e:j;m=m+1|0;a=i[d+4>>2];d=d+4|0;if(g>>>0>a>>>0){continue}break}break e}o:{if((d|0)==(j|0)){break o}a=i[j>>2];if(g>>>0<=a>>>0){break e}e=i[d>>2];if(g>>>0<=e>>>0){break e}if(l[h+(a<<3)>>2]>=l[h+(e<<3)>>2]){break o}i[d>>2]=a;i[j>>2]=e;m=m+1|0}if(!m){e=Og(f,d,c);a=d+4|0;if(Og(a,b,c)){b=d;a=f;if(!e){continue b}break a}if(e){continue c}}if((d-f|0)<(b-d|0)){Ah(f,d,c);a=d+4|0;continue c}Ah(d+4|0,b,c);b=d;a=f;continue b}Io();x()}Ng(f,f+4|0,b+ -4|0,c);break a}if((d|0)==(n|0)){break a}a=n;e=i[f>>2];if(g>>>0<=e>>>0){break e}while(1){j=h+(e<<3)|0;while(1){m=i[d>>2];if(g>>>0<=m>>>0){break e}k=i[j>>2];if(k>>>0>=l[h+(m<<3)>>2]){d=d+4|0;if(g>>>0>e>>>0){continue}break e}break}while(1){a=a+ -4|0;e=i[a>>2];if(g>>>0<=e>>>0){break e}if(k>>>0>2]){continue}break}if(d>>>0>=a>>>0){f=d;continue d}i[d>>2]=e;i[a>>2]=m;d=d+4|0;e=i[f>>2];if(g>>>0>e>>>0){continue}break}}break}break}break}Io();x()}}function Ll(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0;e=F-48|0;F=e;a:{if(!b){break a}w=a+12|0;g=i[a+4>>2];m=i[a>>2];f=g-m|0;k=f>>2;d=i[a+12>>2];c=i[a+16>>2]-d>>2;b:{if(k>>>0>c>>>0){Ol(w,k-c|0);g=i[a+4>>2];m=i[a>>2];f=g-m|0;k=f>>2;break b}if(k>>>0>=c>>>0){break b}i[a+16>>2]=d+(k<<2)}i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;c:{if(!f){break c}if(k>>>0<1073741824){l=ho(f);i[e+36>>2]=l;i[e+32>>2]=l;i[e+40>>2]=(k<<2)+l;d=l;f=0;while(1){c=i[(f<<2)+m>>2];j=d-l>>2;d:{if(c>>>0>>0){break d}i[e+16>>2]=0;d=c+1|0;if(d>>>0>j>>>0){Gb(e+32|0,d-j|0,e+16|0);m=i[a>>2];g=i[a+4>>2];l=i[e+32>>2];break d}if(d>>>0>=j>>>0){break d}i[e+36>>2]=(d<<2)+l}d=(c<<2)+l|0;i[d>>2]=i[d>>2]+1;f=f+1|0;h=g-m|0;k=h>>2;if(f>>>0>=k>>>0){break c}d=i[e+36>>2];continue}}za(16516);x()}i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;e:{f:{if(h){if(k>>>0>=536870912){break f}n=ho(h<<1);i[e+16>>2]=n;c=k<<3;d=c+n|0;i[e+24>>2]=d;ip(n,255,c);i[e+20>>2]=d}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;c=i[e+36>>2];g=c-l|0;u=g>>2;g:{if(g){if(u>>>0>=1073741824){break g}p=ho(g);i[e>>2]=p;d=(u<<2)+p|0;i[e+8>>2]=d;f=0;j=ip(p,0,g);i[e+4>>2]=d;d=l-c|0;c=((d|0)>(g|0)?d:g)>>>2|0;d=(g|0)>-1?g:-1;d=o(c,(d|0)<1?d:1);c=d>>>0>1?d:1;h=0;while(1){d=h<<2;i[d+j>>2]=f;f=i[d+l>>2]+f|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}if(!k){break e}while(1){y=q<<2;g=i[y+m>>2];r=-1;d=q+1|0;c=(d>>>0)%3|0?d:q+ -2|0;if((c|0)!=-1){r=i[(c<<2)+m>>2]}s=-1;f=(q>>>0)%3|0;c=(f?-1:2)+q|0;if((c|0)!=-1){s=i[(c<<2)+m>>2]}h:{if(!(((g|0)!=(s|0)?!((r|0)==(s|0)|(g|0)==(r|0)):0)|f)){i[a+40>>2]=i[a+40>>2]+1;d=q+3|0;break h}c=s<<2;v=i[c+l>>2];i:{j:{if((v|0)<1){break j}f=i[c+p>>2];h=0;while(1){j=(f<<3)+n|0;c=i[j>>2];if((c|0)==-1){break j}k:{if((c|0)!=(r|0)){break k}t=i[j+4>>2];if((t|0)!=-1){c=i[(t<<2)+m>>2]}else{c=-1}if((c|0)==(g|0)){break k}while(1){l:{c=f;h=h+1|0;if((h|0)>=(v|0)){break l}z=(c<<3)+n|0;f=c+1|0;g=(f<<3)+n|0;j=i[g>>2];i[z>>2]=j;i[z+4>>2]=i[g+4>>2];if((j|0)!=-1){continue}}break}i[(c<<3)+n>>2]=-1;if((t|0)==-1){break j}c=i[w>>2];i[c+y>>2]=t;i[c+(t<<2)>>2]=q;break i}f=f+1|0;h=h+1|0;if((v|0)!=(h|0)){continue}break}}f=r<<2;c=i[f+l>>2];if((c|0)<1){break i}f=i[f+p>>2];h=0;while(1){j=(f<<3)+n|0;if(i[j>>2]==-1){i[j>>2]=s;i[j+4>>2]=q;break i}f=f+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}}q=d;if(d>>>0>>0){continue}break}break e}Ho();x()}Ho();x()}i[b>>2]=u;if(p){i[e+4>>2]=p;bp(p)}a=i[e+16>>2];if(a){i[e+20>>2]=a;bp(a)}a=i[e+32>>2];if(!a){break a}i[e+36>>2]=a;bp(a)}F=e+48|0;return(b|0)!=0}function bj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(i[i[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=i[a+48>>2];i[a+52>>2]=c;a:{if((c|0)!=i[a+56>>2]){i[c>>2]=b;i[a+52>>2]=c+4;break a}e=ho(4);i[e>>2]=b;f=e+4|0;i[a+56>>2]=f;i[a+52>>2]=f;i[a+48>>2]=e;if(!c){break a}bp(c)}e=i[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b+ -2|0;if((f|0)!=-1){c=i[i[e>>2]+(f<<2)>>2]}h=(b-o(d,3)|0?-1:2)+b|0;if((h|0)==-1){return 0}if((c|0)==-1){return 0}d=i[i[e>>2]+(h<<2)>>2];if((d|0)==-1){return 0}b=i[a+36>>2];e=b+(c>>>3&536870908)|0;g=i[e>>2];j=1<>2]=g|j;Ti(a+8|0,c,f);b=i[a+36>>2]}b=(d>>>3&536870908)+b|0;c=i[b>>2];e=1<>2]=c|e;Ti(a+8|0,d,h)}d=i[a+52>>2];if((d|0)==i[a+48>>2]){return 1}k=a+48|0;l=a+8|0;while(1){d=d+ -4|0;b=i[d>>2];c=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=i[a+24>>2]+(c>>>3&268435452)|0;f=i[e>>2];c=1<>2]=c|f;while(1){h=i[a+4>>2];c=i[i[h>>2]+(b<<2)>>2];if((c|0)==-1){return 0}d:{d=i[a+36>>2]+(c>>>3&536870908)|0;e=i[d>>2];f=1<>2]+(c<<2)>>2];if((g|0)!=-1){j=g+1|0;g=(j>>>0)%3|0?j:g+ -2|0;if((g|0)!=-1){h=i[i[h+12>>2]+(g<<2)>>2];if((h|0)!=-1){i[d>>2]=e|f;Ti(l,c,b);c=h+1|0;if((((c>>>0)%3|0?c:h+ -2|0)|0)==-1){break e}d=b+ -2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=i[i[i[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];j=c>>>5|0;f=i[e+(j<<2)>>2];break d}}}i[d>>2]=e|f;Ti(l,c,b)}d=-1;e=i[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b+ -2|0;if((f|0)!=-1){c=i[i[e+12>>2]+(f<<2)>>2]}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)!=-1){d=i[i[e+12>>2]+(b<<2)>>2]}b=(d|0)==-1;h=b?-1:(d>>>0)/3|0;f=(c>>>0)/3|0;f:{g=(c|0)==-1;if(!g){e=i[a+24>>2];g=g?-1:f;j=g>>>5|0;f=i[e+(j<<2)>>2];g=1<>2];j=h>>>5|0;f=i[e+(j<<2)>>2];if(!(g&f)){break d}}d=i[a+52>>2]+ -4|0;i[a+52>>2]=d;break b}if(b){b=c;break d}if(i[(h>>>3&536870908)+e>>2]>>>h&1){b=c;break d}b=i[a+52>>2];i[b+ -4>>2]=d;if((b|0)!=i[a+56>>2]){i[b>>2]=c;d=b+4|0;break c}g:{e=i[k>>2];f=b-e|0;h=f>>2;d=h+1|0;if(d>>>0<1073741824){g=f>>1;d=h>>>0<536870911?g>>>0>>0?d:g:1073741823;b=0;h:{if(!d){break h}if(d>>>0>=1073741824){break g}b=ho(d<<2)}h=b+(h<<2)|0;i[h>>2]=c;c=b+(d<<2)|0;d=h+4|0;if((f|0)>=1){hp(b,e,f)}i[a+56>>2]=c;i[a+52>>2]=d;i[a+48>>2]=b;if(!e){break b}bp(e);d=i[a+52>>2];break b}Ho();x()}za(11708);x()}i[(j<<2)+e>>2]=f|g;if((b|0)!=-1){continue}break}return 0}i[a+52>>2]=d}if(i[k>>2]!=(d|0)){continue}break}}return 1}function Bj(a){var b=0,c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;f=F+ -64|0;F=f;s=a+32|0;b=i[a+12>>2]-i[a+8>>2]>>2;e=i[a+32>>2];d=i[a+36>>2]-e>>2;a:{if(b>>>0>d>>>0){Bd(s,b-d|0);b=i[a+12>>2]-i[a+8>>2]>>2;break a}if(b>>>0>=d>>>0){break a}i[a+36>>2]=e+(b<<2)}g[f+32|0]=0;q=Cj(f+48|0,b,f+32|0);b=i[a+8>>2];c=i[a+12>>2];while(1){b:{c:{if(k>>>0>2>>>0){j=0;h=0;e=0;if((b|0)==(c|0)){break c}while(1){n=1<>>5<<2;d:{if(n&i[r+i[q>>2]>>2]){break d}d=0;p=1;m=e<<2;c=i[m+b>>2];h=i[c+4>>2];if((h|0)!=i[c+8>>2]){while(1){b=0;h=i[(d<<2)+h>>2];e:{if((I[i[i[c>>2]+24>>2]](c,h)|0)<1){break e}while(1){f:{c=i[m+i[a+8>>2]>>2];c=I[i[i[c>>2]+28>>2]](c,h,b)|0;if((c|0)==(e|0)){break f}c=i[i[a+20>>2]+(c<<2)>>2];if(i[i[q>>2]+(c>>>3&536870908)>>2]>>>c&1){break f}p=0;break e}b=b+1|0;c=i[m+i[a+8>>2]>>2];if((b|0)<(I[i[i[c>>2]+24>>2]](c,h)|0)){continue}break}}b=i[a+8>>2];c=i[m+b>>2];h=i[c+4>>2];d=d+1|0;if(d>>>0>2]-h>>2>>>0){continue}break}if(!p){break d}}i[i[s>>2]+(k<<2)>>2]=e;d=r+i[q>>2]|0;i[d>>2]=n|i[d>>2];j=1;k=k+1|0}e=e+1|0;c=i[a+12>>2];h=c-b>>2;if(e>>>0>>0){continue}break}break c}i[f+40>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;b=i[a+4>>2];d=i[b+12>>2];b=i[b+8>>2];g[f+15|0]=0;h=Cj(f+16|0,d-b>>2,f+15|0);c=i[a+8>>2];d=i[a+12>>2];g:{if((c|0)==(d|0)){l=1;break g}while(1){h:{k=i[i[s>>2]+(t<<2)>>2]<<2;b=i[k+c>>2];e=i[b+8>>2];j=i[b+4>>2];b=e-j|0;if((b|0)<8){break h}c=b>>2;l=i[f+32>>2];d=i[f+36>>2]-l>>2;i:{if(c>>>0>d>>>0){Bd(f+32|0,c-d|0);break i}if(c>>>0>=d>>>0){break i}i[f+36>>2]=l+(c<<2)}d=j-e|0;b=o(((d|0)>(b|0)?d:b)>>>2|0,(b|0)<1?b:1);r=(b|0)>1?b:1;j=0;while(1){j:{if((j|0)<(c|0)){e=i[h>>2];d=0;l=0;while(1){u=1<>>5<<2;k:{if(u&i[n+e>>2]){break k}b=0;e=i[k+i[a+8>>2]>>2];m=i[i[e+4>>2]+(d<<2)>>2];if((I[i[i[e>>2]+24>>2]](e,m)|0)>0){while(1){e=i[k+i[a+8>>2]>>2];p=I[i[i[e>>2]+28>>2]](e,m,b)|0;e=i[h>>2];if(!(i[e+(p>>>3&536870908)>>2]>>>p&1)){break k}b=b+1|0;e=i[k+i[a+8>>2]>>2];if((b|0)<(I[i[i[e>>2]+24>>2]](e,m)|0)){continue}break}}i[i[f+32>>2]+(j<<2)>>2]=d;e=i[h>>2];b=n+e|0;i[b>>2]=u|i[b>>2];l=1;j=j+1|0}d=d+1|0;if((r|0)!=(d|0)){continue}break}break j}Dj(i[k+i[a+8>>2]>>2],f+32|0);c=i[a+8>>2];d=i[a+12>>2];break h}if(!(l^1)|(j|0)>=(c|0)){continue}break}l=0;break g}l=1;t=t+1|0;if(t>>>0>2>>>0){continue}break}}a=i[h>>2];if(a){bp(a)}a=i[f+32>>2];if(!a){break b}i[f+36>>2]=a;bp(a);break b}if(j&1|k>>>0>=h>>>0){continue}}break}a=i[q>>2];if(a){bp(a)}F=f- -64|0;return l}function Ma(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=F-96|0;F=e;i[e+72>>2]=0;i[e+76>>2]=0;i[e+64>>2]=0;i[e+68>>2]=0;i[e+80>>2]=1065353216;c=i[a+80>>2];i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;h=ho(c);i[e+32>>2]=h;d=c+h|0;i[e+40>>2]=d;ip(h,0,c);i[e+36>>2]=d;while(1){c=b;l=i[c+48>>2];d=i[i[c>>2]>>2];u=p;l=up(i[c+40>>2],i[c+44>>2],p,0)+l|0;c=d+l|0;l=j[c+12|0]|j[c+13|0]<<8|(j[c+14|0]<<16|j[c+15|0]<<24);q=j[c+8|0]|j[c+9|0]<<8|(j[c+10|0]<<16|j[c+11|0]<<24);i[e+56>>2]=q;i[e+60>>2]=l;d=j[c+4|0]|j[c+5|0]<<8|(j[c+6|0]<<16|j[c+7|0]<<24);l=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[e+48>>2]=l;i[e+52>>2]=d;s=i[e+52>>2];t=i[e+60>>2];c:{d:{e:{if(!m){break e}d=i[e+64>>2];r=(((l^318)+239^s)+239^q)+239^t;c=r&m+ -1;v=xp(m)>>>0>1;f:{if(!v){break f}c=r;if(c>>>0>>0){break f}c=(r>>>0)%(m>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}w=m+ -1|0;while(1){k=i[d+4>>2];g:{if((r|0)!=(k|0)){h:{if(!v){k=k&w;break h}if(k>>>0>>0){break h}k=(k>>>0)%(m>>>0)|0}if((c|0)==(k|0)){break g}break e}if(i[d+8>>2]!=(l|0)|i[d+12>>2]!=(s|0)|i[d+16>>2]!=(q|0)){break g}if(i[d+20>>2]==(t|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+24>>2]=n;i[e+20>>2]=t;i[e+16>>2]=q;i[e+12>>2]=s;i[e+8>>2]=l;_a(e+88|0,e- -64|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,n)|0,e+48|0,c);h=i[e+32>>2];i[h+(u<<2)>>2]=n;n=n+1|0;break c}i[(u<<2)+h>>2]=i[d+24>>2]}c=f;f=p+1|0;if(f>>>0<1){c=c+1|0}p=f;f=c;d=i[a+80>>2];if(!c&p>>>0>>0|c>>>0<0){m=i[e+68>>2];continue}break}if((d|0)!=(n|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+h>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}h=i[e+32>>2];if(!d){break i}b=i[a+68>>2];k=0;while(1){c=k<<2;i[c+b>>2]=i[c+h>>2];k=k+1|0;if((k|0)!=(d|0)){continue}break}}i[a+80>>2]=n}if(!h){break b}i[e+36>>2]=h;bp(h)}d=i[e+72>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+64>>2];i[e+64>>2]=0;if(a){bp(a)}F=e+96|0;return n}Ho();x()}function jh(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*1048576+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==1048576){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;Ah(g,p,k+24|0);g:{if((n|0)<1048576){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)- -1048576;f=0;break g}c=n+ -1048576|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=1048576/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==1048576){n=1048576;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=1048576){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*9.5367431640625e-7)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function ih(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*1048576+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==1048576){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;zh(g,p,k+24|0);g:{if((n|0)<1048576){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)- -1048576;f=0;break g}c=n+ -1048576|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=1048576/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==1048576){n=1048576;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=1048576){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*9.5367431640625e-7)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function hh(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*1048576+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==1048576){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;yh(g,p,k+24|0);g:{if((n|0)<1048576){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)- -1048576;f=0;break g}c=n+ -1048576|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=1048576/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==1048576){n=1048576;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=1048576){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*9.5367431640625e-7)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function gh(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*1048576+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==1048576){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;xh(g,p,k+24|0);g:{if((n|0)<1048576){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)- -1048576;f=0;break g}c=n+ -1048576|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=1048576/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==1048576){n=1048576;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=1048576){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*9.5367431640625e-7)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function eh(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*1048576+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==1048576){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;wh(g,p,k+24|0);g:{if((n|0)<1048576){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)- -1048576;f=0;break g}c=n+ -1048576|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=1048576/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==1048576){n=1048576;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=1048576){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*9.5367431640625e-7)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function vm(a,b){var c=0,d=0,e=0,f=0,h=0,k=0;a:{b:{d=b;h=i[b>>2];if(h){c=i[b+4>>2];if(!c){break b}while(1){d=c;c=i[c>>2];if(c){continue}break}}h=i[d+4>>2];if(h){break b}h=0;e=1;break a}i[h+8>>2]=i[d+8>>2];e=0}f=i[d+8>>2];c=i[f>>2];c:{if((d|0)==(c|0)){i[f>>2]=h;if((a|0)==(d|0)){c=0;a=h;break c}c=i[f+4>>2];break c}i[f+4>>2]=h}d:{e:{f:{k=!j[d+12|0];if((b|0)!=(d|0)){f=i[b+8>>2];i[d+8>>2]=f;i[f+((i[i[b+8>>2]>>2]!=(b|0))<<2)>>2]=d;f=i[b>>2];i[d>>2]=f;i[f+8>>2]=d;f=i[b+4>>2];i[d+4>>2]=f;if(f){i[f+8>>2]=d}g[d+12|0]=j[b+12|0];a=(a|0)==(b|0)?d:a}if(!(k|!a)){if(e){while(1){b=j[c+12|0];g:{e=i[c+8>>2];if(i[e>>2]!=(c|0)){if(!b){g[c+12|0]=1;g[e+12|0]=0;d=i[e+4>>2];b=i[d>>2];i[e+4>>2]=b;if(b){i[b+8>>2]=e}i[d+8>>2]=i[e+8>>2];b=i[e+8>>2];i[(((e|0)!=i[b>>2])<<2)+b>>2]=d;i[d>>2]=e;i[e+8>>2]=d;b=i[c>>2];a=(b|0)==(a|0)?c:a;c=i[b+4>>2]}d=i[c>>2];if(!(j[d+12|0]?0:d)){b=i[c+4>>2];if(j[b+12|0]?0:b){break f}g[c+12|0]=0;c=i[c+8>>2];h:{if((c|0)==(a|0)){c=a;break h}if(j[c+12|0]){break g}}g[c+12|0]=1;return}b=i[c+4>>2];if(b){break f}break e}i:{if(b){b=c;break i}g[c+12|0]=1;g[e+12|0]=0;b=i[c+4>>2];i[e>>2]=b;if(b){i[b+8>>2]=e}i[c+8>>2]=i[e+8>>2];d=i[e+8>>2];j:{if((e|0)==i[d>>2]){i[d>>2]=c;b=i[e>>2];break j}i[d+4>>2]=c}i[c+4>>2]=e;i[e+8>>2]=c;a=(a|0)==(e|0)?c:a}d=i[b>>2];k:{if(!(!d|j[d+12|0])){c=b;break k}c=i[b+4>>2];if(!(j[c+12|0]?0:c)){g[b+12|0]=0;c=i[b+8>>2];if(j[c+12|0]?(c|0)!=(a|0):0){break g}g[c+12|0]=1;return}if(d){if(!j[d+12|0]){c=b;break k}c=i[b+4>>2]}g[c+12|0]=1;g[b+12|0]=0;a=i[c>>2];i[b+4>>2]=a;if(a){i[a+8>>2]=b}i[c+8>>2]=i[b+8>>2];a=i[b+8>>2];i[((i[a>>2]!=(b|0))<<2)+a>>2]=c;i[c>>2]=b;i[b+8>>2]=c;d=b}a=c;c=i[c+8>>2];g[a+12|0]=j[c+12|0];g[c+12|0]=1;g[d+12|0]=1;b=i[c>>2];a=i[b+4>>2];i[c>>2]=a;if(a){i[a+8>>2]=c}i[b+8>>2]=i[c+8>>2];a=i[c+8>>2];i[(((c|0)!=i[a>>2])<<2)+a>>2]=b;i[b+4>>2]=c;i[c+8>>2]=b;return}b=i[c+8>>2];c=i[((i[b>>2]==(c|0))<<2)+b>>2];continue}}g[h+12|0]=1}return}if(j[b+12|0]){break e}d=c;break d}g[d+12|0]=1;g[c+12|0]=0;a=i[d+4>>2];i[c>>2]=a;if(a){i[a+8>>2]=c}i[d+8>>2]=i[c+8>>2];a=i[c+8>>2];i[((i[a>>2]!=(c|0))<<2)+a>>2]=d;i[d+4>>2]=c;i[c+8>>2]=d;b=c}c=i[d+8>>2];g[d+12|0]=j[c+12|0];g[c+12|0]=1;g[b+12|0]=1;b=i[c+4>>2];a=i[b>>2];i[c+4>>2]=a;if(a){i[a+8>>2]=c}i[b+8>>2]=i[c+8>>2];a=i[c+8>>2];i[(((c|0)!=i[a>>2])<<2)+a>>2]=b;i[b>>2]=c;i[c+8>>2]=b}function ch(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*524288+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==524288){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;vh(g,p,k+24|0);g:{if((n|0)<524288){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+524288;f=0;break g}c=n+ -524288|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=524288/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==524288){n=524288;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=524288){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*19073486328125e-19)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function ah(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*262144+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==262144){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;uh(g,p,k+24|0);g:{if((n|0)<262144){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+262144;f=0;break g}c=n+ -262144|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=262144/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==262144){n=262144;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=262144){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*3814697265625e-18)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Nl(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=F-48|0;F=k;i[a+36>>2]=b;p=a+24|0;d=i[a+24>>2];c=i[a+28>>2]-d>>2;a:{if(c>>>0>>0){Ol(p,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+28>>2]=d+(b<<2)}g[k+16|0]=0;l=Cj(k+32|0,b,k+16|0);c=i[a>>2];d=i[a+4>>2];g[k+8|0]=0;q=Cj(k+16|0,d-c>>2,k+8|0);b:{h=i[a+4>>2];c=i[a>>2];if(h-c>>2>>>0<3){break b}t=a+48|0;while(1){m=o(r,3);e=i[(m<<2)+c>>2];d=m+1|0;c:{d:{if((d|0)==-1){j=0;f=-1;break d}f=i[(d<<2)+c>>2];j=m+2|0;d=-1;if((j|0)==-1){break c}}d=i[(j<<2)+c>>2]}e:{if(!((d|0)==(f|0)|(e|0)==(f|0)|(d|0)==(e|0))){j=i[q>>2];n=0;while(1){d=m+n|0;f:{if(i[(d>>>3&536870908)+j>>2]>>>d&1){break f}h=i[i[a>>2]+(d<<2)>>2];i[k+8>>2]=h;c=1<>2];f=h>>>5|0;j=i[e+(f<<2)>>2];s=c&j;if(s){Pl(p,16512);Pl(t,k+8|0);c=i[l+4>>2];f=i[l+8>>2];if((c|0)==f<<5){if((c+1|0)<=-1){break e}e=l;if(c>>>0<=1073741822){h=c+32&-32;c=f<<6;c=c>>>0>>0?h:c}else{c=2147483647}bd(e,c);c=i[l+4>>2]}i[l+4>>2]=c+1;e=i[l>>2];f=e+(c>>>3&536870908)|0;h=i[f>>2];u=f,v=yp(-2,c)&h,i[u>>2]=v;i[k+8>>2]=b;c=1<>>5|0;j=i[(f<<2)+e>>2];b=b+1|0}i[(f<<2)+e>>2]=c|j;j=i[q>>2];c=d;g:{while(1){if((c|0)==-1){break g}e=(c>>>3&536870908)+j|0;i[e>>2]=i[e>>2]|1<>2];i[i[p>>2]+(e<<2)>>2]=c;if(s){i[i[a>>2]+(c<<2)>>2]=e}h=d;f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;e=-1;h:{if((c|0)==-1){break h}f=i[i[a+12>>2]+(c<<2)>>2];e=-1;if((f|0)==-1){break h}c=f+1|0;e=(c>>>0)%3|0?c:f+ -2|0}c=e;if((h|0)!=(c|0)){continue}break}if((d|0)!=-1){break f}}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1){break f}d=i[i[a+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}c=d+((d>>>0)%3|0?-1:2)|0;if((c|0)==-1){break f}while(1){d=(c>>>3&536870908)+j|0;i[d>>2]=i[d>>2]|1<>2]+(c<<2)>>2]=i[k+8>>2]}d=((c>>>0)%3|0?-1:2)+c|0;if((d|0)==-1){break f}d=i[i[a+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}c=d+((d>>>0)%3|0?-1:2)|0;if((c|0)!=-1){continue}break}}n=n+1|0;if((n|0)!=3){continue}break}c=i[a>>2];h=i[a+4>>2]}r=r+1|0;if(r>>>0<(h-c>>2>>>0)/3>>>0){continue}break b}break}Ho();x()}j=0;i[a+44>>2]=0;b=i[l>>2];c=i[l+4>>2];d=c>>>5|0;f=c&31;if(d|f){h=(d<<2)+b|0;c=0;e=b;while(1){if(!(i[e>>2]>>>c&1)){j=j+1|0;i[a+44>>2]=j}d=(c|0)==31;c=d?0:c+1|0;e=d?e+4|0:e;if((h|0)!=(e|0)|(c|0)!=(f|0)){continue}break}}a=i[q>>2];if(a){bp(a);b=i[l>>2]}if(b){bp(b)}F=k+48|0}function _g(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*65536+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==65536){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;th(g,p,k+24|0);g:{if((n|0)<65536){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+65536;f=0;break g}c=n+ -65536|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=65536/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==65536){n=65536;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=65536){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*152587890625e-16)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Yg(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*32768+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==32768){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;sh(g,p,k+24|0);g:{if((n|0)<32768){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+32768;f=0;break g}c=n+ -32768|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=32768/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==32768){n=32768;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=32768){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*30517578125e-15)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Wg(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*8192+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==8192){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;rh(g,p,k+24|0);g:{if((n|0)<8192){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)- -8192;f=0;break g}c=n+ -8192|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=8192/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==8192){n=8192;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=8192){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*.0001220703125)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function ng(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*4096+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==4096){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;Hg(g,p,k+24|0);g:{if((n|0)<4096){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+4096;f=0;break g}c=n+ -4096|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=4096/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==4096){n=4096;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=4096){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*.000244140625)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Vg(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*4096+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==4096){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;qh(g,p,k+24|0);g:{if((n|0)<4096){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+4096;f=0;break g}c=n+ -4096|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=4096/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==4096){n=4096;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=4096){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*.000244140625)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Ug(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*4096+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==4096){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;ph(g,p,k+24|0);g:{if((n|0)<4096){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+4096;f=0;break g}c=n+ -4096|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=4096/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==4096){n=4096;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=4096){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*.000244140625)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Tg(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*4096+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==4096){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;oh(g,p,k+24|0);g:{if((n|0)<4096){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+4096;f=0;break g}c=n+ -4096|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=4096/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==4096){n=4096;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=4096){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*.000244140625)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Sg(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*4096+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==4096){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;nh(g,p,k+24|0);g:{if((n|0)<4096){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+4096;f=0;break g}c=n+ -4096|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=4096/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==4096){n=4096;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=4096){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*.000244140625)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Rg(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*4096+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==4096){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;mh(g,p,k+24|0);g:{if((n|0)<4096){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+4096;f=0;break g}c=n+ -4096|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=4096/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==4096){n=4096;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=4096){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*.000244140625)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Qg(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*4096+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==4096){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;lh(g,p,k+24|0);g:{if((n|0)<4096){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+4096;f=0;break g}c=n+ -4096|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=4096/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==4096){n=4096;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=4096){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*.000244140625)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Pg(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,t=0,w=0,y=0,z=0;k=F-32|0;F=k;if((c|0)<=0){j=0}else{while(1){r=h;h=(f<<3)+b|0;l=i[h+4>>2];g=i[h>>2];h=!(l|g)?r:f;e=e+l|0;l=g+m|0;if(l>>>0>>0){e=e+1|0}m=l;f=f+1|0;if((f|0)!=(c|0)){continue}break}j=+(m>>>0)+ +(e>>>0)*4294967296}e=h+1|0;i[a+12>>2]=e;g=i[a>>2];c=i[a+4>>2]-g>>3;a:{if(e>>>0>c>>>0){ig(a,e-c|0);break a}if(e>>>0>=c>>>0){break a}i[a+4>>2]=g+(e<<3)}b:{c:{d:{e:{if((h|0)>=0){g=i[a>>2];f=0;while(1){l=f<<3;m=l+b|0;c=i[m+4>>2];m=i[m>>2];t=(m|0)!=0|(c|0)!=0;l=g+l|0;o=(+(m>>>0)+ +(c>>>0)*4294967296)/j*4096+.5;f:{if(o<4294967296&o>=0){c=~~o>>>0;break f}c=0}c=t?c?c:1:c;i[l>>2]=c;n=c+n|0;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}if((n|0)==4096){break e}}i[k+16>>2]=0;i[k+8>>2]=0;i[k+12>>2]=0;g=0;if(e){if(e>>>0>=1073741824){break b}c=e<<2;g=ho(c);i[k+8>>2]=g;p=c+g|0;i[k+16>>2]=p;ip(g,0,c);i[k+12>>2]=p}if((h|0)>-1){f=0;while(1){i[(f<<2)+g>>2]=f;c=(f|0)==(h|0);f=f+1|0;if(!c){continue}break}}i[k+24>>2]=a;kh(g,p,k+24|0);g:{if((n|0)<4096){c=i[a>>2]+(i[i[k+12>>2]+ -4>>2]<<3)|0;i[c>>2]=(i[c>>2]-n|0)+4096;f=0;break g}c=n+ -4096|0;l=i[k+8>>2];m=(h|0)<1;while(1){h:{if(m){break h}j=4096/+(n|0);p=i[a>>2];g=h;while(1){f=p+(i[(g<<2)+l>>2]<<3)|0;e=i[f>>2];if(e>>>0<=1){if((g|0)!=(h|0)){break h}f=1;break g}t=e+ -1|0;r=f;y=e;z=c;f=e;o=u(j*+(e>>>0));i:{if(q(o)<2147483648){w=~~o;break i}w=-2147483648}f=f-w|0;f=f?f:1;e=(f|0)<(e|0)?f:t;e=(e|0)>(c|0)?z:e;i[r>>2]=y-e;c=c-e|0;n=n-e|0;if((n|0)==4096){n=4096;break h}e=(g|0)>1;g=g+ -1|0;if(e){continue}break}}f=0;if((c|0)>0){continue}break}}c=i[k+8>>2];if(c){i[k+12>>2]=c;bp(c)}if(!((h|0)<0|f)){break d}break c}if((h|0)<0){break c}}e=i[a>>2];f=0;c=0;while(1){g=e+(f<<3)|0;i[g+4>>2]=c;c=i[g>>2]+c|0;g=(f|0)==(h|0);f=f+1|0;if(!g){continue}break}if((c|0)!=4096){break c}f=0;j=0;if((h|0)>=0){c=i[a>>2];while(1){e=f<<3;g=i[e+c>>2];if(g){e=b+e|0;l=i[e+4>>2];e=i[e>>2];j=j+ep(+(g>>>0)*.000244140625)*(+(e>>>0)+ +(l>>>0)*4294967296)}e=(f|0)==(h|0);f=f+1|0;if(!e){continue}break}}b=a;c=a;j=v(-j);j:{if(j<0x10000000000000000&j>=0){e=q(j)>=1?j>0?~~s(u(j*2.3283064365386963e-10),4294967295)>>>0:~~v((j- +(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~j>>>0;break j}e=0;h=0}i[c+16>>2]=h;i[b+20>>2]=e;Ig(a,d)}F=k+32|0;return}Ho();x()}function Ci(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=F-16|0;F=m;i[a+124>>2]=i[a+124>>2]+1;g=-1;d=i[a+120>>2];c=-1;a:{if((d|0)==-1){break a}c=d+1|0;g=(c>>>0)%3|0?c:d+ -2|0;c=d+ -1|0;if((d>>>0)%3|0){break a}c=d+2|0}e=i[a+104>>2];f=i[a+92>>2];h=f+(g<<2)|0;j=e+(i[h>>2]<<2)|0;k=i[j>>2];b:{c:{switch(b|0){case 0:case 1:i[j>>2]=k+ -1;d=(i[(c<<2)+f>>2]<<2)+e|0;i[d>>2]=i[d>>2]+ -1;d=1;if((b|0)!=1){break b}d:{if((c|0)==-1){break d}c=i[i[i[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}while(1){e:{e=i[a+64>>2];if(I[i[i[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=i[i[i[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}}break}e=i[a+104>>2];f=i[a+92>>2]}h=a+104|0;i[(i[(i[a+120>>2]<<2)+f>>2]<<2)+e>>2]=d;f=1;f:{if((g|0)==-1){break f}c=i[i[i[a+88>>2]+12>>2]+(g<<2)>>2];if((c|0)==-1){break f}e=i[a+108>>2]-e>>2;while(1){d=i[a+64>>2];g=(c>>>0)/3|0;if(I[i[i[d>>2]+36>>2]](d,g)|0){break f}d=c+1|0;i[i[a+92>>2]+(((d>>>0)%3|0?d:c+ -2|0)<<2)>>2]=e;c=(c-o(g,3)|0?-1:2)+c|0;if((c|0)==-1){f=f+1|0;break f}f=f+1|0;c=i[i[i[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}break}}i[m+12>>2]=f;Di(h,m+12|0);break b;case 5:d=(i[(d<<2)+f>>2]<<2)+e|0;i[d>>2]=i[d>>2]+ -1;d=(i[h>>2]<<2)+e|0;i[d>>2]=i[d>>2]+ -1;c=(i[(c<<2)+f>>2]<<2)+e|0;i[c>>2]=i[c>>2]+ -2;break b;case 3:d=(i[(d<<2)+f>>2]<<2)+e|0;i[d>>2]=i[d>>2]+ -1;d=(i[h>>2]<<2)+e|0;i[d>>2]=i[d>>2]+ -2;c=(i[(c<<2)+f>>2]<<2)+e|0;i[c>>2]=i[c>>2]+ -1;break b;case 7:break c;default:break b}}d=(i[(d<<2)+f>>2]<<2)+e|0;i[d>>2]=i[d>>2]+ -2;d=(i[h>>2]<<2)+e|0;i[d>>2]=i[d>>2]+ -2;c=(i[(c<<2)+f>>2]<<2)+e|0;i[c>>2]=i[c>>2]+ -2}g:{h:{f=i[a+116>>2];i:{if((f|0)==-1){break i}e=i[a+128>>2];c=e;d=i[a+136>>2];if((k|0)>=(c|0)){c=i[a+132>>2];c=(k|0)>(c|0)?c:k}e=o(c-e|0,12)+d|0;g=e+4|0;k=i[(f<<2)+12080>>2];c=i[e+4>>2];j=i[e+8>>2];if(c>>>0>>0){i[c>>2]=k;i[g>>2]=c+4;break i}f=i[e>>2];h=c-f|0;l=h>>2;d=l+1|0;if(d>>>0>=1073741824){break h}j=j-f|0;c=j>>1;d=j>>2>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;j:{if(!d){break j}if(d>>>0>=1073741824){break g}c=ho(d<<2)}j=e+8|0;l=c+(l<<2)|0;i[l>>2]=k;d=c+(d<<2)|0;k=l+4|0;if((h|0)>=1){hp(c,f,h)}i[e>>2]=c;i[g>>2]=k;i[j>>2]=d;if(!f){break i}bp(f)}i[a+116>>2]=b;F=m+16|0;return}Ho();x()}za(11708);x()}function Ua(a,b){var c=0,d=0,e=0,f=0,h=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;e=F-80|0;F=e;i[e+56>>2]=0;i[e+60>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+64>>2]=1065353216;d=i[a+80>>2];i[e+32>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;a:{b:{if(!d){break b}if(d>>>0>=1073741824){break a}d=d<<2;h=ho(d);i[e+24>>2]=h;f=d+h|0;i[e+32>>2]=f;ip(h,0,d);i[e+28>>2]=f;while(1){d=b;c=i[d+48>>2];f=i[i[d>>2]>>2];t=s;c=up(i[d+40>>2],i[d+44>>2],s,0)+c|0;c=f+c|0;d=j[c+4|0]|j[c+5|0]<<8|(j[c+6|0]<<16|j[c+7|0]<<24);p=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[e+40>>2]=p;i[e+44>>2]=d;c:{d:{e:{if(!m){break e}c=i[e+48>>2];u=d>>>16|0;v=d&65535;w=((d&65535)<<16|p>>>16)&65535;z=p;q=u^(v^(w^((p^318)&65535)+239)+239)+239;f=q&m+ -1;y=xp(m)>>>0>1;f:{if(!y){break f}f=q;if(f>>>0>>0){break f}f=(q>>>0)%(m>>>0)|0}c=i[(f<<2)+c>>2];if(!c){break e}c=i[c>>2];if(!c){break e}A=m+ -1|0;while(1){l=i[c+4>>2];g:{if((q|0)!=(l|0)){h:{if(!y){l=l&A;break h}if(l>>>0>>0){break h}l=(l>>>0)%(m>>>0)|0}if((f|0)==(l|0)){break g}break e}if(k[c+8>>1]!=(z&65535)|k[c+10>>1]!=(w|0)|k[c+12>>1]!=(v|0)){break g}if(k[c+14>>1]==(u|0)){break d}}c=i[c>>2];if(c){continue}break}}i[e+16>>2]=n;i[e+8>>2]=p;i[e+12>>2]=d;wb(e+72|0,e+48|0,e+8|0,e+8|0);d=i[a+40>>2];hp(i[i[a>>2]>>2]+o(d,n)|0,e+40|0,d);h=i[e+24>>2];i[h+(t<<2)>>2]=n;n=n+1|0;break c}i[(t<<2)+h>>2]=i[c+16>>2]}d=r;f=s+1|0;if(f>>>0<1){d=d+1|0}s=f;r=d;c=i[a+80>>2];if(!d&f>>>0>>0|d>>>0<0){m=i[e+52>>2];continue}break}if((c|0)!=(n|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}d=f-b|0;r=(d|0)>-1?d:-1;f=b-f|0;d=o((r|0)<1?r:1,((f|0)>(d|0)?f:d)>>>2|0);d=d>>>0>1?d:1;c=0;while(1){f=b+(c<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+h>>2];c=c+1|0;if((d|0)!=(c|0)){continue}break}break i}g[a+84|0]=0;d=i[a+68>>2];b=i[a+72>>2]-d>>2;j:{if(c>>>0>b>>>0){Xa(a+68|0,c-b|0,1420);c=i[a+80>>2];break j}if(c>>>0>=b>>>0){break j}i[a+72>>2]=d+(c<<2)}h=i[e+24>>2];if(!c){break i}b=i[a+68>>2];l=0;while(1){d=l<<2;i[d+b>>2]=i[d+h>>2];l=l+1|0;if((l|0)!=(c|0)){continue}break}}i[a+80>>2]=n}if(!h){break b}i[e+28>>2]=h;bp(h)}c=i[e+56>>2];if(c){while(1){a=i[c>>2];bp(c);c=a;if(c){continue}break}}a=i[e+48>>2];i[e+48>>2]=0;if(a){bp(a)}F=e+80|0;return n}Ho();x()}function Fh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;g=F-16|0;F=g;b=i[a+64>>2];a:{if(!b){break a}l=I[i[i[b>>2]+32>>2]](b)|0;if(!l){break a}q=(i[l+28>>2]-i[l+24>>2]>>2)-i[l+44>>2]|0;b=i[a+56>>2];d=i[b+8>>2];b:{if((i[b+12>>2]-d|0)<5){break b}i[g+8>>2]=0;i[g>>2]=0;i[g+4>>2]=0;c:{d:{while(1){e:{f:{if(!i[i[(c<<2)+d>>2]+56>>2]){break f}h=I[i[i[a>>2]+56>>2]](a,c)|0;if(!h){break f}if(i[g+8>>2]!=(f|0)){i[f>>2]=h;f=f+4|0;i[g+4>>2]=f;break f}j=i[g>>2];d=f-j|0;f=d>>2;e=f+1|0;if(e>>>0>=1073741824){break e}k=d>>1;e=f>>>0<536870911?k>>>0>>0?e:k:1073741823;b=0;g:{if(!e){break g}if(e>>>0>=1073741824){break d}b=ho(e<<2)}f=b+(f<<2)|0;i[f>>2]=h;e=b+(e<<2)|0;f=f+4|0;if((d|0)>=1){hp(b,j,d)}i[g+8>>2]=e;i[g+4>>2]=f;i[g>>2]=b;if(!j){break f}bp(j)}m=i[a+56>>2];d=i[m+8>>2];c=c+1|0;if((c|0)>2]-d>>2){continue}break c}break}Ho();x()}za(11116);x()}n=i[l+24>>2];c=i[l+28>>2];h:{if((n|0)==(c|0)){k=i[g>>2];break h}b=c-n|0;j=(b|0)>-1?b:-1;c=n-c|0;b=o((j|0)<1?j:1,((c|0)>(b|0)?c:b)>>>2|0);s=b>>>0>1?b:1;k=i[g>>2];b=f-k|0;c=(b|0)>-1?b:-1;d=(c|0)<1?c:1;c=k-f|0;b=o(d,((c|0)>(b|0)?c:b)>>>2|0);t=b>>>0>1?b:1;while(1){e=i[(r<<2)+n>>2];if((e|0)!=-1){i:{if((e|0)<=-1){c=(e>>>0)%3|0;b=-1;break i}b=(e>>>0)/3|0;c=e-o(b,3)|0;b=i[(i[m+96>>2]+o(b,12)|0)+(c<<2)>>2]}p=0;c=e+(c?-1:2)|0;j:{if((c|0)==-1){break j}c=i[i[l+12>>2]+(c<<2)>>2];if((c|0)==-1){break j}j=e;d=c+((c>>>0)%3|0?-1:2)|0;if((d|0)==-1){break j}while(1){c=(d|0)<0?-1:i[(i[m+96>>2]+o((d>>>0)/3|0,12)|0)+((d>>>0)%3<<2)>>2];k:{if((b|0)==(c|0)){c=0;if((f|0)==(k|0)){c=b;break k}l:{while(1){h=i[i[(c<<2)+k>>2]+28>>2];if(i[h+(d<<2)>>2]!=i[h+(j<<2)>>2]){break l}c=c+1|0;if((t|0)!=(c|0)){continue}break}c=b;break k}c=b}p=p+1|0}if((d|0)==(e|0)|(d|0)==-1){break j}b=((d>>>0)%3|0?-1:2)+d|0;if((b|0)==-1){break j}h=i[i[l+12>>2]+(b<<2)>>2];if((h|0)==-1){break j}b=c;j=d;c=h+((h>>>0)%3|0?-1:2)|0;d=c;if((c|0)!=-1){continue}break}}c=1;b=e+1|0;b=(b>>>0)%3|0?b:e+ -2|0;m:{if((b|0)==-1){break m}b=i[i[l+12>>2]+(b<<2)>>2];if((b|0)==-1){break m}c=b+1|0;c=(((c>>>0)%3|0?c:b+ -2|0)|0)==-1}q=(q+p|0)-((c^1)&(p|0)!=0)|0}r=r+1|0;if((s|0)!=(r|0)){continue}break}}if(!k){break b}bp(k)}i[a+52>>2]=q}F=g+16|0}function La(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=F-80|0;F=e;i[e+56>>2]=0;i[e+60>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+64>>2]=1065353216;c=i[a+80>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;h=ho(c);i[e+16>>2]=h;d=c+h|0;i[e+24>>2]=d;ip(h,0,c);i[e+20>>2]=d;while(1){c=b;d=i[c+48>>2];n=i[i[c>>2]>>2];t=p;d=up(i[c+40>>2],i[c+44>>2],p,0)+d|0;c=n+d|0;q=j[c+8|0]|j[c+9|0]<<8|(j[c+10|0]<<16|j[c+11|0]<<24);i[e+40>>2]=q;d=j[c+4|0]|j[c+5|0]<<8|(j[c+6|0]<<16|j[c+7|0]<<24);r=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[e+32>>2]=r;i[e+36>>2]=d;s=i[e+36>>2];c:{d:{e:{if(!l){break e}d=i[e+48>>2];n=((r^318)+239^s)+239^q;c=n&l+ -1;u=xp(l)>>>0>1;f:{if(!u){break f}c=n;if(c>>>0>>0){break f}c=(n>>>0)%(l>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}v=l+ -1|0;while(1){k=i[d+4>>2];g:{if((n|0)!=(k|0)){h:{if(!u){k=k&v;break h}if(k>>>0>>0){break h}k=(k>>>0)%(l>>>0)|0}if((c|0)==(k|0)){break g}break e}if(i[d+8>>2]!=(r|0)|i[d+12>>2]!=(s|0)){break g}if(i[d+16>>2]==(q|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+12>>2]=m;i[e+8>>2]=q;i[e+4>>2]=s;i[e>>2]=r;Za(e+72|0,e+48|0,e,e);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,m)|0,e+32|0,c);h=i[e+16>>2];i[h+(t<<2)>>2]=m;m=m+1|0;break c}i[(t<<2)+h>>2]=i[d+20>>2]}c=f;f=p+1|0;if(f>>>0<1){c=c+1|0}p=f;f=c;d=i[a+80>>2];if(!c&p>>>0>>0|c>>>0<0){l=i[e+52>>2];continue}break}if((d|0)!=(m|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+h>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}h=i[e+16>>2];if(!d){break i}b=i[a+68>>2];k=0;while(1){c=k<<2;i[c+b>>2]=i[c+h>>2];k=k+1|0;if((k|0)!=(d|0)){continue}break}}i[a+80>>2]=m}if(!h){break b}i[e+20>>2]=h;bp(h)}d=i[e+56>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+48>>2];i[e+48>>2]=0;if(a){bp(a)}F=e+80|0;return m}Ho();x()}function rd(a,b,c,d,e){var f=0,g=0,h=0,j=0,k=0;a:{b:{c:{d:{e:{switch(b+ -1|0){case 0:b=ho(60);i[b+4>>2]=c;i[b>>2]=3184;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break d}c=ho(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=hp(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=4380;break a;case 3:b=ho(168);i[b+4>>2]=c;i[b>>2]=3184;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break c}c=ho(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=hp(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=4804;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=0;i[b+92>>2]=0;i[b+96>>2]=0;i[b+100>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;cg(b+112|0);i[b+160>>2]=0;i[b+152>>2]=0;i[b+156>>2]=0;break a;case 4:b=ho(104);i[b+4>>2]=c;i[b>>2]=3184;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break b}c=ho(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=hp(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=e+8|0;d=i[c>>2];f=i[c+4>>2];i[b+84>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=5040;i[b+52>>2]=d;i[b+56>>2]=f;d=i[e+4>>2];i[b+88>>2]=i[e>>2];i[b+92>>2]=d;d=i[c+4>>2];i[b+96>>2]=i[c>>2];i[b+100>>2]=d;break a;case 5:b=ho(144);td(b,c,d,e);break a;default:break e}}i[a>>2]=0;return}Ho();x()}Ho();x()}Ho();x()}i[a>>2]=b}function qd(a,b,c,d,e){var f=0,g=0,h=0,j=0,k=0;a:{b:{c:{d:{e:{switch(b+ -1|0){case 0:b=ho(60);i[b+4>>2]=c;i[b>>2]=3184;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break d}c=ho(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=hp(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=2476;break a;case 3:b=ho(168);i[b+4>>2]=c;i[b>>2]=3184;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break c}c=ho(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=hp(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=3240;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=0;i[b+92>>2]=0;i[b+96>>2]=0;i[b+100>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;cg(b+112|0);i[b+160>>2]=0;i[b+152>>2]=0;i[b+156>>2]=0;break a;case 4:b=ho(104);i[b+4>>2]=c;i[b>>2]=3184;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break b}c=ho(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=hp(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=e+8|0;d=i[c>>2];f=i[c+4>>2];i[b+84>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=3488;i[b+52>>2]=d;i[b+56>>2]=f;d=i[e+4>>2];i[b+88>>2]=i[e>>2];i[b+92>>2]=d;d=i[c+4>>2];i[b+96>>2]=i[c>>2];i[b+100>>2]=d;break a;case 5:b=ho(144);sd(b,c,d,e);break a;default:break e}}i[a>>2]=0;return}Ho();x()}Ho();x()}Ho();x()}i[a>>2]=b}function Qa(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;e=F+ -64|0;F=e;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+48>>2]=1065353216;c=i[a+80>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;h=ho(c);i[e+16>>2]=h;d=c+h|0;i[e+24>>2]=d;ip(h,0,c);i[e+20>>2]=d;while(1){c=b;d=i[c+48>>2];n=i[i[c>>2]>>2];t=q;d=up(i[c+40>>2],i[c+44>>2],q,0)+d|0;c=n+d|0;p=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[e+28>>2]=p;r=p>>>8&255;s=p>>>16&255;c:{d:{e:{if(!l){break e}d=i[e+32>>2];u=p>>>24|0;v=p&255;n=u^(((v^318)+239^r)+239^s)+239;c=n&l+ -1;w=xp(l)>>>0>1;f:{if(!w){break f}c=n;if(c>>>0>>0){break f}c=(n>>>0)%(l>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}y=l+ -1|0;while(1){k=i[d+4>>2];g:{if((n|0)!=(k|0)){h:{if(!w){k=k&y;break h}if(k>>>0>>0){break h}k=(k>>>0)%(l>>>0)|0}if((c|0)==(k|0)){break g}break e}if(j[d+8|0]!=(v|0)|j[d+9|0]!=(r|0)|j[d+10|0]!=(s|0)){break g}if(j[d+11|0]==(u|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+12>>2]=m;i[e+8>>2]=p&-16776961|s<<16|r<<8;kb(e+56|0,e+32|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,m)|0,e+28|0,c);h=i[e+16>>2];i[h+(t<<2)>>2]=m;m=m+1|0;break c}i[(t<<2)+h>>2]=i[d+12>>2]}c=f;f=q+1|0;if(f>>>0<1){c=c+1|0}q=f;f=c;d=i[a+80>>2];if(!c&q>>>0>>0|c>>>0<0){l=i[e+36>>2];continue}break}if((d|0)!=(m|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+h>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}h=i[e+16>>2];if(!d){break i}b=i[a+68>>2];k=0;while(1){c=k<<2;i[c+b>>2]=i[c+h>>2];k=k+1|0;if((k|0)!=(d|0)){continue}break}}i[a+80>>2]=m}if(!h){break b}i[e+20>>2]=h;bp(h)}d=i[e+40>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+32>>2];i[e+32>>2]=0;if(a){bp(a)}F=e- -64|0;return m}Ho();x()}function jn(a,b,c){var d=0,e=0,f=0,h=0,k=0,m=0,n=0,o=0,q=0,r=0;f=F-48|0;F=f;if(c>>>0<=2){a:{e=b+4|0;c=c<<2;q=i[c+17628>>2];r=i[c+17616>>2];while(1){c=i[b+4>>2];b:{if(c>>>0>2]){i[e>>2]=c+1;c=j[c|0];break b}c=fn(b)}if(an(c)){continue}break}k=1;c:{d:{switch(c+ -43|0){case 0:case 2:break d;default:break c}}k=(c|0)==45?-1:1;c=i[b+4>>2];if(c>>>0>2]){i[e>>2]=c+1;c=j[c|0];break c}c=fn(b)}e:{f:{while(1){if(g[d+17541|0]==(c|32)){g:{if(d>>>0>6){break g}c=i[b+4>>2];if(c>>>0>2]){i[e>>2]=c+1;c=j[c|0];break g}c=fn(b)}d=d+1|0;if((d|0)!=8){continue}break f}break}if((d|0)!=3){if((d|0)==8){break f}if(d>>>0<4){break e}if((d|0)==8){break f}}b=i[b+104>>2];if(b){i[e>>2]=i[e>>2]+ -1}if(d>>>0<4){break f}while(1){if(b){i[e>>2]=i[e>>2]+ -1}d=d+ -1|0;if(d>>>0>3){continue}break}}un(f,p(p(k|0)*p(z)));m=i[f+8>>2];h=i[f+12>>2];n=i[f>>2];o=i[f+4>>2];break a}h:{i:{j:{if(d){break j}d=0;while(1){if(g[d+17550|0]!=(c|32)){break j}k:{if(d>>>0>1){break k}c=i[b+4>>2];if(c>>>0>2]){i[e>>2]=c+1;c=j[c|0];break k}c=fn(b)}d=d+1|0;if((d|0)!=3){continue}break}break i}l:{switch(d|0){case 0:m:{if((c|0)!=48){break m}d=i[b+4>>2];n:{if(d>>>0>2]){i[e>>2]=d+1;d=j[d|0];break n}d=fn(b)}if((d&-33)==88){kn(f+16|0,b,r,q,k);m=i[f+24>>2];h=i[f+28>>2];n=i[f+16>>2];o=i[f+20>>2];break a}if(!i[b+104>>2]){break m}i[e>>2]=i[e>>2]+ -1}ln(f+32|0,b,c,r,q,k);m=i[f+40>>2];h=i[f+44>>2];n=i[f+32>>2];o=i[f+36>>2];break a;case 3:break i;default:break l}}if(i[b+104>>2]){i[e>>2]=i[e>>2]+ -1}i[4805]=28;break h}o:{c=i[b+4>>2];p:{if(c>>>0>2]){i[e>>2]=c+1;c=j[c|0];break p}c=fn(b)}if((c|0)==40){d=1;break o}h=2147450880;if(!i[b+104>>2]){break a}i[e>>2]=i[e>>2]+ -1;break a}while(1){q:{c=i[b+4>>2];r:{if(c>>>0>2]){i[e>>2]=c+1;c=j[c|0];break r}c=fn(b)}if(!(c+ -48>>>0<10|c+ -65>>>0<26|(c|0)==95)){if(c+ -97>>>0>=26){break q}}d=d+1|0;continue}break}h=2147450880;if((c|0)==41){break a}b=i[b+104>>2];if(b){i[e>>2]=i[e>>2]+ -1}if(!d){break a}while(1){d=d+ -1|0;if(b){i[e>>2]=i[e>>2]+ -1}if(d){continue}break}break a}en(b)}}i[a>>2]=n;i[a+4>>2]=o;i[a+8>>2]=m;i[a+12>>2]=h;F=f+48|0}function Ta(a,b){var c=0,d=0,e=0,f=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;e=F-80|0;F=e;i[e+56>>2]=0;i[e+60>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+64>>2]=1065353216;c=i[a+80>>2];i[e+32>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;l=ho(c);i[e+24>>2]=l;d=c+l|0;i[e+32>>2]=d;ip(l,0,c);i[e+28>>2]=d;while(1){c=b;d=i[c+48>>2];q=i[i[c>>2]>>2];v=r;d=up(i[c+40>>2],i[c+44>>2],r,0)+d|0;c=q+d|0;s=j[c+4|0]|j[c+5|0]<<8;h[e+44>>1]=s;t=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[e+40>>2]=t;u=k[e+42>>1];c:{d:{e:{if(!n){break e}d=i[e+48>>2];q=(((t^318)&65535)+239^u)+239^s;c=q&n+262143;w=xp(n)>>>0>1;f:{if(!w){break f}c=q;if(c>>>0>>0){break f}c=(q>>>0)%(n>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}y=n+ -1|0;while(1){m=i[d+4>>2];g:{if((q|0)!=(m|0)){h:{if(!w){m=m&y;break h}if(m>>>0>>0){break h}m=(m>>>0)%(n>>>0)|0}if((c|0)==(m|0)){break g}break e}if(k[d+8>>1]!=(t&65535)|k[d+10>>1]!=(u|0)){break g}if(k[d+12>>1]==(s|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+16>>2]=p;h[e+12>>1]=s;h[e+10>>1]=u;h[e+8>>1]=t;vb(e+72|0,e+48|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,p)|0,e+40|0,c);l=i[e+24>>2];i[l+(v<<2)>>2]=p;p=p+1|0;break c}i[(v<<2)+l>>2]=i[d+16>>2]}c=f;f=r+1|0;if(f>>>0<1){c=c+1|0}r=f;f=c;d=i[a+80>>2];if(!c&r>>>0>>0|c>>>0<0){n=i[e+52>>2];continue}break}if((d|0)!=(p|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+l>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}l=i[e+24>>2];if(!d){break i}b=i[a+68>>2];m=0;while(1){c=m<<2;i[c+b>>2]=i[c+l>>2];m=m+1|0;if((m|0)!=(d|0)){continue}break}}i[a+80>>2]=p}if(!l){break b}i[e+28>>2]=l;bp(l)}d=i[e+56>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+48>>2];i[e+48>>2]=0;if(a){bp(a)}F=e+80|0;return p}Ho();x()}function El(a,b){var c=0,d=0,e=0,f=0;f=F-16|0;F=f;e=ho(32);i[f>>2]=e;i[f+4>>2]=30;i[f+8>>2]=-2147483616;g[e+30|0]=0;c=j[16476]|j[16477]<<8|(j[16478]<<16|j[16479]<<24);d=j[16472]|j[16473]<<8|(j[16474]<<16|j[16475]<<24);g[e+22|0]=d;g[e+23|0]=d>>>8;g[e+24|0]=d>>>16;g[e+25|0]=d>>>24;g[e+26|0]=c;g[e+27|0]=c>>>8;g[e+28|0]=c>>>16;g[e+29|0]=c>>>24;c=j[16470]|j[16471]<<8|(j[16472]<<16|j[16473]<<24);d=j[16466]|j[16467]<<8|(j[16468]<<16|j[16469]<<24);g[e+16|0]=d;g[e+17|0]=d>>>8;g[e+18|0]=d>>>16;g[e+19|0]=d>>>24;g[e+20|0]=c;g[e+21|0]=c>>>8;g[e+22|0]=c>>>16;g[e+23|0]=c>>>24;c=j[16462]|j[16463]<<8|(j[16464]<<16|j[16465]<<24);d=j[16458]|j[16459]<<8|(j[16460]<<16|j[16461]<<24);g[e+8|0]=d;g[e+9|0]=d>>>8;g[e+10|0]=d>>>16;g[e+11|0]=d>>>24;g[e+12|0]=c;g[e+13|0]=c>>>8;g[e+14|0]=c>>>16;g[e+15|0]=c>>>24;c=j[16454]|j[16455]<<8|(j[16456]<<16|j[16457]<<24);d=j[16450]|j[16451]<<8|(j[16452]<<16|j[16453]<<24);g[e|0]=d;g[e+1|0]=d>>>8;g[e+2|0]=d>>>16;g[e+3|0]=d>>>24;g[e+4|0]=c;g[e+5|0]=c>>>8;g[e+6|0]=c>>>16;g[e+7|0]=c>>>24;e=a+4|0;Yj(e,f,b);if(g[f+11|0]<=-1){bp(i[f>>2])}a=ho(32);i[f>>2]=a;i[f+4>>2]=29;i[f+8>>2]=-2147483616;g[a+29|0]=0;c=j[16506]|j[16507]<<8|(j[16508]<<16|j[16509]<<24);d=j[16502]|j[16503]<<8|(j[16504]<<16|j[16505]<<24);g[a+21|0]=d;g[a+22|0]=d>>>8;g[a+23|0]=d>>>16;g[a+24|0]=d>>>24;g[a+25|0]=c;g[a+26|0]=c>>>8;g[a+27|0]=c>>>16;g[a+28|0]=c>>>24;c=j[16501]|j[16502]<<8|(j[16503]<<16|j[16504]<<24);d=j[16497]|j[16498]<<8|(j[16499]<<16|j[16500]<<24);g[a+16|0]=d;g[a+17|0]=d>>>8;g[a+18|0]=d>>>16;g[a+19|0]=d>>>24;g[a+20|0]=c;g[a+21|0]=c>>>8;g[a+22|0]=c>>>16;g[a+23|0]=c>>>24;c=j[16493]|j[16494]<<8|(j[16495]<<16|j[16496]<<24);d=j[16489]|j[16490]<<8|(j[16491]<<16|j[16492]<<24);g[a+8|0]=d;g[a+9|0]=d>>>8;g[a+10|0]=d>>>16;g[a+11|0]=d>>>24;g[a+12|0]=c;g[a+13|0]=c>>>8;g[a+14|0]=c>>>16;g[a+15|0]=c>>>24;c=j[16485]|j[16486]<<8|(j[16487]<<16|j[16488]<<24);d=j[16481]|j[16482]<<8|(j[16483]<<16|j[16484]<<24);g[a|0]=d;g[a+1|0]=d>>>8;g[a+2|0]=d>>>16;g[a+3|0]=d>>>24;g[a+4|0]=c;g[a+5|0]=c>>>8;g[a+6|0]=c>>>16;g[a+7|0]=c>>>24;Yj(e,f,b);if(g[f+11|0]<=-1){bp(i[f>>2])}F=f+16|0}function Ka(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=F-80|0;F=e;i[e+56>>2]=0;i[e+60>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+64>>2]=1065353216;d=i[a+80>>2];i[e+32>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;a:{b:{if(!d){break b}if(d>>>0>=1073741824){break a}f=d<<2;l=ho(f);i[e+24>>2]=l;d=f+l|0;i[e+32>>2]=d;ip(l,0,f);i[e+28>>2]=d;while(1){d=b;k=i[d+48>>2];f=i[i[d>>2]>>2];t=q;d=up(i[d+40>>2],i[d+44>>2],q,0)+k|0;k=f+d|0;d=j[k+4|0]|j[k+5|0]<<8|(j[k+6|0]<<16|j[k+7|0]<<24);s=j[k|0]|j[k+1|0]<<8|(j[k+2|0]<<16|j[k+3|0]<<24);i[e+40>>2]=s;i[e+44>>2]=d;c:{d:{e:{if(!n){break e}c=i[e+48>>2];v=d;k=s;r=d^(k^318)+239;f=r&n+ -1;u=xp(n)>>>0>1;f:{if(!u){break f}f=r;if(f>>>0>>0){break f}f=(r>>>0)%(n>>>0)|0}c=i[(f<<2)+c>>2];if(!c){break e}c=i[c>>2];if(!c){break e}w=n+ -1|0;while(1){m=i[c+4>>2];g:{if((r|0)!=(m|0)){h:{if(!u){m=m&w;break h}if(m>>>0>>0){break h}m=(m>>>0)%(n>>>0)|0}if((f|0)==(m|0)){break g}break e}if(i[c+8>>2]!=(k|0)){break g}if(i[c+12>>2]==(v|0)){break d}}c=i[c>>2];if(c){continue}break}}i[e+16>>2]=p;i[e+8>>2]=s;i[e+12>>2]=d;Ya(e+72|0,e+48|0,e+8|0,e+8|0);d=i[a+40>>2];hp(i[i[a>>2]>>2]+o(d,p)|0,e+40|0,d);l=i[e+24>>2];i[l+(t<<2)>>2]=p;p=p+1|0;break c}i[(t<<2)+l>>2]=i[c+16>>2]}d=h;h=q+1|0;if(h>>>0<1){d=d+1|0}q=h;f=h;h=d;c=i[a+80>>2];if(!d&f>>>0>>0|d>>>0<0){n=i[e+52>>2];continue}break}if((c|0)!=(p|0)){i:{if(!j[a+84|0]){h=i[a+72>>2];f=i[a+68>>2];if((h|0)==(f|0)){break i}d=h-f|0;b=(d|0)>-1?d:-1;q=(b|0)<1?b:1;b=f-h|0;b=o(q,((b|0)>(d|0)?b:d)>>>2|0);h=b>>>0>1?b:1;c=0;while(1){b=f+(c<<2)|0;i[b>>2]=i[(i[b>>2]<<2)+l>>2];c=c+1|0;if((h|0)!=(c|0)){continue}break}break i}g[a+84|0]=0;b=i[a+68>>2];h=i[a+72>>2]-b>>2;j:{if(c>>>0>h>>>0){Xa(a+68|0,c-h|0,1420);c=i[a+80>>2];break j}if(c>>>0>=h>>>0){break j}i[a+72>>2]=b+(c<<2)}l=i[e+24>>2];if(!c){break i}h=i[a+68>>2];m=0;while(1){b=m<<2;i[b+h>>2]=i[b+l>>2];m=m+1|0;if((m|0)!=(c|0)){continue}break}}i[a+80>>2]=p}if(!l){break b}i[e+28>>2]=l;bp(l)}c=i[e+56>>2];if(c){while(1){a=i[c>>2];bp(c);c=a;if(c){continue}break}}a=i[e+48>>2];i[e+48>>2]=0;if(a){bp(a)}F=e+80|0;return p}Ho();x()}function dp(a,b,c,d,e,f,g,h,j){var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=F-128|0;F=k;a:{b:{c:{if(!qn(f,g,h,j,0,0,0,0)){break c}m=gp(f,g,h,j);s=e>>>16|0;p=s&32767;if((p|0)==32767){break c}if(m){break b}}yn(k+16|0,b,c,d,e,f,g,h,j);e=i[k+16>>2];d=i[k+20>>2];c=i[k+24>>2];b=i[k+28>>2];Cn(k,e,d,c,b,e,d,c,b);d=i[k+8>>2];e=i[k+12>>2];h=i[k>>2];j=i[k+4>>2];break a}m=p<<16;q=d;r=m|e&65535;n=r;o=h;r=j>>>16&32767;l=j&65535|r<<16;if((qn(b,c,q,n,f,g,h,l)|0)<=0){if(qn(b,c,q,n,f,g,o,l)){h=b;j=c;break a}yn(k+112|0,b,c,d,e,0,0,0,0);d=i[k+120>>2];e=i[k+124>>2];h=i[k+112>>2];j=i[k+116>>2];break a}if(p){j=c;h=b}else{yn(k+96|0,b,c,q,n,0,0,0,1081540608);h=i[k+108>>2];n=h;q=i[k+104>>2];p=(h>>>16|0)+ -120|0;j=i[k+100>>2];h=i[k+96>>2]}if(!r){yn(k+80|0,f,g,o,l,0,0,0,1081540608);f=i[k+92>>2];l=f;o=i[k+88>>2];r=(l>>>16|0)+ -120|0;g=i[k+84>>2];f=i[k+80>>2]}t=l&65535|65536;n=n&65535|65536;if((p|0)>(r|0)){while(1){l=q;m=o;u=l-m|0;m=n-((l>>>0>>0)+t|0)|0;l=(g|0)==(j|0)&h>>>0>>0|j>>>0>>0;m=m-(u>>>0>>0)|0;l=u-l|0;d:{if((m|0)>0?1:(m|0)>=0?l>>>0>=0:0){n=h;h=h-f|0;j=j-((n>>>0>>0)+g|0)|0;if(!(h|l|(j|m))){yn(k+32|0,b,c,d,e,0,0,0,0);d=i[k+40>>2];e=i[k+44>>2];h=i[k+32>>2];j=i[k+36>>2];break a}m=m<<1|l>>>31;q=l<<1|j>>>31;break d}m=n<<1|q>>>31;q=q<<1|j>>>31}n=m;m=j<<1|h>>>31;h=h<<1;j=m;p=p+ -1|0;if((p|0)>(r|0)){continue}break}p=r}e:{m=q;r=m-o|0;l=n-((m>>>0>>0)+t|0)|0;m=(g|0)==(j|0)&h>>>0>>0|j>>>0>>0;l=l-(r>>>0>>0)|0;o=r-m|0;if((l|0)<0?1:(l|0)<=0?o>>>0<0:0){o=q;l=n;break e}q=h;h=h-f|0;j=j-((q>>>0>>0)+g|0)|0;if(h|o|(j|l)){break e}yn(k+48|0,b,c,d,e,0,0,0,0);d=i[k+56>>2];e=i[k+60>>2];h=i[k+48>>2];j=i[k+52>>2];break a}if((l|0)==65535|l>>>0<65535){while(1){b=j>>>31|0;p=p+ -1|0;n=j<<1|h>>>31;h=h<<1;j=n;c=b;b=o;l=l<<1|b>>>31;o=c|b<<1;if((l|0)==65536&o>>>0<0|l>>>0<65536){continue}break}}b=s&32768;if((p|0)<=0){yn(k- -64|0,h,j,o,l&65535|(b|p+120)<<16,0,0,0,1065811968);d=i[k+72>>2];e=i[k+76>>2];h=i[k+64>>2];j=i[k+68>>2];break a}d=o;e=l&65535|(b|p)<<16}i[a>>2]=h;i[a+4>>2]=j;i[a+8>>2]=d;i[a+12>>2]=e;F=k+128|0}function Pa(a,b){var c=0,d=0,e=0,f=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=F+ -64|0;F=e;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+48>>2]=1065353216;c=i[a+80>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;k=ho(c);i[e+16>>2]=k;d=c+k|0;i[e+24>>2]=d;ip(k,0,c);i[e+20>>2]=d;while(1){c=b;d=i[c+48>>2];p=i[i[c>>2]>>2];u=q;d=up(i[c+40>>2],i[c+44>>2],q,0)+d|0;c=p+d|0;r=j[c+2|0];g[e+30|0]=r;h[e+28>>1]=j[c|0]|j[c+1|0]<<8;s=j[e+28|0];t=j[e+29|0];c:{d:{e:{if(!m){break e}d=i[e+32>>2];p=((s^318)+239^t)+239^r;c=p&m+ -1;v=xp(m)>>>0>1;f:{if(!v){break f}c=p;if(c>>>0>>0){break f}c=(p>>>0)%(m>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}w=m+ -1|0;while(1){l=i[d+4>>2];g:{if((p|0)!=(l|0)){h:{if(!v){l=l&w;break h}if(l>>>0>>0){break h}l=(l>>>0)%(m>>>0)|0}if((c|0)==(l|0)){break g}break e}if(j[d+8|0]!=(s|0)|j[d+9|0]!=(t|0)){break g}if(j[d+10|0]==(r|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+12>>2]=n;g[e+10|0]=r;g[e+9|0]=t;g[e+8|0]=s;jb(e+56|0,e+32|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,n)|0,e+28|0,c);k=i[e+16>>2];i[k+(u<<2)>>2]=n;n=n+1|0;break c}i[(u<<2)+k>>2]=i[d+12>>2]}c=f;f=q+1|0;if(f>>>0<1){c=c+1|0}q=f;f=c;d=i[a+80>>2];if(!c&q>>>0>>0|c>>>0<0){m=i[e+36>>2];continue}break}if((d|0)!=(n|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+k>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}k=i[e+16>>2];if(!d){break i}b=i[a+68>>2];l=0;while(1){c=l<<2;i[c+b>>2]=i[c+k>>2];l=l+1|0;if((l|0)!=(d|0)){continue}break}}i[a+80>>2]=n}if(!k){break b}i[e+20>>2]=k;bp(k)}d=i[e+40>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+32>>2];i[e+32>>2]=0;if(a){bp(a)}F=e- -64|0;return n}Ho();x()}function am(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;if($l(a,c)){i[a+88>>2]=0;i[a+92>>2]=0;e=a+84|0;c=i[e>>2];i[e>>2]=0;if(c){bp(c)}i[a+76>>2]=0;i[a+80>>2]=0;e=a+72|0;c=i[e>>2];i[e>>2]=0;if(c){bp(c)}m=i[a+64>>2];if(i[m+4>>2]!=i[m>>2]){c=0;while(1){p=(c>>>0)/3|0;e=Ql(m,p);m=i[a+64>>2];a:{if(e){break a}l=i[i[m+12>>2]+(c<<2)>>2];if((l|0)==-1){e=i[a>>2]+(c>>>3&536870908)|0;i[e>>2]=i[e>>2]|1<>>0)%3|0?l:c+ -2|0;if((l|0)!=-1){e=i[i[m>>2]+(l<<2)>>2]}l=i[a+12>>2];k=l+(e>>>3&536870908)|0;i[k>>2]=i[k>>2]|1<>>0)%3|0?-1:2)+c|0;if((e|0)!=-1){f=i[i[m>>2]+(e<<2)>>2]}e=l+(f>>>3&536870908)|0;i[e>>2]=i[e>>2]|1<>>0>>0){break a}e=-1;k=l+((l>>>0)%3|0?-1:2)|0;q=j[d+84|0];f=-1;n=c+1|0;r=c+ -2|0;h=(n>>>0)%3|0?n:r;if((h|0)>=0){f=(h>>>0)/3|0;f=i[(i[b+96>>2]+o(f,12)|0)+(h-o(f,3)<<2)>>2]}e=(k|0)>=0?i[(i[b+96>>2]+o((k>>>0)/3|0,12)|0)+((k>>>0)%3<<2)>>2]:e;if(!q){s=i[d+68>>2];e=i[s+(e<<2)>>2];f=i[(f<<2)+s>>2]}if((e|0)==(f|0)){e=-1;f=-1;if((h|0)!=-1){f=h+1|0;f=(f>>>0)%3|0?f:h+ -2|0}b:{if((k|0)==-1){break b}if((k>>>0)%3|0){e=k+ -1|0;break b}e=k+2|0}k=-1;h=-1;if((f|0)>=0){h=(f>>>0)/3|0;h=i[(i[b+96>>2]+o(h,12)|0)+(f-o(h,3)<<2)>>2]}if((e|0)>=0){f=(e>>>0)/3|0;k=i[(i[b+96>>2]+o(f,12)|0)+(e-o(f,3)<<2)>>2]}if(!q){e=i[d+68>>2];k=i[e+(k<<2)>>2];h=i[e+(h<<2)>>2]}if((h|0)==(k|0)){break a}}g[a+24|0]=0;e=i[a>>2];f=e+(c>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<>>3&536870908)|0;i[e>>2]=i[e>>2]|1<>>0)%3|0?n:r;if((k|0)!=-1){f=i[i[m>>2]+(k<<2)>>2]}k=i[a+12>>2];h=k+(f>>>3&536870908)|0;i[h>>2]=i[h>>2]|1<>2]+(f<<2)>>2]}f=k+(e>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<>>0)%3|0?h:l+ -2|0;if((h|0)!=-1){f=i[i[m>>2]+(h<<2)>>2]}h=k+(f>>>3&536870908)|0;i[h>>2]=i[h>>2]|1<>>0)%3|0?-1:2)|0;if((f|0)!=-1){e=i[i[m>>2]+(f<<2)>>2]}f=k+(e>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<>>0>2]-i[m>>2]>>2>>>0){continue}break}}if(!(!b|!d)){bm(a,b,d);return}cm(a)}}function Sa(a,b){var c=0,d=0,e=0,f=0,h=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=F+ -64|0;F=e;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+48>>2]=1065353216;c=i[a+80>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;h=ho(c);i[e+16>>2]=h;d=c+h|0;i[e+24>>2]=d;ip(h,0,c);i[e+20>>2]=d;while(1){c=b;d=i[c+48>>2];p=i[i[c>>2]>>2];s=q;d=up(i[c+40>>2],i[c+44>>2],q,0)+d|0;c=p+d|0;r=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[e+28>>2]=r;c:{d:{e:{if(!m){break e}d=i[e+32>>2];t=r>>>16|0;u=r&65535;p=t^(u^318)+239;c=p&m+131071;v=xp(m)>>>0>1;f:{if(!v){break f}c=p;if(c>>>0>>0){break f}c=(p>>>0)%(m>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}w=m+ -1|0;while(1){l=i[d+4>>2];g:{if((p|0)!=(l|0)){h:{if(!v){l=l&w;break h}if(l>>>0>>0){break h}l=(l>>>0)%(m>>>0)|0}if((c|0)==(l|0)){break g}break e}if(k[d+8>>1]!=(u|0)){break g}if(k[d+10>>1]==(t|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+12>>2]=n;i[e+8>>2]=r;ub(e+56|0,e+32|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,n)|0,e+28|0,c);h=i[e+16>>2];i[h+(s<<2)>>2]=n;n=n+1|0;break c}i[(s<<2)+h>>2]=i[d+12>>2]}c=f;f=q+1|0;if(f>>>0<1){c=c+1|0}q=f;f=c;d=i[a+80>>2];if(!c&q>>>0>>0|c>>>0<0){m=i[e+36>>2];continue}break}if((d|0)!=(n|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+h>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}h=i[e+16>>2];if(!d){break i}b=i[a+68>>2];l=0;while(1){c=l<<2;i[c+b>>2]=i[c+h>>2];l=l+1|0;if((l|0)!=(d|0)){continue}break}}i[a+80>>2]=n}if(!h){break b}i[e+20>>2]=h;bp(h)}d=i[e+40>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+32>>2];i[e+32>>2]=0;if(a){bp(a)}F=e- -64|0;return n}Ho();x()}function xf(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;a:{if(!i[a+8>>2]){break a}d=i[a>>2];l=a+4|0;i[a>>2]=l;i[i[a+4>>2]+8>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;g=i[d+4>>2];f=g?g:d;if(!f){kd(a,f);break a}g=i[f+8>>2];b:{if(!g){break b}d=i[g>>2];if((f|0)==(d|0)){i[g>>2]=0;d=i[g+4>>2];if(!d){e=g;break b}while(1){e=d;d=i[d>>2];if(d){continue}d=i[e+4>>2];if(d){continue}break}break b}i[g+4>>2]=0;if(!d){e=g;break b}while(1){e=d;d=i[d>>2];if(d){continue}d=i[e+4>>2];if(d){continue}break}}c:{if((b|0)==(c|0)){g=f;break c}k=b;while(1){g=e;h=f+16|0;to(h,k+16|0);to(f+28|0,k+28|0);d:{b=i[l>>2];if(!b){b=l;d=b;break d}d=j[f+27|0];e=d<<24>>24<0;d=e?i[f+20>>2]:d;o=e?i[f+16>>2]:h;while(1){h=j[b+27|0];e=h<<24>>24<0;e:{f:{g:{h:{h=e?i[b+20>>2]:h;m=h>>>0>>0?h:d;if(m){n=b+16|0;e=Km(o,e?i[n>>2]:n,m);if(e){break h}}if(d>>>0>>0){break g}break f}if((e|0)>-1){break f}}e=i[b>>2];if(e){break e}d=b;break d}e=i[b+4>>2];if(e){break e}d=b+4|0;break d}b=e;continue}}i[f+8>>2]=b;i[f>>2]=0;i[f+4>>2]=0;i[d>>2]=f;b=i[i[a>>2]>>2];if(b){i[a>>2]=b;f=i[d>>2]}Kf(i[a+4>>2],f);i[a+8>>2]=i[a+8>>2]+1;e=0;i:{if(!g){break i}d=i[g+8>>2];if(!d){break i}b=i[d>>2];if((g|0)==(b|0)){i[d>>2]=0;b=i[d+4>>2];if(!b){e=d;break i}while(1){e=b;b=i[b>>2];if(b){continue}b=i[e+4>>2];if(b){continue}break}break i}i[d+4>>2]=0;if(!b){e=d;break i}while(1){e=b;b=i[b>>2];if(b){continue}b=i[e+4>>2];if(b){continue}break}}d=i[k+4>>2];j:{if(!d){b=i[k+8>>2];if(i[b>>2]==(k|0)){break j}d=k+8|0;while(1){f=i[d>>2];d=f+8|0;b=i[f+8>>2];if((f|0)!=i[b>>2]){continue}break}break j}while(1){b=d;d=i[d>>2];if(d){continue}break}}if((b|0)==(c|0)){break c}k=b;f=g;if(f){continue}break}}kd(a,g);if(!e){break a}while(1){d=i[e+8>>2];if(d){e=d;continue}break}kd(a,e)}if((b|0)!=(c|0)){while(1){e=b;Lf(a,b+16|0);d=i[b+4>>2];k:{if(!d){b=i[e+8>>2];if((e|0)==i[b>>2]){break k}e=e+8|0;while(1){d=i[e>>2];e=d+8|0;b=i[d+8>>2];if((d|0)!=i[b>>2]){continue}break}break k}while(1){b=d;d=i[d>>2];if(d){continue}break}}if((b|0)!=(c|0)){continue}break}}}function Ja(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,l=0,n=0,q=0,r=0,s=p(0),t=0,u=0,v=0,w=0;e=F+ -64|0;F=e;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+48>>2]=1065353216;c=i[a+80>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;h=ho(c);i[e+16>>2]=h;d=c+h|0;i[e+24>>2]=d;ip(h,0,c);i[e+20>>2]=d;while(1){c=b;d=i[c+48>>2];q=i[i[c>>2]>>2];t=r;d=up(i[c+40>>2],i[c+44>>2],r,0)+d|0;c=q+d|0;s=(Cp(2,j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24)),Gp());m[e+28>>2]=s;c:{d:{e:{if(!l){break e}d=i[e+32>>2];u=(Fp(s),Bp(2));q=u^318;c=q&l+ -1;v=xp(l)>>>0>1;f:{if(!v){break f}c=q;if(c>>>0>>0){break f}c=(q>>>0)%(l>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}w=l+ -1|0;while(1){k=i[d+4>>2];g:{if((q|0)!=(k|0)){h:{if(!v){k=k&w;break h}if(k>>>0>>0){break h}k=(k>>>0)%(l>>>0)|0}if((c|0)==(k|0)){break g}break e}if(i[d+8>>2]==(u|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+12>>2]=n;m[e+8>>2]=s;Wa(e+56|0,e+32|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,n)|0,e+28|0,c);h=i[e+16>>2];i[h+(t<<2)>>2]=n;n=n+1|0;break c}i[(t<<2)+h>>2]=i[d+12>>2]}c=f;f=r+1|0;if(f>>>0<1){c=c+1|0}r=f;f=c;d=i[a+80>>2];if(!c&r>>>0>>0|c>>>0<0){l=i[e+36>>2];continue}break}if((d|0)!=(n|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+h>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}h=i[e+16>>2];if(!d){break i}b=i[a+68>>2];k=0;while(1){c=k<<2;i[c+b>>2]=i[c+h>>2];k=k+1|0;if((k|0)!=(d|0)){continue}break}}i[a+80>>2]=n}if(!h){break b}i[e+20>>2]=h;bp(h)}d=i[e+40>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+32>>2];i[e+32>>2]=0;if(a){bp(a)}F=e- -64|0;return n}Ho();x()}function Oa(a,b){var c=0,d=0,e=0,f=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=F+ -64|0;F=e;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+48>>2]=1065353216;c=i[a+80>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;k=ho(c);i[e+16>>2]=k;d=c+k|0;i[e+24>>2]=d;ip(k,0,c);i[e+20>>2]=d;while(1){c=b;d=i[c+48>>2];p=i[i[c>>2]>>2];s=q;d=up(i[c+40>>2],i[c+44>>2],q,0)+d|0;c=p+d|0;r=j[c|0]|j[c+1|0]<<8;h[e+30>>1]=r;c:{d:{e:{if(!m){break e}d=i[e+32>>2];t=r>>>8|0;u=r&255;p=t^(u^318)+239;c=p&m+ -1;v=xp(m)>>>0>1;f:{if(!v){break f}c=p;if(m>>>0>c>>>0){break f}c=(p>>>0)%(m>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}w=m+ -1|0;while(1){l=i[d+4>>2];g:{if((p|0)!=(l|0)){h:{if(!v){l=l&w;break h}if(l>>>0>>0){break h}l=(l>>>0)%(m>>>0)|0}if((c|0)==(l|0)){break g}break e}if(j[d+8|0]!=(u|0)){break g}if(j[d+9|0]==(t|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+12>>2]=n;h[e+8>>1]=r;ib(e+56|0,e+32|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,n)|0,e+30|0,c);k=i[e+16>>2];i[k+(s<<2)>>2]=n;n=n+1|0;break c}i[(s<<2)+k>>2]=i[d+12>>2]}c=f;f=q+1|0;if(f>>>0<1){c=c+1|0}q=f;f=c;d=i[a+80>>2];if(!c&q>>>0>>0|c>>>0<0){m=i[e+36>>2];continue}break}if((d|0)!=(n|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+k>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}k=i[e+16>>2];if(!d){break i}b=i[a+68>>2];l=0;while(1){c=l<<2;i[c+b>>2]=i[c+k>>2];l=l+1|0;if((l|0)!=(d|0)){continue}break}}i[a+80>>2]=n}if(!k){break b}i[e+20>>2]=k;bp(k)}d=i[e+40>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+32>>2];i[e+32>>2]=0;if(a){bp(a)}F=e- -64|0;return n}Ho();x()}function Zf(a,b,c,d,e,f){var h=0,k=0,l=0;h=F-16|0;F=h;i[h+12>>2]=b;b=ho(32);i[h>>2]=b;i[h+4>>2]=17;i[h+8>>2]=-2147483616;g[b+17|0]=0;g[b+16|0]=j[10556];k=j[10552]|j[10553]<<8|(j[10554]<<16|j[10555]<<24);l=j[10548]|j[10549]<<8|(j[10550]<<16|j[10551]<<24);g[b+8|0]=l;g[b+9|0]=l>>>8;g[b+10|0]=l>>>16;g[b+11|0]=l>>>24;g[b+12|0]=k;g[b+13|0]=k>>>8;g[b+14|0]=k>>>16;g[b+15|0]=k>>>24;k=j[10544]|j[10545]<<8|(j[10546]<<16|j[10547]<<24);l=j[10540]|j[10541]<<8|(j[10542]<<16|j[10543]<<24);g[b|0]=l;g[b+1|0]=l>>>8;g[b+2|0]=l>>>16;g[b+3|0]=l>>>24;g[b+4|0]=k;g[b+5|0]=k>>>8;g[b+6|0]=k>>>16;g[b+7|0]=k>>>24;k=a+4|0;Yj(yf(k,h+12|0),h,c);if(g[h+11|0]<=-1){bp(i[h>>2])}a=ho(32);i[h>>2]=a;i[h+4>>2]=19;i[h+8>>2]=-2147483616;g[a+19|0]=0;b=j[10598]|j[10599]<<8|(j[10600]<<16|j[10601]<<24);g[a+15|0]=b;g[a+16|0]=b>>>8;g[a+17|0]=b>>>16;g[a+18|0]=b>>>24;b=j[10595]|j[10596]<<8|(j[10597]<<16|j[10598]<<24);c=j[10591]|j[10592]<<8|(j[10593]<<16|j[10594]<<24);g[a+8|0]=c;g[a+9|0]=c>>>8;g[a+10|0]=c>>>16;g[a+11|0]=c>>>24;g[a+12|0]=b;g[a+13|0]=b>>>8;g[a+14|0]=b>>>16;g[a+15|0]=b>>>24;b=j[10587]|j[10588]<<8|(j[10589]<<16|j[10590]<<24);c=j[10583]|j[10584]<<8|(j[10585]<<16|j[10586]<<24);g[a|0]=c;g[a+1|0]=c>>>8;g[a+2|0]=c>>>16;g[a+3|0]=c>>>24;g[a+4|0]=b;g[a+5|0]=b>>>8;g[a+6|0]=b>>>16;g[a+7|0]=b>>>24;Ff(yf(k,h+12|0),h,e,d);if(g[h+11|0]<=-1){bp(i[h>>2])}a=ho(32);i[h>>2]=a;i[h+4>>2]=18;i[h+8>>2]=-2147483616;g[a+18|0]=0;b=j[10619]|j[10620]<<8;g[a+16|0]=b;g[a+17|0]=b>>>8;b=j[10615]|j[10616]<<8|(j[10617]<<16|j[10618]<<24);c=j[10611]|j[10612]<<8|(j[10613]<<16|j[10614]<<24);g[a+8|0]=c;g[a+9|0]=c>>>8;g[a+10|0]=c>>>16;g[a+11|0]=c>>>24;g[a+12|0]=b;g[a+13|0]=b>>>8;g[a+14|0]=b>>>16;g[a+15|0]=b>>>24;b=j[10607]|j[10608]<<8|(j[10609]<<16|j[10610]<<24);c=j[10603]|j[10604]<<8|(j[10605]<<16|j[10606]<<24);g[a|0]=c;g[a+1|0]=c>>>8;g[a+2|0]=c>>>16;g[a+3|0]=c>>>24;g[a+4|0]=b;g[a+5|0]=b>>>8;g[a+6|0]=b>>>16;g[a+7|0]=b>>>24;Zj(yf(k,h+12|0),h,f);if(g[h+11|0]<=-1){bp(i[h>>2])}F=h+16|0}function Ef(a,b,c,d,e,f){var h=0,k=0,l=0;h=F-16|0;F=h;i[h+12>>2]=b;b=ho(32);i[h>>2]=b;i[h+4>>2]=17;i[h+8>>2]=-2147483616;g[b+17|0]=0;g[b+16|0]=j[10144];k=j[10140]|j[10141]<<8|(j[10142]<<16|j[10143]<<24);l=j[10136]|j[10137]<<8|(j[10138]<<16|j[10139]<<24);g[b+8|0]=l;g[b+9|0]=l>>>8;g[b+10|0]=l>>>16;g[b+11|0]=l>>>24;g[b+12|0]=k;g[b+13|0]=k>>>8;g[b+14|0]=k>>>16;g[b+15|0]=k>>>24;k=j[10132]|j[10133]<<8|(j[10134]<<16|j[10135]<<24);l=j[10128]|j[10129]<<8|(j[10130]<<16|j[10131]<<24);g[b|0]=l;g[b+1|0]=l>>>8;g[b+2|0]=l>>>16;g[b+3|0]=l>>>24;g[b+4|0]=k;g[b+5|0]=k>>>8;g[b+6|0]=k>>>16;g[b+7|0]=k>>>24;k=a+4|0;Yj(yf(k,h+12|0),h,c);if(g[h+11|0]<=-1){bp(i[h>>2])}a=ho(32);i[h>>2]=a;i[h+4>>2]=19;i[h+8>>2]=-2147483616;g[a+19|0]=0;b=j[10161]|j[10162]<<8|(j[10163]<<16|j[10164]<<24);g[a+15|0]=b;g[a+16|0]=b>>>8;g[a+17|0]=b>>>16;g[a+18|0]=b>>>24;b=j[10158]|j[10159]<<8|(j[10160]<<16|j[10161]<<24);c=j[10154]|j[10155]<<8|(j[10156]<<16|j[10157]<<24);g[a+8|0]=c;g[a+9|0]=c>>>8;g[a+10|0]=c>>>16;g[a+11|0]=c>>>24;g[a+12|0]=b;g[a+13|0]=b>>>8;g[a+14|0]=b>>>16;g[a+15|0]=b>>>24;b=j[10150]|j[10151]<<8|(j[10152]<<16|j[10153]<<24);c=j[10146]|j[10147]<<8|(j[10148]<<16|j[10149]<<24);g[a|0]=c;g[a+1|0]=c>>>8;g[a+2|0]=c>>>16;g[a+3|0]=c>>>24;g[a+4|0]=b;g[a+5|0]=b>>>8;g[a+6|0]=b>>>16;g[a+7|0]=b>>>24;Ff(yf(k,h+12|0),h,e,d);if(g[h+11|0]<=-1){bp(i[h>>2])}a=ho(32);i[h>>2]=a;i[h+4>>2]=18;i[h+8>>2]=-2147483616;g[a+18|0]=0;b=j[10182]|j[10183]<<8;g[a+16|0]=b;g[a+17|0]=b>>>8;b=j[10178]|j[10179]<<8|(j[10180]<<16|j[10181]<<24);c=j[10174]|j[10175]<<8|(j[10176]<<16|j[10177]<<24);g[a+8|0]=c;g[a+9|0]=c>>>8;g[a+10|0]=c>>>16;g[a+11|0]=c>>>24;g[a+12|0]=b;g[a+13|0]=b>>>8;g[a+14|0]=b>>>16;g[a+15|0]=b>>>24;b=j[10170]|j[10171]<<8|(j[10172]<<16|j[10173]<<24);c=j[10166]|j[10167]<<8|(j[10168]<<16|j[10169]<<24);g[a|0]=c;g[a+1|0]=c>>>8;g[a+2|0]=c>>>16;g[a+3|0]=c>>>24;g[a+4|0]=b;g[a+5|0]=b>>>8;g[a+6|0]=b>>>16;g[a+7|0]=b>>>24;Zj(yf(k,h+12|0),h,f);if(g[h+11|0]<=-1){bp(i[h>>2])}F=h+16|0}function Va(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;e=F+ -64|0;F=e;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+48>>2]=1065353216;c=i[a+80>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;h=ho(c);i[e+16>>2]=h;d=c+h|0;i[e+24>>2]=d;ip(h,0,c);i[e+20>>2]=d;while(1){c=b;d=i[c+48>>2];n=i[i[c>>2]>>2];r=p;d=up(i[c+40>>2],i[c+44>>2],p,0)+d|0;c=n+d|0;q=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[e+28>>2]=q;c:{d:{e:{if(!l){break e}d=i[e+32>>2];n=q^318;c=n&l+ -1;s=xp(l)>>>0>1;f:{if(!s){break f}c=n;if(c>>>0>>0){break f}c=(n>>>0)%(l>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}t=l+ -1|0;while(1){k=i[d+4>>2];g:{if((n|0)!=(k|0)){h:{if(!s){k=k&t;break h}if(k>>>0>>0){break h}k=(k>>>0)%(l>>>0)|0}if((c|0)==(k|0)){break g}break e}if(i[d+8>>2]==(q|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+12>>2]=m;i[e+8>>2]=q;Wa(e+56|0,e+32|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,m)|0,e+28|0,c);h=i[e+16>>2];i[h+(r<<2)>>2]=m;m=m+1|0;break c}i[(r<<2)+h>>2]=i[d+12>>2]}c=f;f=p+1|0;if(f>>>0<1){c=c+1|0}p=f;f=c;d=i[a+80>>2];if(!c&p>>>0>>0|c>>>0<0){l=i[e+36>>2];continue}break}if((d|0)!=(m|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+h>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}h=i[e+16>>2];if(!d){break i}b=i[a+68>>2];k=0;while(1){c=k<<2;i[c+b>>2]=i[c+h>>2];k=k+1|0;if((k|0)!=(d|0)){continue}break}}i[a+80>>2]=m}if(!h){break b}i[e+20>>2]=h;bp(h)}d=i[e+40>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+32>>2];i[e+32>>2]=0;if(a){bp(a)}F=e- -64|0;return m}Ho();x()}function lg(a,b,c,d,e){var f=0,h=0,k=0,m=0,n=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;k=F-336|0;F=k;ip(k+80|0,0,256);h=i[d+4>>2];p=i[d>>2];if((h|0)!=(p|0)){m=h-p|0;f=(m|0)>-1?m:-1;q=(f|0)<1?f:1;f=p-h|0;f=o(q,((f|0)>(m|0)?f:m)>>>2|0);q=f>>>0>1?f:1;while(1){f=(k+80|0)+(i[p+(n<<2)>>2]<<3)|0;h=f;t=f;m=i[f+4>>2];f=i[f>>2]+1|0;if(f>>>0<1){m=m+1|0}i[t>>2]=f;i[h+4>>2]=m;n=n+1|0;if((q|0)!=(n|0)){continue}break}}r=Tj(k+48|0);i[k+8>>2]=0;i[k+12>>2]=0;h=k+16|0;f=h;i[f>>2]=0;i[f+4>>2]=0;p=k+24|0;f=p;i[f>>2]=0;i[f+4>>2]=0;i[k+32>>2]=0;i[k>>2]=0;i[k+4>>2]=0;i[k+40>>2]=0;i[k+44>>2]=0;ng(k,k+80|0,32,e);m=i[h>>2];f=i[h+4>>2];h=i[e+4>>2]-i[e>>2]|0;i[k+40>>2]=h;i[k+44>>2]=0;t=e;q=m;m=f<<1|m>>>31;f=(q<<1)+39|0;if(f>>>0<39){m=m+1|0}q=f;f=m>>>3|0;m=h+((m&7)<<29|q>>>3)|0;if(m>>>0>>0){f=f+1|0}h=m+8|0;h>>>0<8;Uj(t,h);f=i[e>>2];i[k+28>>2]=0;i[k+32>>2]=16384;i[p>>2]=f+i[k+40>>2];h=b;Vj(r,h<<5,h>>31<<5|h>>>27,0);b=h-c|0;if((b|0)>=0){y=(c|0)<1;f=b;while(1){n=i[k+32>>2];s=i[d>>2];q=i[k>>2]+(i[s+((f|0)/(c|0)<<2)>>2]<<3)|0;p=i[q>>2];m=p<<10;if(n>>>0>=m>>>0){while(1){h=i[k+28>>2];i[k+28>>2]=h+1;g[h+i[k+24>>2]|0]=n;n=i[k+32>>2]>>>8|0;i[k+32>>2]=n;if(n>>>0>=m>>>0){continue}break}s=i[d>>2]}h=(n>>>0)/(p>>>0)|0;i[k+32>>2]=i[q+4>>2]+((h<<12)+(n-o(h,p)|0)|0);n=b-f|0;h=(n|0)/(c|0)|0;if(!y){x=i[(h<<2)+s>>2];v=0;while(1){h=i[r+20>>2];if(!((x|0)<1|((h|0)<0?1:(h|0)<=0?l[r+16>>2]<1:0))){p=i[(n+v<<2)+a>>2];u=i[r+12>>2];s=i[u+4>>2];w=0;while(1){q=s>>>3|0;m=q+i[u>>2]|0;h=j[m|0];t=m;m=s&7;z=t,A=yp(-2,m)&h,g[z|0]=A;h=q+i[u>>2]|0;g[h|0]=j[h|0]|(p>>>w&1)<>2]+1|0;i[u+4>>2]=s;w=w+1|0;if((x|0)!=(w|0)){continue}break}}v=v+1|0;if((v|0)!=(c|0)){continue}break}}f=f-c|0;if((f|0)>-1){continue}break}}og(k,e);Wj(r);a=i[e+20>>2];if((a|0)<0?1:(a|0)<=0?l[e+16>>2]<=0:0){ca(e,i[e+4>>2],i[r>>2],i[r+4>>2])}a=i[k>>2];if(a){i[k+4>>2]=a;bp(a)}a=i[r+12>>2];i[r+12>>2]=0;if(a){bp(a)}a=i[r>>2];if(a){i[r+4>>2]=a;bp(a)}F=k+336|0;return 1}function Ra(a,b){var c=0,d=0,e=0,f=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=F+ -64|0;F=e;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+48>>2]=1065353216;c=i[a+80>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;l=ho(c);i[e+16>>2]=l;d=c+l|0;i[e+24>>2]=d;ip(l,0,c);i[e+20>>2]=d;while(1){c=b;d=i[c+48>>2];q=i[i[c>>2]>>2];t=r;d=up(i[c+40>>2],i[c+44>>2],r,0)+d|0;c=q+d|0;s=j[c|0]|j[c+1|0]<<8;h[e+30>>1]=s;c:{d:{e:{if(!n){break e}d=i[e+32>>2];q=s^318;c=q&n+ -1;u=xp(n)>>>0>1;f:{if(!u){break f}c=q;if(n>>>0>c>>>0){break f}c=(q>>>0)%(n>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}v=n+ -1|0;while(1){m=i[d+4>>2];g:{if((q|0)!=(m|0)){h:{if(!u){m=m&v;break h}if(m>>>0>>0){break h}m=(m>>>0)%(n>>>0)|0}if((c|0)==(m|0)){break g}break e}if(k[d+8>>1]==(s|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+12>>2]=p;h[e+8>>1]=s;tb(e+56|0,e+32|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,p)|0,e+30|0,c);l=i[e+16>>2];i[l+(t<<2)>>2]=p;p=p+1|0;break c}i[(t<<2)+l>>2]=i[d+12>>2]}c=f;f=r+1|0;if(f>>>0<1){c=c+1|0}r=f;f=c;d=i[a+80>>2];if(!c&r>>>0>>0|c>>>0<0){n=i[e+36>>2];continue}break}if((d|0)!=(p|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+l>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}l=i[e+16>>2];if(!d){break i}b=i[a+68>>2];m=0;while(1){c=m<<2;i[c+b>>2]=i[c+l>>2];m=m+1|0;if((m|0)!=(d|0)){continue}break}}i[a+80>>2]=p}if(!l){break b}i[e+20>>2]=l;bp(l)}d=i[e+40>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+32>>2];i[e+32>>2]=0;if(a){bp(a)}F=e- -64|0;return p}Ho();x()}function Na(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;e=F+ -64|0;F=e;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+48>>2]=1065353216;c=i[a+80>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}c=c<<2;h=ho(c);i[e+16>>2]=h;d=c+h|0;i[e+24>>2]=d;ip(h,0,c);i[e+20>>2]=d;while(1){c=b;d=i[c+48>>2];n=i[i[c>>2]>>2];r=p;d=up(i[c+40>>2],i[c+44>>2],p,0)+d|0;q=j[n+d|0];g[e+31|0]=q;c:{d:{e:{if(!l){break e}d=i[e+32>>2];n=q^318;c=n&l+ -1;s=xp(l)>>>0>1;f:{if(!s){break f}c=n;if(c>>>0>>0){break f}c=(n>>>0)%(l>>>0)|0}d=i[(c<<2)+d>>2];if(!d){break e}d=i[d>>2];if(!d){break e}t=l+ -1|0;while(1){k=i[d+4>>2];g:{if((n|0)!=(k|0)){h:{if(!s){k=k&t;break h}if(k>>>0>>0){break h}k=(k>>>0)%(l>>>0)|0}if((c|0)==(k|0)){break g}break e}if(j[d+8|0]==(q|0)){break d}}d=i[d>>2];if(d){continue}break}}i[e+12>>2]=m;g[e+8|0]=q;hb(e+56|0,e+32|0,e+8|0,e+8|0);c=i[a+40>>2];hp(i[i[a>>2]>>2]+o(c,m)|0,e+31|0,c);h=i[e+16>>2];i[h+(r<<2)>>2]=m;m=m+1|0;break c}i[(r<<2)+h>>2]=i[d+12>>2]}c=f;f=p+1|0;if(f>>>0<1){c=c+1|0}p=f;f=c;d=i[a+80>>2];if(!c&p>>>0>>0|c>>>0<0){l=i[e+36>>2];continue}break}if((d|0)!=(m|0)){i:{if(!j[a+84|0]){f=i[a+72>>2];b=i[a+68>>2];if((f|0)==(b|0)){break i}c=f-b|0;d=(c|0)>-1?c:-1;f=b-f|0;c=o((d|0)<1?d:1,((f|0)>(c|0)?f:c)>>>2|0);c=c>>>0>1?c:1;d=0;while(1){f=b+(d<<2)|0;i[f>>2]=i[(i[f>>2]<<2)+h>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}break i}g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;j:{if(d>>>0>b>>>0){Xa(a+68|0,d-b|0,1420);d=i[a+80>>2];break j}if(d>>>0>=b>>>0){break j}i[a+72>>2]=c+(d<<2)}h=i[e+16>>2];if(!d){break i}b=i[a+68>>2];k=0;while(1){c=k<<2;i[c+b>>2]=i[c+h>>2];k=k+1|0;if((k|0)!=(d|0)){continue}break}}i[a+80>>2]=m}if(!h){break b}i[e+20>>2]=h;bp(h)}d=i[e+40>>2];if(d){while(1){a=i[d>>2];bp(d);d=a;if(d){continue}break}}a=i[e+32>>2];i[e+32>>2]=0;if(a){bp(a)}F=e- -64|0;return m}Ho();x()}function Ml(a){var b=0,c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=F-32|0;F=e;b=i[a>>2];d=i[a+4>>2];g[e|0]=0;o=Cj(e+16|0,d-b>>2,e);i[e+8>>2]=0;i[e>>2]=0;k=i[a>>2];b=i[a+4>>2];a:{b:{while(1){c:{p=0;l=0;if((b|0)==(k|0)){break c}while(1){c=i[o>>2];d:{if(i[c+(l>>>3&536870908)>>2]>>>l&1){break d}d=i[e>>2];i[e+4>>2]=d;b=l;while(1){e:{f=b+1|0;q=b;b=(f>>>0)%3|0?f:b+ -2|0;if((b|0)==-1){break e}b=i[i[a+12>>2]+(b<<2)>>2];if((b|0)==-1){break e}f=b+1|0;b=(f>>>0)%3|0?f:b+ -2|0;if((l|0)==(b|0)|(b|0)==-1){break e}if(!(i[(b>>>3&536870908)+c>>2]>>>b&1)){continue}}break}f=d;b=q;while(1){j=(b>>>3&536870908)+c|0;i[j>>2]=i[j>>2]|1<>>0)%3|0?j:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;if((d|0)!=(f|0)){n=i[(j<<2)+k>>2];b=f;while(1){f:{if((n|0)!=i[b>>2]){break f}c=-1;h=i[b+4>>2];c=(m|0)!=-1?i[i[a+12>>2]+(m<<2)>>2]:c;if((h|0)==(c|0)){break f}d=-1;d=(h|0)!=-1?i[i[a+12>>2]+(h<<2)>>2]:d;if((c|0)!=-1){i[i[a+12>>2]+(c<<2)>>2]=-1}b=i[a+12>>2];if((d|0)!=-1){i[b+(d<<2)>>2]=-1}i[b+(m<<2)>>2]=-1;i[b+(h<<2)>>2]=-1;p=1;break d}b=b+8|0;if((d|0)!=(b|0)){continue}break}}n=m<<2;k=i[n+k>>2];g:{if(i[e+8>>2]!=(d|0)){b=d;i[b>>2]=k;i[b+4>>2]=j;i[e+4>>2]=b+8;break g}d=d-f|0;h=d>>3;c=h+1|0;if(c>>>0>=536870912){break b}b=d>>2;c=h>>>0<268435455?b>>>0>>0?c:b:536870911;b=0;h:{if(!c){break h}if(c>>>0>=536870912){break a}b=ho(c<<3)}h=b+(h<<3)|0;i[h>>2]=k;i[h+4>>2]=j;j=b+(c<<3)|0;c=h+8|0;if((d|0)>=1){hp(b,f,d)}i[e+8>>2]=j;i[e+4>>2]=c;i[e>>2]=b;if(!f){break g}bp(f)}i:{if((m|0)==-1){break i}b=i[n+i[a+12>>2]>>2];if((b|0)==-1){break i}b=b+((b>>>0)%3|0?-1:2)|0;if((q|0)==(b|0)|(b|0)==-1){break i}k=i[a>>2];c=i[o>>2];d=i[e+4>>2];f=i[e>>2];continue}break}k=i[a>>2]}l=l+1|0;b=i[a+4>>2];if(l>>>0>2>>>0){continue}break}if(p){continue}}break}a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[o>>2];if(a){bp(a)}F=e+32|0;return}Ho();x()}za(16516);x()}function Wh(a,b,c){var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=F+ -64|0;F=e;d=ho(80);o=i[b+8>>2];i[d+12>>2]=0;i[d+16>>2]=0;i[d>>2]=12588;i[d+4>>2]=0;k=d+20|0;f=k;i[f>>2]=0;i[f+4>>2]=0;p=d+28|0;f=p;i[f>>2]=0;i[f+4>>2]=0;i[d+36>>2]=0;i[d+40>>2]=0;l=d+44|0;f=l;i[f>>2]=0;i[f+4>>2]=0;i[d+52>>2]=0;i[d+76>>2]=0;i[d+72>>2]=c;i[d+68>>2]=o;i[d+64>>2]=0;i[d+56>>2]=0;i[d+60>>2]=0;i[d+8>>2]=12752;f=i[b+12>>2];q=e+36|0;h=q;i[h>>2]=0;i[h+4>>2]=0;r=e+28|0;h=r;i[h>>2]=0;i[h+4>>2]=0;m=e+20|0;h=m;i[h>>2]=0;i[h+4>>2]=0;h=e+12|0;i[h>>2]=0;i[h+4>>2]=0;i[e+52>>2]=0;i[e+56>>2]=0;i[e+44>>2]=0;i[e+48>>2]=0;i[e+4>>2]=0;i[e+8>>2]=0;i[e>>2]=12752;i[e+4>>2]=f;j=i[f>>2];n=i[f+4>>2];g[e+63|0]=0;Uh(e+24|0,(n-j>>2>>>0)/3|0,e+63|0);j=i[e+4>>2];n=i[j+28>>2];j=i[j+24>>2];g[e+63|0]=0;Uh(q,n-j>>2,e+63|0);i[m>>2]=d;i[e+16>>2]=o;i[h>>2]=c;i[e+8>>2]=f;i[d+76>>2]=b+72;i[p>>2]=i[m>>2];b=i[h+4>>2];i[k>>2]=i[h>>2];i[k+4>>2]=b;b=i[e+8>>2];i[d+12>>2]=i[e+4>>2];i[d+16>>2]=b;a:{b:{b=d;f=i[r>>2];if(f){h=d+32|0;c:{if(f>>>0<=i[d+40>>2]<<5>>>0){c=f+ -1>>>5|0;f=i[h>>2];break c}c=i[h>>2];if(c){bp(c);i[d+40>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;f=i[e+28>>2]}if((f|0)<=-1){break b}c=f+ -1>>>5|0;h=c+1|0;f=ho(h<<2);i[d+40>>2]=h;i[d+36>>2]=0;i[d+32>>2]=f}jp(f,i[e+24>>2],(c<<2)+4|0);c=i[e+28>>2]}else{c=0}i[b+36>>2]=c;c=d;f=i[e+40>>2];if(f){d:{if(f>>>0<=i[d+52>>2]<<5>>>0){b=f+ -1>>>5|0;f=i[l>>2];break d}b=i[l>>2];if(b){bp(b);i[d+52>>2]=0;i[d+44>>2]=0;i[d+48>>2]=0;f=i[e+40>>2]}if((f|0)<=-1){break a}b=f+ -1>>>5|0;h=b+1|0;f=ho(h<<2);i[d+52>>2]=h;i[d+48>>2]=0;i[d+44>>2]=f}jp(f,i[e+36>>2],(b<<2)+4|0);b=i[e+40>>2]}else{b=0}i[c+48>>2]=b;Vh(d+56|0,i[e+48>>2],i[e+52>>2]);i[a>>2]=d;i[e>>2]=12752;a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}i[e>>2]=12568;a=i[e+36>>2];if(a){bp(a)}a=i[e+24>>2];if(a){bp(a)}F=e- -64|0;return}Ho();x()}Ho();x()}function ne(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,j=0,k=0,l=0,m=0,n=0,o=0,p=0;i[a+8>>2]=e;g=a+32|0;h=i[g>>2];f=i[a+36>>2]-h>>2;a:{if(f>>>0>>0){Bd(g,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=h+(e<<2)}b:{if(!d){break b}h=1;f=i[b>>2];c:{if((d|0)<=1){g=f;break c}g=f;while(1){j=i[(h<<2)+b>>2];k=(j|0)<(g|0);g=k?j:g;f=k?f:(j|0)>(f|0)?j:f;h=h+1|0;if((h|0)!=(d|0)){continue}break}}i[a+16>>2]=f;i[a+12>>2]=g;h=f;f=(f>>31)-((g>>31)+(f>>>0>>0)|0)|0;g=h-g|0;if(!f&g>>>0>2147483646|f>>>0>0){break b}f=g+1|0;i[a+20>>2]=f;g=(f|0)/2|0;i[a+24>>2]=g;i[a+28>>2]=0-g;if(f&1){break b}i[a+24>>2]=g+ -1}j=d-e|0;if((j|0)>=1){g=i[a+8>>2];o=0-e<<2;while(1){if((g|0)>=1){d=j<<2;p=d+c|0;n=b+d|0;d=n+o|0;h=0;while(1){f=0;d:{if((g|0)<=0){g=i[a+32>>2];break d}while(1){k=f<<2;l=i[k+d>>2];m=i[a+16>>2];e:{if((l|0)>(m|0)){g=i[a+32>>2];i[k+g>>2]=m;break e}g=i[a+32>>2];k=k+g|0;m=i[a+12>>2];if((l|0)<(m|0)){i[k>>2]=m;break e}i[k>>2]=l}f=f+1|0;if((f|0)>2]){continue}break}}f=h<<2;d=f+p|0;f=i[f+n>>2]-i[f+g>>2]|0;i[d>>2]=f;f:{if((f|0)>2]){f=f+i[a+20>>2]|0}else{if((f|0)<=i[a+24>>2]){break f}f=f-i[a+20>>2]|0}i[d>>2]=f}d=g;h=h+1|0;g=i[a+8>>2];if((h|0)<(g|0)){continue}break}}j=j-e|0;if((j|0)>0){continue}break}}h=0;d=(e&1073741823)!=(e|0)?-1:e<<2;e=ip(ho(d),0,d);g=i[a+8>>2];if((g|0)>=1){d=e;while(1){f=0;g:{if((g|0)<=0){g=i[a+32>>2];break g}while(1){j=f<<2;k=i[j+d>>2];l=i[a+16>>2];h:{if((k|0)>(l|0)){g=i[a+32>>2];i[j+g>>2]=l;break h}g=i[a+32>>2];j=j+g|0;l=i[a+12>>2];if((k|0)<(l|0)){i[j>>2]=l;break h}i[j>>2]=k}f=f+1|0;if((f|0)>2]){continue}break}}f=h<<2;d=f+c|0;f=i[b+f>>2]-i[f+g>>2]|0;i[d>>2]=f;i:{if((f|0)>2]){f=f+i[a+20>>2]|0}else{if((f|0)<=i[a+24>>2]){break i}f=f-i[a+20>>2]|0}i[d>>2]=f}d=g;h=h+1|0;g=i[a+8>>2];if((h|0)<(g|0)){continue}break}}bp(e);return 1}function Wf(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;a:{if(!i[a+8>>2]){break a}g=i[a>>2];j=a+4|0;i[a>>2]=j;i[i[a+4>>2]+8>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;d=i[g+4>>2];f=d?d:g;if(!f){wf(a,f);break a}g=i[f+8>>2];b:{if(!g){break b}d=i[g>>2];if((f|0)==(d|0)){i[g>>2]=0;d=i[g+4>>2];if(!d){e=g;break b}while(1){e=d;d=i[d>>2];if(d){continue}d=i[e+4>>2];if(d){continue}break}break b}i[g+4>>2]=0;if(!d){e=g;break b}while(1){e=d;d=i[d>>2];if(d){continue}d=i[e+4>>2];if(d){continue}break}}c:{if((b|0)==(c|0)){g=f;break c}h=b;while(1){g=e;i[f+16>>2]=i[h+16>>2];if((f|0)!=(h|0)){xf(f+20|0,i[h+20>>2],h+24|0)}d:{b=i[j>>2];if(!b){b=j;d=b;break d}e=i[f+16>>2];while(1){e:{if((e|0)>2]){d=i[b>>2];if(d){break e}d=b;break d}d=i[b+4>>2];if(d){break e}d=b+4|0;break d}b=d;continue}}i[f+8>>2]=b;i[f>>2]=0;i[f+4>>2]=0;i[d>>2]=f;b=i[i[a>>2]>>2];if(b){i[a>>2]=b;f=i[d>>2]}Kf(i[a+4>>2],f);i[a+8>>2]=i[a+8>>2]+1;e=0;f:{if(!g){break f}d=i[g+8>>2];if(!d){break f}b=i[d>>2];if((g|0)==(b|0)){i[d>>2]=0;b=i[d+4>>2];if(!b){e=d;break f}while(1){e=b;b=i[b>>2];if(b){continue}b=i[e+4>>2];if(b){continue}break}break f}i[d+4>>2]=0;if(!b){e=d;break f}while(1){e=b;b=i[b>>2];if(b){continue}b=i[e+4>>2];if(b){continue}break}}d=i[h+4>>2];g:{if(!d){b=i[h+8>>2];if(i[b>>2]==(h|0)){break g}f=h+8|0;while(1){d=i[f>>2];f=d+8|0;b=i[d+8>>2];if((d|0)!=i[b>>2]){continue}break}break g}while(1){b=d;d=i[d>>2];if(d){continue}break}}if(!g){break c}h=b;f=g;if((b|0)!=(c|0)){continue}break}}wf(a,g);if(!e){break a}while(1){d=i[e+8>>2];if(d){e=d;continue}break}wf(a,e)}if((b|0)!=(c|0)){while(1){e=b;$f(a,b+16|0);d=i[b+4>>2];h:{if(!d){b=i[e+8>>2];if((e|0)==i[b>>2]){break h}e=e+8|0;while(1){d=i[e>>2];e=d+8|0;b=i[d+8>>2];if((d|0)!=i[b>>2]){continue}break}break h}while(1){b=d;d=i[d>>2];if(d){continue}break}}if((b|0)!=(c|0)){continue}break}}}function sf(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;f=F-32|0;F=f;m=f;e=i[a>>2];h=i[e>>2];d=i[e+4>>2];n=+(h>>>0)+ +(d>>>0)*4294967296;d=i[e+12>>2]+d|0;e=i[e+8>>2];h=e+h|0;if(h>>>0>>0){d=d+1|0}e=!(d|h);n=n/(+((e?1:h)>>>0)+ +((e?0:d)>>>0)*4294967296)*256+.5;a:{if(n<4294967296&n>=0){d=~~n>>>0;break a}d=0}c=d>>>0<255?d:255;p=!(c&255)+c|0;g[m+23|0]=p;h=i[a+16>>2];r=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;b:{c:{c=(h-r<<1)- -64|0;if(c){if((c|0)<=-1){break c}k=ho(c);i[f+8>>2]=k;d=c+k|0;i[f+16>>2]=d;ip(k,0,c);i[f+12>>2]=d}c=i[a+28>>2]+ -1|0;if((c|0)<0){e=4096;break b}m=0-p|0;s=m&255;t=i[a+24>>2];e=4096;while(1){q=t&1<>>0>=d<<12>>>0){g[j+k|0]=e;j=j+1|0;e=e>>>8|0}u=256-d|0;d=d<<3;up(i[d+14192>>2],0,e,0);e=((q?0:s)+e|0)+o(u,H+e>>>i[d+14196>>2]|0)|0;c=c+ -1|0;if((c|0)>-1){continue}break}break b}Ho();x()}if((h|0)!=(r|0)){m=0-p|0;s=m&255;while(1){h=h+ -4|0;t=i[h>>2];c=31;while(1){d=c;q=t&1<>>0>=c<<12>>>0){g[j+k|0]=e;j=j+1|0;e=e>>>8|0}u=256-c|0;c=c<<3;up(i[c+14192>>2],0,e,0);e=((q?0:s)+e|0)+o(u,H+e>>>i[c+14196>>2]|0)|0;c=d+ -1|0;if(d){continue}break}if((h|0)!=(r|0)){continue}break}}c=e+ -4096|0;d:{e:{if(c>>>0<=63){e=j+k|0;d=1;break e}if(c>>>0<=16383){c=j+k|0;d=e+12288|0;g[c|0]=d;e=c+1|0;c=d>>>8|0;d=2;break e}if(c>>>0>4194303){break d}c=j+k|0;d=e+8384512|0;g[c|0]=d;g[c+1|0]=d>>>8;e=c+2|0;c=d>>>16|0;d=3}g[e|0]=c;j=d+j|0}c=i[b+20>>2];if((c|0)<0?1:(c|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],f+23|0,f+24|0)}Jb(j,b);c=i[b+20>>2];if((c|0)<0?1:(c|0)<=0?l[b+16>>2]<=0:0){d=b;c=i[b+4>>2];b=i[f+8>>2];ca(d,c,b,b+j|0)}i[f+24>>2]=0;i[f+28>>2]=0;of(a,f+24|0);i[a+24>>2]=0;i[a+28>>2]=0;i[a+16>>2]=i[a+12>>2];a=i[f+8>>2];if(a){i[f+12>>2]=a;bp(a)}F=f+32|0}function ti(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0;e=F-16|0;F=e;i[a+4>>2]=b;i[a+8>>2]=i[b+56>>2];i[a+188>>2]=i[a+184>>2];f=i[b+48>>2];b=ho(32);i[e>>2]=b;i[e+4>>2]=19;i[e+8>>2]=-2147483616;g[b+19|0]=0;c=j[11251]|j[11252]<<8|(j[11253]<<16|j[11254]<<24);g[b+15|0]=c;g[b+16|0]=c>>>8;g[b+17|0]=c>>>16;g[b+18|0]=c>>>24;c=j[11248]|j[11249]<<8|(j[11250]<<16|j[11251]<<24);d=j[11244]|j[11245]<<8|(j[11246]<<16|j[11247]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11240]|j[11241]<<8|(j[11242]<<16|j[11243]<<24);d=j[11236]|j[11237]<<8|(j[11238]<<16|j[11239]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;b=Sb(f,e);if(g[e+11|0]<=-1){bp(i[e>>2])}f=i[i[a+4>>2]+48>>2];a:{if(b){b=ho(32);i[e>>2]=b;i[e+4>>2]=19;i[e+8>>2]=-2147483616;g[b+19|0]=0;c=j[11251]|j[11252]<<8|(j[11253]<<16|j[11254]<<24);g[b+15|0]=c;g[b+16|0]=c>>>8;g[b+17|0]=c>>>16;g[b+18|0]=c>>>24;c=j[11248]|j[11249]<<8|(j[11250]<<16|j[11251]<<24);d=j[11244]|j[11245]<<8|(j[11246]<<16|j[11247]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11240]|j[11241]<<8|(j[11242]<<16|j[11243]<<24);d=j[11236]|j[11237]<<8|(j[11238]<<16|j[11239]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;h=a,k=ck(f,e,0),g[h+352|0]=k;if(g[e+11|0]>-1){break a}bp(i[e>>2]);break a}if((_b(f)|0)>=6){g[a+352|0]=1;break a}g[a+352|0]=0}F=e+16|0;return 1}function rf(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i[a>>2];d=e;l=d;f=i[d+12>>2];h=i[d+8>>2];c=c>>>1&1431655765|c<<1&-1431655766;c=c>>>2&858993459|c<<2&-858993460;c=c>>>4&252645135|c<<4&-252645136;k=32-b|0;g=yp(c>>>8&16711935|c<<8&-16711936,16)>>>k|0;c=g-(g>>>1&1431655765)|0;c=(c>>>2&858993459)+(c&858993459)|0;j=o((c>>>4|0)+c&252645135,16843009)>>>24|0;c=j;h=h+c|0;if(h>>>0>>0){f=f+1|0}i[l+8>>2]=h;i[d+12>>2]=f;c=e;d=b-j|0;f=d+i[c>>2]|0;e=i[c+4>>2]+(d>>31)|0;i[c>>2]=f;i[c+4>>2]=f>>>0>>0?e+1|0:e;a:{b:{c:{d:{c=i[a+28>>2];j=32-c|0;e:{f:{if((j|0)>=(b|0)){b=b+c|0;i[a+28>>2]=b;e=-1>>>k<>2]&(e^-1)|e&g<>2]=f;if((b|0)!=32){break e}b=i[a+16>>2];if((b|0)!=i[a+20>>2]){i[b>>2]=f;i[a+16>>2]=b+4;b=0;c=0;break f}c=i[a+12>>2];e=b-c|0;d=e>>2;g=d+1|0;if(g>>>0>=1073741824){break d}j=e>>1;g=d>>>0<536870911?j>>>0>>0?g:j:1073741823;b=0;g:{if(!g){break g}if(g>>>0>=1073741824){break c}b=ho(g<<2)}d=b+(d<<2)|0;i[d>>2]=f;g=b+(g<<2)|0;f=d+4|0;if((e|0)>=1){hp(b,c,e)}i[a+20>>2]=g;i[a+16>>2]=f;i[a+12>>2]=b;b=0;if(!c){c=0;break f}bp(c);c=0;break f}k=i[a+24>>2]&(-1<>2]=k;c=i[a+16>>2];h:{if((c|0)!=i[a+20>>2]){i[c>>2]=k;i[a+16>>2]=c+4;break h}e=i[a+12>>2];f=c-e|0;h=f>>2;d=h+1|0;if(d>>>0>=1073741824){break b}c=f>>1;d=h>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;i:{if(!d){break i}if(d>>>0>=1073741824){break a}c=ho(d<<2)}h=c+(h<<2)|0;i[h>>2]=k;d=c+(d<<2)|0;k=h+4|0;if((f|0)>=1){hp(c,e,f)}i[a+20>>2]=d;i[a+16>>2]=k;i[a+12>>2]=c;if(!e){break h}bp(e)}c=b-j|0;b=-1>>>32-c&g>>>j}i[a+28>>2]=c;i[a+24>>2]=b}return}Ho();x()}za(10036);x()}Ho();x()}za(10036);x()}function Nh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0;e=F-16|0;F=e;i[a+4>>2]=b;i[a+8>>2]=i[b+56>>2];i[a+188>>2]=i[a+184>>2];f=i[b+48>>2];b=ho(32);i[e>>2]=b;i[e+4>>2]=19;i[e+8>>2]=-2147483616;g[b+19|0]=0;c=j[11251]|j[11252]<<8|(j[11253]<<16|j[11254]<<24);g[b+15|0]=c;g[b+16|0]=c>>>8;g[b+17|0]=c>>>16;g[b+18|0]=c>>>24;c=j[11248]|j[11249]<<8|(j[11250]<<16|j[11251]<<24);d=j[11244]|j[11245]<<8|(j[11246]<<16|j[11247]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11240]|j[11241]<<8|(j[11242]<<16|j[11243]<<24);d=j[11236]|j[11237]<<8|(j[11238]<<16|j[11239]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;b=Sb(f,e);if(g[e+11|0]<=-1){bp(i[e>>2])}f=i[i[a+4>>2]+48>>2];a:{if(b){b=ho(32);i[e>>2]=b;i[e+4>>2]=19;i[e+8>>2]=-2147483616;g[b+19|0]=0;c=j[11251]|j[11252]<<8|(j[11253]<<16|j[11254]<<24);g[b+15|0]=c;g[b+16|0]=c>>>8;g[b+17|0]=c>>>16;g[b+18|0]=c>>>24;c=j[11248]|j[11249]<<8|(j[11250]<<16|j[11251]<<24);d=j[11244]|j[11245]<<8|(j[11246]<<16|j[11247]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11240]|j[11241]<<8|(j[11242]<<16|j[11243]<<24);d=j[11236]|j[11237]<<8|(j[11238]<<16|j[11239]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;h=a,k=ck(f,e,0),g[h+288|0]=k;if(g[e+11|0]>-1){break a}bp(i[e>>2]);break a}if((_b(f)|0)>=6){g[a+288|0]=1;break a}g[a+288|0]=0}F=e+16|0;return 1}function tf(a){var b=0,c=0,d=0,e=0;d=F-16|0;F=d;Xj(a);b=a+16|0;i[b>>2]=0;i[b+4>>2]=0;i[a+12>>2]=b;e=Xj(a+24|0);a=ho(32);i[d>>2]=a;i[d+4>>2]=20;i[d+8>>2]=-2147483616;g[a+20|0]=0;b=j[10408]|j[10409]<<8|(j[10410]<<16|j[10411]<<24);g[a+16|0]=b;g[a+17|0]=b>>>8;g[a+18|0]=b>>>16;g[a+19|0]=b>>>24;b=j[10404]|j[10405]<<8|(j[10406]<<16|j[10407]<<24);c=j[10400]|j[10401]<<8|(j[10402]<<16|j[10403]<<24);g[a+8|0]=c;g[a+9|0]=c>>>8;g[a+10|0]=c>>>16;g[a+11|0]=c>>>24;g[a+12|0]=b;g[a+13|0]=b>>>8;g[a+14|0]=b>>>16;g[a+15|0]=b>>>24;b=j[10396]|j[10397]<<8|(j[10398]<<16|j[10399]<<24);c=j[10392]|j[10393]<<8|(j[10394]<<16|j[10395]<<24);g[a|0]=c;g[a+1|0]=c>>>8;g[a+2|0]=c>>>16;g[a+3|0]=c>>>24;g[a+4|0]=b;g[a+5|0]=b>>>8;g[a+6|0]=b>>>16;g[a+7|0]=b>>>24;Yj(e,d,1);if(g[d+11|0]<=-1){bp(i[d>>2])}a=ho(32);i[d>>2]=a;i[d+4>>2]=22;i[d+8>>2]=-2147483616;g[a+22|0]=0;b=j[10431]|j[10432]<<8|(j[10433]<<16|j[10434]<<24);c=j[10427]|j[10428]<<8|(j[10429]<<16|j[10430]<<24);g[a+14|0]=c;g[a+15|0]=c>>>8;g[a+16|0]=c>>>16;g[a+17|0]=c>>>24;g[a+18|0]=b;g[a+19|0]=b>>>8;g[a+20|0]=b>>>16;g[a+21|0]=b>>>24;b=j[10425]|j[10426]<<8|(j[10427]<<16|j[10428]<<24);c=j[10421]|j[10422]<<8|(j[10423]<<16|j[10424]<<24);g[a+8|0]=c;g[a+9|0]=c>>>8;g[a+10|0]=c>>>16;g[a+11|0]=c>>>24;g[a+12|0]=b;g[a+13|0]=b>>>8;g[a+14|0]=b>>>16;g[a+15|0]=b>>>24;b=j[10417]|j[10418]<<8|(j[10419]<<16|j[10420]<<24);c=j[10413]|j[10414]<<8|(j[10415]<<16|j[10416]<<24);g[a|0]=c;g[a+1|0]=c>>>8;g[a+2|0]=c>>>16;g[a+3|0]=c>>>24;g[a+4|0]=b;g[a+5|0]=b>>>8;g[a+6|0]=b>>>16;g[a+7|0]=b>>>24;Yj(e,d,1);if(g[d+11|0]<=-1){bp(i[d>>2])}F=d+16|0}function Qf(a){var b=0,c=0,d=0,e=0;d=F-16|0;F=d;Xj(a);b=a+16|0;i[b>>2]=0;i[b+4>>2]=0;i[a+12>>2]=b;e=Xj(a+24|0);a=ho(32);i[d>>2]=a;i[d+4>>2]=20;i[d+8>>2]=-2147483616;g[a+20|0]=0;b=j[10676]|j[10677]<<8|(j[10678]<<16|j[10679]<<24);g[a+16|0]=b;g[a+17|0]=b>>>8;g[a+18|0]=b>>>16;g[a+19|0]=b>>>24;b=j[10672]|j[10673]<<8|(j[10674]<<16|j[10675]<<24);c=j[10668]|j[10669]<<8|(j[10670]<<16|j[10671]<<24);g[a+8|0]=c;g[a+9|0]=c>>>8;g[a+10|0]=c>>>16;g[a+11|0]=c>>>24;g[a+12|0]=b;g[a+13|0]=b>>>8;g[a+14|0]=b>>>16;g[a+15|0]=b>>>24;b=j[10664]|j[10665]<<8|(j[10666]<<16|j[10667]<<24);c=j[10660]|j[10661]<<8|(j[10662]<<16|j[10663]<<24);g[a|0]=c;g[a+1|0]=c>>>8;g[a+2|0]=c>>>16;g[a+3|0]=c>>>24;g[a+4|0]=b;g[a+5|0]=b>>>8;g[a+6|0]=b>>>16;g[a+7|0]=b>>>24;Yj(e,d,1);if(g[d+11|0]<=-1){bp(i[d>>2])}a=ho(32);i[d>>2]=a;i[d+4>>2]=22;i[d+8>>2]=-2147483616;g[a+22|0]=0;b=j[10699]|j[10700]<<8|(j[10701]<<16|j[10702]<<24);c=j[10695]|j[10696]<<8|(j[10697]<<16|j[10698]<<24);g[a+14|0]=c;g[a+15|0]=c>>>8;g[a+16|0]=c>>>16;g[a+17|0]=c>>>24;g[a+18|0]=b;g[a+19|0]=b>>>8;g[a+20|0]=b>>>16;g[a+21|0]=b>>>24;b=j[10693]|j[10694]<<8|(j[10695]<<16|j[10696]<<24);c=j[10689]|j[10690]<<8|(j[10691]<<16|j[10692]<<24);g[a+8|0]=c;g[a+9|0]=c>>>8;g[a+10|0]=c>>>16;g[a+11|0]=c>>>24;g[a+12|0]=b;g[a+13|0]=b>>>8;g[a+14|0]=b>>>16;g[a+15|0]=b>>>24;b=j[10685]|j[10686]<<8|(j[10687]<<16|j[10688]<<24);c=j[10681]|j[10682]<<8|(j[10683]<<16|j[10684]<<24);g[a|0]=c;g[a+1|0]=c>>>8;g[a+2|0]=c>>>16;g[a+3|0]=c>>>24;g[a+4|0]=b;g[a+5|0]=b>>>8;g[a+6|0]=b>>>16;g[a+7|0]=b>>>24;Yj(e,d,1);if(g[d+11|0]<=-1){bp(i[d>>2])}F=d+16|0}function ij(a,b){var c=0,d=0,e=0;i[a>>2]=i[b>>2];i[a+4>>2]=i[b+4>>2];i[a+8>>2]=i[b+8>>2];c=b+12|0;i[a+12>>2]=i[c>>2];i[c>>2]=0;i[b+4>>2]=0;i[b+8>>2]=0;c=b+16|0;i[a+16>>2]=i[c>>2];i[a+20>>2]=i[b+20>>2];d=b+24|0;i[a+24>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=j[b+28|0];e=a+40|0;i[e>>2]=0;c=a+32|0;i[c>>2]=0;i[c+4>>2]=0;g[a+28|0]=d;d=c;c=b+32|0;i[d>>2]=i[c>>2];i[a+36>>2]=i[b+36>>2];d=b+40|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a+52|0;i[d>>2]=0;c=a+44|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+44|0;i[e>>2]=i[c>>2];i[a+48>>2]=i[b+48>>2];e=d;d=b+52|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a- -64|0;i[d>>2]=0;c=a+56|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+56|0;i[e>>2]=i[c>>2];i[a+60>>2]=i[b+60>>2];e=d;d=b- -64|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;i[a+68>>2]=i[b+68>>2];d=i[b+72>>2];e=a+84|0;i[e>>2]=0;c=a+76|0;i[c>>2]=0;i[c+4>>2]=0;i[a+72>>2]=d;d=c;c=b+76|0;i[d>>2]=i[c>>2];i[a+80>>2]=i[b+80>>2];d=b+84|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a+96|0;i[d>>2]=0;c=a+88|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+88|0;i[e>>2]=i[c>>2];i[a+92>>2]=i[b+92>>2];e=d;d=b+96|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;c=j[b+100|0];d=a+112|0;i[d>>2]=0;i[a+104>>2]=0;i[a+108>>2]=0;g[a+100|0]=c;i[a+104>>2]=i[b+104>>2];i[a+108>>2]=i[b+108>>2];c=b+112|0;i[d>>2]=i[c>>2];i[c>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;d=a+124|0;i[d>>2]=0;c=a+116|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+116|0;i[e>>2]=i[c>>2];i[a+120>>2]=i[b+120>>2];e=d;d=b+124|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;i[a+128>>2]=i[b+128>>2];i[a+132>>2]=i[b+132>>2];return a}function pj(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=F-16|0;F=g;i[g+8>>2]=0;i[g>>2]=0;i[g+4>>2]=0;d=i[a+56>>2];c=i[d+96>>2];l=i[d+100>>2]-c|0;d=(l|0)/12|0;a:{if(!l){break a}n=d>>>0>1?d:1;d=0;l=0;b:{while(1){c:{m=o(l,12)+c|0;h=i[m>>2];c=h-j|0;e=c>>31;j=(e^c+e)<<1|c>>>31;d:{if((b|0)!=(d|0)){i[b>>2]=j;b=b+4|0;i[g+4>>2]=b;break d}e=d-f|0;d=e>>2;b=d+1|0;if(b>>>0>=1073741824){break c}k=e>>1;b=d>>>0<536870911?k>>>0>>0?b:k:1073741823;c=0;e:{if(!b){break e}if(b>>>0>=1073741824){break b}c=ho(b<<2)}k=c+(d<<2)|0;i[k>>2]=j;d=c+(b<<2)|0;b=k+4|0;if((e|0)>=1){hp(c,f,e)}i[g+8>>2]=d;i[g+4>>2]=b;i[g>>2]=c;if(f){bp(f)}f=c}k=i[m+4>>2];c=k-h|0;e=c>>31;j=(e^c+e)<<1|c>>>31;f:{if((b|0)!=(d|0)){i[b>>2]=j;b=b+4|0;i[g+4>>2]=b;break f}e=d-f|0;d=e>>2;b=d+1|0;if(b>>>0>1073741823){break c}h=e>>1;b=d>>>0<536870911?h>>>0>>0?b:h:1073741823;c=0;g:{if(!b){break g}if(b>>>0>1073741823){break b}c=ho(b<<2)}h=c+(d<<2)|0;i[h>>2]=j;d=c+(b<<2)|0;b=h+4|0;if((e|0)>=1){hp(c,f,e)}i[g+8>>2]=d;i[g+4>>2]=b;i[g>>2]=c;if(f){bp(f)}f=c}j=i[m+8>>2];c=j-k|0;e=c>>31;m=(e^c+e)<<1|c>>>31;h:{if((b|0)!=(d|0)){i[b>>2]=m;b=b+4|0;i[g+4>>2]=b;break h}e=d-f|0;d=e>>2;b=d+1|0;if(b>>>0>1073741823){break c}h=e>>1;b=d>>>0<536870911?h>>>0>>0?b:h:1073741823;c=0;i:{if(!b){break i}if(b>>>0>1073741823){break b}c=ho(b<<2)}h=c+(d<<2)|0;i[h>>2]=m;d=c+(b<<2)|0;b=h+4|0;if((e|0)>=1){hp(c,f,e)}i[g+8>>2]=d;i[g+4>>2]=b;i[g>>2]=c;if(f){bp(f)}f=c}l=l+1|0;if((n|0)==(l|0)){break a}c=i[i[a+56>>2]+96>>2];continue}break}Ho();x()}za(13344);x()}kg(f,b-f>>2,1,0,i[a+44>>2]);if(f){bp(f)}F=g+16|0}function Qe(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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;h=F-32|0;F=h;d=(e&1073741823)!=(e|0)?-1:e<<2;p=ip(ho(d),0,d);d=i[a+40>>2];g=i[d>>2];a:{d=i[d+4>>2]-g|0;if((d|0)<5){break a}l=d>>2;f=d>>>2|0;d=f+ -1|0;if(l>>>0>d>>>0){q=i[a+32>>2];s=a+8|0;t=i[a+36>>2];while(1){m=o(d,e);b:{c:{g=i[(d<<2)+g>>2];if((g|0)==-1){break c}g=i[i[q+12>>2]+(g<<2)>>2];if((g|0)==-1){break c}j=-1;n=i[t>>2];k=i[q>>2];r=i[n+(i[k+(g<<2)>>2]<<2)>>2];l=g+1|0;l=(l>>>0)%3|0?l:g+ -2|0;if((l|0)!=-1){l=i[(l<<2)+k>>2]}else{l=-1}g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){j=i[(g<<2)+k>>2]}if((r|0)>=(d|0)){break c}g=i[(l<<2)+n>>2];if((g|0)>=(d|0)){break c}j=i[n+(j<<2)>>2];if((j|0)>=(d|0)){break c}if((e|0)>=1){j=o(e,j);k=o(e,g);n=o(e,r);g=0;while(1){i[(g<<2)+p>>2]=(i[(g+j<<2)+b>>2]+i[(g+k<<2)+b>>2]|0)-i[(g+n<<2)+b>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}}g=i[p>>2];j=i[p+4>>2];m=m<<2;k=m+b|0;n=i[k+4>>2];i[h+16>>2]=i[k>>2];i[h+20>>2]=n;i[h+8>>2]=g;i[h+12>>2]=j;break b}g=(o(f+ -2|0,e)<<2)+b|0;j=i[g>>2];g=i[g+4>>2];m=m<<2;k=m+b|0;n=i[k+4>>2];i[h+16>>2]=i[k>>2];i[h+20>>2]=n;i[h+8>>2]=j;i[h+12>>2]=g}ze(h+24|0,s,h+16|0,h+8|0);g=c+m|0;i[g>>2]=i[h+24>>2];i[g+4>>2]=i[h+28>>2];if((f|0)<3){break a}f=d;m=i[a+40>>2];g=i[m>>2];d=d+ -1|0;if(i[m+4>>2]-g>>2>>>0>d>>>0){continue}break}}Io();x()}if((e|0)>=1){ip(p,0,e<<2)}d=i[p>>2];e=i[p+4>>2];f=i[b+4>>2];i[h+16>>2]=i[b>>2];i[h+20>>2]=f;i[h+8>>2]=d;i[h+12>>2]=e;ze(h+24|0,a+8|0,h+16|0,h+8|0);i[c>>2]=i[h+24>>2];i[c+4>>2]=i[h+28>>2];bp(p);F=h+32|0;return 1}function ye(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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;h=F-32|0;F=h;d=(e&1073741823)!=(e|0)?-1:e<<2;n=ip(ho(d),0,d);d=i[a+40>>2];g=i[d>>2];a:{d=i[d+4>>2]-g|0;if((d|0)<5){break a}j=d>>2;f=d>>>2|0;d=f+ -1|0;if(j>>>0>d>>>0){q=i[a+32>>2];r=a+8|0;s=i[a+36>>2];while(1){k=o(d,e);b:{c:{g=i[(d<<2)+g>>2];if((g|0)==-1|i[i[q>>2]+(g>>>3&536870908)>>2]>>>g&1){break c}g=i[i[i[q+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break c}j=i[s>>2];l=i[q+28>>2];m=i[j+(i[l+(g<<2)>>2]<<2)>>2];if((m|0)>=(d|0)){break c}p=g+1|0;p=i[j+(i[l+(((p>>>0)%3|0?p:g+ -2|0)<<2)>>2]<<2)>>2];if((p|0)>=(d|0)){break c}g=i[j+(i[l+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(d|0)){break c}if((e|0)>=1){l=o(e,g);j=o(e,p);m=o(e,m);g=0;while(1){i[(g<<2)+n>>2]=(i[(g+l<<2)+b>>2]+i[(g+j<<2)+b>>2]|0)-i[(g+m<<2)+b>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}}g=i[n>>2];l=i[n+4>>2];k=k<<2;j=k+b|0;m=i[j+4>>2];i[h+16>>2]=i[j>>2];i[h+20>>2]=m;i[h+8>>2]=g;i[h+12>>2]=l;break b}g=(o(f+ -2|0,e)<<2)+b|0;l=i[g>>2];g=i[g+4>>2];k=k<<2;j=k+b|0;m=i[j+4>>2];i[h+16>>2]=i[j>>2];i[h+20>>2]=m;i[h+8>>2]=l;i[h+12>>2]=g}ze(h+24|0,r,h+16|0,h+8|0);g=c+k|0;i[g>>2]=i[h+24>>2];i[g+4>>2]=i[h+28>>2];if((f|0)<3){break a}f=d;k=i[a+40>>2];g=i[k>>2];d=d+ -1|0;if(i[k+4>>2]-g>>2>>>0>d>>>0){continue}break}}Io();x()}if((e|0)>=1){ip(n,0,e<<2)}d=i[n>>2];e=i[n+4>>2];f=i[b+4>>2];i[h+16>>2]=i[b>>2];i[h+20>>2]=f;i[h+8>>2]=d;i[h+12>>2]=e;ze(h+24|0,a+8|0,h+16|0,h+8|0);i[c>>2]=i[h+24>>2];i[c+4>>2]=i[h+28>>2];bp(n);F=h+32|0;return 1}function Nf(a,b,c,d,e){var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;a:{b:{c:{d:{e:{n=a+4|0;f:{if((n|0)==(b|0)){break f}f=j[b+27|0];h=f<<24>>24<0;k=j[e+11|0];p=k<<24>>24;g=(p|0)<0;f=h?i[b+20>>2]:f;k=g?i[e+4>>2]:k;l=f>>>0>>0;m=l?f:k;if(m){g=g?i[e>>2]:e;o=b+16|0;h=h?i[o>>2]:o;o=Km(g,h,m);if(!o){if(k>>>0>>0){break f}break e}if((o|0)>-1){break e}break f}if(k>>>0>=f>>>0){break d}}h=i[b>>2];d=b;g:{h:{if(i[a>>2]==(b|0)){break h}i:{if(h){f=h;while(1){d=f;f=i[f+4>>2];if(f){continue}break}break i}d=b+8|0;if(i[i[b+8>>2]>>2]==(b|0)){while(1){f=i[d>>2];d=f+8|0;if((f|0)==i[i[f+8>>2]>>2]){continue}break}}d=i[d>>2]}g=j[e+11|0];f=g<<24>>24<0;l=j[d+27|0];k=l<<24>>24<0;j:{g=f?i[e+4>>2]:g;l=k?i[d+20>>2]:l;m=g>>>0>>0?g:l;if(m){n=d+16|0;f=Km(k?i[n>>2]:n,f?i[e>>2]:e,m);if(f){break j}}if(l>>>0>>0){break h}break g}if((f|0)>-1){break g}}if(!h){i[c>>2]=b;return b}i[c>>2]=d;return d+4|0}return Of(a,c,e)}f=Km(h,g,m);if(f){break c}}if(l){break b}break a}if((f|0)>-1){break a}}h=i[b+4>>2];k:{if(h){f=h;while(1){d=f;f=i[f>>2];if(f){continue}break}break k}d=i[b+8>>2];if(i[d>>2]==(b|0)){break k}f=b+8|0;while(1){g=i[f>>2];f=g+8|0;d=i[g+8>>2];if((g|0)!=i[d>>2]){continue}break}}l:{m:{if((d|0)==(n|0)){break m}g=j[d+27|0];f=g<<24>>24<0;n:{g=f?i[d+20>>2]:g;l=g>>>0>>0?g:k;if(l){m=d+16|0;f=Km((p|0)<0?i[e>>2]:e,f?i[m>>2]:m,l);if(f){break n}}if(k>>>0>>0){break m}break l}if((f|0)>-1){break l}}if(!h){i[c>>2]=b;return b+4|0}i[c>>2]=d;return d}return Of(a,c,e)}i[c>>2]=b;i[d>>2]=b;return d}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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;i[a+8>>2]=e;i[a- -64>>2]=f;g=a+32|0;j=i[g>>2];f=i[a+36>>2]-j>>2;a:{if(f>>>0>>0){Bd(g,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=j+(e<<2)}b:{if(!d){break b}j=1;f=i[b>>2];c:{if((d|0)<=1){g=f;break c}g=f;while(1){h=i[(j<<2)+b>>2];k=(h|0)<(g|0);g=k?h:g;f=k?f:(h|0)>(f|0)?h:f;j=j+1|0;if((j|0)!=(d|0)){continue}break}}i[a+16>>2]=f;i[a+12>>2]=g;d=(f>>31)-((g>>31)+(f>>>0>>0)|0)|0;f=f-g|0;if(!d&f>>>0>2147483646|d>>>0>0){break b}d=f+1|0;i[a+20>>2]=d;f=(d|0)/2|0;i[a+24>>2]=f;i[a+28>>2]=0-f;if(d&1){break b}i[a+24>>2]=f+ -1}d=i[a+56>>2];g=i[d>>2];d:{d=i[d+4>>2]-g|0;if((d|0)<1){break d}h=(d>>>2|0)+ -1|0;if(d>>2>>>0>h>>>0){p=a+60|0;j=a+68|0;while(1){he(p,i[(h<<2)+g>>2],b,h);g=i[a+8>>2];if((g|0)>=1){d=o(e,h)<<2;q=d+c|0;r=b+d|0;d=j;k=0;while(1){f=0;e:{if((g|0)<=0){g=i[a+32>>2];break e}while(1){l=f<<2;n=i[l+d>>2];m=i[a+16>>2];f:{if((n|0)>(m|0)){g=i[a+32>>2];i[l+g>>2]=m;break f}g=i[a+32>>2];l=l+g|0;m=i[a+12>>2];if((n|0)<(m|0)){i[l>>2]=m;break f}i[l>>2]=n}f=f+1|0;if((f|0)>2]){continue}break}}f=k<<2;d=f+q|0;f=i[f+r>>2]-i[f+g>>2]|0;i[d>>2]=f;g:{if((f|0)>2]){f=f+i[a+20>>2]|0}else{if((f|0)<=i[a+24>>2]){break g}f=f-i[a+20>>2]|0}i[d>>2]=f}d=g;k=k+1|0;g=i[a+8>>2];if((k|0)<(g|0)){continue}break}}h=h+ -1|0;if((h|0)<0){break d}d=i[a+56>>2];g=i[d>>2];if(i[d+4>>2]-g>>2>>>0>h>>>0){continue}break}}Io();x()}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,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;i[a+8>>2]=e;i[a- -64>>2]=f;g=a+32|0;j=i[g>>2];f=i[a+36>>2]-j>>2;a:{if(f>>>0>>0){Bd(g,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=j+(e<<2)}b:{if(!d){break b}j=1;f=i[b>>2];c:{if((d|0)<=1){g=f;break c}g=f;while(1){h=i[(j<<2)+b>>2];k=(h|0)<(g|0);g=k?h:g;f=k?f:(h|0)>(f|0)?h:f;j=j+1|0;if((j|0)!=(d|0)){continue}break}}i[a+16>>2]=f;i[a+12>>2]=g;d=(f>>31)-((g>>31)+(f>>>0>>0)|0)|0;f=f-g|0;if(!d&f>>>0>2147483646|d>>>0>0){break b}d=f+1|0;i[a+20>>2]=d;f=(d|0)/2|0;i[a+24>>2]=f;i[a+28>>2]=0-f;if(d&1){break b}i[a+24>>2]=f+ -1}d=i[a+56>>2];g=i[d>>2];d:{d=i[d+4>>2]-g|0;if((d|0)<1){break d}h=(d>>>2|0)+ -1|0;if(d>>2>>>0>h>>>0){p=a+60|0;j=a+68|0;while(1){Pd(p,i[(h<<2)+g>>2],b,h);g=i[a+8>>2];if((g|0)>=1){d=o(e,h)<<2;q=d+c|0;r=b+d|0;d=j;k=0;while(1){f=0;e:{if((g|0)<=0){g=i[a+32>>2];break e}while(1){l=f<<2;n=i[l+d>>2];m=i[a+16>>2];f:{if((n|0)>(m|0)){g=i[a+32>>2];i[l+g>>2]=m;break f}g=i[a+32>>2];l=l+g|0;m=i[a+12>>2];if((n|0)<(m|0)){i[l>>2]=m;break f}i[l>>2]=n}f=f+1|0;if((f|0)>2]){continue}break}}f=k<<2;d=f+q|0;f=i[f+r>>2]-i[f+g>>2]|0;i[d>>2]=f;g:{if((f|0)>2]){f=f+i[a+20>>2]|0}else{if((f|0)<=i[a+24>>2]){break g}f=f-i[a+20>>2]|0}i[d>>2]=f}d=g;k=k+1|0;g=i[a+8>>2];if((k|0)<(g|0)){continue}break}}h=h+ -1|0;if((h|0)<0){break d}d=i[a+56>>2];g=i[d>>2];if(i[d+4>>2]-g>>2>>>0>h>>>0){continue}break}}Io();x()}return 1}function ze(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=c;f=i[b+16>>2];g=i[e+4>>2]-f|0;i[e>>2]=i[e>>2]-f;i[e+4>>2]=g;e=i[d+4>>2]-f|0;f=i[d>>2]-f|0;i[d>>2]=f;i[d+4>>2]=e;g=e>>31;k=g+e^g;g=f>>31;h=i[b+16>>2];if((k+(g+f^g)|0)>(h|0)){j=i[c+4>>2];l=i[c>>2];a:{b:{if((l|0)>=0){e=1;g=1;if((j|0)>-1){break a}f=1;e=-1;g=-1;if((l|0)>=1){break b}break a}f=-1;e=-1;g=-1;if((j|0)<1){break a}}e=(j|0)<1?-1:1;g=f}f=1;k=-1;m=l<<1;l=o(g,h);m=m-l|0;g=(o(e,g)|0)>-1;e=o(e,h);i[c+4>>2]=((g?0-m|0:m)+e|0)/2;e=(j<<1)-e|0;i[c>>2]=(l+(g?0-e|0:e)|0)/2;g=i[d+4>>2];j=i[d>>2];c:{d:{if((j|0)>=0){e=1;if((g|0)>-1){break c}k=1;f=-1;e=-1;if((j|0)>=1){break d}break c}f=-1;e=-1;if((g|0)<1){break c}}f=(g|0)<1?-1:1;e=k}h=j<<1;k=i[b+16>>2];j=o(k,e);h=h-j|0;m=0-h|0;l=h;h=(o(e,f)|0)>-1;f=o(f,k);e=((h?m:l)+f|0)/2|0;i[d+4>>2]=e;f=(g<<1)-f|0;f=(j+(h?0-f|0:f)|0)/2|0;i[d>>2]=f}k=d;e:{f:{g:{h:{i:{j:{if(!f){if(e){break j}e=0;f=0;break e}if((e|0)<1?(f|0)<=-1:0){break e}if((f|0)<1){break i}if((e|0)<=-1){break g}e=0-i[c+4>>2]|0;i[c>>2]=0-i[c>>2];i[c+4>>2]=e;f=0-i[d>>2]|0;e=0-i[d+4>>2]|0;break f}if((e|0)<1){break g}break h}if((e|0)>0){break h}f=i[d>>2];e=i[d+4>>2];break f}e=c;g=i[e>>2];i[e>>2]=0-i[e+4>>2];i[e+4>>2]=g;f=0-i[d+4>>2]|0;e=i[d>>2];break f}e=0-i[c>>2]|0;i[c>>2]=i[c+4>>2];i[c+4>>2]=e;f=i[d+4>>2];e=0-i[d>>2]|0}i[k>>2]=f;i[k+4>>2]=e}d=i[c+4>>2]-e|0;e=a;c=i[c>>2]-f|0;if((c|0)<=-1){c=c+i[b+4>>2]|0}i[e>>2]=c;if((d|0)<=-1){d=d+i[b+4>>2]|0}i[a+4>>2]=d}function Gi(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11424;b=i[a+336>>2];if(b){c=i[a+340>>2];d=b;a:{if((b|0)==(c|0)){break a}while(1){d=c+ -12|0;e=i[d>>2];if(e){i[c+ -8>>2]=e;bp(e)}c=d;if((c|0)!=(b|0)){continue}break}d=i[a+336>>2]}i[a+340>>2]=b;bp(d)}b=i[a+304>>2];if(b){i[a+308>>2]=b;bp(b)}b=i[a+292>>2];if(b){i[a+296>>2]=b;bp(b)}b=a+280|0;c=i[b>>2];i[b>>2]=0;if(c){d=c+ -4|0;b=i[d>>2];if(b){b=c+(b<<5)|0;while(1){b=nf(b+ -32|0);if((c|0)!=(b|0)){continue}break}}bp(d)}b=i[a+268>>2];if(b){i[a+272>>2]=b;bp(b)}c=a+244|0;b=i[c>>2];i[c>>2]=0;if(b){bp(b)}b=i[a+232>>2];if(b){i[a+236>>2]=b;bp(b)}nf(a+200|0);b=i[a+184>>2];if(b){i[a+188>>2]=b;bp(b)}c=i[a+172>>2];if(c){b=i[a+176>>2];d=c;b:{if((c|0)==(b|0)){break b}while(1){d=i[b+ -20>>2];if(d){i[b+ -16>>2]=d;bp(d)}d=b+ -136|0;e=i[b+ -32>>2];if(e){i[b+ -28>>2]=e;bp(e)}ni(b+ -132|0);b=d;if((c|0)!=(b|0)){continue}break}d=i[a+172>>2]}i[a+176>>2]=c;bp(d)}b=i[a+152>>2];if(b){i[a+156>>2]=b;bp(b)}b=i[a+140>>2];if(b){bp(b)}b=i[a+128>>2];if(b){while(1){c=i[b>>2];bp(b);b=c;if(b){continue}break}}b=i[a+120>>2];i[a+120>>2]=0;if(b){bp(b)}b=i[a+108>>2];if(b){i[a+112>>2]=b;bp(b)}b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+84>>2];if(b){bp(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;bp(b)}b=i[a+52>>2];if(b){i[a+56>>2]=b;bp(b)}b=i[a+40>>2];if(b){i[a+44>>2]=b;bp(b)}b=i[a+28>>2];if(b){bp(b)}b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}b=i[a+12>>2];i[a+12>>2]=0;if(b){bi(b)}return a|0}function _a(a,b,c,d){var e=0,f=0,h=0,j=0,k=p(0),l=0,n=0,o=0,q=0,r=0,s=p(0),t=0,u=0;n=i[c+12>>2];o=i[c+8>>2];q=i[c+4>>2];r=i[c>>2];j=n^(o^(q^(r^318)+239)+239)+239;t=a;e=i[b+4>>2];a:{b:{if(!e){break b}f=i[b>>2];l=xp(e);h=j&e+ -1;c:{if(l>>>0<=1){break c}c=j;h=c;if(c>>>0>>0){break c}h=(j>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+f>>2];if(!c){break b}c=i[c>>2];if(!c){break b}u=e+ -1|0;l=l>>>0>1;while(1){f=i[c+4>>2];if((j|0)!=(f|0)){d:{if(!l){f=f&u;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(h|0)){break b}}if(!(i[c+8>>2]!=(r|0)|i[c+12>>2]!=(q|0)|(i[c+16>>2]!=(o|0)|i[c+20>>2]!=(n|0)))){b=0;break a}c=i[c>>2];if(c){continue}break}}c=ho(28);f=i[d+12>>2];i[c+16>>2]=i[d+8>>2];i[c+20>>2]=f;f=i[d+4>>2];i[c+8>>2]=i[d>>2];i[c+12>>2]=f;d=i[d+16>>2];i[c>>2]=0;i[c+4>>2]=j;i[c+24>>2]=d;k=m[b+16>>2];s=p(i[b+12>>2]+1>>>0);e:{if(p(k*p(e>>>0))>>0<3|e<<1;d=b;k=p(v(p(s/k)));f:{if(k=p(0)){h=~~k>>>0;break f}h=0}fb(d,e>>>0>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=j&e+ -1;break e}if(j>>>0>>0){h=j;break e}h=(j>>>0)%(e>>>0)|0}d=i[b>>2]+(h<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[t+4|0]=b;i[a>>2]=c}function ff(a,b){var c=0,d=0,e=0,f=0,h=0,k=0;d=F-16|0;F=d;a:{if((_b(i[b+48>>2])|0)>9){break a}if((I[i[i[b>>2]+8>>2]](b)|0)!=1){break a}a=i[i[i[b+4>>2]+8>>2]+(a<<2)>>2];e=i[a+56>>2];if((e|0)==3){e=5;if((_b(i[b+48>>2])|0)<4){break a}e=i[a+56>>2]}a=_b(i[b+48>>2]);if((e|0)==1){b:{if((a|0)>3){break b}f=xm(i[b+4>>2],0);a=ym(i[b+4>>2]);if(!a){break b}e=6;a=i[a+28>>2]+ -1|0;c:{if(a>>>0<=10){a=1279>>>a&1;break c}a=0}if(a){break a}h=i[b+48>>2];a=ho(32);i[d>>2]=a;i[d+4>>2]=17;i[d+8>>2]=-2147483616;g[a+17|0]=0;g[a+16|0]=j[9948];b=j[9944]|j[9945]<<8|(j[9946]<<16|j[9947]<<24);c=j[9940]|j[9941]<<8|(j[9942]<<16|j[9943]<<24);g[a+8|0]=c;g[a+9|0]=c>>>8;g[a+10|0]=c>>>16;g[a+11|0]=c>>>24;g[a+12|0]=b;g[a+13|0]=b>>>8;g[a+14|0]=b>>>16;g[a+15|0]=b>>>24;b=j[9936]|j[9937]<<8|(j[9938]<<16|j[9939]<<24);c=j[9932]|j[9933]<<8|(j[9934]<<16|j[9935]<<24);g[a|0]=c;g[a+1|0]=c>>>8;g[a+2|0]=c>>>16;g[a+3|0]=c>>>24;g[a+4|0]=b;g[a+5|0]=b>>>8;g[a+6|0]=b>>>16;g[a+7|0]=b>>>24;d:{e:{c=h+16|0;b=i[c>>2];if(!b){break e}a=c;while(1){k=i[b+16>>2]<(f|0);a=k?a:b;b=i[(k<<2)+b>>2];if(b){continue}break}if((a|0)==(c|0)|(f|0)>2]){break e}a=a+20|0;if(!Sb(a,d)){break e}a=$j(a,d,-1);break d}a=$j(h,d,-1)}if(g[d+11|0]<=-1){bp(i[d>>2])}if((a|0)>0){break a}}e=0;break a}e=0;if((a|0)>7){break a}e=1;if((_b(i[b+48>>2])|0)>1){break a}F=d+16|0;return l[i[b+4>>2]+80>>2]<40?1:4}F=d+16|0;return e}function Th(a,b,c){var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=F-112|0;F=d;e=ho(120);m=i[b+8>>2];i[e+12>>2]=0;i[e+16>>2]=0;i[e>>2]=12120;i[e+4>>2]=0;i[e+20>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+56>>2]=0;i[e+60>>2]=0;i[e+8>>2]=12332;h=e- -64|0;i[h>>2]=0;i[h+4>>2]=0;i[e+72>>2]=0;i[e+76>>2]=0;i[e+80>>2]=0;i[e+84>>2]=0;i[e+88>>2]=0;i[e+116>>2]=0;i[e+112>>2]=c;i[e+108>>2]=m;i[e+104>>2]=0;i[e+96>>2]=0;i[e+100>>2]=0;h=i[b+12>>2];i[d+52>>2]=0;n=d+44|0;j=n;i[j>>2]=0;i[j+4>>2]=0;i[d+36>>2]=0;i[d+40>>2]=0;j=d+28|0;i[j>>2]=0;i[j+4>>2]=0;o=d+20|0;f=o;i[f>>2]=0;i[f+4>>2]=0;f=d- -64|0;i[f>>2]=0;i[f+4>>2]=0;i[d+72>>2]=0;i[d+76>>2]=0;f=d+80|0;i[f>>2]=0;i[f+4>>2]=0;i[d+88>>2]=0;i[d+104>>2]=0;i[d+12>>2]=0;i[d+16>>2]=0;i[d+56>>2]=0;i[d+60>>2]=0;i[d+8>>2]=12332;i[d+96>>2]=0;i[d+100>>2]=0;i[d+12>>2]=h;k=i[h>>2];l=i[h+4>>2];g[d+111|0]=0;Uh(d+32|0,(l-k>>2>>>0)/3|0,d+111|0);k=i[d+12>>2];l=i[k+28>>2];k=i[k+24>>2];g[d+111|0]=0;Uh(n,l-k>>2,d+111|0);i[j>>2]=e;i[d+24>>2]=m;i[o>>2]=c;i[d+16>>2]=h;i[e+116>>2]=b+72;Yh(e,d+8|0);i[a>>2]=e;i[d+8>>2]=12332;a=i[d+96>>2];if(a){i[d+100>>2]=a;bp(a)}a=i[f>>2];if(a){i[d+84>>2]=a;bp(a)}a=i[d+68>>2];if(a){i[d+72>>2]=a;bp(a)}a=i[d+56>>2];if(a){i[d+60>>2]=a;bp(a)}i[d+8>>2]=12568;a=i[d+44>>2];if(a){bp(a)}a=i[d+32>>2];if(a){bp(a)}F=d+112|0}function wb(a,b,c,d){var e=0,f=0,h=0,j=0,l=0,n=p(0),o=0,q=0,r=0,s=0,t=p(0),u=0,w=0;q=k[c+6>>1];r=k[c+4>>1];s=k[c+2>>1];l=k[c>>1];j=q^(r^(s^(l^318)+239)+239)+239;u=a;e=i[b+4>>2];a:{b:{if(!e){break b}f=i[b>>2];o=xp(e);h=j&e+ -1;c:{if(o>>>0<=1){break c}c=j;h=c;if(c>>>0>>0){break c}h=(j>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+f>>2];if(!c){break b}c=i[c>>2];if(!c){break b}w=e+ -1|0;o=o>>>0>1;while(1){f=i[c+4>>2];if((j|0)!=(f|0)){d:{if(!o){f=f&w;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(h|0)){break b}}if(!(k[c+8>>1]!=(l|0)|k[c+10>>1]!=(s|0)|(k[c+12>>1]!=(r|0)|k[c+14>>1]!=(q|0)))){b=0;break a}c=i[c>>2];if(c){continue}break}}c=ho(20);l=i[d+4>>2];i[c+8>>2]=i[d>>2];i[c+12>>2]=l;d=i[d+8>>2];i[c+4>>2]=j;i[c+16>>2]=d;i[c>>2]=0;n=m[b+16>>2];t=p(i[b+12>>2]+1>>>0);e:{if(p(n*p(e>>>0))>>0<3|e<<1;d=b;n=p(v(p(t/n)));f:{if(n=p(0)){h=~~n>>>0;break f}h=0}Db(d,l>>>0>>0?h:l);e=i[b+4>>2];if(!(e&e+ -1)){h=j&e+ -1;break e}if(j>>>0>>0){h=j;break e}h=(j>>>0)%(e>>>0)|0}d=i[b>>2]+(h<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[u+4|0]=b;i[a>>2]=c}function Vc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,l=0;e=F-16|0;F=e;d=i[b+28>>2];f=i[i[b+4>>2]+(c<<2)>>2];h=i[i[i[d+4>>2]+8>>2]+(f<<2)>>2];b=i[h+28>>2];a:{if(b+ -1>>>0>=6){b:{if((b|0)!=9){break b}k=i[d+48>>2];b=ho(32);i[e>>2]=b;i[e+4>>2]=17;i[e+8>>2]=-2147483616;g[b+17|0]=0;g[b+16|0]=j[2108];c=j[2104]|j[2105]<<8|(j[2106]<<16|j[2107]<<24);d=j[2100]|j[2101]<<8|(j[2102]<<16|j[2103]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[2096]|j[2097]<<8|(j[2098]<<16|j[2099]<<24);d=j[2092]|j[2093]<<8|(j[2094]<<16|j[2095]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;c:{d:{d=k+16|0;b=i[d>>2];if(!b){break d}c=d;while(1){l=i[b+16>>2]<(f|0);c=l?c:b;b=i[(l<<2)+b>>2];if(b){continue}break}if((c|0)==(d|0)|(f|0)>2]){break d}b=c+20|0;if(!Sb(b,e)){break d}b=$j(b,e,-1);break c}b=$j(k,e,-1)}if(g[e+11|0]<=-1){bp(i[e>>2])}if((b|0)<1){break b}if(i[h+56>>2]==1){b=ho(48);i[b>>2]=0;i[b+4>>2]=0;c=b+40|0;i[c>>2]=0;i[c+4>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=0;i[b+28>>2]=0;i[b+16>>2]=0;i[b+20>>2]=0;i[b+8>>2]=0;i[b+12>>2]=0;ed(b);i[b+44>>2]=-1;i[c>>2]=1032;i[b>>2]=6056;break a}b=ho(64);$e(b);break a}b=ho(36);Bc(b);break a}b=ho(40);ed(b)}i[a>>2]=b;F=e+16|0}function sa(a,b,c){var d=p(0),e=0,f=0,h=0,j=0,k=p(0),l=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;l=F-16|0;F=l;a:{if(!(i[a+4>>2]!=-1|c+ -1>>>0>29)){i[a+4>>2]=c;e=g[b+24|0];c=0;i[a+20>>2]=0;i[l+8>>2]=0;i[l>>2]=0;i[l+4>>2]=0;if(e){if((e|0)<=-1){break a}c=e<<2;f=ho(c);c=ip(f,0,c)+c|0}h=i[a+8>>2];if(h){i[a+12>>2]=h;bp(h)}i[a+8>>2]=f;i[a+16>>2]=c;i[a+12>>2]=c;c=(e&1073741823)!=(e|0)?-1:e<<2;n=ho(c);c=ho(c);w=i[b+44>>2];o=c;h=i[b+48>>2];c=h;q=i[b>>2];t=i[b+40>>2];r=t;u=hp(o,c+i[q>>2]|0,r);s=hp(f,c+i[q>>2]|0,r);n=hp(n,c+i[q>>2]|0,r);b=i[b+80>>2];if(b>>>0>=2){f=b;o=1;c=0;while(1){b=i[q>>2];j=up(o,c,t,w)+h|0;y=hp(u,b+j|0,r);b=0;if((e|0)>0){while(1){j=b<<2;v=j+s|0;d=m[j+y>>2];if(!(m[v>>2]>d^1)){m[v>>2]=d}j=j+n|0;if(!(m[j>>2]>2]=d}b=b+1|0;if((e|0)!=(b|0)){continue}break}}b=o+1|0;if(b>>>0<1){c=c+1|0}o=b;if((f|0)!=(b|0)|c){continue}break}}c=1;b:{c:{d:{if((e|0)>=1){d=m[s>>2];if(d!=d){break b}b=0;break d}d=m[a+20>>2];c=0;break c}while(1){if(((Fp(d),Bp(2))&2147483647)==2139095040){break b}h=(b<<2)+n|0;f=i[h>>2];k=m[h>>2];if((f&2147483647)==2139095040|k!=k){break b}k=p(k-d);d=m[a+20>>2];if(!(k>d^1)){m[a+20>>2]=k;d=k}b=b+1|0;c=(b|0)<(e|0);if((b|0)==(e|0)){break c}d=m[(b<<2)+s>>2];if(d==d){continue}break}break b}if(d!=p(0)){break b}i[a+20>>2]=1065353216}bp(u);bp(n);f=c^1}F=l+16|0;return f&1}Ho();x()}function Za(a,b,c,d){var e=0,f=0,h=0,j=0,k=p(0),l=0,n=0,o=0,q=0,r=p(0),s=0,t=0;n=i[c+8>>2];o=i[c+4>>2];q=i[c>>2];j=n^(o^(q^318)+239)+239;s=a;e=i[b+4>>2];a:{b:{if(!e){break b}f=i[b>>2];l=xp(e);h=j&e+ -1;c:{if(l>>>0<=1){break c}c=j;h=c;if(c>>>0>>0){break c}h=(j>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+f>>2];if(!c){break b}c=i[c>>2];if(!c){break b}t=e+ -1|0;l=l>>>0>1;while(1){f=i[c+4>>2];if((j|0)!=(f|0)){d:{if(!l){f=f&t;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(h|0)){break b}}if(!(i[c+8>>2]!=(q|0)|i[c+12>>2]!=(o|0)|i[c+16>>2]!=(n|0))){b=0;break a}c=i[c>>2];if(c){continue}break}}c=ho(24);i[c+16>>2]=i[d+8>>2];f=i[d+4>>2];i[c+8>>2]=i[d>>2];i[c+12>>2]=f;d=i[d+12>>2];i[c>>2]=0;i[c+4>>2]=j;i[c+20>>2]=d;k=m[b+16>>2];r=p(i[b+12>>2]+1>>>0);e:{if(p(k*p(e>>>0))>>0<3|e<<1;d=b;k=p(v(p(r/k)));f:{if(k=p(0)){h=~~k>>>0;break f}h=0}db(d,e>>>0>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=j&e+ -1;break e}if(j>>>0>>0){h=j;break e}h=(j>>>0)%(e>>>0)|0}d=i[b>>2]+(h<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[s+4|0]=b;i[a>>2]=c}function Gg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;jh(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=4194304;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=4194304;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<20)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}fh(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function Fg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;ih(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=4194304;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=4194304;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<20)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}fh(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function Eg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;hh(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=4194304;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=4194304;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<20)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}fh(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function Dg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;gh(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=4194304;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=4194304;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<20)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}fh(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function Cg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;eh(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=4194304;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=4194304;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<20)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}fh(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function Bg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;ch(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=2097152;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=2097152;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<19)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}dh(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function Ag(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;ah(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=1048576;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=1048576;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<18)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}bh(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function zg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;_g(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=262144;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=262144;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<16)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}$g(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function yg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;Yg(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=131072;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=131072;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<15)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}Zg(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function xg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;Wg(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=32768;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=32768;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<13)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}Xg(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function wg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;Vg(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=16384;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=16384;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<12)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}og(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function vg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;Ug(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=16384;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=16384;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<12)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}og(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function ug(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;Tg(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=16384;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=16384;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<12)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}og(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function tg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;ng(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=16384;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=16384;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<12)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}og(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function sg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;Sg(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=16384;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=16384;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<12)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}og(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function rg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;Rg(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=16384;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=16384;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<12)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}og(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function qg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;Qg(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=16384;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=16384;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<12)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}og(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function pg(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;e=F+ -64|0;F=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}f=f<<3;l=ho(f);i[e+48>>2]=l;k=f+l|0;i[e+56>>2]=k;ip(l,0,(c<<3)+8|0);i[e+52>>2]=k}if((b|0)>0){while(1){c=(i[(j<<2)+a>>2]<<3)+l|0;f=c;n=c;h=i[c+4>>2];c=i[c>>2]+1|0;if(c>>>0<1){h=h+1|0}i[n>>2]=c;i[f+4>>2]=h;j=j+1|0;if((j|0)!=(b|0)){continue}break}}i[e+8>>2]=0;i[e+12>>2]=0;f=e+16|0;c=f;i[c>>2]=0;i[c+4>>2]=0;m=e+24|0;c=m;i[c>>2]=0;i[c+4>>2]=0;i[e+32>>2]=0;i[e>>2]=0;i[e+4>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;Pg(e,l,k-l>>3,d);h=i[f>>2];c=i[f+4>>2];f=i[d+4>>2]-i[d>>2]|0;i[e+40>>2]=f;i[e+44>>2]=0;n=d;k=h;h=c<<1|h>>>31;c=(k<<1)+39|0;if(c>>>0<39){h=h+1|0}k=c;c=h>>>3|0;h=f+((h&7)<<29|k>>>3)|0;if(h>>>0>>0){c=c+1|0}f=h+8|0;f>>>0<8;Uj(n,f);c=i[d>>2];i[e+28>>2]=0;i[e+32>>2]=16384;i[m>>2]=c+i[e+40>>2];if((b|0)>=1){j=16384;while(1){c=b+ -1|0;k=i[e>>2]+(i[(c<<2)+a>>2]<<3)|0;m=i[k>>2];h=m<<10;if(j>>>0>=h>>>0){while(1){f=i[e+28>>2];i[e+28>>2]=f+1;g[f+i[e+24>>2]|0]=j;j=i[e+32>>2]>>>8|0;i[e+32>>2]=j;if(j>>>0>=h>>>0){continue}break}}f=(j>>>0)/(m>>>0)|0;j=i[k+4>>2]+((f<<12)+(j-o(f,m)|0)|0)|0;i[e+32>>2]=j;f=(b|0)>1;b=c;if(f){continue}break}}og(e,d);a=i[e>>2];if(a){i[e+4>>2]=a;bp(a)}a=i[e+48>>2];if(a){i[e+52>>2]=a;bp(a)}F=e- -64|0;return 1}Ho();x()}function kb(a,b,c,d){var e=0,f=0,h=0,k=0,l=p(0),n=0,o=0,q=0,r=0,s=0,t=p(0),u=0,w=0;o=j[c+3|0];q=j[c+2|0];r=j[c+1|0];s=j[c|0];k=o^(q^(r^(s^318)+239)+239)+239;u=a;e=i[b+4>>2];a:{b:{if(!e){break b}f=i[b>>2];n=xp(e);h=k&e+ -1;c:{if(n>>>0<=1){break c}c=k;h=c;if(c>>>0>>0){break c}h=(k>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+f>>2];if(!c){break b}c=i[c>>2];if(!c){break b}w=e+ -1|0;n=n>>>0>1;while(1){f=i[c+4>>2];if((k|0)!=(f|0)){d:{if(!n){f=f&w;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(h|0)){break b}}if(!(j[c+8|0]!=(s|0)|j[c+9|0]!=(r|0)|(j[c+10|0]!=(q|0)|j[c+11|0]!=(o|0)))){b=0;break a}c=i[c>>2];if(c){continue}break}}c=ho(16);i[c+8>>2]=i[d>>2];d=i[d+4>>2];i[c+4>>2]=k;i[c+12>>2]=d;i[c>>2]=0;l=m[b+16>>2];t=p(i[b+12>>2]+1>>>0);e:{if(p(l*p(e>>>0))>>0<3|e<<1;d=b;l=p(v(p(t/l)));f:{if(l=p(0)){h=~~l>>>0;break f}h=0}rb(d,e>>>0>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=k&e+ -1;break e}if(k>>>0>>0){h=k;break e}h=(k>>>0)%(e>>>0)|0}d=i[b>>2]+(h<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[u+4|0]=b;i[a>>2]=c}function vb(a,b,c,d){var e=0,f=0,j=0,l=0,n=p(0),o=0,q=0,r=0,s=0,t=p(0),u=0,w=0;r=k[c+4>>1];s=k[c+2>>1];o=k[c>>1];l=r^(s^(o^318)+239)+239;u=a;e=i[b+4>>2];a:{b:{if(!e){break b}f=i[b>>2];q=xp(e);j=l&e+262143;c:{if(q>>>0<=1){break c}c=l;j=c;if(c>>>0>>0){break c}j=(l>>>0)%(e>>>0)|0}c=j;j=c;c=i[(c<<2)+f>>2];if(!c){break b}c=i[c>>2];if(!c){break b}w=e+ -1|0;q=q>>>0>1;while(1){f=i[c+4>>2];if((l|0)!=(f|0)){d:{if(!q){f=f&w;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(j|0)){break b}}if(!(k[c+8>>1]!=(o|0)|k[c+10>>1]!=(s|0)|k[c+12>>1]!=(r|0))){b=0;break a}c=i[c>>2];if(c){continue}break}}c=ho(20);h[c+12>>1]=k[d+4>>1];i[c+8>>2]=i[d>>2];d=i[d+8>>2];i[c>>2]=0;i[c+4>>2]=l;i[c+16>>2]=d;n=m[b+16>>2];t=p(i[b+12>>2]+1>>>0);e:{if(p(n*p(e>>>0))>>0<3|e<<1;d=b;n=p(v(p(t/n)));f:{if(n=p(0)){j=~~n>>>0;break f}j=0}Bb(d,o>>>0>>0?j:o);e=i[b+4>>2];if(!(e&e+ -1)){j=l&e+ -1;break e}if(l>>>0>>0){j=l;break e}j=(l>>>0)%(e>>>0)|0}d=i[b>>2]+(j<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[u+4|0]=b;i[a>>2]=c}function jb(a,b,c,d){var e=0,f=0,l=0,n=0,o=p(0),q=0,r=0,s=0,t=0,u=p(0),w=0,x=0;r=j[c+2|0];s=j[c+1|0];t=j[c|0];n=r^(s^(t^318)+239)+239;w=a;e=i[b+4>>2];a:{b:{if(!e){break b}f=i[b>>2];q=xp(e);l=n&e+ -1;c:{if(q>>>0<=1){break c}c=n;l=c;if(c>>>0>>0){break c}l=(n>>>0)%(e>>>0)|0}c=l;l=c;c=i[(c<<2)+f>>2];if(!c){break b}c=i[c>>2];if(!c){break b}x=e+ -1|0;q=q>>>0>1;while(1){f=i[c+4>>2];if((n|0)!=(f|0)){d:{if(!q){f=f&x;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(l|0)){break b}}if(!(j[c+8|0]!=(t|0)|j[c+9|0]!=(s|0)|j[c+10|0]!=(r|0))){b=0;break a}c=i[c>>2];if(c){continue}break}}c=ho(16);g[c+10|0]=j[d+2|0];h[c+8>>1]=k[d>>1];d=i[d+4>>2];i[c>>2]=0;i[c+4>>2]=n;i[c+12>>2]=d;o=m[b+16>>2];u=p(i[b+12>>2]+1>>>0);e:{if(p(o*p(e>>>0))>>0<3|e<<1;d=b;o=p(v(p(u/o)));f:{if(o=p(0)){l=~~o>>>0;break f}l=0}pb(d,e>>>0>>0?l:e);e=i[b+4>>2];if(!(e&e+ -1)){l=n&e+ -1;break e}if(n>>>0>>0){l=n;break e}l=(n>>>0)%(e>>>0)|0}d=i[b>>2]+(l<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[w+4|0]=b;i[a>>2]=c}function yf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=F-32|0;F=e;f=a+16|0;d=i[f>>2];a:{b:{if(!d){break b}h=i[b>>2];c=f;while(1){g=i[d+16>>2]<(h|0);c=g?c:d;d=i[(g<<2)+d>>2];if(d){continue}break}if((c|0)==(f|0)){break b}if((h|0)>=i[c+16>>2]){break a}}k=Xj(e+16|0);b=i[b>>2];j=e+8|0;i[j>>2]=0;i[j+4>>2]=0;i[e>>2]=b;i[e+4>>2]=j;c=i[k>>2];h=k+4|0;if((c|0)!=(h|0)){g=e|4;while(1){b=c;d=c+16|0;Mf(g,j,d,d);d=i[c+4>>2];c:{if(!d){c=i[b+8>>2];if((b|0)==i[c>>2]){break c}d=b+8|0;while(1){b=i[d>>2];d=b+8|0;c=i[b+8>>2];if((b|0)!=i[c>>2]){continue}break}break c}while(1){c=d;d=i[c>>2];if(d){continue}break}}if((c|0)!=(h|0)){continue}break}}d=i[f>>2];d:{if(d){f=a+16|0;g=i[e>>2];while(1){b=i[d+16>>2];e:{if((g|0)<(b|0)){c=i[d>>2];if(c){break e}f=d;break d}if((b|0)>=(g|0)){break d}f=d+4|0;c=i[d+4>>2];if(!c){break d}d=f}f=d;d=c;continue}}d=f}c=i[f>>2];if(!c){c=ho(32);i[c+16>>2]=i[e>>2];i[c+20>>2]=i[e+4>>2];g=i[e+8>>2];i[c+24>>2]=g;b=i[e+12>>2];i[c+28>>2]=b;h=c+24|0;f:{if(!b){i[c+20>>2]=h;break f}i[g+8>>2]=h;i[e+8>>2]=0;i[e+12>>2]=0;i[e+4>>2]=j}i[c+8>>2]=d;i[c>>2]=0;i[c+4>>2]=0;i[f>>2]=c;d=i[i[a+12>>2]>>2];b=c;g:{if(!d){break g}i[a+12>>2]=d;b=i[f>>2]}Kf(i[a+16>>2],b);a=a+20|0;i[a>>2]=i[a>>2]+1}kd(e|4,i[e+8>>2]);kd(k,i[k+4>>2])}F=e+32|0;return c+20|0}function mj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0;f=F-16|0;F=f;I[i[i[b>>2]+64>>2]](a,b);if(!i[a>>2]){if(g[a+15|0]<=-1){bp(i[a+4>>2])}h=i[b+48>>2];c=ho(32);i[f>>2]=c;i[f+4>>2]=29;i[f+8>>2]=-2147483616;g[c+29|0]=0;d=j[13157]|j[13158]<<8|(j[13159]<<16|j[13160]<<24);e=j[13153]|j[13154]<<8|(j[13155]<<16|j[13156]<<24);g[c+21|0]=e;g[c+22|0]=e>>>8;g[c+23|0]=e>>>16;g[c+24|0]=e>>>24;g[c+25|0]=d;g[c+26|0]=d>>>8;g[c+27|0]=d>>>16;g[c+28|0]=d>>>24;d=j[13152]|j[13153]<<8|(j[13154]<<16|j[13155]<<24);e=j[13148]|j[13149]<<8|(j[13150]<<16|j[13151]<<24);g[c+16|0]=e;g[c+17|0]=e>>>8;g[c+18|0]=e>>>16;g[c+19|0]=e>>>24;g[c+20|0]=d;g[c+21|0]=d>>>8;g[c+22|0]=d>>>16;g[c+23|0]=d>>>24;d=j[13144]|j[13145]<<8|(j[13146]<<16|j[13147]<<24);e=j[13140]|j[13141]<<8|(j[13142]<<16|j[13143]<<24);g[c+8|0]=e;g[c+9|0]=e>>>8;g[c+10|0]=e>>>16;g[c+11|0]=e>>>24;g[c+12|0]=d;g[c+13|0]=d>>>8;g[c+14|0]=d>>>16;g[c+15|0]=d>>>24;d=j[13136]|j[13137]<<8|(j[13138]<<16|j[13139]<<24);e=j[13132]|j[13133]<<8|(j[13134]<<16|j[13135]<<24);g[c|0]=e;g[c+1|0]=e>>>8;g[c+2|0]=e>>>16;g[c+3|0]=e>>>24;g[c+4|0]=d;g[c+5|0]=d>>>8;g[c+6|0]=d>>>16;g[c+7|0]=d>>>24;c=ck(h,f,0);if(g[f+11|0]<=-1){bp(i[f>>2])}if(c){I[i[i[b>>2]+68>>2]](b)}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}F=f+16|0}function Ia(a,b){var c=0;c=-1;a:{b:{c:{d:{switch(i[b+28>>2]+ -1|0){case 8:e:{switch(g[b+24|0]+ -1|0){case 0:c=Ja(a,b);break c;case 1:c=Ka(a,b);break c;case 2:c=La(a,b);break c;case 3:break e;default:break b}}c=Ma(a,b);break c;case 0:f:{switch(g[b+24|0]+ -1|0){case 0:c=Na(a,b);break c;case 1:c=Oa(a,b);break c;case 2:c=Pa(a,b);break c;case 3:break f;default:break b}}c=Qa(a,b);break c;case 1:case 10:g:{switch(g[b+24|0]+ -1|0){case 0:c=Na(a,b);break c;case 1:c=Oa(a,b);break c;case 2:c=Pa(a,b);break c;case 3:break g;default:break b}}c=Qa(a,b);break c;case 3:h:{switch(g[b+24|0]+ -1|0){case 0:c=Ra(a,b);break c;case 1:c=Sa(a,b);break c;case 2:c=Ta(a,b);break c;case 3:break h;default:break b}}c=Ua(a,b);break c;case 2:i:{switch(g[b+24|0]+ -1|0){case 0:c=Ra(a,b);break c;case 1:c=Sa(a,b);break c;case 2:c=Ta(a,b);break c;case 3:break i;default:break b}}c=Ua(a,b);break c;case 5:j:{switch(g[b+24|0]+ -1|0){case 0:c=Va(a,b);break c;case 1:c=Ka(a,b);break c;case 2:c=La(a,b);break c;case 3:break j;default:break b}}c=Ma(a,b);break c;case 4:break d;default:break a}}k:{switch(g[b+24|0]+ -1|0){case 0:c=Va(a,b);break c;case 1:c=Ka(a,b);break c;case 2:c=La(a,b);break c;case 3:break k;default:break b}}c=Ma(a,b)}if(c){break a}}c=-1}return c}function Ya(a,b,c,d){var e=0,f=0,h=0,j=0,k=p(0),l=0,n=0,o=0,q=p(0),r=0,s=0;n=i[c+4>>2];o=i[c>>2];j=n^(o^318)+239;r=a;a:{b:{e=i[b+4>>2];if(!e){break b}f=i[b>>2];l=xp(e);h=j&e+ -1;c:{if(l>>>0<=1){break c}c=j;h=c;if(c>>>0>>0){break c}h=(j>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+f>>2];if(!c){break b}s=e+ -1|0;l=l>>>0>1;while(1){c=i[c>>2];if(!c){break b}f=i[c+4>>2];if((j|0)!=(f|0)){d:{if(!l){f=f&s;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(h|0)){break b}}if(i[c+8>>2]!=(o|0)|i[c+12>>2]!=(n|0)){continue}break}b=0;break a}c=ho(20);f=i[d+4>>2];i[c+8>>2]=i[d>>2];i[c+12>>2]=f;d=i[d+8>>2];i[c+4>>2]=j;i[c+16>>2]=d;i[c>>2]=0;k=m[b+16>>2];q=p(i[b+12>>2]+1>>>0);e:{if(p(k*p(e>>>0))>>0<3|e<<1;d=b;k=p(v(p(q/k)));f:{if(k=p(0)){h=~~k>>>0;break f}h=0}bb(d,e>>>0>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=j&e+ -1;break e}if(j>>>0>>0){h=j;break e}h=(j>>>0)%(e>>>0)|0}d=i[b>>2]+(h<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[r+4|0]=b;i[a>>2]=c}function ci(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;a:{b:{d=i[a+12>>2];e=i[d+4>>2];c=i[d>>2];b=e-c|0;if(!b){break b}e=c-e|0;c=((e|0)>(b|0)?e:b)>>>2|0;b=(b|0)>-1?b:-1;b=o(c,(b|0)<1?b:1);k=b>>>0>1?b:1;l=a+140|0;e=0;while(1){c:{if(Ql(d,(e>>>0)/3|0)){break c}d=i[a+12>>2];if(i[i[d+12>>2]+(e<<2)>>2]!=-1){break c}h=i[a+152>>2];g=h;c=e+1|0;c=(c>>>0)%3|0?c:e+ -2|0;if((c|0)!=-1){d=i[i[d>>2]+(c<<2)>>2]}else{d=-1}b=d<<2;if(i[g+b>>2]!=-1){break c}f=-1;g=i[a+144>>2];d=g;c=i[a+148>>2];if((d|0)==c<<5){if((g+1|0)<=-1){break a}d=l;if(g>>>0<=1073741822){f=g+32&-32;c=c<<6;c=c>>>0>>0?f:c}else{c=2147483647}bd(d,c);h=i[a+152>>2];f=i[b+h>>2];d=i[a+144>>2]}i[a+144>>2]=d+1;c=i[a+140>>2]+(d>>>3&536870908)|0;j=i[c>>2];n=c,p=yp(-2,d)&j,i[n>>2]=p;if((f|0)!=-1){break c}b=b+h|0;j=i[a+12>>2];d=e;while(1){c=d;i[b>>2]=g;d=-1;f=-1;d:{if((c|0)==-1){break d}b=c+1|0;b=(b>>>0)%3|0?b:c+ -2|0;if((b|0)==-1){break d}m=i[j+12>>2];while(1){c=i[(b<<2)+m>>2];if((c|0)!=-1){b=c+1|0;b=(b>>>0)%3|0?b:c+ -2|0;if((b|0)!=-1){continue}break d}break}d=b+1|0;d=(d>>>0)%3|0?d:b+ -2|0;if((d|0)!=-1){f=i[i[j>>2]+(d<<2)>>2]}d=b}b=(f<<2)+h|0;if(i[b>>2]==-1){continue}break}}e=e+1|0;if((k|0)==(e|0)){break b}d=i[a+12>>2];continue}}return 1}Ho();x()}function ub(a,b,c,d){var e=0,f=0,h=0,j=0,l=p(0),n=0,o=0,q=0,r=p(0),s=0,t=0;q=k[c+2>>1];n=k[c>>1];j=q^(n^318)+239;s=a;a:{b:{e=i[b+4>>2];if(!e){break b}f=i[b>>2];o=xp(e);h=j&e+131071;c:{if(o>>>0<=1){break c}c=j;h=c;if(c>>>0>>0){break c}h=(j>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+f>>2];if(!c){break b}t=e+ -1|0;o=o>>>0>1;while(1){c=i[c>>2];if(!c){break b}f=i[c+4>>2];if((j|0)!=(f|0)){d:{if(!o){f=f&t;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(h|0)){break b}}if(k[c+8>>1]!=(n|0)|k[c+10>>1]!=(q|0)){continue}break}b=0;break a}c=ho(16);i[c+8>>2]=i[d>>2];d=i[d+4>>2];i[c+4>>2]=j;i[c+12>>2]=d;i[c>>2]=0;l=m[b+16>>2];r=p(i[b+12>>2]+1>>>0);e:{if(p(l*p(e>>>0))>>0<3|e<<1;d=b;l=p(v(p(r/l)));f:{if(l=p(0)){h=~~l>>>0;break f}h=0}zb(d,n>>>0>>0?h:n);e=i[b+4>>2];if(!(e&e+ -1)){h=j&e+ -1;break e}if(j>>>0>>0){h=j;break e}h=(j>>>0)%(e>>>0)|0}d=i[b>>2]+(h<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[s+4|0]=b;i[a>>2]=c}function ib(a,b,c,d){var e=0,f=0,l=0,n=0,o=p(0),q=0,r=0,s=0,t=p(0),u=0,w=0;r=j[c+1|0];s=j[c|0];n=r^(s^318)+239;u=a;a:{b:{e=i[b+4>>2];if(!e){break b}f=i[b>>2];q=xp(e);l=n&e+1023;c:{if(q>>>0<=1){break c}c=n;l=c;if(c>>>0>>0){break c}l=(n>>>0)%(e>>>0)|0}c=l;l=c;c=i[(c<<2)+f>>2];if(!c){break b}w=e+ -1|0;q=q>>>0>1;while(1){c=i[c>>2];if(!c){break b}f=i[c+4>>2];if((n|0)!=(f|0)){d:{if(!q){f=f&w;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(l|0)){break b}}if(j[c+8|0]!=(s|0)|j[c+9|0]!=(r|0)){continue}break}b=0;break a}c=ho(16);h[c+8>>1]=k[d>>1];d=i[d+4>>2];i[c+4>>2]=n;i[c+12>>2]=d;i[c>>2]=0;o=m[b+16>>2];t=p(i[b+12>>2]+1>>>0);e:{if(p(o*p(e>>>0))>>0<3|e<<1;d=b;o=p(v(p(t/o)));f:{if(o=p(0)){l=~~o>>>0;break f}l=0}nb(d,e>>>0>>0?l:e);e=i[b+4>>2];if(!(e&e+ -1)){l=n&e+ -1;break e}if(n>>>0>>0){l=n;break e}l=(n>>>0)%(e>>>0)|0}d=i[b>>2]+(l<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[u+4|0]=b;i[a>>2]=c}function Jm(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;while(1){i[i[a>>2]+(e<<2)>>2]=0;e=e+1|0;if((d|0)!=(e|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}s=b+ -1|0;t=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!t){e=e&s;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}f:{g:{l=e<<2;c=l+i[a>>2]|0;if(i[c>>2]){k=i[d>>2];if(k){break g}k=0;c=d;break f}i[c>>2]=f;f=d;g=e;break e}c=i[a+24>>2];m=i[c+8>>2];n=i[c+12>>2]-m|0;c=n>>>2|0;u=c>>>0>1?c:1;o=i[d+8>>2];c=d;while(1){e=0;if((n|0)>0){p=i[k+8>>2];while(1){h=o;q=p;r=i[(e<<2)+m>>2];if(!j[r+84|0]){h=i[r+68>>2];q=i[h+(p<<2)>>2];h=i[h+(o<<2)>>2]}if((h|0)!=(q|0)){break f}e=e+1|0;if((u|0)!=(e|0)){continue}break}}c=k;h=i[c>>2];k=h;if(h){continue}break}k=0}i[f>>2]=k;i[c>>2]=i[i[i[a>>2]+l>>2]>>2];i[i[i[a>>2]+l>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(16928);x()}function oi(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0;l=F-16|0;F=l;a:{b:{f=i[a+124>>2];c:{if(!f){break c}e=i[a+120>>2];m=xp(f);h=f+ -1&d;d:{if(m>>>0<=1){break d}h=d;if(f>>>0>d>>>0){break d}h=(d>>>0)%(f>>>0)|0}e=i[e+(h<<2)>>2];if(!e){break c}k=i[e>>2];if(!k){break c}n=f+ -1|0;m=m>>>0>1;while(1){e:{e=i[k+4>>2];f:{if((e|0)!=(d|0)){g:{if(!m){e=e&n;break g}if(e>>>0>>0){break g}e=(e>>>0)%(f>>>0)|0}if((e|0)==(h|0)){break f}break c}if(i[k+8>>2]==(d|0)){break e}}k=i[k>>2];if(k){continue}break c}break}k=i[k+12>>2];if((k|0)==-1){break c}m=c&1;c=i[a+112>>2];if((c|0)!=i[a+116>>2]){g[c+8|0]=m;i[c+4>>2]=b;i[c>>2]=k;b=j[l+13|0]|j[l+14|0]<<8;g[c+9|0]=b;g[c+10|0]=b>>>8;g[c+11|0]=j[l+15|0];i[a+112>>2]=c+12;break c}d=i[a+108>>2];h=c-d|0;c=(h|0)/12|0;e=c+1|0;if(e>>>0>=357913942){break b}n=c<<1;e=c>>>0<178956970?n>>>0>>0?e:n:357913941;f=0;h:{if(!e){break h}if(e>>>0>=357913942){break a}f=ho(o(e,12))}c=f+o(c,12)|0;g[c+8|0]=m;i[c+4>>2]=b;i[c>>2]=k;b=j[l+13|0]|j[l+14|0]<<8;g[c+9|0]=b;g[c+10|0]=b>>>8;g[c+11|0]=j[l+15|0];b=c+o((h|0)/-12|0,12)|0;f=f+o(e,12)|0;c=c+12|0;if((h|0)>=1){hp(b,d,h)}i[a+116>>2]=f;i[a+112>>2]=c;i[a+108>>2]=b;if(!d){break c}bp(d)}F=l+16|0;return}Ho();x()}za(11708);x()}function mn(a){var b=0,c=0,d=0,e=0,f=0;a:{b:{c:{b=i[a+4>>2];d:{if(b>>>0>2]){i[a+4>>2]=b+1;b=j[b|0];break d}b=fn(a)}switch(b+ -43|0){case 0:case 2:break b;default:break c}}c=b+ -48|0;break a}f=(b|0)==45;b=i[a+4>>2];e:{if(b>>>0>2]){i[a+4>>2]=b+1;b=j[b|0];break e}b=fn(a)}c=b+ -48|0;if(!(c>>>0<10|!i[a+104>>2])){i[a+4>>2]=i[a+4>>2]+ -1}}f:{if(c>>>0<10){c=0;while(1){d=o(c,10)+b|0;b=i[a+4>>2];g:{if(b>>>0>2]){i[a+4>>2]=b+1;b=j[b|0];break g}b=fn(a)}e=b+ -48|0;c=d+ -48|0;if((c|0)<214748364?e>>>0<=9:0){continue}break}d=c;c=c>>31;h:{if(e>>>0>=10){break h}while(1){c=up(d,c,10,0);d=c+b|0;b=H;b=d>>>0>>0?b+1|0:b;d=d+ -48|0;c=b+ -1|0;c=d>>>0<4294967248?c+1|0:c;b=i[a+4>>2];i:{if(b>>>0>2]){i[a+4>>2]=b+1;b=j[b|0];break i}b=fn(a)}e=b+ -48|0;if(e>>>0>9){break h}if((c|0)<21474836?1:(c|0)<=21474836?d>>>0<2061584302:0){continue}break}}if(e>>>0<10){while(1){b=i[a+4>>2];j:{if(b>>>0>2]){i[a+4>>2]=b+1;b=j[b|0];break j}b=fn(a)}if(b+ -48>>>0<10){continue}break}}if(i[a+104>>2]){i[a+4>>2]=i[a+4>>2]+ -1}a=d;d=f?0-a|0:a;c=f?0-(c+(0>>0)|0)|0:c;break f}c=-2147483648;if(!i[a+104>>2]){break f}i[a+4>>2]=i[a+4>>2]+ -1;H=-2147483648;return 0}H=c;return d}function mi(a,b){var c=0,d=0,e=0,f=0,h=0,j=0;f=i[a+8>>2];c=i[a+4>>2];if((f-c|0)/136>>>0>=b>>>0){if(b){b=o(b,136)+c|0;while(1){i[c>>2]=-1;_l(c+4|0);i[c+104>>2]=0;i[c+108>>2]=0;g[c+100|0]=1;i[c+112>>2]=0;i[c+116>>2]=0;i[c+120>>2]=0;i[c+124>>2]=0;i[c+128>>2]=0;c=c+136|0;if((b|0)!=(c|0)){continue}break}c=b}i[a+4>>2]=c;return}a:{b:{c:{d=i[a>>2];c=(c-d|0)/136|0;e=c+b|0;if(e>>>0<31580642){h=o(c,136);d=(f-d|0)/136|0;c=d<<1;e=d>>>0<15790320?c>>>0>>0?e:c:31580641;if(e){if(e>>>0>=31580642){break c}j=ho(o(e,136))}d=h+j|0;f=d+o(b,136)|0;c=d;while(1){i[c>>2]=-1;_l(c+4|0);i[c+104>>2]=0;i[c+108>>2]=0;g[c+100|0]=1;i[c+112>>2]=0;i[c+116>>2]=0;i[c+120>>2]=0;i[c+124>>2]=0;i[c+128>>2]=0;c=c+136|0;if((f|0)!=(c|0)){continue}break}h=o(e,136)+j|0;b=i[a>>2];c=i[a+4>>2];if((b|0)==(c|0)){break b}while(1){c=c+ -136|0;d=ij(d+ -136|0,c);if((b|0)!=(c|0)){continue}break}i[a+8>>2]=h;c=i[a+4>>2];i[a+4>>2]=f;b=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=i[c+ -20>>2];if(a){i[c+ -16>>2]=a;bp(a)}a=c+ -136|0;d=i[c+ -32>>2];if(d){i[c+ -28>>2]=d;bp(d)}ni(c+ -132|0);c=a;if((c|0)!=(b|0)){continue}break}break a}Ho();x()}za(11708);x()}i[a+8>>2]=h;i[a+4>>2]=f;i[a>>2]=d}if(b){bp(b)}}function tb(a,b,c,d){var e=0,f=0,j=0,l=0,n=p(0),o=0,q=0,r=p(0),s=0,t=0;o=k[c>>1];l=o^318;s=a;a:{b:{e=i[b+4>>2];if(!e){break b}f=i[b>>2];q=xp(e);j=l&e+ -1;c:{if(q>>>0<=1){break c}c=l;j=c;if(e>>>0>c>>>0){break c}j=(l>>>0)%(e>>>0)|0}c=j;j=c;c=i[(c<<2)+f>>2];if(!c){break b}t=e+ -1|0;q=q>>>0>1;while(1){c=i[c>>2];if(!c){break b}f=i[c+4>>2];if((l|0)!=(f|0)){d:{if(!q){f=f&t;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(j|0)){break b}}if(k[c+8>>1]!=(o|0)){continue}break}b=0;break a}c=ho(16);h[c+8>>1]=k[d>>1];d=i[d+4>>2];i[c+4>>2]=l;i[c+12>>2]=d;i[c>>2]=0;n=m[b+16>>2];r=p(i[b+12>>2]+1>>>0);e:{if(p(n*p(e>>>0))>>0<3|e<<1;d=b;n=p(v(p(r/n)));f:{if(n=p(0)){j=~~n>>>0;break f}j=0}xb(d,o>>>0>>0?j:o);e=i[b+4>>2];if(!(e&e+ -1)){j=l&e+ -1;break e}if(e>>>0>l>>>0){j=l;break e}j=(l>>>0)%(e>>>0)|0}d=i[b>>2]+(j<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[s+4|0]=b;i[a>>2]=c}function _b(a){var b=0,c=0,d=0,e=0,f=0;e=F-16|0;F=e;b=ho(16);i[e>>2]=b;i[e+4>>2]=14;i[e+8>>2]=-2147483632;g[b+14|0]=0;c=j[1830]|j[1831]<<8|(j[1832]<<16|j[1833]<<24);d=j[1826]|j[1827]<<8|(j[1828]<<16|j[1829]<<24);g[b+6|0]=d;g[b+7|0]=d>>>8;g[b+8|0]=d>>>16;g[b+9|0]=d>>>24;g[b+10|0]=c;g[b+11|0]=c>>>8;g[b+12|0]=c>>>16;g[b+13|0]=c>>>24;c=j[1824]|j[1825]<<8|(j[1826]<<16|j[1827]<<24);d=j[1820]|j[1821]<<8|(j[1822]<<16|j[1823]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;f=$j(a,e,-1);if(g[e+11|0]<=-1){bp(i[e>>2])}b=ho(16);i[e>>2]=b;i[e+4>>2]=14;i[e+8>>2]=-2147483632;g[b+14|0]=0;c=j[1845]|j[1846]<<8|(j[1847]<<16|j[1848]<<24);d=j[1841]|j[1842]<<8|(j[1843]<<16|j[1844]<<24);g[b+6|0]=d;g[b+7|0]=d>>>8;g[b+8|0]=d>>>16;g[b+9|0]=d>>>24;g[b+10|0]=c;g[b+11|0]=c>>>8;g[b+12|0]=c>>>16;g[b+13|0]=c>>>24;c=j[1839]|j[1840]<<8|(j[1841]<<16|j[1842]<<24);d=j[1835]|j[1836]<<8|(j[1837]<<16|j[1838]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;a=$j(a,e,-1);if(g[e+11|0]<=-1){bp(i[e>>2])}F=e+16|0;a=(f|0)<(a|0)?a:f;return(a|0)==-1?5:a}function Wa(a,b,c,d){var e=0,f=0,h=0,j=0,k=p(0),l=0,n=0,o=p(0),q=0,r=0;n=i[c>>2];j=n^318;q=a;a:{b:{e=i[b+4>>2];if(!e){break b}f=i[b>>2];l=xp(e);h=j&e+ -1;c:{if(l>>>0<=1){break c}c=j;h=c;if(c>>>0>>0){break c}h=(j>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+f>>2];if(!c){break b}r=e+ -1|0;l=l>>>0>1;while(1){c=i[c>>2];if(!c){break b}f=i[c+4>>2];if((j|0)!=(f|0)){d:{if(!l){f=f&r;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(h|0)){break b}}if(i[c+8>>2]!=(n|0)){continue}break}b=0;break a}c=ho(16);i[c+8>>2]=i[d>>2];d=i[d+4>>2];i[c+4>>2]=j;i[c+12>>2]=d;i[c>>2]=0;k=m[b+16>>2];o=p(i[b+12>>2]+1>>>0);e:{if(p(k*p(e>>>0))>>0<3|e<<1;d=b;k=p(v(p(o/k)));f:{if(k=p(0)){h=~~k>>>0;break f}h=0}$a(d,e>>>0>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=j&e+ -1;break e}if(j>>>0>>0){h=j;break e}h=(j>>>0)%(e>>>0)|0}d=i[b>>2]+(h<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[q+4|0]=b;i[a>>2]=c}function hb(a,b,c,d){var e=0,f=0,h=0,k=0,l=p(0),n=0,o=0,q=p(0),r=0,s=0;o=j[c|0];k=o^318;r=a;a:{b:{e=i[b+4>>2];if(!e){break b}f=i[b>>2];n=xp(e);h=k&e+ -1;c:{if(n>>>0<=1){break c}c=k;h=c;if(c>>>0>>0){break c}h=(k>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+f>>2];if(!c){break b}s=e+ -1|0;n=n>>>0>1;while(1){c=i[c>>2];if(!c){break b}f=i[c+4>>2];if((k|0)!=(f|0)){d:{if(!n){f=f&s;break d}if(f>>>0>>0){break d}f=(f>>>0)%(e>>>0)|0}if((f|0)!=(h|0)){break b}}if(j[c+8|0]!=(o|0)){continue}break}b=0;break a}c=ho(16);g[c+8|0]=j[d|0];d=i[d+4>>2];i[c+4>>2]=k;i[c+12>>2]=d;i[c>>2]=0;l=m[b+16>>2];q=p(i[b+12>>2]+1>>>0);e:{if(p(l*p(e>>>0))>>0<3|e<<1;d=b;l=p(v(p(q/l)));f:{if(l=p(0)){h=~~l>>>0;break f}h=0}lb(d,e>>>0>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=k&e+ -1;break e}if(k>>>0>>0){h=k;break e}h=(k>>>0)%(e>>>0)|0}d=i[b>>2]+(h<<2)|0;f=i[d>>2];g:{h:{if(!f){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[d>>2]=b+8;d=i[c>>2];if(!d){break g}f=i[d+4>>2];d=e+ -1|0;i:{if(!(d&e)){f=d&f;break i}if(f>>>0>>0){break i}f=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(f<<2)|0;break h}i[c>>2]=i[f>>2]}i[f>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[r+4|0]=b;i[a>>2]=c}function tp(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;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{g=b;if(g){e=c;if(!e){break j}f=d;if(!f){break i}f=r(f)-r(g)|0;if(f>>>0<=31){break h}break b}if((d|0)==1&c>>>0>=0|d>>>0>1){break b}b=(a>>>0)/(c>>>0)|0;H=0;return b}e=d;if(!a){break g}if(!e){break f}if(e+ -1&e){break f}a=g>>>zp(e)|0;H=0;return a}if(!(e+ -1&e)){break e}j=(r(e)+33|0)-r(g)|0;h=0-j|0;break c}j=f+1|0;h=63-f|0;break c}a=(g>>>0)/(e>>>0)|0;H=0;return a}f=r(e)-r(g)|0;if(f>>>0<31){break d}break b}if((e|0)==1){break a}c=a;a=zp(e);d=a&31;if(32<=(a&63)>>>0){f=0;a=b>>>d|0}else{f=b>>>d|0;a=((1<>>d}H=f;return a}j=f+1|0;h=63-f|0}e=b;g=a;f=j&63;i=f&31;if(32<=(f&63)>>>0){f=0;l=e>>>i|0}else{f=e>>>i|0;l=((1<>>i}a=h&63;h=a&31;if(32<=(a&63)>>>0){e=g<>>32-h|b<>>31;f=e<<1|b>>>31;m=k;e=k;k=f;i=g-((h>>>0>>0)+e|0)|0;e=i>>31;i=i>>31;f=c&i;l=k-f|0;f=m-((d&e)+(k>>>0>>0)|0)|0;e=b<<1|a>>>31;a=n|a<<1;b=e|o;m=0;k=i&1;n=k;j=j+ -1|0;if(j){continue}break}}H=m|(b<<1|a>>>31);return k|a<<1}a=0;b=0}H=b;return a}function Xf(a,b,c){var d=0,e=0,f=0,h=0;f=F-16|0;F=f;d=ho(16);i[f>>2]=d;i[f+4>>2]=14;i[f+8>>2]=-2147483632;g[d+14|0]=0;h=j[10714]|j[10715]<<8|(j[10716]<<16|j[10717]<<24);e=j[10710]|j[10711]<<8|(j[10712]<<16|j[10713]<<24);g[d+6|0]=e;g[d+7|0]=e>>>8;g[d+8|0]=e>>>16;g[d+9|0]=e>>>24;g[d+10|0]=h;g[d+11|0]=h>>>8;g[d+12|0]=h>>>16;g[d+13|0]=h>>>24;h=j[10708]|j[10709]<<8|(j[10710]<<16|j[10711]<<24);e=j[10704]|j[10705]<<8|(j[10706]<<16|j[10707]<<24);g[d|0]=e;g[d+1|0]=e>>>8;g[d+2|0]=e>>>16;g[d+3|0]=e>>>24;g[d+4|0]=h;g[d+5|0]=h>>>8;g[d+6|0]=h>>>16;g[d+7|0]=h>>>24;Yj(a,f,b);if(g[f+11|0]<=-1){bp(i[f>>2])}b=ho(16);i[f>>2]=b;i[f+4>>2]=14;i[f+8>>2]=-2147483632;g[b+14|0]=0;e=j[10729]|j[10730]<<8|(j[10731]<<16|j[10732]<<24);d=j[10725]|j[10726]<<8|(j[10727]<<16|j[10728]<<24);g[b+6|0]=d;g[b+7|0]=d>>>8;g[b+8|0]=d>>>16;g[b+9|0]=d>>>24;g[b+10|0]=e;g[b+11|0]=e>>>8;g[b+12|0]=e>>>16;g[b+13|0]=e>>>24;e=j[10723]|j[10724]<<8|(j[10725]<<16|j[10726]<<24);d=j[10719]|j[10720]<<8|(j[10721]<<16|j[10722]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=e;g[b+5|0]=e>>>8;g[b+6|0]=e>>>16;g[b+7|0]=e>>>24;Yj(a,f,c);if(g[f+11|0]<=-1){bp(i[f>>2])}F=f+16|0}function Cf(a,b,c){var d=0,e=0,f=0,h=0;f=F-16|0;F=f;d=ho(16);i[f>>2]=d;i[f+4>>2]=14;i[f+8>>2]=-2147483632;g[d+14|0]=0;h=j[10446]|j[10447]<<8|(j[10448]<<16|j[10449]<<24);e=j[10442]|j[10443]<<8|(j[10444]<<16|j[10445]<<24);g[d+6|0]=e;g[d+7|0]=e>>>8;g[d+8|0]=e>>>16;g[d+9|0]=e>>>24;g[d+10|0]=h;g[d+11|0]=h>>>8;g[d+12|0]=h>>>16;g[d+13|0]=h>>>24;h=j[10440]|j[10441]<<8|(j[10442]<<16|j[10443]<<24);e=j[10436]|j[10437]<<8|(j[10438]<<16|j[10439]<<24);g[d|0]=e;g[d+1|0]=e>>>8;g[d+2|0]=e>>>16;g[d+3|0]=e>>>24;g[d+4|0]=h;g[d+5|0]=h>>>8;g[d+6|0]=h>>>16;g[d+7|0]=h>>>24;Yj(a,f,b);if(g[f+11|0]<=-1){bp(i[f>>2])}b=ho(16);i[f>>2]=b;i[f+4>>2]=14;i[f+8>>2]=-2147483632;g[b+14|0]=0;e=j[10461]|j[10462]<<8|(j[10463]<<16|j[10464]<<24);d=j[10457]|j[10458]<<8|(j[10459]<<16|j[10460]<<24);g[b+6|0]=d;g[b+7|0]=d>>>8;g[b+8|0]=d>>>16;g[b+9|0]=d>>>24;g[b+10|0]=e;g[b+11|0]=e>>>8;g[b+12|0]=e>>>16;g[b+13|0]=e>>>24;e=j[10455]|j[10456]<<8|(j[10457]<<16|j[10458]<<24);d=j[10451]|j[10452]<<8|(j[10453]<<16|j[10454]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=e;g[b+5|0]=e>>>8;g[b+6|0]=e>>>16;g[b+7|0]=e>>>24;Yj(a,f,c);if(g[f+11|0]<=-1){bp(i[f>>2])}F=f+16|0}function pi(a,b,c,d){var e=0,f=0,h=0,j=0,k=p(0),l=0,n=p(0),o=0,q=0;f=i[c>>2];o=a;a:{b:{e=i[b+4>>2];if(!e){break b}j=i[b>>2];l=xp(e);h=f&e+ -1;c:{if(l>>>0<=1){break c}c=f;h=c;if(c>>>0>>0){break c}h=(f>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+j>>2];if(!c){break b}q=e+ -1|0;l=l>>>0>1;while(1){c=i[c>>2];if(!c){break b}j=i[c+4>>2];if((f|0)!=(j|0)){d:{if(!l){j=j&q;break d}if(j>>>0>>0){break d}j=(j>>>0)%(e>>>0)|0}if((j|0)!=(h|0)){break b}}if((f|0)!=i[c+8>>2]){continue}break}b=0;break a}c=ho(16);d=i[i[d>>2]>>2];i[c+12>>2]=0;i[c+8>>2]=d;i[c+4>>2]=f;i[c>>2]=0;k=m[b+16>>2];n=p(i[b+12>>2]+1>>>0);e:{if(p(k*p(e>>>0))>>0<3|e<<1;d=b;k=p(v(p(n/k)));f:{if(k=p(0)){h=~~k>>>0;break f}h=0}jj(d,e>>>0>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=f&e+ -1;break e}if(f>>>0>>0){h=f;break e}h=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(h<<2)|0;d=i[f>>2];g:{h:{if(!d){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[f>>2]=b+8;d=i[c>>2];if(!d){break g}d=i[d+4>>2];f=e+ -1|0;i:{if(!(f&e)){d=d&f;break i}if(d>>>0>>0){break i}d=(d>>>0)%(e>>>0)|0}d=i[b>>2]+(d<<2)|0;break h}i[c>>2]=i[d>>2]}i[d>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[o+4|0]=b;i[a>>2]=c}function gd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;f=F-16|0;F=f;a:{c=i[a+4>>2];b:{c:{if(c){if(I[i[i[a>>2]+52>>2]](a,b,i[i[c+4>>2]+80>>2])|0){break c}break b}if(!(I[i[i[a>>2]+52>>2]](a,b,0)|0)){break b}}n=1;if(!j[a+28|0]){break b}e=i[a+32>>2];l=i[a+8>>2];c=i[l+80>>2];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;if(c){if(c>>>0>=1073741824){break a}c=c<<2;h=ho(c);i[f>>2]=h;d=c+h|0;i[f+8>>2]=d;ip(h,0,c);i[f+4>>2]=d}c=i[b+4>>2];k=i[b>>2];if((c|0)!=(k|0)){b=c-k|0;d=(b|0)>-1?b:-1;c=k-c|0;b=o((d|0)<1?d:1,((c|0)>(b|0)?c:b)>>>2|0);m=b>>>0>1?b:1;b=0;p=j[l+84|0];while(1){c=i[k+(b<<2)>>2];d=h;if(!p){c=i[i[l+68>>2]+(c<<2)>>2]}i[(c<<2)+d>>2]=b;b=b+1|0;if((m|0)!=(b|0)){continue}break}}d:{if(!j[e+84|0]){break d}b=i[i[i[a+4>>2]+4>>2]+80>>2];g[e+84|0]=0;d=i[e+68>>2];c=i[e+72>>2]-d>>2;if(b>>>0>c>>>0){Xa(e+68|0,b-c|0,2396);break d}if(b>>>0>=c>>>0){break d}i[e+72>>2]=d+(b<<2)}d=i[i[i[a+4>>2]+4>>2]+80>>2];e:{if(d){e=i[e+68>>2];b=0;k=j[l+84|0];while(1){a=b;m=e+(b<<2)|0;c=h;if(!k){a=i[i[l+68>>2]+(b<<2)>>2]}i[m>>2]=i[(a<<2)+c>>2];b=b+1|0;if((d|0)!=(b|0)){continue}break}break e}if(!h){break b}}bp(h)}F=f+16|0;return n|0}Ho();x()}function Ei(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11192;b=a+280|0;c=i[b>>2];i[b>>2]=0;if(c){d=c+ -4|0;b=i[d>>2];if(b){b=c+(b<<5)|0;while(1){b=nf(b+ -32|0);if((c|0)!=(b|0)){continue}break}}bp(d)}b=i[a+268>>2];if(b){i[a+272>>2]=b;bp(b)}c=a+244|0;b=i[c>>2];i[c>>2]=0;if(b){bp(b)}b=i[a+232>>2];if(b){i[a+236>>2]=b;bp(b)}nf(a+200|0);b=i[a+184>>2];if(b){i[a+188>>2]=b;bp(b)}c=i[a+172>>2];if(c){b=i[a+176>>2];d=c;a:{if((c|0)==(b|0)){break a}while(1){d=i[b+ -20>>2];if(d){i[b+ -16>>2]=d;bp(d)}d=b+ -136|0;e=i[b+ -32>>2];if(e){i[b+ -28>>2]=e;bp(e)}ni(b+ -132|0);b=d;if((c|0)!=(b|0)){continue}break}d=i[a+172>>2]}i[a+176>>2]=c;bp(d)}b=i[a+152>>2];if(b){i[a+156>>2]=b;bp(b)}b=i[a+140>>2];if(b){bp(b)}b=i[a+128>>2];if(b){while(1){c=i[b>>2];bp(b);b=c;if(b){continue}break}}b=i[a+120>>2];i[a+120>>2]=0;if(b){bp(b)}b=i[a+108>>2];if(b){i[a+112>>2]=b;bp(b)}b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+84>>2];if(b){bp(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;bp(b)}b=i[a+52>>2];if(b){i[a+56>>2]=b;bp(b)}b=i[a+40>>2];if(b){i[a+44>>2]=b;bp(b)}b=i[a+28>>2];if(b){bp(b)}b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}b=i[a+12>>2];i[a+12>>2]=0;if(b){bi(b)}return a|0}function Dn(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=F-32|0;F=g;e=d&2147483647;j=e;e=e+ -1006698496|0;h=c;f=c;if(c>>>0<0){e=e+1|0}k=f;f=e;e=j+ -1140785152|0;l=h;if(h>>>0<0){e=e+1|0}a:{if((e|0)==(f|0)&k>>>0>>0|f>>>0>>0){e=d<<4|c>>>28;c=c<<4|b>>>28;b=b&268435455;h=b;if((b|0)==134217728&a>>>0>=1|b>>>0>134217728){e=e+1073741824|0;a=c+1|0;if(a>>>0<1){e=e+1|0}f=a;break a}f=c;e=e-((c>>>0<0)+ -1073741824|0)|0;if(a|h^134217728){break a}a=f+(f&1)|0;if(a>>>0>>0){e=e+1|0}f=a;break a}if(!(!h&(j|0)==2147418112?!(a|b):(j|0)==2147418112&h>>>0<0|j>>>0<2147418112)){e=d<<4|c>>>28;f=c<<4|b>>>28;e=e&524287|2146959360;break a}f=0;e=2146435072;if(j>>>0>1140785151){break a}e=0;h=j>>>16|0;if(h>>>0<15249){break a}e=d&65535|65536;sn(g+16|0,a,b,c,e,h+ -15233|0);vn(g,a,b,c,e,15361-h|0);c=i[g+4>>2];a=i[g+8>>2];e=i[g+12>>2]<<4|a>>>28;f=a<<4|c>>>28;a=c&268435455;c=a;b=i[g>>2]|((i[g+16>>2]|i[g+24>>2])!=0|(i[g+20>>2]|i[g+28>>2])!=0);if((a|0)==134217728&b>>>0>=1|a>>>0>134217728){a=f+1|0;if(a>>>0<1){e=e+1|0}f=a;break a}if(b|c^134217728){break a}a=f+(f&1)|0;if(a>>>0>>0){e=e+1|0}f=a}F=g+32|0;Cp(0,f|0);Cp(1,d&-2147483648|e);return+Dp()}function Ub(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,n=0,p=0;a:{b:{c:{d:{d=i[a+4>>2];j=i[a>>2];g=(d-j|0)/24|0;e=g+1|0;if(e>>>0<178956971){c=(i[a+8>>2]-j|0)/24|0;f=c<<1;h=c>>>0<89478485?f>>>0>>0?e:f:178956970;if(h){if(h>>>0>=178956971){break d}k=ho(o(h,24))}c=o(g,24)+k|0;i[c>>2]=1140;e=i[b+4>>2];l=c+16|0;i[l>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+4>>2]=e;n=i[b+8>>2];f=i[b+12>>2]-n|0;if(f){p=f>>2;if(p>>>0>=1073741824){break c}g=c+12|0;e=ho(f);i[g>>2]=e;i[c+8>>2]=e;i[l>>2]=e+(p<<2);if((f|0)>=1){e=hp(e,n,f)+f|0}i[g>>2]=e}e=o(h,24)+k|0;m[c+20>>2]=m[b+20>>2];g=c+24|0;if((d|0)==(j|0)){break b}while(1){c=c+ -24|0;i[c>>2]=1140;b=i[d+ -20>>2];f=c+16|0;i[f>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+4>>2]=b;b=d+ -16|0;i[c+8>>2]=i[b>>2];i[c+12>>2]=i[d+ -12>>2];h=f;f=d+ -8|0;i[h>>2]=i[f>>2];i[f>>2]=0;i[b>>2]=0;i[b+4>>2]=0;m[c+20>>2]=m[d+ -4>>2];d=d+ -24|0;if((j|0)!=(d|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=g;d=i[a>>2];i[a>>2]=c;if((b|0)==(d|0)){break a}while(1){b=b+ -24|0;I[i[i[b>>2]>>2]](b)|0;if((b|0)!=(d|0)){continue}break}break a}Ho();x()}za(1752);x()}Ho();x()}i[a+8>>2]=e;i[a+4>>2]=g;i[a>>2]=c}if(d){bp(d)}}function wi(a,b){var c=0,d=0,e=0,f=0,g=0;i[a+128>>2]=2;i[a+132>>2]=7;i[a+64>>2]=b;b=I[i[i[b>>2]+32>>2]](b)|0;i[a+88>>2]=b;c=i[b+28>>2]-i[b+24>>2]>>2;d=i[a+108>>2];b=i[a+104>>2];e=d-b>>2;a:{if(c>>>0>e>>>0){Bd(a+104|0,c-e|0);b=i[a+104>>2];d=i[a+108>>2];break a}if(c>>>0>=e>>>0){break a}d=(c<<2)+b|0;i[a+108>>2]=d}if((b|0)!=(d|0)){b=0;while(1){d=Rl(i[a+88>>2],b);c=i[a+104>>2];i[c+(b<<2)>>2]=d;b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}}e=a+92|0;b=i[a+88>>2];d=i[b>>2];c=i[b+4>>2]-d>>2;g=i[a+92>>2];f=i[a+96>>2]-g>>2;b:{if(c>>>0>f>>>0){Ai(e,c-f|0);b=i[a+88>>2];d=i[b>>2];break b}if(c>>>0>=f>>>0){break b}i[a+96>>2]=(c<<2)+g}c=i[b+4>>2];if((c|0)!=(d|0)){b=c-d|0;f=(b|0)>-1?b:-1;c=d-c|0;b=o((f|0)<1?f:1,((c|0)>(b|0)?c:b)>>>2|0);c=b>>>0>1?b:1;e=i[e>>2];b=0;while(1){f=b<<2;i[f+e>>2]=i[d+f>>2];b=b+1|0;if((c|0)!=(b|0)){continue}break}}b=(i[a+132>>2]-i[a+128>>2]|0)+1|0;d=i[a+140>>2];e=i[a+136>>2];c=(d-e|0)/12|0;if(b>>>0>c>>>0){Bi(a+136|0,b-c|0);return}if(b>>>0>>0){c=e+o(b,12)|0;if((c|0)!=(d|0)){while(1){b=d+ -12|0;e=i[b>>2];if(e){i[d+ -8>>2]=e;bp(e)}d=b;if((b|0)!=(c|0)){continue}break}}i[a+140>>2]=c}}function hp(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){E(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if((c|0)<1){c=a;break b}if(!(a&3)){c=a;break b}c=a;while(1){g[c|0]=j[b|0];b=b+1|0;c=c+1|0;if(c>>>0>=e>>>0){break b}if(c&3){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+ -64|0;if(c>>>0>f>>>0){break c}while(1){i[c>>2]=i[b>>2];i[c+4>>2]=i[b+4>>2];i[c+8>>2]=i[b+8>>2];i[c+12>>2]=i[b+12>>2];i[c+16>>2]=i[b+16>>2];i[c+20>>2]=i[b+20>>2];i[c+24>>2]=i[b+24>>2];i[c+28>>2]=i[b+28>>2];i[c+32>>2]=i[b+32>>2];i[c+36>>2]=i[b+36>>2];i[c+40>>2]=i[b+40>>2];i[c+44>>2]=i[b+44>>2];i[c+48>>2]=i[b+48>>2];i[c+52>>2]=i[b+52>>2];i[c+56>>2]=i[b+56>>2];i[c+60>>2]=i[b+60>>2];b=b- -64|0;c=c- -64|0;if(c>>>0<=f>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){i[c>>2]=i[b>>2];b=b+4|0;c=c+4|0;if(c>>>0>>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){g[c|0]=j[b|0];g[c+1|0]=j[b+1|0];g[c+2|0]=j[b+2|0];g[c+3|0]=j[b+3|0];b=b+4|0;c=c+4|0;if(c>>>0<=d>>>0){continue}break}}if(c>>>0>>0){while(1){g[c|0]=j[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function jg(a,b){var c=0,d=0,e=0,f=0;f=F-16|0;F=f;a:{if(b>>>0>10){break a}c=ho(48);i[f>>2]=c;i[f+4>>2]=33;i[f+8>>2]=-2147483600;g[c+33|0]=0;g[c+32|0]=j[10857];d=j[10853]|j[10854]<<8|(j[10855]<<16|j[10856]<<24);e=j[10849]|j[10850]<<8|(j[10851]<<16|j[10852]<<24);g[c+24|0]=e;g[c+25|0]=e>>>8;g[c+26|0]=e>>>16;g[c+27|0]=e>>>24;g[c+28|0]=d;g[c+29|0]=d>>>8;g[c+30|0]=d>>>16;g[c+31|0]=d>>>24;d=j[10845]|j[10846]<<8|(j[10847]<<16|j[10848]<<24);e=j[10841]|j[10842]<<8|(j[10843]<<16|j[10844]<<24);g[c+16|0]=e;g[c+17|0]=e>>>8;g[c+18|0]=e>>>16;g[c+19|0]=e>>>24;g[c+20|0]=d;g[c+21|0]=d>>>8;g[c+22|0]=d>>>16;g[c+23|0]=d>>>24;d=j[10837]|j[10838]<<8|(j[10839]<<16|j[10840]<<24);e=j[10833]|j[10834]<<8|(j[10835]<<16|j[10836]<<24);g[c+8|0]=e;g[c+9|0]=e>>>8;g[c+10|0]=e>>>16;g[c+11|0]=e>>>24;g[c+12|0]=d;g[c+13|0]=d>>>8;g[c+14|0]=d>>>16;g[c+15|0]=d>>>24;d=j[10829]|j[10830]<<8|(j[10831]<<16|j[10832]<<24);e=j[10825]|j[10826]<<8|(j[10827]<<16|j[10828]<<24);g[c|0]=e;g[c+1|0]=e>>>8;g[c+2|0]=e>>>16;g[c+3|0]=e>>>24;g[c+4|0]=d;g[c+5|0]=d>>>8;g[c+6|0]=d>>>16;g[c+7|0]=d>>>24;Yj(a,f,b);if(g[f+11|0]>-1){break a}bp(i[f>>2])}F=f+16|0}function yc(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=32-b|0;c=c<>2];e=32-f|0;d:{if((e|0)>=(b|0)){b=b+f|0;i[a+16>>2]=b;e=i[a+12>>2]|c>>>f;i[a+12>>2]=e;if((b|0)!=32){break d}b=i[a+4>>2];e:{if((b|0)!=i[a+8>>2]){i[b>>2]=e;i[a+4>>2]=b+4;break e}c=i[a>>2];f=b-c|0;g=f>>2;d=g+1|0;if(d>>>0>=1073741824){break c}h=f>>1;d=g>>>0<536870911?h>>>0>>0?d:h:1073741823;b=0;f:{if(!d){break f}if(d>>>0>=1073741824){break b}b=ho(d<<2)}g=b+(g<<2)|0;i[g>>2]=e;d=b+(d<<2)|0;e=g+4|0;if((f|0)>=1){hp(b,c,f)}i[a+8>>2]=d;i[a+4>>2]=e;i[a>>2]=b;if(!c){break e}bp(c)}i[a+12>>2]=0;i[a+16>>2]=0;return}b=b-e|0;i[a+16>>2]=b;h=c>>>d|0;e=i[a+12>>2]|h>>>b;i[a+12>>2]=e;b=i[a+4>>2];g:{if((b|0)!=i[a+8>>2]){i[b>>2]=e;i[a+4>>2]=b+4;break g}c=i[a>>2];f=b-c|0;g=f>>2;d=g+1|0;if(d>>>0>=1073741824){break c}b=f>>1;d=g>>>0<536870911?b>>>0>>0?d:b:1073741823;b=0;h:{if(!d){break h}if(d>>>0>=1073741824){break a}b=ho(d<<2)}g=b+(g<<2)|0;i[g>>2]=e;d=b+(d<<2)|0;e=g+4|0;if((f|0)>=1){hp(b,c,f)}i[a+8>>2]=d;i[a+4>>2]=e;i[a>>2]=b;if(!c){break g}bp(c)}i[a+12>>2]=h<<32-i[a+16>>2]}return}Ho();x()}za(1752);x()}za(1752);x()}function lm(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;h=F-16|0;F=h;i[a+4>>2]=0;i[a+8>>2]=0;c=a+16|0;i[c>>2]=0;i[c+4>>2]=0;f=a+4|0;i[a>>2]=f;i[a+12>>2]=c;c=i[b>>2];g=b+4|0;if((c|0)!=(g|0)){while(1){e=c;d=c+16|0;mm(a,f,d,d);d=i[c+4>>2];a:{if(!d){c=i[e+8>>2];if((e|0)==i[c>>2]){break a}d=e+8|0;while(1){e=i[d>>2];d=e+8|0;c=i[e+8>>2];if((e|0)!=i[c>>2]){continue}break}break a}while(1){c=d;d=i[c>>2];if(d){continue}break}}if((c|0)!=(g|0)){continue}break}}c=i[b+12>>2];g=b+16|0;if((c|0)!=(g|0)){e=a+12|0;while(1){b=c;k=ho(24);lm(k,i[c+28>>2]);c=c+16|0;f=Of(e,h+12|0,c);d=i[f>>2];if(!d){d=ho(32);ro(d+16|0,c);i[d+28>>2]=0;i[d+8>>2]=i[h+12>>2];i[d>>2]=0;i[d+4>>2]=0;i[f>>2]=d;c=i[i[e>>2]>>2];j=d;b:{if(!c){break b}i[e>>2]=c;j=i[f>>2]}c=j;Kf(i[a+16>>2],c);i[a+20>>2]=i[a+20>>2]+1}d=d+28|0;c=i[d>>2];i[d>>2]=k;if(c){yk(c+12|0,i[c+16>>2]);zk(c,i[c+4>>2]);bp(c)}d=i[b+4>>2];c:{if(!d){c=i[b+8>>2];if((b|0)==i[c>>2]){break c}d=b+8|0;while(1){b=i[d>>2];d=b+8|0;c=i[b+8>>2];if((b|0)!=i[c>>2]){continue}break}break c}while(1){c=d;d=i[c>>2];if(d){continue}break}}if((c|0)!=(g|0)){continue}break}}F=h+16|0}function ii(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=d-c|0;if((f|0)<1){return}a:{h=f>>2;k=i[a+8>>2];l=i[a+4>>2];if((h|0)<=k-l>>2){g=l-b|0;e=g>>2;if((h|0)<=(e|0)){f=l;j=d;break a}f=l;j=(e<<2)+c|0;if((j|0)!=(d|0)){e=j;while(1){i[f>>2]=i[e>>2];f=f+4|0;e=e+4|0;if((e|0)!=(d|0)){continue}break}}i[a+4>>2]=f;if((g|0)>=1){break a}return}b:{j=i[a>>2];g=h+(l-j>>2)|0;if(g>>>0<1073741824){k=k-j|0;e=k>>1;g=k>>2>>>0<536870911?e>>>0>>0?g:e:1073741823;e=0;c:{if(!g){break c}if(g>>>0>=1073741824){break b}e=ho(g<<2)}k=b-j|0;m=c;c=c-d|0;c=hp(e+(k>>2<<2)|0,m,o(((c|0)>(f|0)?c:f)>>>2|0,(f|0)<1?f:1)<<2);d=h<<2;h=g<<2;if((k|0)>=1){hp(e,j,k)}f=c+d|0;d=e+h|0;c=l-b|0;if((c|0)>=1){f=hp(f,b,c)+c|0}i[a+8>>2]=d;i[a+4>>2]=f;i[a>>2]=e;if(j){bp(j)}return}Ho();x()}za(11708);x()}e=h<<2;g=f-(e+b|0)|0;d=f;e=f-e|0;if(e>>>0>>0){h=e;while(1){i[d>>2]=i[h>>2];d=d+4|0;h=h+4|0;if(h>>>0>>0){continue}break}}i[a+4>>2]=d;if(g){while(1){f=f+ -4|0;e=e+ -4|0;i[f>>2]=i[e>>2];if((b|0)!=(e|0)){continue}break}}if((c|0)==(j|0)){return}f=b;while(1){i[f>>2]=i[c>>2];f=f+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}function sl(a,b,c){var d=0,e=0,f=0,h=0;e=F+ -64|0;F=e;a:{b:{c:{d:{e:{if(!a){break e}d=mp(b);if(d>>>0>=4294967280){break d}f:{g:{if(d>>>0>=11){h=d+16&-16;f=ho(h);i[e+56>>2]=h|-2147483648;i[e+48>>2]=f;i[e+52>>2]=d;break g}g[e+59|0]=d;f=e+48|0;if(!d){break f}}hp(f,b,d)}g[d+f|0]=0;d=mp(c);if(d>>>0>=4294967280){break c}h:{i:{if(d>>>0>=11){h=d+16&-16;f=ho(h);i[e+40>>2]=h|-2147483648;i[e+32>>2]=f;i[e+36>>2]=d;break i}g[e+43|0]=d;f=e+32|0;if(!d){break h}}hp(f,c,d)}g[d+f|0]=0;d=mp(b);if(d>>>0>=4294967280){break b}j:{k:{if(d>>>0>=11){h=d+16&-16;f=ho(h);i[e+24>>2]=h|-2147483648;i[e+16>>2]=f;i[e+20>>2]=d;break k}g[e+27|0]=d;f=e+16|0;if(!d){break j}}hp(f,b,d)}g[d+f|0]=0;d=mp(c);if(d>>>0>=4294967280){break a}l:{m:{if(d>>>0>=11){f=d+16&-16;b=ho(f);i[e+8>>2]=f|-2147483648;i[e>>2]=b;i[e+4>>2]=d;f=e;break m}g[e+11|0]=d;f=e;b=e;if(!d){break l}}hp(b,c,d)}g[b+d|0]=0;um(a,e+16|0,e);if(g[f+11|0]<=-1){bp(i[e>>2])}if(g[e+27|0]<=-1){bp(i[e+16>>2])}if(g[e+43|0]<=-1){bp(i[e+32>>2])}if(g[e+59|0]>-1){break e}bp(i[e+48>>2])}F=e- -64|0;return(a|0)!=0}qo();x()}qo();x()}qo();x()}qo();x()}function qj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=F-16|0;F=d;a:{b:{c:{if(!b){b=ho(76);c=ho(12);i[c+8>>2]=i[i[a+4>>2]+80>>2];i[c>>2]=13420;i[c+4>>2]=0;i[d>>2]=c;Mc(b,d,0);i[d+8>>2]=b;c=i[a+12>>2];d:{if(c>>>0>2]){i[d+8>>2]=0;i[c>>2]=b;i[a+12>>2]=c+4;break d}Xh(a+8|0,d+8|0)}a=i[d+8>>2];i[d+8>>2]=0;if(a){I[i[i[a>>2]+4>>2]](a)}a=i[d>>2];i[d>>2]=0;if(!a){break c}I[i[i[a>>2]+4>>2]](a);break c}c=i[i[a+8>>2]>>2];a=i[c+8>>2];e:{if((a|0)!=i[c+12>>2]){i[a>>2]=b;i[c+8>>2]=a+4;break e}f=i[c+4>>2];g=a-f|0;h=g>>2;e=h+1|0;if(e>>>0>=1073741824){break b}a=g>>1;e=h>>>0<536870911?a>>>0>>0?e:a:1073741823;a=0;f:{if(!e){break f}if(e>>>0>=1073741824){break a}a=ho(e<<2)}h=a+(h<<2)|0;i[h>>2]=b;e=a+(e<<2)|0;h=h+4|0;if((g|0)>=1){hp(a,f,g)}i[c+12>>2]=e;i[c+8>>2]=h;i[c+4>>2]=a;if(!f){break e}bp(f)}a=i[c+16>>2];f=i[c+20>>2]-a>>2;g:{if((f|0)>(b|0)){break g}i[d+12>>2]=-1;g=b+1|0;if(g>>>0>f>>>0){a=c+16|0;Gb(a,g-f|0,d+12|0);a=i[a>>2];break g}if(g>>>0>=f>>>0){break g}i[c+20>>2]=(g<<2)+a}i[(b<<2)+a>>2]=(i[c+8>>2]-i[c+4>>2]>>2)+ -1}F=d+16|0;return 1}Ho();x()}za(13344);x()}function Mj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=F-16|0;F=d;a:{b:{c:{if(!b){b=ho(76);c=ho(12);i[c+8>>2]=i[i[a+4>>2]+80>>2];i[c>>2]=13420;i[c+4>>2]=0;i[d>>2]=c;Mc(b,d,0);i[d+8>>2]=b;c=i[a+12>>2];d:{if(c>>>0>2]){i[d+8>>2]=0;i[c>>2]=b;i[a+12>>2]=c+4;break d}Xh(a+8|0,d+8|0)}a=i[d+8>>2];i[d+8>>2]=0;if(a){I[i[i[a>>2]+4>>2]](a)}a=i[d>>2];i[d>>2]=0;if(!a){break c}I[i[i[a>>2]+4>>2]](a);break c}c=i[i[a+8>>2]>>2];a=i[c+8>>2];e:{if((a|0)!=i[c+12>>2]){i[a>>2]=b;i[c+8>>2]=a+4;break e}f=i[c+4>>2];g=a-f|0;h=g>>2;e=h+1|0;if(e>>>0>=1073741824){break b}a=g>>1;e=h>>>0<536870911?a>>>0>>0?e:a:1073741823;a=0;f:{if(!e){break f}if(e>>>0>=1073741824){break a}a=ho(e<<2)}h=a+(h<<2)|0;i[h>>2]=b;e=a+(e<<2)|0;h=h+4|0;if((g|0)>=1){hp(a,f,g)}i[c+12>>2]=e;i[c+8>>2]=h;i[c+4>>2]=a;if(!f){break e}bp(f)}a=i[c+16>>2];f=i[c+20>>2]-a>>2;g:{if((f|0)>(b|0)){break g}i[d+12>>2]=-1;g=b+1|0;if(g>>>0>f>>>0){a=c+16|0;Gb(a,g-f|0,d+12|0);a=i[a>>2];break g}if(g>>>0>=f>>>0){break g}i[c+20>>2]=(g<<2)+a}i[(b<<2)+a>>2]=(i[c+8>>2]-i[c+4>>2]>>2)+ -1}F=d+16|0;return 1}Ho();x()}za(14116);x()}function _(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,n=0,o=0;j=+m[b>>2];k=+m[b+4>>2];n=+m[b+8>>2];h=q(j)+q(k)+q(n);a:{if(h>1e-6^1){j=1;k=0;f=0;break a}h=1/h;k=h*k;j=h*j;f=h*n<0}h=k;g=i[a+16>>2];k=+(g|0);h=u(h*k+.5);b:{if(q(h)<2147483648){b=~~h;break b}b=-2147483648}l=(b|0)<0?b:0-b|0;j=u(j*k+.5);c:{if(q(j)<2147483648){e=~~j;break c}e=-2147483648}o=(e|0)<0;e=l+((o?e:0-e|0)+g|0)|0;l=(e|0)<0?0:e;f=f?0-l|0:l;b=b+(e>>31&((b|0)>0?e:0-e|0))|0;d:{if(!o){e=b+g|0;b=f+g|0;break d}e:{if((b|0)<=-1){e=f>>31;e=e+f^e;break e}e=i[a+8>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=b;b=b>>31;b=f+b^b;break d}b=i[a+8>>2]+((b|0)<0?b:0-b|0)|0}f:{if(!(b|e)){b=i[a+8>>2];a=b;break f}f=i[a+8>>2];g:{h:{i:{j:{if(!e){if((b|0)==(f|0)){a=b;break f}a=0;if(b|f){break j}b=0;break f}if((e|0)!=(f|0)|b){break i}b=e;a=b;break f}if((g|0)<(b|0)){b=(g<<1)-b|0;break f}if(f){break g}break h}if((e|0)!=(f|0)){break g}}f=e;if((g|0)<=(b|0)){break g}b=(g<<1)-b|0;a=e;break f}if(!((b|0)!=(f|0)|(g|0)<=(e|0))){a=(g<<1)-e|0;break f}if(b){a=e;break f}b=0;if((g|0)>=(e|0)){a=e;break f}a=(g<<1)-e|0}i[c>>2]=a;i[d>>2]=b}function Cm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{if((b|0)<0){break a}c=i[a+12>>2];d=i[a+8>>2];if(c-d>>2>>>0<=b>>>0){break a}d=d+(b<<2)|0;f=i[d>>2];h=i[f+60>>2];g=i[f+56>>2];e=d+4|0;b:{if((e|0)!=(c|0)){while(1){j=i[e>>2];i[e>>2]=0;i[d>>2]=j;if(f){Wb(f)}d=d+4|0;e=e+4|0;if((e|0)!=(c|0)){f=i[d>>2];continue}break}c=i[a+12>>2];if((d|0)==(c|0)){break b}}while(1){c=c+ -4|0;f=i[c>>2];i[c>>2]=0;if(f){Wb(f)}if((c|0)!=(d|0)){continue}break}}i[a+12>>2]=d;c=i[a+4>>2];if(c){Dm(c,h)}c:{if((g|0)>4){break c}d:{d=o(g,12)+a|0;c=i[d+20>>2];f=d+24|0;d=i[f>>2];if((c|0)==(d|0)){break d}while(1){if(i[c>>2]==(b|0)){break d}c=c+4|0;if((d|0)!=(c|0)){continue}break}break c}if((c|0)==(d|0)){break c}e=c+4|0;d=d-e|0;if(d){jp(c,e,d)}i[f>>2]=c+d}d=0;while(1){c=o(d,12)+a|0;e=i[c+24>>2];f=i[c+20>>2];if((e|0)!=(f|0)){c=e-f|0;g=(c|0)>-1?c:-1;e=f-e|0;c=o((g|0)<1?g:1,((e|0)>(c|0)?e:c)>>>2|0);e=c>>>0>1?c:1;c=0;while(1){g=f+(c<<2)|0;h=i[g>>2];if((h|0)>(b|0)){i[g>>2]=h+ -1}c=c+1|0;if((e|0)!=(c|0)){continue}break}}d=d+1|0;if((d|0)!=5){continue}break}}}function Kf(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);g[b+12|0]=c;a:{if(c){break a}while(1){d=i[b+8>>2];if(j[d+12|0]){break a}b:{c=i[d+8>>2];e=i[c>>2];if((e|0)==(d|0)){e=i[c+4>>2];if(!(!e|j[e+12|0])){break b}c:{if(i[d>>2]==(b|0)){b=d;break c}b=i[d+4>>2];e=i[b>>2];i[d+4>>2]=e;a=b;if(e){i[e+8>>2]=d;c=i[d+8>>2]}i[a+8>>2]=c;a=i[d+8>>2];i[(((d|0)!=i[a>>2])<<2)+a>>2]=b;i[b>>2]=d;i[d+8>>2]=b;c=i[b+8>>2]}g[b+12|0]=1;g[c+12|0]=0;a=i[c>>2];b=i[a+4>>2];i[c>>2]=b;if(b){i[b+8>>2]=c}i[a+8>>2]=i[c+8>>2];b=i[c+8>>2];i[((i[b>>2]!=(c|0))<<2)+b>>2]=a;i[a+4>>2]=c;i[c+8>>2]=a;return}if(!(j[e+12|0]|!e)){break b}d:{if(i[d>>2]!=(b|0)){b=d;break d}e=i[b+4>>2];i[d>>2]=e;a=b;if(e){i[e+8>>2]=d;c=i[d+8>>2]}i[a+8>>2]=c;a=i[d+8>>2];i[(((d|0)!=i[a>>2])<<2)+a>>2]=b;i[b+4>>2]=d;i[d+8>>2]=b;c=i[b+8>>2]}g[b+12|0]=1;g[c+12|0]=0;a=i[c+4>>2];b=i[a>>2];i[c+4>>2]=b;if(b){i[b+8>>2]=c}i[a+8>>2]=i[c+8>>2];b=i[c+8>>2];i[((i[b>>2]!=(c|0))<<2)+b>>2]=a;i[a>>2]=c;i[c+8>>2]=a;break a}b=e+12|0;g[d+12|0]=1;g[c+12|0]=(a|0)==(c|0);g[b|0]=1;b=c;if((a|0)!=(b|0)){continue}break}}}function dd(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i[b+4>>2];f=i[b>>2];c=(i[c+4>>2]-g|0)+(i[c>>2]-f<<3)|0;a:{if((c|0)<=0){g=i[d+4>>2];break a}b:{if(!g){g=i[d+4>>2];break b}e=i[d+4>>2];j=32-e|0;l=32-g|0;h=(c|0)<(l|0)?c:l;k=j>>>0>>0?j:h;m=i[d>>2];f=i[f>>2]&(-1<>>l-h);i[m>>2]=i[m>>2]&(-1<>>j-k^-1)|(e>>>0>g>>>0?f<>>g-e|0);e=e+k|0;g=e&31;i[d+4>>2]=g;j=m+(e>>>3&536870908)|0;i[d>>2]=j;e=h-k|0;if((e|0)>=1){i[j>>2]=i[j>>2]&(-1>>>32-e^-1)|f>>>k+i[b+4>>2];i[d+4>>2]=e;g=e}c=c-h|0;f=i[b>>2]+4|0;i[b>>2]=f}k=-1<>2];f=i[f>>2];i[e>>2]=j&i[e>>2]|f<>2]=e+4;i[e+4>>2]=k&i[e+4>>2]|f>>>h;f=i[b>>2]+4|0;i[b>>2]=f;l=(c|0)>63;e=c+ -32|0;c=e;if(l){continue}break}}if((e|0)<1){break a}b=i[d>>2];c=(h|0)<(e|0)?h:e;j=i[b>>2]&(k&-1>>>h-c^-1);h=i[f>>2]&-1>>>32-e;i[b>>2]=j|h<>2]=g;f=b+(f>>>3&536870908)|0;i[d>>2]=f;b=e-c|0;if((b|0)<1){break a}i[f>>2]=i[f>>2]&(-1>>>32-b^-1)|h>>>c;i[d+4>>2]=b;g=b}b=i[d>>2];i[a+4>>2]=g;i[a>>2]=b}function wn(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=F-32|0;F=h;f=d&2147483647;g=f;e=f+ -1065418752|0;f=c;j=f;if(f>>>0<0){e=e+1|0}l=j;k=g+ -1082064896|0;j=f;if(f>>>0<0){k=k+1|0}a:{if((e|0)==(k|0)&l>>>0>>0|e>>>0>>0){g=(d&33554431)<<7|c>>>25;f=0;k=f;j=c&33554431;if(!(!f&(j|0)==16777216?!(a|b):!f&j>>>0<16777216|f>>>0<0)){e=g+1073741825|0;break a}e=g+1073741824|0;if(j^16777216|a|(b|k)){break a}e=(e&1)+e|0;break a}if(!(!f&(g|0)==2147418112?!(a|b):(g|0)==2147418112&f>>>0<0|g>>>0<2147418112)){e=((d&33554431)<<7|c>>>25)&4194303|2143289344;break a}e=2139095040;if(g>>>0>1082064895){break a}e=0;g=g>>>16|0;if(g>>>0<16145){break a}e=d&65535|65536;sn(h+16|0,a,b,c,e,g+ -16129|0);vn(h,a,b,f,e,16257-g|0);b=i[h+8>>2];e=(i[h+12>>2]&33554431)<<7|b>>>25;f=i[h+4>>2];g=f;a=0;j=a;k=i[h>>2]|((i[h+16>>2]|i[h+24>>2])!=0|(i[h+20>>2]|i[h+28>>2])!=0);b=b&33554431;if(!(!a&(b|0)==16777216?!(f|k):!a&b>>>0<16777216|a>>>0<0)){e=e+1|0;break a}if(b^16777216|k|(g|j)){break a}e=(e&1)+e|0}F=h+32|0;return Cp(2,d&-2147483648|e),Gp()}function hi(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=-1;a:{if((b|0)==-1){h=i[a+12>>2];d=1;e=-1;break a}h=i[a+12>>2];d=((b>>>0)%3|0?-1:2)+b|0;b:{if((d|0)==-1){d=1;break b}g=i[h+12>>2];while(1){f=d;e=i[g+(d<<2)>>2];if((e|0)!=-1){f=-1;d=e+1|0;d=(d>>>0)%3|0?d:e+ -2|0;if((d|0)!=-1){continue}}break}d=(e|0)!=-1;e=-1;if((b|0)==-1){break a}}e=i[i[h>>2]+(b<<2)>>2]}b=0;if(c){b=i[a+84>>2]+(e>>>3&536870908)|0;i[b>>2]=i[b>>2]|1<>2]+(e<<2)>>2];g=i[a+140>>2]+(c>>>3&536870908)|0;i[g>>2]=i[g>>2]|1<>>0)%3|0?-1:2)+f|0;c=-1;if((d|0)==-1){break c}c=i[i[h>>2]+(d<<2)>>2]}if((g|0)!=(c|0)){g=i[a+84>>2];while(1){a=f;f=g+(c>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<>>0)%3|0?d:a+ -2|0;if((d|0)==-1){break d}j=i[h+12>>2];while(1){a=i[j+(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 d}break}a=((d>>>0)%3|0?-1:2)+d|0;if((a|0)!=-1){c=i[i[h>>2]+(a<<2)>>2]}f=d}b=b+1|0;if((c|0)!=(e|0)){continue}break}}}function xi(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;a:{b:{if(j[a+352|0]){break b}b=i[a+8>>2];g=i[b+12>>2];h=i[b+8>>2];f=g-h|0;d=(f>>2)+ -1|0;c=i[a+176>>2];b=i[a+172>>2];e=(c-b|0)/136|0;c:{if(d>>>0>e>>>0){mi(a+172|0,d-e|0);break c}if(d>>>0>=e>>>0){break c}d=b+o(d,136)|0;if((d|0)!=(c|0)){while(1){b=i[c+ -20>>2];if(b){i[c+ -16>>2]=b;bp(b)}b=c+ -136|0;e=i[c+ -32>>2];if(e){i[c+ -28>>2]=e;bp(e)}ni(c+ -132|0);c=b;if((b|0)!=(d|0)){continue}break}}i[a+176>>2]=d}if((f|0)==4|(f|0)<1){break b}b=h-g|0;b=((b|0)>(f|0)?b:f)>>>2|0;f=b>>>0>1?b:1;c=0;while(1){d=i[i[i[a+8>>2]+8>>2]+(c<<2)>>2];if(i[d+56>>2]){e=o(n,136);k=e+i[a+172>>2]|0;i[k>>2]=c;g=k+108|0;l=i[k+104>>2];i[g>>2]=l;h=k+112|0;b=i[a+12>>2];b=i[b+4>>2]-i[b>>2]|0;m=b>>2;d:{if(i[h>>2]-l>>2>>>0>=m>>>0){break d}if(m>>>0>=1073741824){break a}b=ho(b);i[k+104>>2]=b;i[g>>2]=b;i[h>>2]=b+(m<<2);if(!l){break d}bp(l)}b=e+i[a+172>>2]|0;i[b+128>>2]=0;am(b+4|0,i[a+8>>2],i[a+12>>2],d);n=n+1|0}c=c+1|0;if((f|0)!=(c|0)){continue}break}}return 1}za(11708);x()}function di(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;a:{b:{if(j[a+288|0]){break b}b=i[a+8>>2];g=i[b+12>>2];h=i[b+8>>2];f=g-h|0;d=(f>>2)+ -1|0;c=i[a+176>>2];b=i[a+172>>2];e=(c-b|0)/136|0;c:{if(d>>>0>e>>>0){mi(a+172|0,d-e|0);break c}if(d>>>0>=e>>>0){break c}d=b+o(d,136)|0;if((d|0)!=(c|0)){while(1){b=i[c+ -20>>2];if(b){i[c+ -16>>2]=b;bp(b)}b=c+ -136|0;e=i[c+ -32>>2];if(e){i[c+ -28>>2]=e;bp(e)}ni(c+ -132|0);c=b;if((b|0)!=(d|0)){continue}break}}i[a+176>>2]=d}if((f|0)==4|(f|0)<1){break b}b=h-g|0;b=((b|0)>(f|0)?b:f)>>>2|0;f=b>>>0>1?b:1;c=0;while(1){d=i[i[i[a+8>>2]+8>>2]+(c<<2)>>2];if(i[d+56>>2]){e=o(n,136);k=e+i[a+172>>2]|0;i[k>>2]=c;g=k+108|0;l=i[k+104>>2];i[g>>2]=l;h=k+112|0;b=i[a+12>>2];b=i[b+4>>2]-i[b>>2]|0;m=b>>2;d:{if(i[h>>2]-l>>2>>>0>=m>>>0){break d}if(m>>>0>=1073741824){break a}b=ho(b);i[k+104>>2]=b;i[g>>2]=b;i[h>>2]=b+(m<<2);if(!l){break d}bp(l)}b=e+i[a+172>>2]|0;i[b+128>>2]=0;am(b+4|0,i[a+8>>2],i[a+12>>2],d);n=n+1|0}c=c+1|0;if((f|0)!=(c|0)){continue}break}}return 1}za(11708);x()}function eg(a,b,c,d,e){var f=0,g=0,h=0,j=0,k=0,m=0,o=0,p=0,q=0,r=0;o=F-16|0;F=o;h=i[b+28>>2];f=a+8|0;g=i[b+24>>2];i[f>>2]=g;i[f+4>>2]=h;j=i[b+20>>2];i[a>>2]=i[b+16>>2];i[a+4>>2]=j;j=i[b+36>>2];i[a+16>>2]=i[b+32>>2];i[a+20>>2]=j;i[f>>2]=d+g;a:{b:{if((d|0)>=1){j=i[b>>2];f=0;while(1){g=i[b+4>>2]-j>>2;h=i[(f<<2)+c>>2];c:{if(g>>>0>h>>>0){break c}i[o+12>>2]=0;k=h+1|0;if(k>>>0>g>>>0){Gb(b,k-g|0,o+12|0);j=i[b>>2];break c}if(k>>>0>=g>>>0){break c}i[b+4>>2]=(k<<2)+j}k=(h<<2)+j|0;g=i[k>>2];d:{if((g|0)>=2){m=+(g|0);m=ep(m)*m;break d}m=0;if(g){break d}i[a+16>>2]=i[a+16>>2]+1;if(h>>>0<=l[a+12>>2]){break d}i[a+12>>2]=h}h=g+1|0;i[k>>2]=h;p=+(h|0);q=a,r=ep(p)*p-m+n[a>>3],n[q>>3]=r;f=f+1|0;if((f|0)!=(d|0)){continue}break}if(e){break b}if((d|0)<1){break a}a=i[b>>2];f=0;while(1){b=a+(i[(f<<2)+c>>2]<<2)|0;i[b>>2]=i[b>>2]+ -1;f=f+1|0;if((f|0)!=(d|0)){continue}break}break a}if(!e){break a}}d=i[a+4>>2];b=b+16|0;i[b>>2]=i[a>>2];i[b+4>>2]=d;i[b+16>>2]=i[a+16>>2];c=i[a+12>>2];i[b+8>>2]=i[a+8>>2];i[b+12>>2]=c}F=o+16|0}function si(a){i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=11424;i[a+72>>2]=0;i[a+76>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;i[a+36>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+80>>2]=0;i[a+84>>2]=0;i[a+88>>2]=0;i[a+92>>2]=0;i[a+96>>2]=0;i[a+100>>2]=0;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=1065353216;i[a+156>>2]=0;i[a+160>>2]=0;i[a+148>>2]=0;i[a+152>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+164>>2]=-1;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;mf(a+200|0);Tj(a+232|0);i[a+304>>2]=0;i[a+308>>2]=0;i[a+296>>2]=0;i[a+300>>2]=0;i[a+288>>2]=0;i[a+292>>2]=0;i[a+280>>2]=0;i[a+284>>2]=0;i[a+272>>2]=0;i[a+276>>2]=0;i[a+264>>2]=0;i[a+268>>2]=0;g[a+352|0]=0;i[a+344>>2]=0;i[a+336>>2]=0;i[a+340>>2]=0;i[a+328>>2]=2;i[a+332>>2]=7;i[a+320>>2]=-1;i[a+324>>2]=0;i[a+312>>2]=0;i[a+316>>2]=-1}function vc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=F-32|0;F=b;c=i[a+16>>2];a:{if(c>>>0>=113){i[a+16>>2]=c+ -113;c=i[a+4>>2];i[b+8>>2]=i[c>>2];i[a+4>>2]=c+4;zc(a,b+8|0);break a}b:{c:{d:{e:{d=i[a+8>>2];e=d-i[a+4>>2]>>2;f=i[a+12>>2];c=f-i[a>>2]|0;if(e>>>0>2>>>0){if((d|0)==(f|0)){break e}g=b,h=ho(4068),i[g+8>>2]=h;zc(a,b+8|0);break a}i[b+24>>2]=a+12;c=c?c>>1:1;if(c>>>0>=1073741824){break d}d=c<<2;c=ho(d);i[b+8>>2]=c;e=c+(e<<2)|0;i[b+16>>2]=e;i[b+20>>2]=c+d;i[b+12>>2]=e;g=b,h=ho(4068),i[g+4>>2]=h;zc(b+8|0,b+4|0);d=i[a+8>>2];if((d|0)==i[a+4>>2]){c=d;break b}while(1){d=d+ -4|0;Ac(b+8|0,d);if(i[a+4>>2]!=(d|0)){continue}break}break c}g=b,h=ho(4068),i[g+8>>2]=h;Ac(a,b+8|0);c=i[a+4>>2];i[b+8>>2]=i[c>>2];i[a+4>>2]=c+4;zc(a,b+8|0);break a}za(1752);x()}c=i[a+8>>2]}e=i[a>>2];i[a>>2]=i[b+8>>2];i[b+8>>2]=e;i[a+4>>2]=i[b+12>>2];i[b+12>>2]=d;i[a+8>>2]=i[b+16>>2];i[b+16>>2]=c;f=i[a+12>>2];i[a+12>>2]=i[b+20>>2];i[b+20>>2]=f;if((c|0)!=(d|0)){i[b+16>>2]=c+(((c-d|0)+ -4>>>2^-1)<<2)}if(!e){break a}bp(e)}F=b+32|0}function Og(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0;e=1;a:{b:{c:{d:{e:{f:{switch(b-a>>2){case 2:d=i[c>>2];c=i[d>>2];d=i[d+4>>2]-c>>3;f=b+ -4|0;b=i[f>>2];if(d>>>0<=b>>>0){break e}g=d;d=i[a>>2];if(g>>>0<=d>>>0){break e}if(l[c+(b<<3)>>2]>=l[c+(d<<3)>>2]){break a}i[a>>2]=b;i[f>>2]=d;return 1;case 3:Ng(a,a+4|0,b+ -4|0,c);return 1;case 4:Kg(a,a+4|0,a+8|0,b+ -4|0,c);return 1;case 5:Lg(a,a+4|0,a+8|0,a+12|0,b+ -4|0,c);return 1;case 0:case 1:break a;default:break f}}f=a+8|0;Ng(a,a+4|0,f,c);e=a+12|0;if((e|0)==(b|0)){break c}d=i[c>>2];h=i[d>>2];j=i[d+4>>2]-h>>3;while(1){d=e;k=i[d>>2];if(j>>>0<=k>>>0){break d}e=i[f>>2];if(j>>>0<=e>>>0){break d}g=d;g:{m=h+(k<<3)|0;if(l[m>>2]>2]){while(1){h:{i[g>>2]=e;c=f;if((c|0)==(a|0)){c=a;break h}f=c+ -4|0;e=i[f>>2];if(j>>>0<=e>>>0){break d}g=c;if(l[m>>2]>2]){continue}}break}i[c>>2]=k;n=n+1|0;if((n|0)==8){break g}}f=d;e=d+4|0;if((e|0)==(b|0)){break c}continue}break}c=(d+4|0)==(b|0);a=0;break b}Io();x()}Io();x()}a=1}e=a|c}return e&1}function Uf(a,b,c,d){var e=0,f=0,h=0,k=0;k=F-16|0;F=k;e=ho(16);i[k>>2]=e;i[k+4>>2]=15;i[k+8>>2]=-2147483632;g[e+15|0]=0;f=j[10535]|j[10536]<<8|(j[10537]<<16|j[10538]<<24);h=j[10531]|j[10532]<<8|(j[10533]<<16|j[10534]<<24);g[e+7|0]=h;g[e+8|0]=h>>>8;g[e+9|0]=h>>>16;g[e+10|0]=h>>>24;g[e+11|0]=f;g[e+12|0]=f>>>8;g[e+13|0]=f>>>16;g[e+14|0]=f>>>24;f=j[10528]|j[10529]<<8|(j[10530]<<16|j[10531]<<24);h=j[10524]|j[10525]<<8|(j[10526]<<16|j[10527]<<24);g[e|0]=h;g[e+1|0]=h>>>8;g[e+2|0]=h>>>16;g[e+3|0]=h>>>24;g[e+4|0]=f;g[e+5|0]=f>>>8;g[e+6|0]=f>>>16;g[e+7|0]=f>>>24;f=b+4|0;e=$j(f,k,-1);if(g[k+11|0]<=-1){bp(i[k>>2])}a:{b:{c:{switch(e+1|0){case 0:if((_b(f)|0)==10){break b}break;case 2:break c;default:break b}}e=ho(68);lj(e);i[e+64>>2]=0;i[e>>2]=10936;break a}e=ho(64);lj(e);i[e>>2]=13204}i[e+56>>2]=c;aa(e,c);yj(a,e,f,d);if(!i[a>>2]){if(g[a+15|0]<=-1){bp(i[a+4>>2])}i[b+40>>2]=i[e+52>>2];i[b+44>>2]=i[e+60>>2];i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0}I[i[i[e>>2]+4>>2]](e);F=k+16|0}function Kj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=F-16|0;F=e;a:{b:{c=i[a+8>>2];c:{if((c|0)==i[a+12>>2]){c=ho(76);Qb(c,b);i[e+8>>2]=c;b=i[a+12>>2];d:{if(b>>>0>2]){i[e+8>>2]=0;i[b>>2]=c;i[a+12>>2]=b+4;break d}Xh(a+8|0,e+8|0)}a=i[e+8>>2];i[e+8>>2]=0;if(!a){break c}I[i[i[a>>2]+4>>2]](a);break c}c=i[c>>2];a=i[c+8>>2];e:{if((a|0)!=i[c+12>>2]){i[a>>2]=b;i[c+8>>2]=a+4;break e}f=i[c+4>>2];g=a-f|0;h=g>>2;d=h+1|0;if(d>>>0>=1073741824){break b}a=g>>1;d=h>>>0<536870911?a>>>0>>0?d:a:1073741823;a=0;f:{if(!d){break f}if(d>>>0>=1073741824){break a}a=ho(d<<2)}h=a+(h<<2)|0;i[h>>2]=b;d=a+(d<<2)|0;h=h+4|0;if((g|0)>=1){hp(a,f,g)}i[c+12>>2]=d;i[c+8>>2]=h;i[c+4>>2]=a;if(!f){break e}bp(f)}a=i[c+16>>2];f=i[c+20>>2]-a>>2;g:{if((f|0)>(b|0)){break g}i[e+12>>2]=-1;g=b+1|0;if(g>>>0>f>>>0){a=c+16|0;Gb(a,g-f|0,e+12|0);a=i[a>>2];break g}if(g>>>0>=f>>>0){break g}i[c+20>>2]=(g<<2)+a}i[(b<<2)+a>>2]=(i[c+8>>2]-i[c+4>>2]>>2)+ -1}F=e+16|0;return 1}Ho();x()}za(13936);x()}function gb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}k=b+ -1|0;l=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!l){e=e&k;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){f:{e=c;c=i[c>>2];if(!c|i[d+8>>2]!=i[c+8>>2]|(i[d+12>>2]!=i[c+12>>2]|i[d+16>>2]!=i[c+16>>2])){break f}if(i[d+20>>2]==i[c+20>>2]){continue}}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function Eb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}l=b+ -1|0;m=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!m){e=e&l;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){f:{e=c;c=i[c>>2];if(!c|k[d+8>>1]!=k[c+8>>1]|(k[d+10>>1]!=k[c+10>>1]|k[d+12>>1]!=k[c+12>>1])){break f}if(k[d+14>>1]==k[c+14>>1]){continue}}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function Z(a,b,c,d,e){var f=0,g=0,h=0,k=0,l=0,n=0,o=0,q=0;f=F-48|0;F=f;a=i[a+4>>2];a:{if(a+ -2>>>0>28){break a}l=i[i[e>>2]>>2]+i[e+48>>2]|0;i[f+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;i[f+24>>2]=a;i[f+32>>2]=(a|0)/2;m[f+28>>2]=p(2)/p(a|0);g=i[c>>2];if((g|0)!=i[c+4>>2]){a=0;e=0;while(1){d=i[(e<<2)+g>>2];g=f+36|0;n=i[i[b>>2]>>2];o=i[b+48>>2];h=i[b+44>>2];k=i[b+40>>2];q=k;if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}d=up(q,h,d,0)+o|0;hp(g,d+n|0,k);_(f+16|0,f+36|0,f+12|0,f+8|0);d=a<<2;i[d+l>>2]=i[f+12>>2];i[(d|4)+l>>2]=i[f+8>>2];h=1;a=a+2|0;e=e+1|0;g=i[c>>2];if(e>>>0>2]-g>>2>>>0){continue}break}break a}if(!d){h=1;break a}e=0;a=0;while(1){c=a;g=f+36|0;n=i[i[b>>2]>>2];o=i[b+48>>2];h=i[b+44>>2];k=i[b+40>>2];q=k;if(!j[b+84|0]){c=i[i[b+68>>2]+(a<<2)>>2]}c=up(q,h,c,0)+o|0;hp(g,c+n|0,k);_(f+16|0,f+36|0,f+12|0,f+8|0);c=e<<2;i[c+l>>2]=i[f+12>>2];i[(c|4)+l>>2]=i[f+8>>2];e=e+2|0;h=1;a=a+1|0;if((d|0)!=(a|0)){continue}break}}F=f+48|0;return h}function $l(a,b){var c=0,d=0,e=0,f=0,h=0,j=0;j=F-16|0;F=j;a:{b:{if(b){i[a+88>>2]=0;i[a+92>>2]=0;c=a+84|0;d=i[c>>2];i[c>>2]=0;if(d){bp(d)}i[a+76>>2]=0;i[a+80>>2]=0;c=a+72|0;d=i[c>>2];i[c>>2]=0;if(d){bp(d)}d=i[b>>2];c=i[b+4>>2];g[j+15|0]=0;Uh(a,c-d>>2,j+15|0);c=b+28|0;d=i[c>>2];e=i[b+24>>2];g[j+14|0]=0;Uh(a+12|0,d-e>>2,j+14|0);Sh(a+28|0,i[b+4>>2]-i[b>>2]>>2,16716);d=i[a+52>>2];e=i[c>>2]-i[b+24>>2]|0;c=e>>2;c:{if(i[a+60>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break b}f=i[a+56>>2];h=c<<2;c=ho(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){hp(c,d,e)}i[a+60>>2]=h;i[a+56>>2]=f;i[a+52>>2]=c;if(!d){break c}bp(d)}d=i[a+40>>2];e=i[b+28>>2]-i[b+24>>2]|0;c=e>>2;d:{if(i[a+48>>2]-d>>2>>>0>=c>>>0){break d}if(c>>>0>=1073741824){break a}f=i[a+44>>2];h=c<<2;c=ho(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){hp(c,d,e)}i[a+48>>2]=h;i[a+44>>2]=f;i[a+40>>2]=c;if(!d){break d}bp(d)}g[a+24|0]=1;i[a+64>>2]=b}F=j+16|0;return(b|0)!=0}za(16720);x()}za(16720);x()}function oe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0;f=F-16|0;F=f;if(!(!fd(a,b,c)|j[i[a+8>>2]+24|0]!=3)){h=i[b+48>>2];b=ho(32);i[f>>2]=b;i[f+4>>2]=17;i[f+8>>2]=-2147483616;g[b+17|0]=0;g[b+16|0]=j[6044];d=j[6040]|j[6041]<<8|(j[6042]<<16|j[6043]<<24);e=j[6036]|j[6037]<<8|(j[6038]<<16|j[6039]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[6032]|j[6033]<<8|(j[6034]<<16|j[6035]<<24);e=j[6028]|j[6029]<<8|(j[6030]<<16|j[6031]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;a:{b:{e=h+16|0;b=i[e>>2];if(!b){break b}d=e;while(1){k=i[b+16>>2]<(c|0);d=k?d:b;b=i[(k<<2)+b>>2];if(b){continue}break}if((d|0)==(e|0)|i[d+16>>2]>(c|0)){break b}b=d+20|0;if(!Sb(b,f)){break b}b=$j(b,f,-1);break a}b=$j(h,f,-1)}if(g[f+11|0]<=-1){bp(i[f>>2])}if((b|0)>=1){aa(a+40|0,b)}d=(b|0)>0}F=f+16|0;return d|0}function sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}l=b+ -1|0;m=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!m){e=e&l;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;k=h+i[a>>2]|0;if(!i[k>>2]){i[k>>2]=f;f=d;g=e;break e}while(1){f:{e=c;c=i[c>>2];if(!c|j[d+8|0]!=j[c+8|0]|(j[d+9|0]!=j[c+9|0]|j[d+10|0]!=j[c+10|0])){break f}if(j[d+11|0]==j[c+11|0]){continue}}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function ua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,m=0,n=0;e=i[a+12>>2];d=i[a+8>>2];f=e-d>>2;b=g[b+24|0];a:{if(f>>>0>>0){ka(a+8|0,b-f|0);d=i[a+8>>2];e=i[a+12>>2];break a}if(f>>>0<=b>>>0){break a}e=(b<<2)+d|0;i[a+12>>2]=e}b=0;h=i[c+12>>2];f=i[c+20>>2];k=i[c+16>>2];m=e-d|0;e=m;n=k+e|0;if(n>>>0>>0){f=f+1|0}b:{if((h|0)<(f|0)?1:(h|0)<=(f|0)?l[c+8>>2]>>0:0){break b}hp(d,k+i[c>>2]|0,m);d=i[c+20>>2];h=e+i[c+16>>2]|0;if(h>>>0>>0){d=d+1|0}e=h;i[c+16>>2]=e;i[c+20>>2]=d;f=i[c+12>>2];h=e+4|0;if(h>>>0<4){d=d+1|0}if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]>>0:0){break b}d=e+i[c>>2]|0;i[a+20>>2]=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);d=i[c+20>>2];e=d;k=i[c+16>>2];h=k+4|0;if(h>>>0<4){d=d+1|0}i[c+16>>2]=h;i[c+20>>2]=d;f=i[c+12>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=h>>>0:0){break b}f=j[h+i[c>>2]|0];d=e;e=k+5|0;if(e>>>0<5){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;if(f+ -1>>>0>29){break b}i[a+4>>2]=f;b=1}return b|0}function Sf(a,b,c){var d=0,e=0,f=0;e=F-16|0;F=e;d=i[b+48>>2];a:{if(!d){b=ho(32);i[e>>2]=b;i[e+4>>2]=23;i[e+8>>2]=-2147483616;g[b+23|0]=0;c=j[10519]|j[10520]<<8|(j[10521]<<16|j[10522]<<24);d=j[10515]|j[10516]<<8|(j[10517]<<16|j[10518]<<24);g[b+15|0]=d;g[b+16|0]=d>>>8;g[b+17|0]=d>>>16;g[b+18|0]=d>>>24;g[b+19|0]=c;g[b+20|0]=c>>>8;g[b+21|0]=c>>>16;g[b+22|0]=c>>>24;c=j[10512]|j[10513]<<8|(j[10514]<<16|j[10515]<<24);d=j[10508]|j[10509]<<8|(j[10510]<<16|j[10511]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[10504]|j[10505]<<8|(j[10506]<<16|j[10507]<<24);d=j[10500]|j[10501]<<8|(j[10502]<<16|j[10503]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;ro(a+4|0,e);if(g[e+11|0]>-1){break a}bp(i[e>>2]);break a}f=i[b+52>>2];if(!f){Tf(a,b,d,c);break a}Uf(a,b,f,c)}F=e+16|0}function Qi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i[a+12>>2];d=i[a+108>>2];e=i[d+80>>2];g[b+84|0]=0;f=i[b+68>>2];c=i[b+72>>2]-f>>2;a:{if(e>>>0>c>>>0){Xa(b+68|0,e-c|0,12320);d=i[a+108>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=f+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}p=d>>>0>1?d:1;d=0;b:{while(1){c:{if((d|0)==1431655765){break c}c=i[n>>2]+(o(d,3)<<2)|0;j=i[c>>2];if((j|0)==-1){break c}f=o(d,12)+m|0;h=i[f>>2];if(h>>>0>=e>>>0){break c}l=i[i[a+112>>2]+12>>2];k=i[l+(j<<2)>>2];if(k>>>0>=e>>>0){break c}j=i[b+68>>2];i[j+(h<<2)>>2]=k;h=i[c+4>>2];if((h|0)==-1){break c}k=i[f+4>>2];if(k>>>0>=e>>>0){break c}h=i[(h<<2)+l>>2];if(h>>>0>=e>>>0){break c}i[j+(k<<2)>>2]=h;c=i[c+8>>2];if((c|0)==-1){break c}f=i[f+8>>2];if(f>>>0>=e>>>0){break c}c=i[(c<<2)+l>>2];if(c>>>0>=e>>>0){break c}i[j+(f<<2)>>2]=c;c=1;d=d+1|0;if((p|0)!=(d|0)){continue}break b}break}c=0}return c|0}function $i(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i[a+12>>2];d=i[a+68>>2];e=i[d+80>>2];g[b+84|0]=0;f=i[b+68>>2];c=i[b+72>>2]-f>>2;a:{if(e>>>0>c>>>0){Xa(b+68|0,e-c|0,12320);d=i[a+68>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=f+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}p=d>>>0>1?d:1;d=0;b:{while(1){c:{if((d|0)==1431655765){break c}c=i[n>>2]+(o(d,3)<<2)|0;j=i[c>>2];if((j|0)==-1){break c}f=o(d,12)+m|0;h=i[f>>2];if(h>>>0>=e>>>0){break c}l=i[i[a+72>>2]+12>>2];k=i[l+(j<<2)>>2];if(k>>>0>=e>>>0){break c}j=i[b+68>>2];i[j+(h<<2)>>2]=k;h=i[c+4>>2];if((h|0)==-1){break c}k=i[f+4>>2];if(k>>>0>=e>>>0){break c}h=i[(h<<2)+l>>2];if(h>>>0>=e>>>0){break c}i[j+(k<<2)>>2]=h;c=i[c+8>>2];if((c|0)==-1){break c}f=i[f+8>>2];if(f>>>0>=e>>>0){break c}c=i[(c<<2)+l>>2];if(c>>>0>=e>>>0){break c}i[j+(f<<2)>>2]=c;c=1;d=d+1|0;if((p|0)!=(d|0)){continue}break b}break}c=0}return c|0}function eb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}k=b+ -1|0;l=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!l){e=e&k;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){f:{e=c;c=i[c>>2];if(!c|i[d+8>>2]!=i[c+8>>2]|i[d+12>>2]!=i[c+12>>2]){break f}if(i[d+16>>2]==i[c+16>>2]){continue}}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function Cb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}l=b+ -1|0;m=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!m){e=e&l;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){f:{e=c;c=i[c>>2];if(!c|k[d+8>>1]!=k[c+8>>1]|k[d+10>>1]!=k[c+10>>1]){break f}if(k[d+12>>1]==k[c+12>>1]){continue}}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function $c(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F-16|0;F=e;a:{c=i[a+4>>2];b:{if(c>>>0>>0){d=i[a+8>>2];f=d<<5;g=b-c|0;c:{if(!(f>>>0>>0|c>>>0>f-g>>>0)){i[a+4>>2]=b;d=c&31;b=i[a>>2]+(c>>>3&536870908)|0;break c}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if((b|0)<=-1){break a}c=e;if(f>>>0<=1073741822){f=b+31&-32;b=d<<6;b=b>>>0>>0?f:b}else{b=2147483647}bd(c,b);d=i[a+4>>2];i[e+4>>2]=d+g;h=i[a>>2];b=i[e>>2];d:{if((d|0)<1){d=0;break d}c=d>>>5|0;f=c<<2;b=jp(b,h,f)+f|0;d=d-(c<<5)|0;e:{if((d|0)<1){d=0;break e}c=-1>>>32-d|0;i[b>>2]=i[b>>2]&(c^-1)|c&i[f+h>>2]}h=i[a>>2]}i[a>>2]=i[e>>2];i[e>>2]=h;c=i[a+4>>2];i[a+4>>2]=i[e+4>>2];i[e+4>>2]=c;c=i[a+8>>2];i[a+8>>2]=i[e+8>>2];i[e+8>>2]=c;if(!h){break c}bp(h)}if(!g){break b}if(d){c=32-d|0;a=c>>>0>g>>>0?g:c;i[b>>2]=i[b>>2]&(-1<>>c-a^-1);g=g-a|0;b=b+4|0}c=g>>>5<<2;a=ip(b,0,c);b=g&31;if(!b){break b}a=a+c|0;i[a>>2]=i[a>>2]&(-1>>>32-b^-1);break b}i[a+4>>2]=b}F=e+16|0;return}Ho();x()}function Ri(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=F-16|0;F=g;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+28>>2]-i[c+24>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];h=c<<2;c=ho(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){hp(c,d,e)}i[b+8>>2]=h;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}bp(d)}b=i[a+12>>2];d=i[b+28>>2];b=i[b+24>>2];i[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=i[c>>2];d=i[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){Gb(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}i[a+100>>2]=e+(b<<2)}e=a+8|0;b=i[a+116>>2];d:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){d=1;break d}b=0;while(1){d=Si(e,i[(b<<2)+c>>2]);if(!d){break d}f=i[a+116>>2];c=i[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=i[a+12>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break d}b=0;while(1){d=Si(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break d}if(d){continue}break}}F=g+16|0;return d|0}za(11708);x()}function cc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=F-16|0;F=d;i[a+8>>2]=b;i[a>>2]=0;nc(a+12|0);mf(a+1036|0);hf(a+1068|0);hf(a+1088|0);hf(a+1108|0);i[a+1136>>2]=0;i[a+1128>>2]=0;i[a+1132>>2]=0;a:{if(b){if(b>>>0>=1073741824){break a}e=b<<2;c=ho(e);i[a+1128>>2]=c;f=c+e|0;i[a+1136>>2]=f;ip(c,0,e);i[a+1132>>2]=f}i[a+1140>>2]=0;i[a+1144>>2]=0;i[a+1148>>2]=0;if(b){e=b<<2;c=ho(e);i[a+1140>>2]=c;f=c+e|0;i[a+1148>>2]=f;ip(c,0,e);i[a+1144>>2]=f}i[a+1152>>2]=0;i[a+1156>>2]=0;i[a+1160>>2]=0;if(b){e=b<<2;c=ho(e);i[a+1152>>2]=c;f=c+e|0;i[a+1160>>2]=f;ip(c,0,e);i[a+1156>>2]=f}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;g=a+1164|0;e=b<<5|1;if(b){c=b<<2;f=ho(c);i[d>>2]=f;h=c+f|0;i[d+8>>2]=h;ip(f,0,c);i[d+4>>2]=h}oc(g,e,d);c=i[d>>2];if(c){i[d+4>>2]=c;bp(c)}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;f=a+1176|0;if(b){b=b<<2;c=ho(b);i[d>>2]=c;g=b+c|0;i[d+8>>2]=g;ip(c,0,b);i[d+4>>2]=g}oc(f,e,d);b=i[d>>2];if(b){i[d+4>>2]=b;bp(b)}F=d+16|0;return a}Ho();x()}function qb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}l=b+ -1|0;m=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!m){e=e&l;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;k=h+i[a>>2]|0;if(!i[k>>2]){i[k>>2]=f;f=d;g=e;break e}while(1){f:{e=c;c=i[c>>2];if(!c|j[d+8|0]!=j[c+8|0]|j[d+9|0]!=j[c+9|0]){break f}if(j[d+10|0]==j[c+10|0]){continue}}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function fj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;j=i[a+12>>2];d=i[a+68>>2];e=i[d+80>>2];g[b+84|0]=0;h=i[b+68>>2];c=i[b+72>>2]-h>>2;a:{if(e>>>0>c>>>0){Xa(b+68|0,e-c|0,12320);d=i[a+68>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=h+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}n=d>>>0>1?d:1;p=i[j+28>>2];d=0;b:{while(1){c:{c=(o(d,3)<<2)+p|0;h=i[c>>2];if((h|0)==-1){break c}j=o(d,12)+m|0;k=i[j>>2];if(k>>>0>=e>>>0){break c}f=h<<2;h=i[i[a+72>>2]+12>>2];f=i[f+h>>2];if(f>>>0>=e>>>0){break c}l=k<<2;k=i[b+68>>2];i[l+k>>2]=f;f=i[c+4>>2];if((f|0)==-1){break c}l=i[j+4>>2];if(l>>>0>=e>>>0){break c}f=i[h+(f<<2)>>2];if(f>>>0>=e>>>0){break c}i[k+(l<<2)>>2]=f;c=i[c+8>>2];if((c|0)==-1){break c}j=i[j+8>>2];if(j>>>0>=e>>>0){break c}c=i[h+(c<<2)>>2];if(c>>>0>=e>>>0){break c}i[k+(j<<2)>>2]=c;c=1;d=d+1|0;if((n|0)!=(d|0)){continue}break b}break}c=0}return c|0}function wc(a,b,c,d,e){var f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0;g=i[a+8>>2];a:{b:{c:{h=i[c>>2];f=i[b>>2];k=h-f|0;if(k>>>0>=64){if(g){break c}b=0;break b}b=0;if(g>>>0<2){break a}a=i[e>>2];c=1;while(1){b=l[a+(b<<2)>>2]>l[a+(c<<2)>>2]?c:b;c=c+1|0;if((g|0)!=(c|0)){continue}break}break a}g=i[b+8>>2];m=i[b+4>>2];n=i[d>>2];p=i[a+1140>>2];q=i[e>>2];r=i[a+1128>>2];while(1){b=j<<2;d=b+r|0;i[d>>2]=0;c=i[a>>2]-i[b+q>>2]|0;i[b+p>>2]=c;if(c){d:{if((f|0)==(h|0)){c=i[d>>2];break d}e=i[b+n>>2]+(1<>2]|0;c=i[d>>2];b=f;while(1){c=(l[s+(o(b,g)<<2)>>2]>>0)+c|0;i[d>>2]=c;b=b+1|0;if((h|0)!=(b|0)){continue}break}}b=k-c|0;i[d>>2]=b>>>0>>0?c:b}j=j+1|0;e=i[a+8>>2];if(j>>>0>>0){continue}break}if(!e){b=0;break b}g=i[a+1140>>2];c=0;d=0;b=0;while(1){f=c<<2;if(i[f+g>>2]){h=i[f+i[a+1128>>2]>>2];f=d>>>0>>0;d=f?h:d;b=f?c:b}c=c+1|0;if((e|0)!=(c|0)){continue}break}}yc(a+1088|0,4,b)}return b}function cb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}k=b+ -1|0;l=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!l){e=e&k;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){f:{e=c;c=i[c>>2];if(!c|i[d+8>>2]!=i[c+8>>2]){break f}if(i[d+12>>2]==i[c+12>>2]){continue}}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function Ab(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}l=b+ -1|0;m=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!m){e=e&l;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){f:{e=c;c=i[c>>2];if(!c|k[d+8>>1]!=k[c+8>>1]){break f}if(k[d+10>>1]==k[c+10>>1]){continue}}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function Am(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=a+8|0;d=i[a+12>>2];h=i[a+8>>2];f=d-h>>2;a:{if((f|0)>(b|0)){break a}e=b+1|0;if(e>>>0>f>>>0){Bm(j,e-f|0);break a}if(e>>>0>=f>>>0){break a}f=h+(e<<2)|0;if((f|0)!=(d|0)){while(1){d=d+ -4|0;e=i[d>>2];i[d>>2]=0;if(e){Wb(e)}if((d|0)!=(f|0)){continue}break}}i[a+12>>2]=f}b:{c:{d=i[i[c>>2]+56>>2];d:{if((d|0)>4){break d}d=o(d,12)+a|0;h=d+24|0;a=i[h>>2];k=d+28|0;if((a|0)!=i[k>>2]){i[a>>2]=b;i[h>>2]=a+4;break d}l=d+20|0;d=i[l>>2];f=a-d|0;g=f>>2;e=g+1|0;if(e>>>0>=1073741824){break c}a=f>>1;e=g>>>0<536870911?a>>>0>>0?e:a:1073741823;a=0;e:{if(!e){break e}if(e>>>0>=1073741824){break b}a=ho(e<<2)}g=a+(g<<2)|0;i[g>>2]=b;e=a+(e<<2)|0;g=g+4|0;if((f|0)>=1){hp(a,d,f)}i[l>>2]=a;i[h>>2]=g;i[k>>2]=e;if(!d){break d}bp(d)}d=i[c>>2];i[d+60>>2]=b;a=i[j>>2];i[c>>2]=0;b=a+(b<<2)|0;a=i[b>>2];i[b>>2]=d;if(a){Wb(a)}return}Ho();x()}za(16928);x()}function ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}l=b+ -1|0;m=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!m){e=e&l;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;k=h+i[a>>2]|0;if(!i[k>>2]){i[k>>2]=f;f=d;g=e;break e}while(1){f:{e=c;c=i[c>>2];if(!c|j[d+8|0]!=j[c+8|0]){break f}if(j[d+9|0]==j[c+9|0]){continue}}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function Bi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if((e-c|0)/12>>>0>=b>>>0){if(b){b=o(b,12);c=ip(c,0,b-((b+ -12>>>0)%12|0)|0)+b|0}i[a+4>>2]=c;return}a:{b:{c:{h=i[a>>2];f=(c-h|0)/12|0;d=f+b|0;if(d>>>0<357913942){f=o(f,12);e=(e-h|0)/12|0;g=e<<1;e=e>>>0<178956970?g>>>0>>0?d:g:357913941;if(e){if(e>>>0>=357913942){break c}j=ho(o(e,12))}d=f+j|0;b=o(b,12);f=ip(d,0,b-((b+ -12>>>0)%12|0)|0);g=b+f|0;b=o(e,12)+j|0;if((c|0)==(h|0)){break b}while(1){d=d+ -12|0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;c=c+ -12|0;i[d>>2]=i[c>>2];i[d+4>>2]=i[c+4>>2];i[d+8>>2]=i[c+8>>2];i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;if((c|0)!=(h|0)){continue}break}i[a+8>>2]=b;b=i[a+4>>2];i[a+4>>2]=g;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=b+ -12|0;d=i[a>>2];if(d){i[b+ -8>>2]=d;bp(d)}b=a;if((b|0)!=(c|0)){continue}break}break a}Ho();x()}za(11708);x()}i[a+8>>2]=b;i[a+4>>2]=g;i[a>>2]=f}if(c){bp(c)}}function ec(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=F-16|0;F=d;i[a+8>>2]=b;i[a>>2]=0;mf(a+12|0);hf(a+44|0);hf(a- -64|0);hf(a+84|0);i[a+112>>2]=0;i[a+104>>2]=0;i[a+108>>2]=0;a:{if(b){if(b>>>0>=1073741824){break a}e=b<<2;c=ho(e);i[a+104>>2]=c;f=c+e|0;i[a+112>>2]=f;ip(c,0,e);i[a+108>>2]=f}i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;if(b){e=b<<2;c=ho(e);i[a+116>>2]=c;f=c+e|0;i[a+124>>2]=f;ip(c,0,e);i[a+120>>2]=f}i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;if(b){e=b<<2;c=ho(e);i[a+128>>2]=c;f=c+e|0;i[a+136>>2]=f;ip(c,0,e);i[a+132>>2]=f}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;g=a+140|0;e=b<<5|1;if(b){c=b<<2;f=ho(c);i[d>>2]=f;h=c+f|0;i[d+8>>2]=h;ip(f,0,c);i[d+4>>2]=h}oc(g,e,d);c=i[d>>2];if(c){i[d+4>>2]=c;bp(c)}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;f=a+152|0;if(b){b=b<<2;c=ho(b);i[d>>2]=c;g=b+c|0;i[d+8>>2]=g;ip(c,0,b);i[d+4>>2]=g}oc(f,e,d);b=i[d>>2];if(b){i[d+4>>2]=b;bp(b)}F=d+16|0;return a}Ho();x()}function hc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=F-16|0;F=d;i[a+8>>2]=b;i[a>>2]=0;hf(a+12|0);hf(a+32|0);hf(a+52|0);hf(a+72|0);i[a+100>>2]=0;i[a+92>>2]=0;i[a+96>>2]=0;a:{if(b){if(b>>>0>=1073741824){break a}e=b<<2;c=ho(e);i[a+92>>2]=c;f=c+e|0;i[a+100>>2]=f;ip(c,0,e);i[a+96>>2]=f}i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;if(b){e=b<<2;c=ho(e);i[a+104>>2]=c;f=c+e|0;i[a+112>>2]=f;ip(c,0,e);i[a+108>>2]=f}i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;if(b){e=b<<2;c=ho(e);i[a+116>>2]=c;f=c+e|0;i[a+124>>2]=f;ip(c,0,e);i[a+120>>2]=f}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;g=a+128|0;e=b<<5|1;if(b){c=b<<2;f=ho(c);i[d>>2]=f;h=c+f|0;i[d+8>>2]=h;ip(f,0,c);i[d+4>>2]=h}oc(g,e,d);c=i[d>>2];if(c){i[d+4>>2]=c;bp(c)}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;f=a+140|0;if(b){b=b<<2;c=ho(b);i[d>>2]=c;g=b+c|0;i[d+8>>2]=g;ip(c,0,b);i[d+4>>2]=g}oc(f,e,d);b=i[d>>2];if(b){i[d+4>>2]=b;bp(b)}F=d+16|0;return a}Ho();x()}function $(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=p(0),f=p(0),h=p(0),k=p(0),l=p(0),m=0,n=p(0),o=p(0),r=p(0),s=p(0),u=0;a:{if(i[c+28>>2]!=9|j[c+24|0]!=3){break a}a=i[a+4>>2];if(a+ -2>>>0>28){break a}u=1;m=i[c+80>>2];if(!m){break a}n=p(p(2)/p((1<>2]>>2]+i[c+48>>2]|0;a=i[i[b>>2]>>2]+i[b+48>>2]|0;b=0;while(1){h=p(0);o=p(0);r=p(0);e=p(p(n*p(i[a>>2]))+p(-1));f=p(p(n*p(i[a+4>>2]))+p(-1));l=p(p(p(1)-p(q(e)))-p(q(f)));k=p(t(p(-l),p(0)));s=p(-k);f=p(f+(f>>8;g[c+10|0]=d>>>16;g[c+11|0]=d>>>24;d=(Fp(o),Bp(2));g[c+4|0]=d;g[c+5|0]=d>>>8;g[c+6|0]=d>>>16;g[c+7|0]=d>>>24;d=(Fp(h),Bp(2));g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((m|0)!=(b|0)){continue}break}}return u|0}function td(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+4>>2]=b;i[a>>2]=3184;b=c;e=i[b+8>>2];f=i[b+12>>2];h=i[b+16>>2];j=i[b+20>>2];k=i[b>>2];l=i[b+4>>2];i[a+40>>2]=0;g=a+32|0;i[g>>2]=0;i[g+4>>2]=0;i[a+24>>2]=h;i[a+28>>2]=j;i[a+16>>2]=e;i[a+20>>2]=f;i[a+8>>2]=k;i[a+12>>2]=l;a:{b=i[b+28>>2]-i[b+24>>2]|0;if(b){e=b>>2;if(e>>>0>=1073741824){break a}b=ho(b);i[a+32>>2]=b;i[a+36>>2]=b;i[a+40>>2]=b+(e<<2);e=a;f=i[c+24>>2];c=i[c+28>>2]-f|0;if((c|0)>=1){b=hp(b,f,c)+c|0}i[e+36>>2]=b}i[a>>2]=4748;b=i[d+4>>2];i[a+44>>2]=i[d>>2];i[a+48>>2]=b;b=d+8|0;e=i[b+4>>2];i[a+52>>2]=i[b>>2];i[a+56>>2]=e;c=a- -64|0;i[c>>2]=0;i[c+4>>2]=0;i[a+60>>2]=5848;i[a>>2]=5264;c=i[d+4>>2];i[a+72>>2]=i[d>>2];i[a+76>>2]=c;c=i[b+4>>2];i[a+80>>2]=i[b>>2];i[a+84>>2]=c;i[a+104>>2]=1065353216;i[a+108>>2]=-1;i[a+96>>2]=-1;i[a+100>>2]=-1;i[a+88>>2]=1;i[a+92>>2]=-1;i[a+60>>2]=5484;mf(a+112|0);return}Ho();x()}function sd(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+4>>2]=b;i[a>>2]=3184;b=c;e=i[b+8>>2];f=i[b+12>>2];h=i[b+16>>2];j=i[b+20>>2];k=i[b>>2];l=i[b+4>>2];i[a+40>>2]=0;g=a+32|0;i[g>>2]=0;i[g+4>>2]=0;i[a+24>>2]=h;i[a+28>>2]=j;i[a+16>>2]=e;i[a+20>>2]=f;i[a+8>>2]=k;i[a+12>>2]=l;a:{b=i[b+28>>2]-i[b+24>>2]|0;if(b){e=b>>2;if(e>>>0>=1073741824){break a}b=ho(b);i[a+32>>2]=b;i[a+36>>2]=b;i[a+40>>2]=b+(e<<2);e=a;f=i[c+24>>2];c=i[c+28>>2]-f|0;if((c|0)>=1){b=hp(b,f,c)+c|0}i[e+36>>2]=b}i[a>>2]=3128;b=i[d+4>>2];i[a+44>>2]=i[d>>2];i[a+48>>2]=b;b=d+8|0;e=i[b+4>>2];i[a+52>>2]=i[b>>2];i[a+56>>2]=e;c=a- -64|0;i[c>>2]=0;i[c+4>>2]=0;i[a+60>>2]=4352;i[a>>2]=3724;c=i[d+4>>2];i[a+72>>2]=i[d>>2];i[a+76>>2]=c;c=i[b+4>>2];i[a+80>>2]=i[b>>2];i[a+84>>2]=c;i[a+104>>2]=1065353216;i[a+108>>2]=-1;i[a+96>>2]=-1;i[a+100>>2]=-1;i[a+88>>2]=1;i[a+92>>2]=-1;i[a+60>>2]=3960;mf(a+112|0);return}Ho();x()}function $d(a){var b=0,c=0,d=0;b=i[a+8>>2];d=i[a>>2];a:{if(j[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|i[i[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break e}b=i[i[i[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}i[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;i[a+8>>2]=b;if((b|0)!=-1){break b}}b=-1;c=i[a+4>>2];f:{if((c|0)==-1){break f}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|i[i[d>>2]+(c>>>3&536870908)>>2]>>>c&1){break f}d=i[i[i[d+64>>2]+12>>2]+(c<<2)>>2];if((d|0)==-1){break f}if((d>>>0)%3|0){b=d+ -1|0;break f}b=d+2|0}g[a+12|0]=0;i[a+8>>2]=b;return}if((b|0)!=i[a+4>>2]){break a}i[a+8>>2]=-1;return}c=-1;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)==-1|i[i[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=i[i[i[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break g}if((b>>>0)%3|0){c=b+ -1|0;break g}c=b+2|0}i[a+8>>2]=c}}function $h(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F-16|0;F=c;b=i[i[a+184>>2]+(b<<2)>>2];g[c+15|0]=b;a:{b:{e=i[i[a+4>>2]+44>>2];d=i[e+20>>2];if((d|0)<0?1:(d|0)<=0?l[e+16>>2]<=0:0){ca(e,i[e+4>>2],c+15|0,c+16|0);b=j[c+15|0]}c:{if(b<<24>>24<=-1){e=i[a+68>>2];break c}b=i[i[a+172>>2]+o(b&255,136)>>2];d=I[i[i[a>>2]+40>>2]](a)|0;f=i[a+172>>2]+o(g[c+15|0],136)|0;e=i[f+132>>2];d:{switch(i[i[i[d+56>>2]+84>>2]+(b<<2)>>2]){case 0:break c;case 1:break d;default:break b}}if(!j[f+28|0]){break b}}b=i[i[a+4>>2]+44>>2];g[c+14|0]=0;d=i[b+20>>2];if((d|0)>0?1:(d|0)>=0?l[b+16>>2]>0:0){break a}ca(b,i[b+4>>2],c+14|0,c+15|0);break a}b=i[i[a+4>>2]+44>>2];g[c+13|0]=1;d=i[b+20>>2];if((d|0)>0?1:(d|0)>=0?l[b+16>>2]>0:0){break a}ca(b,i[b+4>>2],c+13|0,c+14|0)}a=i[i[a+4>>2]+44>>2];g[c+12|0]=e;b=i[a+20>>2];if((b|0)<0?1:(b|0)<=0?l[a+16>>2]<=0:0){ca(a,i[a+4>>2],c+12|0,c+13|0)}F=c+16|0;return 1}function kj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}k=b+ -1|0;l=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!l){e=e&k;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){e=c;c=i[c>>2];if(i[d+8>>2]==i[c+8>>2]?c:0){continue}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(11708);x()}function yb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}l=b+ -1|0;m=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!m){e=e&l;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){e=c;c=i[c>>2];if(k[d+8>>1]==k[c+8>>1]?c:0){continue}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function ab(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}k=b+ -1|0;l=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!l){e=e&k;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){e=c;c=i[c>>2];if(i[d+8>>2]==i[c+8>>2]?c:0){continue}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function mb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=ho(b<<2);d=i[a>>2];i[a>>2]=c;if(d){bp(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=xp(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}l=b+ -1|0;m=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!m){e=e&l;break d}if(e>>>0>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;k=h+i[a>>2]|0;if(!i[k>>2]){i[k>>2]=f;f=d;g=e;break e}while(1){e=c;c=i[c>>2];if(j[d+8|0]==j[c+8|0]?c:0){continue}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){bp(b)}i[a+4>>2]=0}return}za(1352);x()}function Dj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=F-16|0;F=j;c=i[a+4>>2];i[a+8>>2]=c;f=i[a+16>>2];i[a+20>>2]=f;a:{b:{g=i[b>>2];m=i[b+4>>2];if((g|0)!=(m|0)){l=a+16|0;b=c;while(1){h=i[g>>2];c:{if(i[a+12>>2]!=(b|0)){i[b>>2]=h;i[a+8>>2]=b+4;break c}k=b-c|0;e=k>>2;d=e+1|0;if(d>>>0>=1073741824){break b}b=k>>1;d=e>>>0<536870911?b>>>0>>0?d:b:1073741823;b=0;d:{if(!d){break d}if(d>>>0>=1073741824){break a}b=ho(d<<2)}e=b+(e<<2)|0;i[e>>2]=h;d=b+(d<<2)|0;e=e+4|0;if((k|0)>=1){hp(b,c,k)}i[a+12>>2]=d;i[a+8>>2]=e;i[a+4>>2]=b;if(!c){break c}bp(c);f=i[l>>2]}b=i[a+20>>2]-f>>2;e:{if((h|0)<(b|0)){break e}i[j+12>>2]=-1;c=h+1|0;if(c>>>0>b>>>0){Gb(l,c-b|0,j+12|0);f=i[l>>2];break e}if(c>>>0>=b>>>0){break e}i[a+20>>2]=(c<<2)+f}b=i[a+8>>2];c=i[a+4>>2];i[(h<<2)+f>>2]=(b-c>>2)+ -1;g=g+4|0;if((m|0)!=(g|0)){continue}break}}F=j+16|0;return}Ho();x()}za(13760);x()}function gf(a,b){var c=0,d=0,e=0,f=0,h=0;f=F-16|0;F=f;c=ho(32);i[f>>2]=c;i[f+4>>2]=17;i[f+8>>2]=-2147483616;g[c+17|0]=0;g[c+16|0]=j[9966];e=j[9962]|j[9963]<<8|(j[9964]<<16|j[9965]<<24);d=j[9958]|j[9959]<<8|(j[9960]<<16|j[9961]<<24);g[c+8|0]=d;g[c+9|0]=d>>>8;g[c+10|0]=d>>>16;g[c+11|0]=d>>>24;g[c+12|0]=e;g[c+13|0]=e>>>8;g[c+14|0]=e>>>16;g[c+15|0]=e>>>24;e=j[9954]|j[9955]<<8|(j[9956]<<16|j[9957]<<24);d=j[9950]|j[9951]<<8|(j[9952]<<16|j[9953]<<24);g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;g[c+4|0]=e;g[c+5|0]=e>>>8;g[c+6|0]=e>>>16;g[c+7|0]=e>>>24;e=b+16|0;d=i[e>>2];a:{if(!d){break a}c=e;while(1){h=i[d+16>>2]<(a|0);c=h?c:d;d=i[(h<<2)+d>>2];if(d){continue}break}if((c|0)==(e|0)|i[c+16>>2]>(a|0)){break a}a=c+20|0;if(!Sb(a,f)){break a}b=a}a=$j(b,f,-1);if(g[f+11|0]<=-1){bp(i[f>>2])}if((a|0)!=-1){F=f+16|0;return a>>>0>6?-2:a}F=f+16|0;return-1}function oa(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,n=0,r=0,s=0,t=0,v=0,w=0,x=p(0),y=0,z=0,A=p(0),B=0,C=0,D=0,E=0;r=F-16|0;F=r;e=i[a+4>>2];h=i[d+48>>2];l=i[i[d>>2]>>2];k=g[b+24|0];f=dk(r+8|0);ek(f,m[a+20>>2],-1<>2];e=i[c+4>>2];if((n|0)!=(e|0)){y=h+l|0;c=e-n|0;h=(c|0)>-1?c:-1;e=n-e|0;c=o((h|0)<1?h:1,((e|0)>(c|0)?e:c)>>>2|0);z=c>>>0>1?c:1;A=m[f>>2];B=i[b>>2];e=i[b+48>>2];C=i[b+68>>2];h=i[b+44>>2];l=i[b+40>>2];D=l;c=0;E=j[b+84|0];while(1){b=i[(s<<2)+n>>2];f=d;t=i[B>>2];v=l;w=h;if(!E){b=i[(b<<2)+C>>2]}b=up(v,w,b,0)+e|0;v=hp(f,b+t|0,D);if((k|0)>=1){w=i[a+8>>2];b=0;while(1){t=y+(c<<2)|0;f=b<<2;x=p(u(p(p(A*p(m[f+v>>2]-m[f+w>>2]))+p(.5))));a:{if(p(q(x))>2]=f;c=c+1|0;b=b+1|0;if((k|0)!=(b|0)){continue}break}}s=s+1|0;if((z|0)!=(s|0)){continue}break}}bp(d);F=r+16|0}function zj(a,b){var c=0,d=0,e=0,f=0,j=0;d=F-16|0;F=d;c=i[b+44>>2];e=i[c+20>>2];if((e|0)<0?1:(e|0)<=0?l[c+16>>2]<=0:0){ca(c,i[c+4>>2],13688,13693)}c=I[i[i[b>>2]+8>>2]](b)|0;g[d+15|0]=c;g[d+14|0]=2;g[d+13|0]=c&255?2:3;c=i[b+44>>2];e=i[c+20>>2];a:{if((e|0)>0?1:(e|0)>=0?l[c+16>>2]>0:0){break a}ca(c,i[c+4>>2],d+14|0,d+15|0);c=i[b+44>>2];e=i[c+20>>2];if((e|0)>0?1:(e|0)>=0?l[c+16>>2]>0:0){break a}ca(c,i[c+4>>2],d+13|0,d+14|0);c=i[b+44>>2];e=i[c+20>>2];if((e|0)>0?1:(e|0)>=0?l[c+16>>2]>0:0){break a}ca(c,i[c+4>>2],d+15|0,d+16|0);c=i[b+44>>2]}f=d,j=I[i[i[b>>2]+12>>2]](b)|0,g[f+12|0]=j;e=i[c+20>>2];if((e|0)<0?1:(e|0)<=0?l[c+16>>2]<=0:0){ca(c,i[c+4>>2],d+12|0,d+13|0)}h[d+10>>1]=(i[i[b+4>>2]+4>>2]!=0)<<15;b=i[b+44>>2];c=i[b+20>>2];if((c|0)<0?1:(c|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],d+10|0,d+12|0)}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;F=d+16|0}function ep(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:{b:{c:{d:{Ep(+a);b=Bp(1)|0;c=Bp(0)|0;if((b|0)>0?1:(b|0)>=0?c>>>0>=0:0){e=b;if(b>>>0>1048575){break d}}if(!(b&2147483647|c)){return-1/(a*a)}if((b|0)>-1){break c}return(a-a)/0}if(e>>>0>2146435071){break a}b=1072693248;j=-1023;if((e|0)!=1072693248){b=e;break b}if(c){break b}return 0}Ep(+(a*0x40000000000000));b=Bp(1)|0;c=Bp(0)|0;j=-1077}Cp(0,c|0);c=b+614242|0;Cp(1,(c&1048575)+1072079006|0);d=+Dp()+ -1;f=d*(d*.5);g=d/(d+2);h=g*g;a=h*h;Ep(+(d-f));b=Bp(1)|0;Bp(0)|0;Cp(0,0);Cp(1,b|0);i=+Dp();k=i*1.4426950407214463;l=+((c>>>20|0)+j|0);m=k+l;a=d-i-f+g*(f+(a*(a*(a*.15313837699209373+.22222198432149784)+.3999999999940942)+h*(a*(a*(a*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));a=m+(k+(l-m)+(a*1.4426950407214463+(a+i)*1.6751713164886512e-10))}return a}function ca(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0;l=d-c|0;if((l|0)<1){return}a:{e=i[a+8>>2];m=i[a+4>>2];if((l|0)<=(e-m|0)){k=m-b|0;if((l|0)<=(k|0)){e=m;h=d;break a}e=m;h=c+k|0;if((h|0)!=(d|0)){f=h;while(1){g[e|0]=j[f|0];e=e+1|0;f=f+1|0;if((f|0)!=(d|0)){continue}break}}i[a+4>>2]=e;if((k|0)>=1){break a}return}h=i[a>>2];d=(m-h|0)+l|0;if((d|0)>-1){k=b-h|0;n=k;f=e-h|0;e=f<<1;e=f>>>0<1073741823?e>>>0>>0?d:e:2147483647;d=0;b:{if(!e){break b}d=ho(e)}c=hp(n+d|0,c,l);if((k|0)>=1){hp(d,h,k)}e=d+e|0;c=c+l|0;f=m-b|0;if((f|0)>=1){c=hp(c,b,f)+f|0}i[a+8>>2]=e;i[a+4>>2]=c;i[a>>2]=d;if(h){bp(h)}return}Ho();x()}k=e-(b+l|0)|0;f=e;d=e-l|0;if(d>>>0>>0){while(1){g[f|0]=j[d|0];f=f+1|0;d=d+1|0;if(d>>>0>>0){continue}break}}i[a+4>>2]=f;if(k){jp(e-k|0,b,k)}if((c|0)==(h|0)){return}f=b;while(1){g[f|0]=j[c|0];f=f+1|0;c=c+1|0;if((h|0)!=(c|0)){continue}break}}function fh(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0;j=F-32|0;F=j;h=i[b>>2]+i[a+40>>2]|0;c=i[a+32>>2];d=c+ -4194304|0;a:{if(d>>>0<=63){c=a+28|0;g[i[a+24>>2]+i[c>>2]|0]=d;d=i[c>>2]+1|0;break a}if(d>>>0<=16383){d=a+28|0;e=i[a+24>>2]+i[d>>2]|0;c=c+ -4177920|0;g[e|0]=c;g[e+1|0]=c>>>8;d=i[d>>2]+2|0;break a}if(d>>>0<=4194303){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+4194304|0;g[d+2|0]=c>>>16;g[d+1|0]=c>>>8;g[d|0]=c;d=i[e>>2]+3|0;break a}if(d>>>0<=1073741823){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+ -1077936128|0;g[d|0]=c;g[d+1|0]=c>>>8;g[d+2|0]=c>>>16;g[d+3|0]=c>>>24;d=i[e>>2]+4|0;break a}d=i[a+28>>2]}f=d>>31;e=f;c=d;f=Tj(j);Jg(c,e,f);k=i[f+4>>2]-i[f>>2]|0;jp(k+h|0,h,c);hp(h,i[f>>2],k);d=i[a+44>>2];h=b;l=i[a+40>>2];a=e;b=c+k|0;if(b>>>0>>0){a=a+1|0}c=b;b=l+c|0;Uj(h,b);a=i[f+12>>2];i[f+12>>2]=0;if(a){bp(a)}a=i[f>>2];if(a){i[f+4>>2]=a;bp(a)}F=j+32|0}function dh(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0;j=F-32|0;F=j;h=i[b>>2]+i[a+40>>2]|0;c=i[a+32>>2];d=c+ -2097152|0;a:{if(d>>>0<=63){c=a+28|0;g[i[a+24>>2]+i[c>>2]|0]=d;d=i[c>>2]+1|0;break a}if(d>>>0<=16383){d=a+28|0;e=i[a+24>>2]+i[d>>2]|0;c=c+ -2080768|0;g[e|0]=c;g[e+1|0]=c>>>8;d=i[d>>2]+2|0;break a}if(d>>>0<=4194303){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+6291456|0;g[d+2|0]=c>>>16;g[d+1|0]=c>>>8;g[d|0]=c;d=i[e>>2]+3|0;break a}if(d>>>0<=1073741823){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+ -1075838976|0;g[d|0]=c;g[d+1|0]=c>>>8;g[d+2|0]=c>>>16;g[d+3|0]=c>>>24;d=i[e>>2]+4|0;break a}d=i[a+28>>2]}f=d>>31;e=f;c=d;f=Tj(j);Jg(c,e,f);k=i[f+4>>2]-i[f>>2]|0;jp(k+h|0,h,c);hp(h,i[f>>2],k);d=i[a+44>>2];h=b;l=i[a+40>>2];a=e;b=c+k|0;if(b>>>0>>0){a=a+1|0}c=b;b=l+c|0;Uj(h,b);a=i[f+12>>2];i[f+12>>2]=0;if(a){bp(a)}a=i[f>>2];if(a){i[f+4>>2]=a;bp(a)}F=j+32|0}function bh(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0;j=F-32|0;F=j;h=i[b>>2]+i[a+40>>2]|0;c=i[a+32>>2];d=c+ -1048576|0;a:{if(d>>>0<=63){c=a+28|0;g[i[a+24>>2]+i[c>>2]|0]=d;d=i[c>>2]+1|0;break a}if(d>>>0<=16383){d=a+28|0;e=i[a+24>>2]+i[d>>2]|0;c=c+ -1032192|0;g[e|0]=c;g[e+1|0]=c>>>8;d=i[d>>2]+2|0;break a}if(d>>>0<=4194303){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+7340032|0;g[d+2|0]=c>>>16;g[d+1|0]=c>>>8;g[d|0]=c;d=i[e>>2]+3|0;break a}if(d>>>0<=1073741823){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+ -1074790400|0;g[d|0]=c;g[d+1|0]=c>>>8;g[d+2|0]=c>>>16;g[d+3|0]=c>>>24;d=i[e>>2]+4|0;break a}d=i[a+28>>2]}f=d>>31;e=f;c=d;f=Tj(j);Jg(c,e,f);k=i[f+4>>2]-i[f>>2]|0;jp(k+h|0,h,c);hp(h,i[f>>2],k);d=i[a+44>>2];h=b;l=i[a+40>>2];a=e;b=c+k|0;if(b>>>0>>0){a=a+1|0}c=b;b=l+c|0;Uj(h,b);a=i[f+12>>2];i[f+12>>2]=0;if(a){bp(a)}a=i[f>>2];if(a){i[f+4>>2]=a;bp(a)}F=j+32|0}function Xg(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0;j=F-32|0;F=j;h=i[b>>2]+i[a+40>>2]|0;c=i[a+32>>2];d=c+ -32768|0;a:{if(d>>>0<=63){c=a+28|0;g[i[a+24>>2]+i[c>>2]|0]=d;d=i[c>>2]+1|0;break a}if(d>>>0<=16383){d=a+28|0;e=i[a+24>>2]+i[d>>2]|0;c=c+ -16384|0;g[e|0]=c;g[e+1|0]=c>>>8;d=i[d>>2]+2|0;break a}if(d>>>0<=4194303){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+8355840|0;g[d+2|0]=c>>>16;g[d+1|0]=c>>>8;g[d|0]=c;d=i[e>>2]+3|0;break a}if(d>>>0<=1073741823){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+ -1073774592|0;g[d|0]=c;g[d+1|0]=c>>>8;g[d+2|0]=c>>>16;g[d+3|0]=c>>>24;d=i[e>>2]+4|0;break a}d=i[a+28>>2]}f=d>>31;e=f;c=d;f=Tj(j);Jg(c,e,f);k=i[f+4>>2]-i[f>>2]|0;jp(k+h|0,h,c);hp(h,i[f>>2],k);d=i[a+44>>2];h=b;l=i[a+40>>2];a=e;b=c+k|0;if(b>>>0>>0){a=a+1|0}c=b;b=l+c|0;Uj(h,b);a=i[f+12>>2];i[f+12>>2]=0;if(a){bp(a)}a=i[f>>2];if(a){i[f+4>>2]=a;bp(a)}F=j+32|0} - - - -function Zg(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0;j=F-32|0;F=j;h=i[b>>2]+i[a+40>>2]|0;c=i[a+32>>2];d=c+ -131072|0;a:{if(d>>>0<=63){c=a+28|0;g[i[a+24>>2]+i[c>>2]|0]=d;d=i[c>>2]+1|0;break a}if(d>>>0<=16383){d=a+28|0;e=i[a+24>>2]+i[d>>2]|0;c=c+ -114688|0;g[e|0]=c;g[e+1|0]=c>>>8;d=i[d>>2]+2|0;break a}if(d>>>0<=4194303){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+8257536|0;g[d+2|0]=c>>>16;g[d+1|0]=c>>>8;g[d|0]=c;d=i[e>>2]+3|0;break a}if(d>>>0<=1073741823){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+ -1073872896|0;g[d|0]=c;g[d+1|0]=c>>>8;g[d+2|0]=c>>>16;g[d+3|0]=c>>>24;d=i[e>>2]+4|0;break a}d=i[a+28>>2]}f=d>>31;e=f;c=d;f=Tj(j);Jg(c,e,f);k=i[f+4>>2]-i[f>>2]|0;jp(k+h|0,h,c);hp(h,i[f>>2],k);d=i[a+44>>2];h=b;l=i[a+40>>2];a=e;b=c+k|0;if(b>>>0>>0){a=a+1|0}c=b;b=l+c|0;Uj(h,b);a=i[f+12>>2];i[f+12>>2]=0;if(a){bp(a)}a=i[f>>2];if(a){i[f+4>>2]=a;bp(a)}F=j+32|0}function $g(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0;j=F-32|0;F=j;h=i[b>>2]+i[a+40>>2]|0;c=i[a+32>>2];d=c+ -262144|0;a:{if(d>>>0<=63){c=a+28|0;g[i[a+24>>2]+i[c>>2]|0]=d;d=i[c>>2]+1|0;break a}if(d>>>0<=16383){d=a+28|0;e=i[a+24>>2]+i[d>>2]|0;c=c+ -245760|0;g[e|0]=c;g[e+1|0]=c>>>8;d=i[d>>2]+2|0;break a}if(d>>>0<=4194303){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+8126464|0;g[d+2|0]=c>>>16;g[d+1|0]=c>>>8;g[d|0]=c;d=i[e>>2]+3|0;break a}if(d>>>0<=1073741823){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+ -1074003968|0;g[d|0]=c;g[d+1|0]=c>>>8;g[d+2|0]=c>>>16;g[d+3|0]=c>>>24;d=i[e>>2]+4|0;break a}d=i[a+28>>2]}f=d>>31;e=f;c=d;f=Tj(j);Jg(c,e,f);k=i[f+4>>2]-i[f>>2]|0;jp(k+h|0,h,c);hp(h,i[f>>2],k);d=i[a+44>>2];h=b;l=i[a+40>>2];a=e;b=c+k|0;if(b>>>0>>0){a=a+1|0}c=b;b=l+c|0;Uj(h,b);a=i[f+12>>2];i[f+12>>2]=0;if(a){bp(a)}a=i[f>>2];if(a){i[f+4>>2]=a;bp(a)}F=j+32|0}function og(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0;j=F-32|0;F=j;h=i[b>>2]+i[a+40>>2]|0;c=i[a+32>>2];d=c+ -16384|0;a:{if(d>>>0<=63){c=a+28|0;g[i[a+24>>2]+i[c>>2]|0]=d;c=i[c>>2]+1|0;break a}if(d>>>0<=16383){d=a+28|0;e=i[a+24>>2]+i[d>>2]|0;g[e|0]=c;g[e+1|0]=c>>>8;c=i[d>>2]+2|0;break a}if(d>>>0<=4194303){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+8372224|0;g[d+2|0]=c>>>16;g[d+1|0]=c>>>8;g[d|0]=c;c=i[e>>2]+3|0;break a}if(d>>>0<=1073741823){e=a+28|0;d=i[a+24>>2]+i[e>>2]|0;c=c+ -1073758208|0;g[d|0]=c;g[d+1|0]=c>>>8;g[d+2|0]=c>>>16;g[d+3|0]=c>>>24;c=i[e>>2]+4|0;break a}c=i[a+28>>2]}f=c>>31;e=f;d=c;f=Tj(j);Jg(d,e,f);k=i[f+4>>2]-i[f>>2]|0;jp(k+h|0,h,d);hp(h,i[f>>2],k);c=i[a+44>>2];h=b;l=i[a+40>>2];a=e;b=d+k|0;if(b>>>0>>0){a=a+1|0}d=b;b=l+d|0;Uj(h,b);a=i[f+12>>2];i[f+12>>2]=0;if(a){bp(a)}a=i[f>>2];if(a){i[f+4>>2]=a;bp(a)}F=j+32|0}function Ig(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,m=0,n=0,o=0;d=F-16|0;F=d;Jb(i[a+12>>2],b);a:{if(!i[a+12>>2]){break a}m=d+14|0;n=d+15|0;o=d+16|0;while(1){b:{c:{k=i[a>>2];f=i[k+(h<<3)>>2];if(f>>>0>=64){c=1;j=1;e=1;if(f>>>0<16384){break c}if(f>>>0<=4194303){j=2;e=2;break c}break a}j=1;c=0;e=0;if(f){break c}while(1){d:{if(i[(k+(c+h<<3)|0)+8>>2]){f=c;break d}f=63;c=c+1|0;if((c|0)!=63){continue}}break}g[d+15|0]=f<<2|3;c=i[b+20>>2];if((c|0)<0?1:(c|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],d+15|0,o)}h=f+h|0;break b}g[d+14|0]=f<<2|e;e=i[b+20>>2];if((e|0)<0?1:(e|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],d+14|0,n)}e=0;if(!c){break b}while(1){e=e+1|0;g[d+13|0]=f>>>(e<<3)+ -2;c=i[b+20>>2];if((c|0)<0?1:(c|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],d+13|0,m)}if((e|0)!=(j|0)){continue}break}}h=h+1|0;if(h>>>0>2]){continue}break}}F=d+16|0}function gm(a,b,c){var d=0,e=0,f=0,g=0;Jb(i[c+8>>2],b);d=i[c>>2];g=c+4|0;if((d|0)!=(g|0)){while(1){f=d;if(!hm(b,d+16|0)){return}d=i[f+32>>2]-i[f+28>>2]|0;Jb(d,b);e=i[b+20>>2];if((e|0)<0?1:(e|0)<=0?l[b+16>>2]<=0:0){e=i[f+28>>2];ca(b,i[b+4>>2],e,e+d|0)}e=i[f+4>>2];a:{if(!e){d=i[f+8>>2];if((f|0)==i[d>>2]){break a}e=f+8|0;while(1){f=i[e>>2];e=f+8|0;d=i[f+8>>2];if((f|0)!=i[d>>2]){continue}break}break a}while(1){d=e;e=i[d>>2];if(e){continue}break}}if((d|0)!=(g|0)){continue}break}}Jb(i[c+20>>2],b);d=i[c+12>>2];f=c+16|0;if((d|0)==(f|0)){return}while(1){c=d;if(!hm(b,d+16|0)){return}gm(a,b,i[c+28>>2]);e=i[c+4>>2];b:{if(!e){d=i[c+8>>2];if((c|0)==i[d>>2]){break b}e=c+8|0;while(1){c=i[e>>2];e=c+8|0;d=i[c+8>>2];if((c|0)!=i[d>>2]){continue}break}break b}while(1){d=e;e=i[d>>2];if(e){continue}break}}if((d|0)!=(f|0)){continue}break}}function Ej(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a:{b=i[a+4>>2];b=i[b+12>>2]-i[b+8>>2]|0;if((b|0)<=0){b=b>>2;break a}while(1){if(I[i[i[a>>2]+36>>2]](a,c)|0){c=c+1|0;b=i[a+4>>2];b=i[b+12>>2]-i[b+8>>2]>>2;if((c|0)<(b|0)){continue}break a}break}return 0}g=a+20|0;d=i[a+20>>2];c=i[a+24>>2]-d>>2;b:{if(b>>>0>c>>>0){Bd(g,b-c|0);break b}if(b>>>0>=c>>>0){break b}i[a+24>>2]=d+(b<<2)}b=i[a+8>>2];c=i[a+12>>2];if((b|0)==(c|0)){return 1}a=c-b|0;d=(a|0)>-1?a:-1;c=b-c|0;a=o((d|0)<1?d:1,((c|0)>(a|0)?c:a)>>>2|0);h=a>>>0>1?a:1;c=0;while(1){a=i[(c<<2)+b>>2];e=i[a+8>>2];d=i[a+4>>2];if((e|0)!=(d|0)){a=e-d|0;f=(a|0)>-1?a:-1;e=d-e|0;a=o((f|0)<1?f:1,((e|0)>(a|0)?e:a)>>>2|0);e=a>>>0>1?a:1;f=i[g>>2];a=0;while(1){i[f+(i[d+(a<<2)>>2]<<2)>>2]=c;a=a+1|0;if((e|0)!=(a|0)){continue}break}}c=c+1|0;if((h|0)!=(c|0)){continue}break}return 1}function Aj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=F-16|0;F=e;a:{b:{if(!(I[i[i[a>>2]+32>>2]](a)|0)){break b}c=i[a+44>>2];d=i[a+12>>2];b=i[a+8>>2];g[e+15|0]=d-b>>>2;f=i[c+20>>2];if((f|0)<0?1:(f|0)<=0?l[c+16>>2]<=0:0){ca(c,i[c+4>>2],e+15|0,e+16|0);d=i[a+12>>2];b=i[a+8>>2]}if((b|0)!=(d|0)){while(1){c=i[b>>2];if(!(I[i[i[c>>2]+8>>2]](c,a,i[a+4>>2])|0)){break b}b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(!Bj(a)){break b}b=i[a+32>>2];c=i[a+36>>2];if((b|0)==(c|0)){break a}while(1){if(!(I[i[i[a>>2]+40>>2]](a,i[b>>2])|0)){break b}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=i[a+32>>2];c=i[a+36>>2];if((b|0)==(c|0)){break a}while(1){d=i[i[a+8>>2]+(i[b>>2]<<2)>>2];if(!(I[i[i[d>>2]+12>>2]](d,i[a+44>>2])|0)){break b}b=b+4|0;if((c|0)!=(b|0)){continue}break}break a}F=e+16|0;return 0}a=I[i[i[a>>2]+44>>2]](a)|0;F=e+16|0;return a|0}function Mh(a){i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=11192;i[a+72>>2]=0;i[a+76>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;i[a+36>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+80>>2]=0;i[a+84>>2]=0;i[a+88>>2]=0;i[a+92>>2]=0;i[a+96>>2]=0;i[a+100>>2]=0;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=1065353216;i[a+156>>2]=0;i[a+160>>2]=0;i[a+148>>2]=0;i[a+152>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+164>>2]=-1;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;mf(a+200|0);Tj(a+232|0);g[a+288|0]=0;i[a+280>>2]=0;i[a+284>>2]=0;i[a+272>>2]=0;i[a+276>>2]=0;i[a+264>>2]=0;i[a+268>>2]=0}function lf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=F-16|0;F=e;a:{b:{d=i[a+4>>2];c:{if((d|0)!=i[a+8>>2]){i[d>>2]=i[a+12>>2];c=d+4|0;i[a+4>>2]=c;break c}g=i[a>>2];h=d-g|0;f=h>>2;c=f+1|0;if(c>>>0>=1073741824){break b}j=h>>1;c=f>>>0<536870911?j>>>0>>0?c:j:1073741823;d=0;d:{if(!c){break d}if(c>>>0>=1073741824){break a}d=ho(c<<2)}f=d+(f<<2)|0;i[f>>2]=i[a+12>>2];j=d+(c<<2)|0;c=f+4|0;if((h|0)>=1){hp(d,g,h)}i[a+8>>2]=j;i[a+4>>2]=c;i[a>>2]=d;if(!g){break c}bp(g);c=i[a+4>>2]}d=i[a>>2];i[e+12>>2]=c-d;c=i[b+20>>2];e:{if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>0:0){break e}ca(b,i[b+4>>2],e+12|0,e+16|0);d=i[a>>2];c=i[b+20>>2];if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>0:0){break e}ca(b,i[b+4>>2],d,i[e+12>>2]+d|0);d=i[a>>2]}i[a+12>>2]=0;i[a+16>>2]=0;i[a+4>>2]=d;F=e+16|0;return}Ho();x()}za(9968);x()}function qf(a,b){var c=0,d=0,e=0,f=0;d=i[a>>2];a:{if(b){b=d;c=b;e=i[b+12>>2];d=i[b+8>>2]+1|0;if(d>>>0<1){e=e+1|0}i[c+8>>2]=d;i[b+12>>2]=e;b=i[a+28>>2];i[a+24>>2]=i[a+24>>2]|1<>2];d=i[b>>2]+1|0;if(d>>>0<1){e=e+1|0}i[c>>2]=d;i[b+4>>2]=e;b=i[a+28>>2]}b=b+1|0;i[a+28>>2]=b;b:{c:{if((b|0)==32){b=i[a+16>>2];d:{if((b|0)!=i[a+20>>2]){i[b>>2]=i[a+24>>2];i[a+16>>2]=b+4;break d}d=i[a+12>>2];e=b-d|0;f=e>>2;c=f+1|0;if(c>>>0>=1073741824){break c}b=e>>1;c=f>>>0<536870911?b>>>0>>0?c:b:1073741823;b=0;e:{if(!c){break e}if(c>>>0>=1073741824){break b}b=ho(c<<2)}f=b+(f<<2)|0;i[f>>2]=i[a+24>>2];c=b+(c<<2)|0;f=f+4|0;if((e|0)>=1){hp(b,d,e)}i[a+20>>2]=c;i[a+16>>2]=f;i[a+12>>2]=b;if(!d){break d}bp(d)}i[a+24>>2]=0;i[a+28>>2]=0}return}Ho();x()}za(10036);x()}function Tc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;e=F-16|0;F=e;g=a+36|0;b=i[a+8>>2]-i[a+4>>2]>>2;c=i[a+40>>2];f=i[a+36>>2];d=c-f>>2;a:{if(b>>>0>d>>>0){Uc(g,b-d|0);break a}if(b>>>0>=d>>>0){break a}d=f+(b<<2)|0;if((d|0)!=(c|0)){while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}}i[a+40>>2]=d}if(i[a+8>>2]==i[a+4>>2]){c=1}else{c=0;while(1){I[i[i[a>>2]+56>>2]](e+8|0,a,c);b=i[a+36>>2];d=i[e+8>>2];i[e+8>>2]=0;f=c<<2;h=f+b|0;b=i[h>>2];i[h>>2]=d;if(b){I[i[i[b>>2]+4>>2]](b)}b=i[e+8>>2];i[e+8>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}b=i[f+i[g>>2]>>2];if(b){if(!(!(i[i[a+48>>2]+(c>>>3&536870908)>>2]>>>c&1)|c>>>0>=l[a+52>>2])){Gc(b)}c=c+1|0;if(c>>>0>2]-i[a+4>>2]>>2>>>0){continue}}break}c=(b|0)!=0}F=e+16|0;return c|0}function Ib(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;d=F-16|0;F=d;e=a+8|0;Jb(i[e>>2]-i[a+4>>2]>>2,b);c=i[a+4>>2];if((c|0)!=i[e>>2]){k=d+13|0;l=d+14|0;m=d+15|0;n=d+16|0;while(1){f=i[i[i[a+32>>2]+8>>2]+(i[(h<<2)+c>>2]<<2)>>2];g[d+15|0]=i[f+56>>2];c=i[b+20>>2];e=i[b+16>>2];if((c|0)<0?1:(c|0)<=0?e>>>0<=0:0){ca(b,i[b+4>>2],d+15|0,n);e=i[b+16>>2];c=i[b+20>>2]}g[d+14|0]=i[f+28>>2];if((c|0)<0?1:(c|0)<=0?e>>>0<=0:0){ca(b,i[b+4>>2],d+14|0,m);e=i[b+16>>2];c=i[b+20>>2]}g[d+13|0]=j[f+24|0];if((c|0)<0?1:(c|0)<=0?e>>>0<=0:0){ca(b,i[b+4>>2],d+13|0,l);e=i[b+16>>2];c=i[b+20>>2]}g[d+12|0]=j[f+32|0];if((c|0)<0?1:(c|0)<=0?e>>>0<=0:0){ca(b,i[b+4>>2],d+12|0,k)}Jb(i[f+60>>2],b);h=h+1|0;c=i[a+4>>2];if(h>>>0>2]-c>>2>>>0){continue}break}}F=d+16|0;return 1}function me(a){var b=0,c=0,d=0;b=i[a+8>>2];d=i[a>>2];a:{if(j[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=i[i[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}i[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;i[a+8>>2]=b;if((b|0)!=-1){break b}}c=i[a+4>>2];b=-1;f:{if((c|0)==-1){break f}c=c+((c>>>0)%3|0?-1:2)|0;b=-1;if((c|0)==-1){break f}c=i[i[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}g[a+12|0]=0;i[a+8>>2]=b;return}if((b|0)!=i[a+4>>2]){break a}i[a+8>>2]=-1;return}c=-1;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;c=-1;if((b|0)==-1){break g}b=i[i[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break g}c=b+ -1|0;if((b>>>0)%3|0){break g}c=b+2|0}i[a+8>>2]=c}}function jp(a,b,c){var d=0;a:{if((a|0)==(b|0)){break a}if((b-a|0)-c>>>0<=0-(c<<1)>>>0){return hp(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}g[d|0]=j[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(a+c&3){while(1){if(!c){break a}c=c+ -1|0;d=c+a|0;g[d|0]=j[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c+ -4|0;i[c+a>>2]=i[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c+ -1|0;g[c+a|0]=j[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){i[d>>2]=i[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){g[d|0]=j[b|0];d=d+1|0;b=b+1|0;c=c+ -1|0;if(c){continue}break}}return a}function Gm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i[c>>2];l=i[c+4>>2];if((e|0)!=(l|0)){p=i[b>>2];while(1){c=i[e>>2];m=c<<2;f=i[m+p>>2];if(f>>>0>=d>>>0){d=i[a+12>>2];h=i[a+8>>2];b=d-h|0;if((b|0)>=1){d=h-d|0;b=((d|0)>(b|0)?d:b)>>>2|0;q=b>>>0>1?b:1;d=0;while(1){b=c;n=i[(d<<2)+h>>2];o=i[n+68>>2];r=o+(f<<2)|0;if(!j[n+84|0]){b=i[m+o>>2]}i[r>>2]=b;d=d+1|0;if((q|0)!=(d|0)){continue}break}}d=f+1|0}e=e+4|0;if((l|0)!=(e|0)){continue}break}}e=i[a+12>>2];b=i[a+8>>2];if((e-b|0)>0){while(1){c=i[(k<<2)+b>>2];g[c+84|0]=0;h=i[c+68>>2];f=i[c+72>>2]-h>>2;a:{if(d>>>0>f>>>0){Xa(c+68|0,d-f|0,16924);b=i[a+8>>2];e=i[a+12>>2];break a}if(d>>>0>=f>>>0){break a}i[c+72>>2]=h+(d<<2)}k=k+1|0;if((k|0)>2){continue}break}}}function Uc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ip(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[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?h>>>0>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=ho(e<<2)}d=(f<<2)+j|0;f=b<<2;b=ip(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){I[i[i[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}Ho();x()}za(2172);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){bp(c)}}function Ff(a,b,c,d){var e=0,f=0,h=0,k=0;e=F-32|0;F=e;i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;a:{if((d|0)<1){break a}Co(e,m[c>>2]);f=j[e+11|0];h=f<<24>>24<0;Ao(e+16|0,h?i[e>>2]:e,h?i[e+4>>2]:f);if(g[e+11|0]<=-1){bp(i[e>>2])}f=1;if((d|0)==1){break a}while(1){Ao(e+16|0,10466,mp(10466));Co(e,m[(f<<2)+c>>2]);h=j[e+11|0];k=h<<24>>24<0;Ao(e+16|0,k?i[e>>2]:e,k?i[e+4>>2]:h);if(g[e+11|0]<=-1){bp(i[e>>2])}f=f+1|0;if((f|0)!=(d|0)){continue}break}}c=Of(a,e,b);f=i[c>>2];if(!f){f=ho(40);ro(f+16|0,b);i[f+36>>2]=0;i[f+28>>2]=0;i[f+32>>2]=0;i[f+8>>2]=i[e>>2];i[f>>2]=0;i[f+4>>2]=0;i[c>>2]=f;d=i[i[a>>2]>>2];b=f;b:{if(!d){break b}i[a>>2]=d;b=i[c>>2]}Kf(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}to(f+28|0,e+16|0);if(g[e+27|0]<=-1){bp(i[e+16>>2])}F=e+32|0}function Dl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i[a+8>>2];d=i[a+4>>2];if((e-d|0)/12>>>0>=b>>>0){f=a;if(b){a=o(b,12)+d|0;while(1){b=i[c+4>>2];i[d>>2]=i[c>>2];i[d+4>>2]=b;i[d+8>>2]=i[c+8>>2];d=d+12|0;if((a|0)!=(d|0)){continue}break}d=a}i[f+4>>2]=d;return}a:{g=i[a>>2];j=d-g|0;h=(j|0)/12|0;f=h+b|0;if(f>>>0<357913942){d=o(b,12);e=(e-g|0)/12|0;k=e<<1;e=e>>>0<178956970?k>>>0>>0?f:k:357913941;f=0;b:{if(!e){break b}if(e>>>0>=357913942){break a}f=ho(o(e,12))}b=f+o(h,12)|0;h=d+b|0;d=b;while(1){k=i[c+4>>2];i[d>>2]=i[c>>2];i[d+4>>2]=k;i[d+8>>2]=i[c+8>>2];d=d+12|0;if((h|0)!=(d|0)){continue}break}c=f+o(e,12)|0;b=b+o((j|0)/-12|0,12)|0;if((j|0)>=1){hp(b,g,j)}i[a+8>>2]=c;i[a+4>>2]=h;i[a>>2]=b;if(g){bp(g)}return}Ho();x()}za(16382);x()}function $f(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=ho(32);c=i[b>>2];i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=c;f=d+24|0;i[d+20>>2]=f;c=i[b+4>>2];g=b+8|0;if((c|0)!=(g|0)){h=d+20|0;while(1){e=c;b=c+16|0;Mf(h,f,b,b);b=i[c+4>>2];a:{if(!b){c=i[e+8>>2];if((e|0)==i[c>>2]){break a}b=e+8|0;while(1){e=i[b>>2];b=e+8|0;c=i[e+8>>2];if((e|0)!=i[c>>2]){continue}break}break a}while(1){c=b;b=i[b>>2];if(b){continue}break}}if((c|0)!=(g|0)){continue}break}}b=i[a+4>>2];b:{c:{if(b){e=i[d+16>>2];while(1){d:{if((e|0)>2]){c=i[b>>2];if(!c){break c}break d}c=i[b+4>>2];if(c){break d}c=b+4|0;break b}b=c;continue}}b=a+4|0}c=b}i[d+8>>2]=b;i[d>>2]=0;i[d+4>>2]=0;i[c>>2]=d;b=i[i[a>>2]>>2];if(b){i[a>>2]=b;d=i[c>>2]}Kf(i[a+4>>2],d);i[a+8>>2]=i[a+8>>2]+1}function na(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,n=0,o=0,r=0,s=0,t=0,v=0,w=p(0),x=0,y=p(0),z=0,A=0,B=0,C=0,D=0;n=F-16|0;F=n;h=i[a+4>>2];o=i[d+48>>2];d=i[i[d>>2]>>2];f=g[b+24|0];k=dk(n+8|0);ek(k,m[a+20>>2],-1<>2];z=i[b>>2];o=i[b+48>>2];A=i[b+68>>2];k=i[b+44>>2];v=i[b+40>>2];B=v;d=0;C=j[b+84|0];D=(f|0)<1;while(1){b=l;e=h;r=i[z>>2];s=v;t=k;if(!C){b=i[(l<<2)+A>>2]}b=up(s,t,b,0)+o|0;s=hp(e,b+r|0,B);if(!D){t=i[a+8>>2];b=0;while(1){r=(d<<2)+x|0;e=b<<2;w=p(u(p(p(y*p(m[e+s>>2]-m[e+t>>2]))+p(.5))));a:{if(p(q(w))>2]=e;d=d+1|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}l=l+1|0;if((l|0)!=(c|0)){continue}break}}bp(h);F=n+16|0}function cd(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;e=F-32|0;F=e;h=i[c>>2];g=i[b>>2];j=i[c+4>>2];c=i[b+4>>2];b=(h-g<<3)+(j-c|0)|0;d=i[a+4>>2];f=b+d|0;i[a+4>>2]=f;a:{if(!(!d|(f+ -1^d+ -1)>>>0>31)){a=i[a>>2];break a}a=i[a>>2];if(f>>>0<=32){i[a>>2]=0;break a}i[(f+ -1>>>3&536870908)+a>>2]=0}a=(d>>>3&536870908)+a|0;d=d&31;b:{if((d|0)==(c|0)){if((b|0)<1){break b}if(c){f=32-c|0;d=(b|0)<(f|0)?b:f;f=-1<>>f-d;i[a>>2]=i[a>>2]&(f^-1)|f&i[g>>2];b=b-d|0;g=g+4|0;a=a+(c+d>>>3&536870908)|0}d=a;c=(b|0)/32|0;a=c<<2;d=jp(d,g,a);b=b-(c<<5)|0;if((b|0)<1){break b}c=a+d|0;b=-1>>>32-b|0;i[c>>2]=i[c>>2]&(b^-1)|b&i[a+g>>2];break b}i[e+28>>2]=c;i[e+24>>2]=g;i[e+20>>2]=j;i[e+16>>2]=h;i[e+12>>2]=d;i[e+8>>2]=a;dd(e,e+24|0,e+16|0,e+8|0)}F=e+32|0}function ip(a,b,c){var d=0,e=0,f=0,h=0;a:{if(!c){break a}d=a+c|0;g[d+ -1|0]=b;g[a|0]=b;if(c>>>0<3){break a}g[d+ -2|0]=b;g[a+1|0]=b;g[d+ -3|0]=b;g[a+2|0]=b;if(c>>>0<7){break a}g[d+ -4|0]=b;g[a+3|0]=b;if(c>>>0<9){break a}d=0-a&3;e=d+a|0;b=o(b&255,16843009);i[e>>2]=b;c=c-d&-4;d=c+e|0;i[d+ -4>>2]=b;if(c>>>0<9){break a}i[e+8>>2]=b;i[e+4>>2]=b;i[d+ -8>>2]=b;i[d+ -12>>2]=b;if(c>>>0<25){break a}i[e+24>>2]=b;i[e+20>>2]=b;i[e+16>>2]=b;i[e+12>>2]=b;i[d+ -16>>2]=b;i[d+ -20>>2]=b;i[d+ -24>>2]=b;i[d+ -28>>2]=b;h=e&4|24;c=c-h|0;if(c>>>0<32){break a}d=b;f=b;b=e+h|0;while(1){i[b+24>>2]=f;i[b+28>>2]=d;i[b+16>>2]=f;i[b+20>>2]=d;i[b+8>>2]=f;i[b+12>>2]=d;i[b>>2]=f;i[b+4>>2]=d;b=b+32|0;c=c+ -32|0;if(c>>>0>31){continue}break}}return a}function Bm(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ip(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[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?h>>>0>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=ho(e<<2)}d=(f<<2)+j|0;f=b<<2;b=ip(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){Wb(a)}if((b|0)!=(c|0)){continue}break}break a}Ho();x()}za(16928);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){bp(c)}}function Wj(a){var b=0,c=0,d=0,e=0,f=0,h=0,k=0;f=F-32|0;F=f;c=i[a+16>>2];b=i[a+20>>2];if((b|0)>0?1:(b|0)>=0?c>>>0>=1:0){b=i[i[a+12>>2]+4>>2]+7|0;if(b>>>0<7){e=1}d=b;b=e>>>3|0;e=e<<29|d>>>3;d=b;if(j[a+24|0]){h=i[a+4>>2];g[f+24|0]=0;b=f;i[b+16>>2]=0;i[b+20>>2]=0;i[b+8>>2]=0;i[b+12>>2]=0;i[b>>2]=0;i[b+4>>2]=0;Jg(e,d,b);c=h-c|0;h=c+ -8|0;d=i[b+4>>2]-i[b>>2]|0;jp(h+d|0,c,e);hp(h,i[b>>2],d);b=a;k=b;c=i[b+20>>2];d=8-d|0;h=d+i[b+16>>2]|0;if(h>>>0>>0){c=c+1|0}i[k+16>>2]=h;i[b+20>>2]=c;b=i[f+12>>2];i[f+12>>2]=0;if(b){bp(b)}b=i[f>>2];if(b){i[f+4>>2]=b;bp(b)}c=i[a+16>>2]}d=i[a>>2];b=i[a+4>>2]-d|0;e=e-c|0;c=b+e|0;a:{if(c>>>0>b>>>0){Qj(a,e);break a}if(c>>>0>=b>>>0){break a}i[a+4>>2]=c+d}i[a+16>>2]=0;i[a+20>>2]=0}F=f+32|0}function ji(a,b){var c=0,d=0,e=0,f=0,g=0;d=F-16|0;F=d;i[d>>2]=b;c=-1;a:{if((b|0)==-1){i[d+4>>2]=-1;break a}c=b+1|0;i[d+4>>2]=(c>>>0)%3|0?c:b+ -2|0;if((b>>>0)%3|0){c=b+ -1|0;break a}c=b+2|0}i[d+8>>2]=c;c=(b|0)==-1?-1:(b>>>0)/3|0;e=i[a+28>>2]+(c>>>3&536870908)|0;i[e>>2]=i[e>>2]|1<>2]+12>>2]+(b<<2)>>2];if((c|0)==-1){break b}c=(c>>>0)/3|0;if(i[i[a+28>>2]+(c>>>3&268435452)>>2]>>>c&1){break b}c=i[a+172>>2];if((c|0)==i[a+176>>2]){break b}e=b>>>5|0;g=1<>2]+(b<<5)|0,(i[i[(o(b,136)+c|0)+4>>2]+(e<<2)>>2]&g)!=0);b=b+1|0;c=i[a+172>>2];if(b>>>0<(i[a+176>>2]-c|0)/136>>>0){continue}break}}f=f+1|0;if((f|0)!=3){b=i[(f<<2)+d>>2];continue}break}F=d+16|0}function fi(a,b,c){var d=0,e=0,f=0;a:{b:{c:{b=o(b,3);if((b|0)==-1){break c}e=i[a+12>>2];f=i[e+12>>2];d=b<<2;if(i[f+d>>2]==-1){break b}a=i[a+152>>2];e=i[e>>2];if(i[a+(i[e+d>>2]<<2)>>2]!=-1){break a}d=b+1|0;b=(d>>>0)%3|0?d:b+ -2|0;if((b|0)==-1){break c}d=b<<2;if(i[d+f>>2]==-1){break b}if(i[a+(i[d+e>>2]<<2)>>2]!=-1){break a}d=b+1|0;b=(d>>>0)%3|0?d:b+ -2|0;if((b|0)==-1){break c}d=b<<2;if(i[d+f>>2]==-1){break b}if(i[a+(i[d+e>>2]<<2)>>2]!=-1){break a}a=b+1|0;i[c>>2]=(a>>>0)%3|0?a:b+ -2|0;return 1}b=-1}i[c>>2]=b;return 0}while(1){d:{a=b;b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)==-1){break d}b=i[(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}i[c>>2]=a+((a>>>0)%3|0?-1:2);return 0}function hn(a,b,c,d,e,f){var g=0;g=F-80|0;F=g;a:{if((f|0)>=16384){yn(g+32|0,b,c,d,e,0,0,0,2147352576);d=i[g+40>>2];e=i[g+44>>2];b=i[g+32>>2];c=i[g+36>>2];if((f|0)<32767){f=f+ -16383|0;break a}yn(g+16|0,b,c,d,e,0,0,0,2147352576);f=((f|0)<49149?f:49149)+ -32766|0;d=i[g+24>>2];e=i[g+28>>2];b=i[g+16>>2];c=i[g+20>>2];break a}if((f|0)>-16383){break a}yn(g- -64|0,b,c,d,e,0,0,0,65536);d=i[g+72>>2];e=i[g+76>>2];b=i[g+64>>2];c=i[g+68>>2];if((f|0)>-32765){f=f+16382|0;break a}yn(g+48|0,b,c,d,e,0,0,0,65536);f=((f|0)>-49146?f:-49146)+32764|0;d=i[g+56>>2];e=i[g+60>>2];b=i[g+48>>2];c=i[g+52>>2]}yn(g,b,c,d,e,0,0,0,f+16383<<16);b=i[g+12>>2];i[a+8>>2]=i[g+8>>2];i[a+12>>2]=b;b=i[g+4>>2];i[a>>2]=i[g>>2];i[a+4>>2]=b;F=g+80|0}function ag(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=F-16|0;F=h;i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;a:{b:{g=c+1|0;if(g>>>0>=c>>>0){if(g>>>0>=1073741824){break b}j=ho(g<<2);ip(j,0,(c<<2)+4|0)}if((b|0)>0){while(1){g=(i[(f<<2)+a>>2]<<2)+j|0;i[g>>2]=i[g>>2]+1;f=f+1|0;if((f|0)!=(b|0)){continue}break}}f=0;if((c|0)<0){b=0;break a}k=+(b|0);b=0;while(1){a=i[(f<<2)+j>>2];if((a|0)>=1){l=e;e=+(a|0);e=l+ep(e/k)*e;b=b+1|0}a=(c|0)==(f|0);f=f+1|0;if(!a){continue}break}break a}Ho();x()}if(d){i[d>>2]=b}if(j){bp(j)}e=-e;c:{if(q(e)<0x8000000000000000){b=q(e)>=1?e>0?~~s(u(e*2.3283064365386963e-10),4294967295)>>>0:~~v((e- +(~~e>>>0>>>0))*2.3283064365386963e-10)>>>0:0;a=~~e>>>0;break c}b=-2147483648;a=0}F=h+16|0;H=b;return a}function gj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+56>>2]-i[c+52>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];g=c<<2;c=ho(e);g=g+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){hp(c,d,e)}i[b+8>>2]=g;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}bp(d)}e=a+8|0;b=i[a+76>>2];c:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){return 1}b=0;while(1){d=hj(e,i[(b<<2)+c>>2]);if(!d){break c}f=i[a+76>>2];c=i[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break c}d=1;a=i[i[a+12>>2]+64>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){d=hj(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break c}if(d){continue}break}}return d|0}za(11708);x()}function Rh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;h=F-16|0;F=h;a:{b:{c=i[a+8>>2];c:{if((c|0)!=i[a+12>>2]){i[c>>2]=b;i[a+8>>2]=c+4;break c}e=i[a+4>>2];f=c-e|0;g=f>>2;d=g+1|0;if(d>>>0>=1073741824){break b}c=f>>1;d=g>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;d:{if(!d){break d}if(d>>>0>=1073741824){break a}c=ho(d<<2)}g=c+(g<<2)|0;i[g>>2]=b;d=c+(d<<2)|0;g=g+4|0;if((f|0)>=1){hp(c,e,f)}i[a+12>>2]=d;i[a+8>>2]=g;i[a+4>>2]=c;if(!e){break c}bp(e)}c=i[a+16>>2];e=i[a+20>>2]-c>>2;e:{if((e|0)>(b|0)){break e}i[h+12>>2]=-1;f=b+1|0;if(f>>>0>e>>>0){c=a+16|0;Gb(c,f-e|0,h+12|0);c=i[c>>2];break e}if(f>>>0>=e>>>0){break e}i[a+20>>2]=(f<<2)+c}i[(b<<2)+c>>2]=(i[a+8>>2]-i[a+4>>2]>>2)+ -1;F=h+16|0;return}Ho();x()}za(11708);x()}function km(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{e=i[a>>2];f=i[a+4>>2]-e>>2;c=f+1|0;if(c>>>0<1073741824){e=i[a+8>>2]-e|0;g=e>>1;c=e>>2>>>0<536870911?g>>>0>>0?c:g:1073741823;if(c){if(c>>>0>=1073741824){break c}d=ho(c<<2)}e=i[b>>2];i[b>>2]=0;b=(f<<2)+d|0;i[b>>2]=e;e=(c<<2)+d|0;f=b+4|0;d=i[a+4>>2];c=i[a>>2];if((d|0)==(c|0)){break b}while(1){d=d+ -4|0;g=i[d>>2];i[d>>2]=0;b=b+ -4|0;i[b>>2]=g;if((d|0)!=(c|0)){continue}break}i[a+8>>2]=e;d=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=b;if((d|0)==(c|0)){break a}while(1){d=d+ -4|0;a=i[d>>2];i[d>>2]=0;if(a){yk(a+12|0,i[a+16>>2]);zk(a,i[a+4>>2]);bp(a)}if((d|0)!=(c|0)){continue}break}break a}Ho();x()}za(16788);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){bp(c)}}function of(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=i[a+8>>2];d=i[a>>2];if(c-d>>3>>>0>=2){e=i[a+4>>2];f=e-d>>3;g=f>>>0<2?f:2;if(g){c=d;while(1){h=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=h;c=c+8|0;g=g+ -1|0;if(g){continue}break}}if(f>>>0<2){c=a;a=2-f|0;if(a){a=(a<<3)+e|0;while(1){d=i[b+4>>2];i[e>>2]=i[b>>2];i[e+4>>2]=d;e=e+8|0;if((a|0)!=(e|0)){continue}break}}else{a=e}i[c+4>>2]=a;return}i[a+4>>2]=d+16;return}if(d){i[a+4>>2]=d;bp(d);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;c=0}d=c>>2;c=c>>3>>>0<268435455?d>>>0<2?2:d:536870911;if(c>>>0<536870912){d=c<<3;c=ho(d);i[a>>2]=c;i[a+8>>2]=c+d;d=c+16|0;e=i[b>>2];b=i[b+4>>2];while(1){i[c>>2]=e;i[c+4>>2]=b;c=c+8|0;if((d|0)!=(c|0)){continue}break}i[a+4>>2]=d;return}Ho();x()}function Vm(a,b,c){a:{if(b>>>0>20){break a}b:{switch(b+ -9|0){case 0:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=i[b>>2];return;case 1:b=i[c>>2];i[c>>2]=b+4;b=i[b>>2];i[a>>2]=b;i[a+4>>2]=b>>31;return;case 2:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=i[b>>2];i[a+4>>2]=0;return;case 3:b=i[c>>2]+7&-8;i[c>>2]=b+8;c=i[b+4>>2];i[a>>2]=i[b>>2];i[a+4>>2]=c;return;case 4:b=i[c>>2];i[c>>2]=b+4;b=h[b>>1];i[a>>2]=b;i[a+4>>2]=b>>31;return;case 5:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=k[b>>1];i[a+4>>2]=0;return;case 6:b=i[c>>2];i[c>>2]=b+4;b=g[b|0];i[a>>2]=b;i[a+4>>2]=b>>31;return;case 7:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=j[b|0];i[a+4>>2]=0;return;case 8:b=i[c>>2]+7&-8;i[c>>2]=b+8;n[a>>3]=n[b>>3];return;case 9:break b;default:break a}}I[369](a,c)}}function aj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+28>>2]-i[c+24>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];g=c<<2;c=ho(e);g=g+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){hp(c,d,e)}i[b+8>>2]=g;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}bp(d)}e=a+8|0;b=i[a+76>>2];c:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){return 1}b=0;while(1){d=bj(e,i[(b<<2)+c>>2]);if(!d){break c}f=i[a+76>>2];c=i[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break c}d=1;a=i[a+12>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){d=bj(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break c}if(d){continue}break}}return d|0}za(11708);x()}function rl(a,b,c){var d=0,e=0,f=0,h=0,k=0;f=c-b|0;e=i[a+8>>2];d=i[a>>2];if(f>>>0<=e-d>>>0){h=i[a+4>>2]-d|0;e=h+b|0;k=f>>>0>h>>>0?e:c;if((k|0)!=(b|0)){while(1){g[d|0]=j[b|0];d=d+1|0;b=b+1|0;if((k|0)!=(b|0)){continue}break}}if(f>>>0>h>>>0){b=i[a+4>>2];if((c|0)!=(k|0)){while(1){g[b|0]=j[e|0];b=b+1|0;e=e+1|0;if((e|0)!=(c|0)){continue}break}}i[a+4>>2]=b;return}i[a+4>>2]=d;return}if(d){i[a+4>>2]=d;bp(d);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;e=0}a:{if((f|0)<=-1){break a}d=e<<1;e=e>>>0<1073741823?d>>>0>>0?f:d:2147483647;if((e|0)<=-1){break a}d=ho(e);i[a>>2]=d;i[a+4>>2]=d;i[a+8>>2]=d+e;if((b|0)!=(c|0)){hp(d,b,f);while(1){d=d+1|0;b=b+1|0;if((c|0)!=(b|0)){continue}break}}i[a+4>>2]=d;return}Ho();x()}function Sh(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=i[a+8>>2];e=i[a>>2];if(d-e>>2>>>0>=b>>>0){f=i[a+4>>2];g=f-e>>2;h=g>>>0>>0?g:b;if(h){d=e;while(1){i[d>>2]=i[c>>2];d=d+4|0;h=h+ -1|0;if(h){continue}break}}if(g>>>0>>0){d=a;a=b-g|0;if(a){a=(a<<2)+f|0;while(1){i[f>>2]=i[c>>2];f=f+4|0;if((a|0)!=(f|0)){continue}break}}else{a=f}i[d+4>>2]=a;return}i[a+4>>2]=(b<<2)+e;return}if(e){i[a+4>>2]=e;bp(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(b>>>0>=1073741824){break a}e=d>>1;d=d>>2>>>0<536870911?e>>>0>>0?b:e:1073741823;if(d>>>0>=1073741824){break a}e=d<<2;d=ho(e);i[a>>2]=d;i[a+8>>2]=d+e;b=(b<<2)+d|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}i[a+4>>2]=b;return}Ho();x()}function Hc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;a:{b:{if((I[i[i[b>>2]+20>>2]](b)|0)>=1){k=a+16|0;while(1){f=xm(i[i[a+4>>2]+4>>2],I[i[i[b>>2]+24>>2]](b,j)|0);if((f|0)!=-1){c=i[a+20>>2];c:{if((c|0)!=i[a+24>>2]){i[c>>2]=f;i[a+20>>2]=c+4;break c}g=i[k>>2];h=c-g|0;e=h>>2;d=e+1|0;if(d>>>0>=1073741824){break b}c=h>>1;d=e>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;d:{if(!d){break d}if(d>>>0>=1073741824){break a}c=ho(d<<2)}e=c+(e<<2)|0;i[e>>2]=f;d=c+(d<<2)|0;e=e+4|0;if((h|0)>=1){hp(c,g,h)}i[a+24>>2]=d;i[a+20>>2]=e;i[a+16>>2]=c;if(!g){break c}bp(g)}Gj(i[a+4>>2],f);j=j+1|0;if((j|0)<(I[i[i[b>>2]+20>>2]](b)|0)){continue}}break}a=(f|0)!=-1}else{a=1}return a|0}Ho();x()}za(1956);x()}function li(a){var b=0,c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0;b=i[a+112>>2]-i[a+108>>2]|0;c=(b|0)/12|0;Jb(c,i[i[a+4>>2]+44>>2]);if(b){f=c>>>0>1?c:1;while(1){b=i[a+108>>2]+o(d,12)|0;Jb(i[b+4>>2]-h|0,i[i[a+4>>2]+44>>2]);Jb(i[b+4>>2]-i[b>>2]|0,i[i[a+4>>2]+44>>2]);h=i[b+4>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}d=0;Vj(i[i[a+4>>2]+44>>2],c,0,0);f=c>>>0>1?c:1;while(1){c=i[i[a+4>>2]+44>>2];b=i[c+20>>2];if((b|0)>0?1:(b|0)>=0?l[c+16>>2]>=1:0){h=j[(i[a+108>>2]+o(d,12)|0)+8|0];c=i[c+12>>2];e=i[c+4>>2];b=e>>>3|0;k=b+i[c>>2]|0;m=j[k|0];e=e&7;n=k,p=yp(-2,e)&m,g[n|0]=p;b=b+i[c>>2]|0;g[b|0]=j[b|0]|(h&1)<>2]=i[c+4>>2]+1}d=d+1|0;if((f|0)!=(d|0)){continue}break}Wj(i[i[a+4>>2]+44>>2])}return 1}function Hd(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=c-b|0;g=f>>2;d=i[a+8>>2];e=i[a>>2];if(g>>>0<=d-e>>2>>>0){f=i[a+4>>2]-e|0;d=f+b|0;h=f>>2;j=g>>>0>h>>>0?d:c;f=j-b|0;if(f){jp(e,b,f)}if(g>>>0>h>>>0){b=i[a+4>>2];if((c|0)!=(j|0)){while(1){i[b>>2]=i[d>>2];b=b+4|0;d=d+4|0;if((d|0)!=(c|0)){continue}break}}i[a+4>>2]=b;return}i[a+4>>2]=e+f;return}if(e){i[a+4>>2]=e;bp(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(g>>>0>=1073741824){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=ho(e);i[a>>2]=d;i[a+4>>2]=d;i[a+8>>2]=d+e;if((b|0)!=(c|0)){hp(d,b,f&-4);while(1){d=d+4|0;b=b+4|0;if((c|0)!=(b|0)){continue}break}}i[a+4>>2]=d;return}Ho();x()}function Xh(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{e=i[a>>2];f=i[a+4>>2]-e>>2;c=f+1|0;if(c>>>0<1073741824){e=i[a+8>>2]-e|0;g=e>>1;c=e>>2>>>0<536870911?g>>>0>>0?c:g:1073741823;if(c){if(c>>>0>=1073741824){break c}d=ho(c<<2)}e=i[b>>2];i[b>>2]=0;b=(f<<2)+d|0;i[b>>2]=e;e=(c<<2)+d|0;f=b+4|0;d=i[a+4>>2];c=i[a>>2];if((d|0)==(c|0)){break b}while(1){d=d+ -4|0;g=i[d>>2];i[d>>2]=0;b=b+ -4|0;i[b>>2]=g;if((d|0)!=(c|0)){continue}break}i[a+8>>2]=e;d=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=b;if((d|0)==(c|0)){break a}while(1){d=d+ -4|0;a=i[d>>2];i[d>>2]=0;if(a){I[i[i[a>>2]+4>>2]](a)}if((d|0)!=(c|0)){continue}break}break a}Ho();x()}za(11708);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){bp(c)}}function Ng(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,m=0;e=i[d>>2];d=i[e>>2];a:{e=i[e+4>>2]-d>>3;j=i[b>>2];if(e>>>0<=j>>>0){break a}h=i[a>>2];if(e>>>0<=h>>>0){break a}g=i[c>>2];m=i[d+(j<<3)>>2];k=d+(h<<3)|0;b:{c:{if(m>>>0>=l[k>>2]){if(e>>>0<=g>>>0){break a}f=0;if(l[d+(g<<3)>>2]>=m>>>0){break b}i[b>>2]=g;i[c>>2]=j;c=i[b>>2];if(e>>>0<=c>>>0){break a}k=e;e=i[a>>2];if(k>>>0<=e>>>0){break a}f=1;if(l[d+(c<<3)>>2]>=l[d+(e<<3)>>2]){break b}i[a>>2]=c;i[b>>2]=e;break c}if(e>>>0<=g>>>0){break a}if(l[d+(g<<3)>>2]>>0){i[a>>2]=g;i[c>>2]=h;return 1}i[a>>2]=j;i[b>>2]=h;a=i[c>>2];if(e>>>0<=a>>>0){break a}f=1;if(l[d+(a<<3)>>2]>=l[k>>2]){break b}i[b>>2]=a;i[c>>2]=h}f=2}return f}Io();x()}function em(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=F-16|0;F=d;h=ym(b);a:{if(!h){i[a>>2]=0;break a}c=i[b+100>>2];k=i[b+96>>2];i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;c=c-k|0;e=(c|0)/12|0;b:{if(!c){break b}if(e>>>0<357913942){g=ho(c);i[d>>2]=g;f=g+o(e,12)|0;i[d+8>>2]=f;b=0;m=ip(g,0,c-((c+ -12>>>0)%12|0)|0);i[d+4>>2]=f;n=e>>>0>1?e:1;p=j[h+84|0];while(1){l=o(b,12);c=l+k|0;e=i[c>>2];c:{if(p){g=c+8|0;c=c+4|0;break c}f=i[h+68>>2];g=f+(i[c+8>>2]<<2)|0;e=i[f+(e<<2)>>2];c=f+(i[c+4>>2]<<2)|0}f=i[c>>2];c=m+l|0;i[c+8>>2]=i[g>>2];i[c+4>>2]=f;i[c>>2]=e;b=b+1|0;if((n|0)!=(b|0)){continue}break}break b}Ho();x()}Jl(a,d);a=i[d>>2];if(!a){break a}i[d+4>>2]=a;bp(a)}F=d+16|0}function Vb(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{e=i[a>>2];f=i[a+4>>2]-e>>2;c=f+1|0;if(c>>>0<1073741824){e=i[a+8>>2]-e|0;g=e>>1;c=e>>2>>>0<536870911?g>>>0>>0?c:g:1073741823;if(c){if(c>>>0>=1073741824){break c}d=ho(c<<2)}e=i[b>>2];i[b>>2]=0;b=(f<<2)+d|0;i[b>>2]=e;e=(c<<2)+d|0;f=b+4|0;d=i[a+4>>2];c=i[a>>2];if((d|0)==(c|0)){break b}while(1){d=d+ -4|0;g=i[d>>2];i[d>>2]=0;b=b+ -4|0;i[b>>2]=g;if((d|0)!=(c|0)){continue}break}i[a+8>>2]=e;d=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=b;if((d|0)==(c|0)){break a}while(1){d=d+ -4|0;a=i[d>>2];i[d>>2]=0;if(a){Wb(a)}if((d|0)!=(c|0)){continue}break}break a}Ho();x()}za(1752);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){bp(c)}}function fn(a){var b=0,c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0;a:{c=i[a+112>>2];d=i[a+116>>2];b:{if(c|d){b=l[a+120>>2]>=c>>>0;c=i[a+124>>2];if((c|0)>(d|0)?1:(c|0)>=(d|0)?b:0){break b}}k=dn(a);if((k|0)>-1){break a}}i[a+104>>2]=0;return-1}m=a;e=i[a+116>>2];b=e;d=i[a+8>>2];c=d;f=i[a+112>>2];c:{if(!(b|f)){break c}c=d;e=(i[a+124>>2]^-1)+b|0;b=i[a+120>>2]^-1;f=b+f|0;if(f>>>0>>0){e=e+1|0}b=f;f=i[a+4>>2];h=d-f|0;n=b>>>0>=h>>>0;h=h>>31;if((e|0)>(h|0)?1:(e|0)>=(h|0)?n:0){break c}c=b+f|0}i[m+104>>2]=c;m=i[a+4>>2];if(d){c=a;e=(d-m|0)+1|0;b=e;d=b+i[a+120>>2]|0;a=i[a+124>>2]+(b>>31)|0;i[c+120>>2]=d;i[c+124>>2]=d>>>0>>0?a+1|0:a}a=m+ -1|0;if(j[a|0]!=(k|0)){g[a|0]=k}return k}function Lg(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;j=Kg(a,b,c,d,f);g=i[f>>2];f=i[g>>2];a:{g=i[g+4>>2]-f>>3;h=i[e>>2];if(g>>>0<=h>>>0){break a}k=i[d>>2];if(g>>>0<=k>>>0){break a}if(l[f+(h<<3)>>2]>2]){i[d>>2]=h;i[e>>2]=k;e=i[d>>2];if(g>>>0<=e>>>0){break a}h=i[c>>2];if(g>>>0<=h>>>0){break a}if(l[f+(e<<3)>>2]>=l[f+(h<<3)>>2]){return j+1|0}i[c>>2]=e;i[d>>2]=h;d=i[c>>2];if(g>>>0<=d>>>0){break a}e=i[b>>2];if(g>>>0<=e>>>0){break a}if(l[f+(d<<3)>>2]>=l[f+(e<<3)>>2]){return j+2|0}i[b>>2]=d;i[c>>2]=e;c=i[b>>2];if(g>>>0<=c>>>0){break a}d=i[a>>2];if(g>>>0<=d>>>0){break a}if(l[f+(c<<3)>>2]>=l[f+(d<<3)>>2]){return j+3|0}i[a>>2]=c;i[b>>2]=d;j=j+4|0}return j}Io();x()}function qn(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0;j=1;i=d&2147483647;m=i;k=c;a:{if(!c&(i|0)==2147418112?a|b:(i|0)==2147418112&c>>>0>0|i>>>0>2147418112){break a}l=h&2147483647;n=l;i=g;if(!g&(l|0)==2147418112?e|f:(l|0)==2147418112&g>>>0>0|l>>>0>2147418112){break a}if(!(a|e|(i|k)|(b|f|(m|n)))){return 0}k=d&h;if((k|0)>0?1:(k|0)>=0?(c&g)>>>0>=0:0){j=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>>0|b>>>0>>0:(d|0)<(h|0)?1:(d|0)<=(h|0)?c>>>0>>0:0){break a}return(a^e|c^g)!=0|(b^f|d^h)!=0}j=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>e>>>0|b>>>0>f>>>0:(d|0)>(h|0)?1:(d|0)>=(h|0)?c>>>0>g>>>0:0){break a}j=(a^e|c^g)!=0|(b^f|d^h)!=0}return j}function Uh(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=F-16|0;F=e;i[a+4>>2]=0;a:{b:{if(!b){break b}f=i[a+8>>2];d=f<<5;c:{if(d>>>0>=b>>>0){i[a+4>>2]=b;break c}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if((b|0)<=-1){break a}h=e;if(d>>>0<=1073741822){g=b+31&-32;d=f<<6;d=d>>>0>>0?g:d}else{d=2147483647}bd(h,d);d=i[a>>2];i[a>>2]=i[e>>2];i[e>>2]=d;f=i[a+4>>2];i[a+4>>2]=b;i[e+4>>2]=f;f=i[a+8>>2];i[a+8>>2]=i[e+8>>2];i[e+8>>2]=f;if(!d){break c}bp(d)}d=b>>>5|0;f=d<<2;a=i[a>>2];if(j[c|0]){a=ip(a,255,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;i[a>>2]=i[a>>2]|-1>>>32-b;break b}a=ip(a,0,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;i[a>>2]=i[a>>2]&(-1>>>32-b^-1)}F=e+16|0;return}Ho();x()}function ki(a){var b=0,c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0,q=0,r=0;k=a+32|0;b=i[a+64>>2];b=i[(I[i[i[b>>2]+40>>2]](b)|0)+56>>2];Vj(k,o((i[b+100>>2]-i[b+96>>2]|0)/12|0,3),0,1);a:{b=i[a+68>>2];d=i[a+72>>2]-b|0;if((d|0)<1){break a}d=(d>>>2|0)+ -1|0;while(1){c=i[a+52>>2];b:{if((c|0)<0?1:(c|0)<=0?l[a+48>>2]<1:0){break b}h=i[(d<<2)+b>>2];if(!(171>>>h&1)){break b}n=i[(h<<2)+12048>>2];b=i[a+44>>2];c=i[b+4>>2];f=0;while(1){e=c>>>3|0;m=e+i[b>>2]|0;p=j[m|0];c=c&7;q=m,r=yp(-2,c)&p,g[q|0]=r;e=e+i[b>>2]|0;g[e|0]=j[e|0]|(h>>>f&1)<>2]+1|0;i[b+4>>2]=c;f=f+1|0;if((n|0)!=(f|0)){continue}break}}d=d+ -1|0;if((d|0)<0){break a}b=i[a+68>>2];continue}}Wj(k)}function Yf(a,b,c){var d=0,e=0,f=0;d=F-16|0;F=d;i[d+12>>2]=b;b=ho(32);i[d>>2]=b;i[d+4>>2]=17;i[d+8>>2]=-2147483616;g[b+17|0]=0;g[b+16|0]=j[10556];e=j[10552]|j[10553]<<8|(j[10554]<<16|j[10555]<<24);f=j[10548]|j[10549]<<8|(j[10550]<<16|j[10551]<<24);g[b+8|0]=f;g[b+9|0]=f>>>8;g[b+10|0]=f>>>16;g[b+11|0]=f>>>24;g[b+12|0]=e;g[b+13|0]=e>>>8;g[b+14|0]=e>>>16;g[b+15|0]=e>>>24;e=j[10544]|j[10545]<<8|(j[10546]<<16|j[10547]<<24);f=j[10540]|j[10541]<<8|(j[10542]<<16|j[10543]<<24);g[b|0]=f;g[b+1|0]=f>>>8;g[b+2|0]=f>>>16;g[b+3|0]=f>>>24;g[b+4|0]=e;g[b+5|0]=e>>>8;g[b+6|0]=e>>>16;g[b+7|0]=e>>>24;Yj(yf(a+4|0,d+12|0),d,c);if(g[d+11|0]<=-1){bp(i[d>>2])}F=d+16|0}function Df(a,b,c){var d=0,e=0,f=0;d=F-16|0;F=d;i[d+12>>2]=b;b=ho(32);i[d>>2]=b;i[d+4>>2]=17;i[d+8>>2]=-2147483616;g[b+17|0]=0;g[b+16|0]=j[10144];e=j[10140]|j[10141]<<8|(j[10142]<<16|j[10143]<<24);f=j[10136]|j[10137]<<8|(j[10138]<<16|j[10139]<<24);g[b+8|0]=f;g[b+9|0]=f>>>8;g[b+10|0]=f>>>16;g[b+11|0]=f>>>24;g[b+12|0]=e;g[b+13|0]=e>>>8;g[b+14|0]=e>>>16;g[b+15|0]=e>>>24;e=j[10132]|j[10133]<<8|(j[10134]<<16|j[10135]<<24);f=j[10128]|j[10129]<<8|(j[10130]<<16|j[10131]<<24);g[b|0]=f;g[b+1|0]=f>>>8;g[b+2|0]=f>>>16;g[b+3|0]=f>>>24;g[b+4|0]=e;g[b+5|0]=e>>>8;g[b+6|0]=e>>>16;g[b+7|0]=e>>>24;Yj(yf(a+4|0,d+12|0),d,c);if(g[d+11|0]<=-1){bp(i[d>>2])}F=d+16|0}function id(a,b,c,d,e){var f=0,g=0,h=0,j=0;f=i[i[i[d+4>>2]+8>>2]+(c<<2)>>2];if((b|0)==-1){b=ff(c,d)}if((b|0)==-2){i[a>>2]=0;return}a:{b:{if((I[i[i[d>>2]+8>>2]](d)|0)==1){pd(a,d,b,c,e);if(i[a>>2]){break b}i[a>>2]=0}b=ho(44);i[b+4>>2]=f;i[b>>2]=3184;c=i[e+8>>2];d=i[e+12>>2];f=i[e+16>>2];g=i[e+20>>2];h=i[e>>2];j=i[e+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=f;i[b+28>>2]=g;i[b+16>>2]=c;i[b+20>>2]=d;i[b+8>>2]=h;i[b+12>>2]=j;f=i[e+24>>2];e=i[e+28>>2]-f|0;if(e){d=e>>2;if(d>>>0>=1073741824){break a}c=ho(e);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((e|0)>=1){c=hp(c,f,e)+e|0}i[d+36>>2]=c}i[b>>2]=5876;i[a>>2]=b}return}Ho();x()}function la(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0;i[b>>2]=1;f=b+8|0;c=i[b+8>>2];d=i[b+12>>2]-c|0;if(d>>>0<=4294967291){Rj(f,d+4|0);c=i[f>>2]}c=c+d|0;d=i[a+4>>2];g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;c=i[a+8>>2];if((c|0)!=i[a+12>>2]){d=0;while(1){h=(d<<2)+c|0;c=i[b+8>>2];e=i[b+12>>2]-c|0;if(e>>>0<=4294967291){Rj(f,e+4|0);c=i[f>>2]}c=c+e|0;e=i[h>>2];g[c|0]=e;g[c+1|0]=e>>>8;g[c+2|0]=e>>>16;g[c+3|0]=e>>>24;d=d+1|0;c=i[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=i[b+12>>2];b=i[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){Rj(f,c+4|0);b=i[f>>2]}b=b+c|0;a=i[a+20>>2];g[b|0]=a;g[b+1|0]=a>>>8;g[b+2|0]=a>>>16;g[b+3|0]=a>>>24}function Kl(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=F-16|0;F=f;i[a+80>>2]=0;i[a+84>>2]=0;c=a+76|0;d=i[c>>2];i[c>>2]=0;if(d){bp(d)}i[a+68>>2]=0;i[a+72>>2]=0;c=a- -64|0;d=i[c>>2];i[c>>2]=0;if(d){bp(d)}c=i[b+4>>2];d=i[b>>2];e=o((c-d|0)/12|0,3);h=i[a>>2];g=i[a+4>>2]-h>>2;a:{if(e>>>0>g>>>0){Ai(a,e-g|0);d=i[b>>2];c=i[b+4>>2];break a}if(e>>>0>=g>>>0){break a}i[a+4>>2]=h+(e<<2)}if((c|0)!=(d|0)){b=(c-d|0)/12|0;g=b>>>0>1?b:1;h=i[a>>2];b=0;while(1){e=o(b,12);c=e+h|0;e=d+e|0;i[c>>2]=i[e>>2];i[c+4>>2]=i[e+4>>2];i[c+8>>2]=i[e+8>>2];b=b+1|0;if((g|0)!=(b|0)){continue}break}}i[f+12>>2]=-1;b=Ll(a,f+12|0);if(b){Ml(a);Nl(a,i[f+12>>2])}F=f+16|0;return b}function Fd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=F-32|0;F=d;h=1;while(1){g=o(c,12)+a|0;e=g- -64|0;Jb(i[e>>2],b);c=c+1|0;if(i[e>>2]){f=mf(d);pf(f);e=i[e>>2]-c|0;if((e|0)>=0){k=g+60|0;while(1){g=0;while(1){j=e+g|0;qf(f,i[i[k>>2]+(j>>>3&536870908)>>2]>>>j&1);g=g+1|0;if((h|0)!=(g|0)){continue}break}e=e-c|0;if((e|0)>=0){continue}break}}sf(f,b);nf(f)}h=h+1|0;if((c|0)!=4){continue}break}i[d>>2]=i[a+12>>2];h=i[b+20>>2];c=h;f=i[b+16>>2];if((c|0)<0?1:(c|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],d,d+4|0);f=i[b+16>>2];c=i[b+20>>2]}i[d>>2]=i[a+16>>2];if((c|0)<0?1:(c|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],d,d+4|0)}F=d+32|0;return 1}function ja(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0;d=i[b+88>>2];if(!(!d|i[d>>2]!=1)){c=i[d+8>>2];i[a+4>>2]=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);f=a+8|0;h=i[a+8>>2];e=i[a+12>>2]-h>>2;c=g[b+24|0];a:{if(e>>>0>>0){ka(f,c-e|0);c=j[b+24|0];break a}if(e>>>0<=c>>>0){break a}i[a+12>>2]=h+(c<<2)}h=1;e=i[d+8>>2];b:{if(c<<24>>24<1){b=4;break b}b=c&255;k=b>>>0>1?b:1;f=i[f>>2];c=0;b=4;while(1){d=b+e|0;m[f+(c<<2)>>2]=(Cp(2,j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24)),Gp());b=b+4|0;c=c+1|0;if((k|0)!=(c|0)){continue}break}}c=a;a=b+e|0;m[c+20>>2]=(Cp(2,j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24)),Gp())}return h|0}function Ce(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=F-32|0;F=d;h=1;while(1){g=o(c,12)+a|0;e=g+48|0;Jb(i[e>>2],b);c=c+1|0;if(i[e>>2]){f=mf(d);pf(f);e=i[e>>2]-c|0;if((e|0)>=0){k=g+44|0;while(1){g=0;while(1){j=e+g|0;qf(f,i[i[k>>2]+(j>>>3&536870908)>>2]>>>j&1);g=g+1|0;if((h|0)!=(g|0)){continue}break}e=e-c|0;if((e|0)>=0){continue}break}}sf(f,b);nf(f)}h=h+1|0;if((c|0)!=4){continue}break}i[d>>2]=i[a+12>>2];h=i[b+20>>2];c=h;f=i[b+16>>2];if((c|0)<0?1:(c|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],d,d+4|0);f=i[b+16>>2];c=i[b+20>>2]}i[d>>2]=i[a+24>>2];if((c|0)<0?1:(c|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],d,d+4|0)}F=d+32|0;return 1}function pa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=p(0),n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0;h=F-16|0;F=h;if(i[c+28>>2]==9){d=i[a+4>>2];e=g[c+24|0];j=e<<2;k=ho((e&1073741823)!=(e|0)?-1:j);n=dk(h+8|0);f=n;l=m[a+20>>2];d=-1<=1){m[f>>2]=l/p(d|0)}f=(d|0)>0;a:{if(!f){break a}o=i[c+80>>2];if(!o){break a}t=i[i[b>>2]>>2]+i[b+48>>2]|0;u=(e|0)<1;d=0;while(1){if(!u){v=i[a+8>>2];l=m[n>>2];b=0;while(1){q=b<<2;m[q+k>>2]=p(l*p(i[(d<<2)+t>>2]))+m[v+q>>2];d=d+1|0;b=b+1|0;if((e|0)!=(b|0)){continue}break}}hp(i[i[c+64>>2]>>2]+r|0,k,j);r=j+r|0;s=s+1|0;if((s|0)!=(o|0)){continue}break}}bp(k)}F=h+16|0;return f|0}function xn(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;f=F-16|0;F=f;Ep(+b);h=Bp(1)|0;g=Bp(0)|0;e=h&2147483647;c=e;e=c+ -1048576|0;d=g;if(d>>>0<0){e=e+1|0}a:{if((e|0)==2145386495|e>>>0<2145386495){j=d<<28;e=(c&15)<<28|d>>>4;c=(c>>>4|0)+1006632960|0;d=e;c=d>>>0<0?c+1|0:c;break a}if((c|0)==2146435072&d>>>0>=0|c>>>0>2146435072){j=g<<28;e=g;c=h;g=c>>>4|0;d=(c&15)<<28|e>>>4;c=g|2147418112;break a}if(!(c|d)){d=0;c=0;break a}e=c;c=(c|0)==1&d>>>0<0|c>>>0<1?r(g)+32|0:r(c);sn(f,d,e,0,0,c+49|0);k=i[f>>2];j=i[f+4>>2];d=i[f+8>>2];c=i[f+12>>2]^65536|15372-c<<16}i[a>>2]=k;i[a+4>>2]=j;i[a+8>>2]=d;i[a+12>>2]=h&-2147483648|c;F=f+16|0}function Vh(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=i[a+8>>2];e=i[a>>2];if(g>>>0<=d-e>>2>>>0){f=i[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){i[e>>2]=i[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)>=1){f=hp(f,d,b)+b|0}i[a+4>>2]=f;return}i[a+4>>2]=e;return}if(e){i[a+4>>2]=e;bp(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(g>>>0>=1073741824){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=ho(e);i[a>>2]=c;i[a+4>>2]=c;i[a+8>>2]=c+e;if((f|0)>=1){c=hp(c,b,f)+f|0}i[a+4>>2]=c;return}Ho();x()}function bc(a){var b=0,c=0,d=0,e=0;d=i[a+1176>>2];if(d){b=i[a+1180>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;bp(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+1176>>2]}i[a+1180>>2]=d;bp(c)}d=i[a+1164>>2];if(d){b=i[a+1168>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;bp(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+1164>>2]}i[a+1168>>2]=d;bp(c)}b=i[a+1152>>2];if(b){i[a+1156>>2]=b;bp(b)}b=i[a+1140>>2];if(b){i[a+1144>>2]=b;bp(b)}b=i[a+1128>>2];if(b){i[a+1132>>2]=b;bp(b)}jf(a+1108|0);jf(a+1088|0);jf(a+1068|0);nf(a+1036|0);mc(a+12|0)}function Ti(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;d=(c>>>0)/3|0;Ui(i[a+12>>2],i[(i[i[a+8>>2]+96>>2]+o(d,12)|0)+(c-o(d,3)<<2)>>2]);f=i[a+4>>2];d=i[f+4>>2];a:{b:{c:{if((d|0)!=i[f+8>>2]){i[d>>2]=c;i[f+4>>2]=d+4;break c}h=i[f>>2];j=d-h|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break b}d=j>>1;e=g>>>0<536870911?d>>>0>>0?e:d:1073741823;d=0;d:{if(!e){break d}if(e>>>0>=1073741824){break a}d=ho(e<<2)}g=d+(g<<2)|0;i[g>>2]=c;c=d+(e<<2)|0;e=g+4|0;if((j|0)>=1){hp(d,h,j)}i[f+8>>2]=c;i[f+4>>2]=e;i[f>>2]=d;if(!h){break c}bp(h)}a=i[a+4>>2];i[i[a+12>>2]+(b<<2)>>2]=i[a+24>>2];i[a+24>>2]=i[a+24>>2]+1;return}Ho();x()}za(11708);x()}function Rm(a,b){var c=0,d=0,e=0,f=0,h=0;c=F-208|0;F=c;i[c+204>>2]=b;b=0;ip(c+160|0,0,40);i[c+200>>2]=i[c+204>>2];a:{if((Sm(0,c+200|0,c+80|0,c+160|0)|0)<0){a=-1;break a}b=i[a+76>>2]>=0?1:b;d=i[a>>2];if(g[a+74|0]<=0){i[a>>2]=d&-33}h=d&32;b:{if(i[a+48>>2]){e=Sm(a,c+200|0,c+80|0,c+160|0);break b}i[a+48>>2]=80;i[a+16>>2]=c+80;i[a+28>>2]=c;i[a+20>>2]=c;d=i[a+44>>2];i[a+44>>2]=c;f=Sm(a,c+200|0,c+80|0,c+160|0);e=f;if(!d){break b}I[i[a+36>>2]](a,0,0)|0;i[a+48>>2]=0;i[a+44>>2]=d;i[a+28>>2]=0;i[a+16>>2]=0;d=i[a+20>>2];i[a+20>>2]=0;e=d?f:-1}d=e;e=a;a=i[a>>2];i[e>>2]=a|h;a=a&32?-1:d;if(!b){break a}}F=c+208|0;return a}function vf(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=F-16|0;F=f;g=Xj(a);d=a+16|0;i[d>>2]=0;i[d+4>>2]=0;i[a+12>>2]=d;d=Xj(a+24|0);if((g|0)!=(b+4|0)){xf(a,i[b+4>>2],b+8|0)}if((d|0)!=(b+28|0)){xf(d,i[b+28>>2],b+32|0)}d=0;i[f+12>>2]=0;e=i[c+8>>2];if((i[c+12>>2]-e|0)>=1){g=b+20|0;while(1){b=i[g>>2];a:{if(!b){break a}h=i[i[(d<<2)+e>>2]+56>>2];d=g;while(1){e=i[b+16>>2]<(h|0);d=e?d:b;b=i[(e<<2)+b>>2];if(b){continue}break}if((d|0)==(g|0)|(h|0)>2]){break a}b=yf(a,f+12|0);if((b|0)==(d+20|0)){break a}xf(b,i[d+20>>2],d+24|0)}d=i[f+12>>2]+1|0;i[f+12>>2]=d;e=i[c+8>>2];if((d|0)>2]-e>>2){continue}break}}F=f+16|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;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=F-32|0;F=f;d=d-e|0;if((d|0)>=1){j=a+8|0;l=0-e<<2;while(1){k=d<<2;g=k+b|0;h=g+l|0;m=i[h>>2];h=i[h+4>>2];n=i[g+4>>2];i[f+16>>2]=i[g>>2];i[f+20>>2]=n;i[f+8>>2]=m;i[f+12>>2]=h;ze(f+24|0,j,f+16|0,f+8|0);g=c+k|0;i[g>>2]=i[f+24>>2];i[g+4>>2]=i[f+28>>2];d=d-e|0;if((d|0)>0){continue}break}}d=(e&1073741823)!=(e|0)?-1:e<<2;d=ip(ho(d),0,d);e=i[d>>2];g=i[d+4>>2];j=i[b+4>>2];i[f+16>>2]=i[b>>2];i[f+20>>2]=j;i[f+8>>2]=e;i[f+12>>2]=g;ze(f+24|0,a+8|0,f+16|0,f+8|0);i[c>>2]=i[f+24>>2];i[c+4>>2]=i[f+28>>2];bp(d);F=f+32|0;return 1}function dc(a,b,c,d,e){var f=0,g=0,h=0,j=0;f=F-32|0;F=f;i[a>>2]=i[d>>2];d=i[c>>2]-i[b>>2]|0;i[a+4>>2]=d;g=i[e+20>>2];if((g|0)<0?1:(g|0)<=0?l[e+16>>2]<=0:0){d=a+4|0;ca(e,i[e+4>>2],a,d);g=i[e+20>>2];if((g|0)<0?1:(g|0)<=0?l[e+16>>2]<=0:0){ca(e,i[e+4>>2],d,d+4|0)}d=i[d>>2]}if(d){kc(a+12|0);d=a+1068|0;kf(d);g=a+1088|0;kf(g);h=a+1108|0;kf(h);i[f+24>>2]=i[b+8>>2];j=i[b+4>>2];i[f+16>>2]=i[b>>2];i[f+20>>2]=j;i[f+8>>2]=i[c+8>>2];b=i[c+4>>2];i[f>>2]=i[c>>2];i[f+4>>2]=b;pc(a,f+16|0,f);c=0;while(1){sf(((c<<5)+a|0)+12|0,e);c=c+1|0;if((c|0)!=32){continue}break}sf(a+1036|0,e);lf(d,e);lf(g,e);lf(h,e)}F=f+32|0;return 1}function ac(a,b,c,d,e){var f=0,g=0,h=0,j=0;f=F-32|0;F=f;i[a>>2]=i[d>>2];d=i[c>>2]-i[b>>2]|0;i[a+4>>2]=d;g=i[e+20>>2];if((g|0)<0?1:(g|0)<=0?l[e+16>>2]<=0:0){d=a+4|0;ca(e,i[e+4>>2],a,d);g=i[e+20>>2];if((g|0)<0?1:(g|0)<=0?l[e+16>>2]<=0:0){ca(e,i[e+4>>2],d,d+4|0)}d=i[d>>2]}if(d){kc(a+12|0);d=a+1068|0;kf(d);g=a+1088|0;kf(g);h=a+1108|0;kf(h);i[f+24>>2]=i[b+8>>2];j=i[b+4>>2];i[f+16>>2]=i[b>>2];i[f+20>>2]=j;i[f+8>>2]=i[c+8>>2];b=i[c+4>>2];i[f>>2]=i[c>>2];i[f+4>>2]=b;lc(a,f+16|0,f);c=0;while(1){sf(((c<<5)+a|0)+12|0,e);c=c+1|0;if((c|0)!=32){continue}break}sf(a+1036|0,e);lf(d,e);lf(g,e);lf(h,e)}F=f+32|0;return 1}function _f(a,b){var c=0,d=0,e=0,f=0;f=F-16|0;F=f;c=ho(16);i[f>>2]=c;i[f+4>>2]=15;i[f+8>>2]=-2147483632;g[c+15|0]=0;d=j[10535]|j[10536]<<8|(j[10537]<<16|j[10538]<<24);e=j[10531]|j[10532]<<8|(j[10533]<<16|j[10534]<<24);g[c+7|0]=e;g[c+8|0]=e>>>8;g[c+9|0]=e>>>16;g[c+10|0]=e>>>24;g[c+11|0]=d;g[c+12|0]=d>>>8;g[c+13|0]=d>>>16;g[c+14|0]=d>>>24;d=j[10528]|j[10529]<<8|(j[10530]<<16|j[10531]<<24);e=j[10524]|j[10525]<<8|(j[10526]<<16|j[10527]<<24);g[c|0]=e;g[c+1|0]=e>>>8;g[c+2|0]=e>>>16;g[c+3|0]=e>>>24;g[c+4|0]=d;g[c+5|0]=d>>>8;g[c+6|0]=d>>>16;g[c+7|0]=d>>>24;Yj(a+4|0,f,b);if(g[f+11|0]<=-1){bp(i[f>>2])}F=f+16|0}function Gf(a,b){var c=0,d=0,e=0,f=0;f=F-16|0;F=f;c=ho(16);i[f>>2]=c;i[f+4>>2]=15;i[f+8>>2]=-2147483632;g[c+15|0]=0;d=j[10479]|j[10480]<<8|(j[10481]<<16|j[10482]<<24);e=j[10475]|j[10476]<<8|(j[10477]<<16|j[10478]<<24);g[c+7|0]=e;g[c+8|0]=e>>>8;g[c+9|0]=e>>>16;g[c+10|0]=e>>>24;g[c+11|0]=d;g[c+12|0]=d>>>8;g[c+13|0]=d>>>16;g[c+14|0]=d>>>24;d=j[10472]|j[10473]<<8|(j[10474]<<16|j[10475]<<24);e=j[10468]|j[10469]<<8|(j[10470]<<16|j[10471]<<24);g[c|0]=e;g[c+1|0]=e>>>8;g[c+2|0]=e>>>16;g[c+3|0]=e>>>24;g[c+4|0]=d;g[c+5|0]=d>>>8;g[c+6|0]=d>>>16;g[c+7|0]=d>>>24;Yj(a+4|0,f,b);if(g[f+11|0]<=-1){bp(i[f>>2])}F=f+16|0}function Xa(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=i[a+8>>2];d=i[a+4>>2];if(f-d>>2>>>0>=b>>>0){e=a;if(b){a=(b<<2)+d|0;while(1){i[d>>2]=i[c>>2];d=d+4|0;if((a|0)!=(d|0)){continue}break}}else{a=d}i[e+4>>2]=a;return}a:{g=i[a>>2];h=d-g|0;e=h>>2;d=e+b|0;if(d>>>0<1073741824){j=e<<2;f=f-g|0;e=f>>1;f=f>>2>>>0<536870911?e>>>0>>0?d:e:1073741823;e=0;b:{if(!f){break b}if(f>>>0>=1073741824){break a}e=ho(f<<2)}d=j+e|0;b=d+(b<<2)|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}c=e+(f<<2)|0;if((h|0)>=1){hp(e,g,h)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=e;if(g){bp(g)}return}Ho();x()}za(1352);x()}function Gb(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=i[a+8>>2];d=i[a+4>>2];if(f-d>>2>>>0>=b>>>0){e=a;if(b){a=(b<<2)+d|0;while(1){i[d>>2]=i[c>>2];d=d+4|0;if((a|0)!=(d|0)){continue}break}}else{a=d}i[e+4>>2]=a;return}a:{g=i[a>>2];h=d-g|0;e=h>>2;d=e+b|0;if(d>>>0<1073741824){j=e<<2;f=f-g|0;e=f>>1;f=f>>2>>>0<536870911?e>>>0>>0?d:e:1073741823;e=0;b:{if(!f){break b}if(f>>>0>=1073741824){break a}e=ho(f<<2)}d=j+e|0;b=d+(b<<2)|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}c=e+(f<<2)|0;if((h|0)>=1){hp(e,g,h)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=e;if(g){bp(g)}return}Ho();x()}za(1520);x()}function Ol(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){d=a;if(b){a=(b<<2)+c|0;while(1){i[c>>2]=i[4128];c=c+4|0;if((a|0)!=(c|0)){continue}break}}else{a=c}i[d+4>>2]=a;return}a:{f=i[a>>2];g=c-f|0;d=g>>2;c=d+b|0;if(c>>>0<1073741824){h=d<<2;e=e-f|0;d=e>>1;e=e>>2>>>0<536870911?d>>>0>>0?c:d:1073741823;d=0;b:{if(!e){break b}if(e>>>0>=1073741824){break a}d=ho(e<<2)}c=h+d|0;b=c+(b<<2)|0;h=i[4128];while(1){i[c>>2]=h;c=c+4|0;if((b|0)!=(c|0)){continue}break}c=d+(e<<2)|0;if((g|0)>=1){hp(d,f,g)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=d;if(f){bp(f)}return}Ho();x()}za(16516);x()}function Ie(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=F-48|0;F=c;i[c+40>>2]=i[a- -64>>2];f=i[b+20>>2];if((f|0)<0?1:(f|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],c+40|0,c+44|0)}f=mf(c+8|0);pf(f);if(i[c+40>>2]>=1){d=1;while(1){g=d;d=i[i[a+60>>2]+(e>>>3&536870908)>>2]>>>e|0;qf(f,(g^d^-1)&1);d=d&1;e=e+1|0;if((e|0)>2]){continue}break}}sf(f,b);i[c+44>>2]=i[a+12>>2];d=i[b+20>>2];e=d;d=i[b+16>>2];if((e|0)<0?1:(e|0)<=0?d>>>0<=0:0){ca(b,i[b+4>>2],c+44|0,c+48|0);d=i[b+16>>2];e=i[b+20>>2]}i[c+44>>2]=i[a+24>>2];if((e|0)<0?1:(e|0)<=0?d>>>0<=0:0){ca(b,i[b+4>>2],c+44|0,c+48|0)}nf(f);F=c+48|0;return 1}function Nd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=F-48|0;F=c;i[c+40>>2]=i[a+80>>2];f=i[b+20>>2];if((f|0)<0?1:(f|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],c+40|0,c+44|0)}f=mf(c+8|0);pf(f);if(i[c+40>>2]>=1){d=1;while(1){g=d;d=i[i[a+76>>2]+(e>>>3&536870908)>>2]>>>e|0;qf(f,(g^d^-1)&1);d=d&1;e=e+1|0;if((e|0)>2]){continue}break}}sf(f,b);i[c+44>>2]=i[a+12>>2];d=i[b+20>>2];e=d;d=i[b+16>>2];if((e|0)<0?1:(e|0)<=0?d>>>0<=0:0){ca(b,i[b+4>>2],c+44|0,c+48|0);d=i[b+16>>2];e=i[b+20>>2]}i[c+44>>2]=i[a+16>>2];if((e|0)<0?1:(e|0)<=0?d>>>0<=0:0){ca(b,i[b+4>>2],c+44|0,c+48|0)}nf(f);F=c+48|0;return 1}function Lf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0;d=ho(40);c=d+16|0;ro(c,b);ro(d+28|0,b+12|0);b=i[a+4>>2];a:{b:{if(b){e=c;c=j[d+27|0];f=c<<24>>24<0;k=f?i[d+16>>2]:e;f=f?i[d+20>>2]:c;while(1){e=j[b+27|0];c=e<<24>>24<0;c:{d:{e:{f:{e=c?i[b+20>>2]:e;g=e>>>0>>0?e:f;if(g){h=b+16|0;c=Km(k,c?i[h>>2]:h,g);if(c){break f}}if(f>>>0>>0){break e}break d}if((c|0)>-1){break d}}c=i[b>>2];if(!c){break b}break c}c=i[b+4>>2];if(c){break c}c=b+4|0;break a}b=c;continue}}b=a+4|0}c=b}i[d+8>>2]=b;i[d>>2]=0;i[d+4>>2]=0;i[c>>2]=d;b=i[i[a>>2]>>2];if(b){i[a>>2]=b;d=i[c>>2]}Kf(i[a+4>>2],d);i[a+8>>2]=i[a+8>>2]+1}function We(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,j=0,k=0,l=0,m=0,n=0;d=F-32|0;F=d;i[a+48>>2]=f;f=i[a+40>>2];g=i[f>>2];a:{f=i[f+4>>2]-g|0;if((f|0)<1){break a}h=f>>2;f=(f>>>2|0)+ -1|0;if(h>>>0>f>>>0){l=a+44|0;m=a+8|0;while(1){he(l,i[(f<<2)+g>>2],b,f);g=i[a+52>>2];h=i[a+56>>2];j=o(e,f)<<2;k=j+b|0;n=i[k+4>>2];i[d+16>>2]=i[k>>2];i[d+20>>2]=n;i[d+8>>2]=g;i[d+12>>2]=h;ze(d+24|0,m,d+16|0,d+8|0);g=c+j|0;i[g>>2]=i[d+24>>2];i[g+4>>2]=i[d+28>>2];f=f+ -1|0;if((f|0)<0){break a}h=i[a+40>>2];g=i[h>>2];if(i[h+4>>2]-g>>2>>>0>f>>>0){continue}break}}Io();x()}F=d+32|0;return 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,j=0,k=0,l=0,m=0,n=0;d=F-32|0;F=d;i[a+48>>2]=f;f=i[a+40>>2];g=i[f>>2];a:{f=i[f+4>>2]-g|0;if((f|0)<1){break a}h=f>>2;f=(f>>>2|0)+ -1|0;if(h>>>0>f>>>0){l=a+44|0;m=a+8|0;while(1){Pd(l,i[(f<<2)+g>>2],b,f);g=i[a+52>>2];h=i[a+56>>2];j=o(e,f)<<2;k=j+b|0;n=i[k+4>>2];i[d+16>>2]=i[k>>2];i[d+20>>2]=n;i[d+8>>2]=g;i[d+12>>2]=h;ze(d+24|0,m,d+16|0,d+8|0);g=c+j|0;i[g>>2]=i[d+24>>2];i[g+4>>2]=i[d+28>>2];f=f+ -1|0;if((f|0)<0){break a}h=i[a+40>>2];g=i[h>>2];if(i[h+4>>2]-g>>2>>>0>f>>>0){continue}break}}Io();x()}F=d+32|0;return 1}function Ac(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{f=i[a+4>>2];b:{if((f|0)!=i[a>>2]){c=f;break b}e=i[a+8>>2];c=i[a+12>>2];if(e>>>0>>0){d=((c-e>>2)+1|0)/2<<2;c=d+e|0;g=e-f|0;if(g){c=c-g|0;jp(c,f,g);e=i[a+8>>2]}i[a+4>>2]=c;i[a+8>>2]=e+d;break b}c=c-f|0;d=c?c>>1:1;if(d>>>0>=1073741824){break a}c=d<<2;h=ho(c);g=h+c|0;c=(d+3&-4)+h|0;j=c;d=e-f|0;if(d){j=c+d|0;e=c;d=f;while(1){i[e>>2]=i[d>>2];d=d+4|0;e=e+4|0;if((j|0)!=(e|0)){continue}break}}i[a+12>>2]=g;i[a+8>>2]=j;i[a+4>>2]=c;i[a>>2]=h;if(!f){break b}bp(f);c=i[a+4>>2]}i[c+ -4>>2]=i[b>>2];i[a+4>>2]=i[a+4>>2]+ -4;return}za(1752);x()}function gc(a){var b=0,c=0,d=0,e=0;d=i[a+152>>2];if(d){b=i[a+156>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;bp(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+152>>2]}i[a+156>>2]=d;bp(c)}d=i[a+140>>2];if(d){b=i[a+144>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;bp(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+140>>2]}i[a+144>>2]=d;bp(c)}b=i[a+128>>2];if(b){i[a+132>>2]=b;bp(b)}b=i[a+116>>2];if(b){i[a+120>>2]=b;bp(b)}b=i[a+104>>2];if(b){i[a+108>>2]=b;bp(b)}jf(a+84|0);jf(a- -64|0);jf(a+44|0);nf(a+12|0)}function Yl(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){d=a;if(b){a=(b<<2)+c|0;while(1){i[c>>2]=1;c=c+4|0;if((a|0)!=(c|0)){continue}break}}else{a=c}i[d+4>>2]=a;return}a:{f=i[a>>2];g=c-f|0;d=g>>2;c=d+b|0;if(c>>>0<1073741824){h=d<<2;e=e-f|0;d=e>>1;e=e>>2>>>0<536870911?d>>>0>>0?c:d:1073741823;d=0;b:{if(!e){break b}if(e>>>0>=1073741824){break a}d=ho(e<<2)}c=h+d|0;b=c+(b<<2)|0;while(1){i[c>>2]=1;c=c+4|0;if((b|0)!=(c|0)){continue}break}c=d+(e<<2)|0;if((g|0)>=1){hp(d,f,g)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=d;if(f){bp(f)}return}Ho();x()}za(16648);x()}function um(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;d=F-48|0;F=d;e=uc(a,b);if((e|0)!=(a+4|0)){pm(a,e)}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;f=i[c+4>>2];e=g[c+11|0];h=e&255;k=(e|0)<0?f:h;if(k){Qj(d,k);f=i[c+4>>2];l=i[d>>2];h=j[c+11|0];e=h}m=i[c>>2];k=c;c=e<<24>>24<0;hp(l,c?m:k,c?f:h);e=ro(d+16|0,b);i[d+36>>2]=0;i[d+28>>2]=0;i[d+32>>2]=0;c=i[d>>2];f=i[d+4>>2]-c|0;b=0;a:{if(!f){break a}Qj(d+28|0,f);c=i[d>>2];n=i[d+4>>2]-c|0;b=i[d+28>>2]}hp(b,c,n);qm(d+40|0,a,e,d+16|0);a=i[d+28>>2];if(a){i[d+32>>2]=a;bp(a)}if(g[d+27|0]<=-1){bp(i[d+16>>2])}a=i[d>>2];if(a){i[d+4>>2]=a;bp(a)}F=d+48|0}function jc(a){var b=0,c=0,d=0,e=0;d=i[a+140>>2];if(d){b=i[a+144>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;bp(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+140>>2]}i[a+144>>2]=d;bp(c)}d=i[a+128>>2];if(d){b=i[a+132>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;bp(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+128>>2]}i[a+132>>2]=d;bp(c)}b=i[a+116>>2];if(b){i[a+120>>2]=b;bp(b)}b=i[a+104>>2];if(b){i[a+108>>2]=b;bp(b)}b=i[a+92>>2];if(b){i[a+96>>2]=b;bp(b)}jf(a+72|0);jf(a+52|0);jf(a+32|0);jf(a+12|0)}function xc(a,b){var c=0,d=0,e=0,f=0;e=i[a+16>>2];if(b){i[a+12>>2]=i[a+12>>2]|-2147483648>>>e}b=e+1|0;i[a+16>>2]=b;a:{b:{if((b|0)==32){b=i[a+4>>2];c:{if((b|0)!=i[a+8>>2]){i[b>>2]=i[a+12>>2];i[a+4>>2]=b+4;break c}e=i[a>>2];f=b-e|0;d=f>>2;c=d+1|0;if(c>>>0>=1073741824){break b}b=f>>1;c=d>>>0<536870911?b>>>0>>0?c:b:1073741823;b=0;d:{if(!c){break d}if(c>>>0>=1073741824){break a}b=ho(c<<2)}d=b+(d<<2)|0;i[d>>2]=i[a+12>>2];c=b+(c<<2)|0;d=d+4|0;if((f|0)>=1){hp(b,e,f)}i[a+8>>2]=c;i[a+4>>2]=d;i[a>>2]=b;if(!e){break c}bp(e)}i[a+12>>2]=0;i[a+16>>2]=0}return}Ho();x()}za(1752);x()}function Of(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0;f=a+4|0;a:{a=i[a+4>>2];if(a){e=j[c+11|0];d=e<<24>>24<0;k=d?i[c>>2]:c;e=d?i[c+4>>2]:e;while(1){c=j[a+27|0];d=c<<24>>24<0;c=d?i[a+20>>2]:c;l=c>>>0>>0;b:{c:{d:{e:{f:{h=l?c:e;g:{if(h){g=a+16|0;d=d?i[g>>2]:g;g=Km(k,d,h);if(!g){if(e>>>0>>0){break g}break f}if((g|0)>-1){break f}break g}if(e>>>0>=c>>>0){break e}}c=i[a>>2];if(c){break b}i[b>>2]=a;return a}c=Km(d,k,h);if(c){break d}}if(l){break c}break a}if((c|0)>-1){break a}}f=a+4|0;c=i[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}i[b>>2]=f;return f}i[b>>2]=a;return f}function zc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{e=i[a+8>>2];b:{if((e|0)!=i[a+12>>2]){break b}f=i[a+4>>2];g=i[a>>2];if(f>>>0>g>>>0){g=((f-g>>2)+1|0)/-2<<2;c=g+f|0;d=e-f|0;if(d){jp(c,f,d);f=i[a+4>>2]}e=c+d|0;i[a+8>>2]=e;i[a+4>>2]=f+g;break b}c=e-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}d=c<<2;h=ho(d);j=h+d|0;d=e-f|0;c=(c&-4)+h|0;e=c;if(d){e=c+d|0;d=c;while(1){i[d>>2]=i[f>>2];f=f+4|0;d=d+4|0;if((d|0)!=(e|0)){continue}break}}i[a+12>>2]=j;i[a+8>>2]=e;i[a+4>>2]=c;i[a>>2]=h;if(!g){break b}bp(g);e=i[a+8>>2]}i[e>>2]=i[b>>2];i[a+8>>2]=i[a+8>>2]+4;return}za(1752);x()}function Fa(a,b){var c=0;c=i[b+4>>2];i[a>>2]=i[b>>2];i[a+4>>2]=c;c=i[b+60>>2];i[a+56>>2]=i[b+56>>2];i[a+60>>2]=c;c=i[b+52>>2];i[a+48>>2]=i[b+48>>2];i[a+52>>2]=c;c=i[b+44>>2];i[a+40>>2]=i[b+40>>2];i[a+44>>2]=c;c=i[b+36>>2];i[a+32>>2]=i[b+32>>2];i[a+36>>2]=c;c=i[b+28>>2];i[a+24>>2]=i[b+24>>2];i[a+28>>2]=c;c=i[b+20>>2];i[a+16>>2]=i[b+16>>2];i[a+20>>2]=c;c=i[b+12>>2];i[a+8>>2]=i[b+8>>2];i[a+12>>2]=c;i[a+88>>2]=0;i[a+64>>2]=0;i[a+68>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;g[a+77|0]=0;g[a+78|0]=0;g[a+79|0]=0;g[a+80|0]=0;g[a+81|0]=0;g[a+82|0]=0;g[a+83|0]=0;g[a+84|0]=0;return a}function hm(a,b){var c=0,d=0,e=0,f=0,h=0,k=0;d=F-16|0;F=d;a:{b:{c=j[b+11|0];e=c<<24>>24;c:{if((e|0)<=-1){c=i[b+4>>2];if(c>>>0>255){break a}if(!c){break c}break b}if(e){break b}}g[d+15|0]=0;b=i[a+20>>2];if((b|0)<0?1:(b|0)<=0?l[a+16>>2]<=0:0){ca(a,i[a+4>>2],d+15|0,d+16|0)}h=1;break a}g[d+14|0]=c;h=i[a+20>>2];c=h;f=i[a+16>>2];if((c|0)<0?1:(c|0)<=0?f>>>0<=0:0){ca(a,i[a+4>>2],d+14|0,d+15|0);f=i[a+16>>2];c=i[a+20>>2];e=j[b+11|0]}h=1;if((c|0)>0?1:(c|0)>=0?f>>>0>0:0){break a}f=a;k=i[a+4>>2];a=e<<24>>24<0;c=a?i[b>>2]:b;ca(f,k,c,c+(a?i[b+4>>2]:e&255)|0)}F=d+16|0;return h}function tm(a,b,c){var d=0,e=0,f=0,h=0;d=F-48|0;F=d;f=uc(a,b);if((f|0)!=(a+4|0)){pm(a,f)}e=ho(8);i[d>>2]=e;f=e+8|0;i[d+8>>2]=f;i[d+4>>2]=f;f=i[c+4>>2];c=i[c>>2];g[e|0]=c;g[e+1|0]=c>>>8;g[e+2|0]=c>>>16;g[e+3|0]=c>>>24;g[e+4|0]=f;g[e+5|0]=f>>>8;g[e+6|0]=f>>>16;g[e+7|0]=f>>>24;e=0;f=ro(d+16|0,b);i[d+36>>2]=0;i[d+28>>2]=0;i[d+32>>2]=0;b=i[d>>2];c=i[d+4>>2]-b|0;h=0;a:{if(!c){break a}Qj(d+28|0,c);b=i[d>>2];e=i[d+4>>2]-b|0;h=i[d+28>>2]}hp(h,b,e);qm(d+40|0,a,f,d+16|0);a=i[d+28>>2];if(a){i[d+32>>2]=a;bp(a)}if(g[d+27|0]<=-1){bp(i[d+16>>2])}a=i[d>>2];if(a){bp(a)}F=d+48|0}function uc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;g=a+4|0;a=i[a+4>>2];a:{b:{if(!a){break b}d=j[b+11|0];c=d<<24>>24<0;k=c?i[b>>2]:b;e=c?i[b+4>>2]:d;c=g;while(1){b=j[a+27|0];l=b<<24>>24<0;h=l?i[a+20>>2]:b;f=e>>>0>>0;d=f?e:h;c:{if(d){b=a+16|0;b=Km(l?i[b>>2]:b,k,d);if(b){break c}}b=h>>>0>>0?-1:f}c=(b|0)<0?c:a;a=i[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=j[c+27|0];f=a<<24>>24<0;d:{d=f?i[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=Km(k,f?i[a>>2]:a,b);if(a){break d}}if(e>>>0>>0){break b}break a}if((a|0)>-1){break a}}c=g}return c}function Cl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=F-16|0;F=e;a:{if(!a){break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;h=a+96|0;g=i[a+96>>2];d=(i[a+100>>2]-g|0)/12|0;b:{if(d>>>0>>0){Dl(h,b-d|0,e);break b}if(d>>>0>b>>>0){i[a+100>>2]=g+o(b,12)}if(!b){break a}}g=i[h>>2];d=0;while(1){j=o(d,12);f=j+c|0;k=i[f>>2];l=i[f+8>>2];m=i[f+4>>2];f=(i[a+100>>2]-g|0)/12|0;c:{if(f>>>0>d>>>0){d=d+1|0;break c}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;d=d+1|0;Dl(h,d-f|0,e);g=i[h>>2]}f=g+j|0;i[f+8>>2]=l;i[f+4>>2]=m;i[f>>2]=k;if((b|0)!=(d|0)){continue}break}}F=e+16|0;return(a|0)!=0}function qm(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0;h=F-16|0;F=h;l=a;j=Of(b,h+12|0,c);c=i[j>>2];if(c){b=0}else{c=ho(40);e=d+8|0;i[c+24>>2]=i[e>>2];f=i[d+4>>2];i[c+16>>2]=i[d>>2];i[c+20>>2]=f;i[d>>2]=0;i[d+4>>2]=0;i[e>>2]=0;i[c+36>>2]=0;i[c+28>>2]=0;i[c+32>>2]=0;f=i[d+12>>2];k=i[d+16>>2]-f|0;e=0;a:{if(!k){break a}e=c+28|0;Qj(e,k);f=i[d+12>>2];m=i[d+16>>2]-f|0;e=i[e>>2]}hp(e,f,m);i[c+8>>2]=i[h+12>>2];i[c>>2]=0;i[c+4>>2]=0;i[j>>2]=c;e=i[i[b>>2]>>2];d=c;b:{if(!e){break b}i[b>>2]=e;d=i[j>>2]}Kf(i[b+4>>2],d);i[b+8>>2]=i[b+8>>2]+1;b=1}g[l+4|0]=b;i[a>>2]=c;F=h+16|0}function ra(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=i[a+8>>2];e=i[a>>2];if(g>>>0<=d-e>>2>>>0){d=i[a+4>>2]-e|0;f=d>>2;d=g>>>0>f>>>0?b+d|0:c;h=d-b|0;if(h){jp(e,b,h)}if(g>>>0>f>>>0){b=i[a+4>>2];c=c-d|0;if((c|0)>=1){b=hp(b,d,c)+c|0}i[a+4>>2]=b;return}i[a+4>>2]=e+h;return}if(e){i[a+4>>2]=e;bp(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(g>>>0>=1073741824){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=ho(e);i[a>>2]=c;i[a+4>>2]=c;i[a+8>>2]=c+e;if((f|0)>=1){c=hp(c,b,f)+f|0}i[a+4>>2]=c;return}Ho();x()}function Rl(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=-1;a:{if((b|0)==-1){break a}e=i[i[a+24>>2]+(b<<2)>>2];if((e|0)==-1){return 0}f=0;c=1;b=e;while(1){f=f+1|0;h=c;b:{if(c&255){c=0;d=b+1|0;b=(d>>>0)%3|0?d:b+ -2|0;if((b|0)==-1){b=e;break b}d=i[i[a+12>>2]+(b<<2)>>2];if((d|0)==-1){b=e;break b}b=e;g=d+1|0;d=(g>>>0)%3|0?g:d+ -2|0;if((d|0)==-1){break b}c=h;b=d;if((e|0)!=(b|0)){break b}break a}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)==-1){break a}c=i[i[a+12>>2]+(b<<2)>>2];if((c|0)==-1){break a}if((c>>>0)%3|0){b=c+ -1|0}else{b=c+2|0}c=0}if((b|0)!=-1){continue}break}}return f}function Dm(a,b){var c=0,d=0,e=0,f=0;a:{if((b|0)<0){break a}c=i[a+24>>2];d=i[a+28>>2];if((c|0)==(d|0)){break a}while(1){f=c+4|0;e=i[c>>2];if(i[e+24>>2]==(b|0)){b:{if((d|0)!=(f|0)){while(1){b=i[f>>2];i[f>>2]=0;i[c>>2]=b;if(e){yk(e+12|0,i[e+16>>2]);zk(e,i[e+4>>2]);bp(e)}c=c+4|0;f=f+4|0;if((d|0)!=(f|0)){e=i[c>>2];continue}break}d=i[a+28>>2];if((d|0)==(c|0)){break b}}while(1){d=d+ -4|0;b=i[d>>2];i[d>>2]=0;if(b){yk(b+12|0,i[b+16>>2]);zk(b,i[b+4>>2]);bp(b)}if((c|0)!=(d|0)){continue}break}}i[a+28>>2]=c;return}c=f;if((d|0)!=(c|0)){continue}break}}}function ul(a,b,c,d){var e=0,f=0,h=0,j=0;e=F-32|0;F=e;a:{b:{c:{if(!a){break c}f=mp(b);if(f>>>0>=4294967280){break b}d:{e:{if(f>>>0>=11){j=f+16&-16;h=ho(j);i[e+24>>2]=j|-2147483648;i[e+16>>2]=h;i[e+20>>2]=f;break e}g[e+27|0]=f;h=e+16|0;if(!f){break d}}hp(h,b,f)}g[f+h|0]=0;i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(d){if(d>>>0>=1073741824){break a}f=d<<2;b=ho(f);i[e>>2]=b;d=b+(d<<2)|0;i[e+8>>2]=d;hp(b,c,f);i[e+4>>2]=d}rm(a,e+16|0,e);b=i[e>>2];if(b){i[e+4>>2]=b;bp(b)}if(g[e+27|0]>-1){break c}bp(i[e+16>>2])}F=e+32|0;return(a|0)!=0}qo();x()}Ho();x()}function fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=F-16|0;F=d;a:{if(!Cc(a,b,c)){break a}if(f=(I[i[i[a>>2]+32>>2]](a)|0)==1,g=0,h=i[i[a+8>>2]+28>>2]+ -1>>>0>5,h?f:g){break a}g=d+8|0,h=a,j=gf(c,i[b+48>>2]),f=i[i[a>>2]+48>>2],I[f](g|0,h|0,j|0);b=i[d+8>>2];i[d+8>>2]=0;c=i[a+36>>2];i[a+36>>2]=b;e=1;if(c){I[i[i[c>>2]+4>>2]](c);b=i[d+8>>2];i[d+8>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}b=i[a+36>>2]}if(!b){break a}if(I[i[i[a>>2]+36>>2]](a,b)|0){break a}b=i[a+36>>2];i[a+36>>2]=0;if(!b){break a}I[i[i[b>>2]+4>>2]](b)}F=d+16|0;return e|0}function sc(a){a=a|0;var b=0,c=0,d=0;i[a>>2]=1596;b=i[a+60>>2];if(b){c=i[a- -64>>2];d=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;d=i[c>>2];i[c>>2]=0;if(d){Wb(d)}if((b|0)!=(c|0)){continue}break}d=i[a+60>>2]}i[a+64>>2]=b;bp(d)}b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}b=i[a+36>>2];if(b){c=i[a+40>>2];d=b;b:{if((b|0)==(c|0)){break b}while(1){c=c+ -24|0;I[i[i[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}d=i[a+36>>2]}i[a+40>>2]=b;bp(d)}i[a>>2]=1432;b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;bp(b)}return a|0}function Fc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=i[a+8>>2];e=i[d+40>>2];h=ho((e|0)>-1?e:-1);a:{g=i[b>>2];k=i[b+4>>2];if((g|0)==(k|0)){break a}o=e+h|0;while(1){f=i[(m<<2)+g>>2];e=h;p=i[i[d>>2]>>2];q=i[d+48>>2];n=i[d+40>>2];r=n;s=i[d+44>>2];if(!j[d+84|0]){f=i[i[d+68>>2]+(f<<2)>>2]}d=e;e=up(r,s,f,0)+q|0;f=hp(d,e+p|0,n);e=i[c+20>>2];if((e|0)<0?1:(e|0)<=0?l[c+16>>2]<=0:0){ca(c,i[c+4>>2],f,o);g=i[b>>2];k=i[b+4>>2]}m=m+1|0;if(m>>>0>=k-g>>2>>>0){break a}d=i[a+8>>2];continue}}bp(h);return 1}function fc(a,b,c,d,e){var f=0,g=0,h=0,j=0,k=0;f=F-32|0;F=f;i[a>>2]=i[d>>2];d=i[c>>2]-i[b>>2]|0;i[a+4>>2]=d;g=i[e+20>>2];if((g|0)<0?1:(g|0)<=0?l[e+16>>2]<=0:0){d=a+4|0;ca(e,i[e+4>>2],a,d);g=i[e+20>>2];if((g|0)<0?1:(g|0)<=0?l[e+16>>2]<=0:0){ca(e,i[e+4>>2],d,d+4|0)}d=i[d>>2]}if(d){d=a+12|0;pf(d);g=a+44|0;kf(g);h=a- -64|0;kf(h);j=a+84|0;kf(j);i[f+24>>2]=i[b+8>>2];k=i[b+4>>2];i[f+16>>2]=i[b>>2];i[f+20>>2]=k;i[f+8>>2]=i[c+8>>2];b=i[c+4>>2];i[f>>2]=i[c>>2];i[f+4>>2]=b;qc(a,f+16|0,f);sf(d,e);lf(g,e);lf(h,e);lf(j,e)}F=f+32|0;return 1}function ic(a,b,c,d,e){var f=0,g=0,h=0,j=0,k=0;f=F-32|0;F=f;i[a>>2]=i[d>>2];d=i[c>>2]-i[b>>2]|0;i[a+4>>2]=d;g=i[e+20>>2];if((g|0)<0?1:(g|0)<=0?l[e+16>>2]<=0:0){d=a+4|0;ca(e,i[e+4>>2],a,d);g=i[e+20>>2];if((g|0)<0?1:(g|0)<=0?l[e+16>>2]<=0:0){ca(e,i[e+4>>2],d,d+4|0)}d=i[d>>2]}if(d){d=a+12|0;kf(d);g=a+32|0;kf(g);h=a+52|0;kf(h);j=a+72|0;kf(j);i[f+24>>2]=i[b+8>>2];k=i[b+4>>2];i[f+16>>2]=i[b>>2];i[f+20>>2]=k;i[f+8>>2]=i[c+8>>2];b=i[c+4>>2];i[f>>2]=i[c>>2];i[f+4>>2]=b;rc(a,f+16|0,f);lf(d,e);lf(g,e);lf(h,e);lf(j,e)}F=f+32|0;return 1}function So(a,b,c){var d=0,e=0,f=0;d=F+ -64|0;F=d;f=i[a>>2];e=i[f+ -4>>2];f=i[f+ -8>>2];i[d+20>>2]=0;i[d+16>>2]=b;i[d+12>>2]=a;i[d+8>>2]=c;b=0;ip(d+24|0,0,39);a=a+f|0;a:{if(Qo(e,c,0)){i[d+56>>2]=1;I[i[i[e>>2]+20>>2]](e,d+8|0,a,a,1,0);b=i[d+32>>2]==1?a:0;break a}I[i[i[e>>2]+24>>2]](e,d+8|0,a,1,0);b:{switch(i[d+44>>2]){case 0:b=i[d+48>>2]==1?i[d+36>>2]==1?i[d+40>>2]==1?i[d+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(i[d+32>>2]!=1){if(i[d+48>>2]|i[d+36>>2]!=1|i[d+40>>2]!=1){break a}}b=i[d+24>>2]}F=d- -64|0;return b}function ve(a,b,c,d){var e=0,f=0;e=ho(128);i[e+4>>2]=b;b=i[c+4>>2];i[e+8>>2]=i[c>>2];i[e+12>>2]=b;b=i[c+12>>2];i[e+16>>2]=i[c+8>>2];i[e+20>>2]=b;i[e+24>>2]=i[c+16>>2];b=i[d+4>>2];i[e+28>>2]=i[d>>2];i[e+32>>2]=b;b=d+8|0;c=b;f=i[c+4>>2];i[e+36>>2]=i[c>>2];i[e+40>>2]=f;i[e+48>>2]=0;i[e+52>>2]=0;i[e>>2]=8916;c=i[d+4>>2];i[e+56>>2]=i[d>>2];i[e+60>>2]=c;d=i[b+4>>2];c=e- -64|0;i[c>>2]=i[b>>2];i[c+4>>2]=d;i[e+88>>2]=1065353216;i[e+92>>2]=-1;i[e+80>>2]=-1;i[e+84>>2]=-1;i[e+72>>2]=1;i[e+76>>2]=-1;i[e+44>>2]=9160;mf(e+96|0);i[a>>2]=e}function ue(a,b,c,d){var e=0,f=0;e=ho(128);i[e+4>>2]=b;b=i[c+4>>2];i[e+8>>2]=i[c>>2];i[e+12>>2]=b;b=i[c+12>>2];i[e+16>>2]=i[c+8>>2];i[e+20>>2]=b;i[e+24>>2]=i[c+16>>2];b=i[d+4>>2];i[e+28>>2]=i[d>>2];i[e+32>>2]=b;b=d+8|0;c=b;f=i[c+4>>2];i[e+36>>2]=i[c>>2];i[e+40>>2]=f;i[e+48>>2]=0;i[e+52>>2]=0;i[e>>2]=7292;c=i[d+4>>2];i[e+56>>2]=i[d>>2];i[e+60>>2]=c;d=i[b+4>>2];c=e- -64|0;i[c>>2]=i[b>>2];i[c+4>>2]=d;i[e+88>>2]=1065353216;i[e+92>>2]=-1;i[e+80>>2]=-1;i[e+84>>2]=-1;i[e+72>>2]=1;i[e+76>>2]=-1;i[e+44>>2]=7552;mf(e+96|0);i[a>>2]=e}function yl(a,b,c,d,e,f){var g=0,h=0,k=0,l=0,m=0;g=F-16|0;F=g;a:{if(!a){b=-1;break a}h=ho(96);Ga(Ea(h),b,d<<24>>24,f,c);i[g>>2]=h;i[g+8>>2]=0;h=zm(a,g);b=i[g>>2];i[g>>2]=0;if(b){Wb(b)}if(c){k=i[i[a+8>>2]+(h<<2)>>2];b=0;while(1){f=b;l=i[i[k>>2]>>2];if(!j[k+84|0]){f=i[i[k+68>>2]+(b<<2)>>2]}m=f;f=i[k+40>>2];hp(o(m,f)+l|0,(o(b,d)<<1)+e|0,f);b=b+1|0;if((c|0)!=(b|0)){continue}break}}d=i[a+80>>2];b:{c:{if(!d){i[a+80>>2]=c;break c}b=-1;if((c|0)!=(d|0)){break b}}b=h}a=i[g+8>>2];i[g+8>>2]=0;if(!a){break a}Wb(a)}F=g+16|0;return b}function wl(a,b,c,d,e,f){var g=0,h=0,k=0,l=0,m=0;g=F-16|0;F=g;a:{if(!a){b=-1;break a}h=ho(96);Ga(Ea(h),b,d<<24>>24,f,c);i[g>>2]=h;i[g+8>>2]=0;h=zm(a,g);b=i[g>>2];i[g>>2]=0;if(b){Wb(b)}if(c){k=i[i[a+8>>2]+(h<<2)>>2];b=0;while(1){f=b;l=i[i[k>>2]>>2];if(!j[k+84|0]){f=i[i[k+68>>2]+(b<<2)>>2]}m=f;f=i[k+40>>2];hp(o(m,f)+l|0,(o(b,d)<<2)+e|0,f);b=b+1|0;if((c|0)!=(b|0)){continue}break}}d=i[a+80>>2];b:{c:{if(!d){i[a+80>>2]=c;break c}b=-1;if((c|0)!=(d|0)){break b}}b=h}a=i[g+8>>2];i[g+8>>2]=0;if(!a){break a}Wb(a)}F=g+16|0;return b}function Kg(a,b,c,d,e){var f=0,g=0,h=0,j=0;h=Ng(a,b,c,e);f=i[e>>2];e=i[f>>2];a:{f=i[f+4>>2]-e>>3;g=i[d>>2];if(f>>>0<=g>>>0){break a}j=i[c>>2];if(f>>>0<=j>>>0){break a}if(l[e+(g<<3)>>2]>2]){i[c>>2]=g;i[d>>2]=j;d=i[c>>2];if(f>>>0<=d>>>0){break a}g=i[b>>2];if(f>>>0<=g>>>0){break a}if(l[e+(d<<3)>>2]>=l[e+(g<<3)>>2]){return h+1|0}i[b>>2]=d;i[c>>2]=g;c=i[b>>2];if(f>>>0<=c>>>0){break a}d=i[a>>2];if(f>>>0<=d>>>0){break a}if(l[e+(c<<3)>>2]>=l[e+(d<<3)>>2]){return h+2|0}i[a>>2]=c;i[b>>2]=d;h=h+3|0}return h}Io();x()}function xl(a,b,c,d,e,f){var g=0,h=0,k=0,l=0,m=0;g=F-16|0;F=g;a:{if(!a){b=-1;break a}h=ho(96);Ga(Ea(h),b,d<<24>>24,f,c);i[g>>2]=h;i[g+8>>2]=0;h=zm(a,g);b=i[g>>2];i[g>>2]=0;if(b){Wb(b)}if(c){k=i[i[a+8>>2]+(h<<2)>>2];b=0;while(1){f=b;l=i[i[k>>2]>>2];if(!j[k+84|0]){f=i[i[k+68>>2]+(b<<2)>>2]}m=f;f=i[k+40>>2];hp(o(m,f)+l|0,o(b,d)+e|0,f);b=b+1|0;if((c|0)!=(b|0)){continue}break}}d=i[a+80>>2];b:{c:{if(!d){i[a+80>>2]=c;break c}b=-1;if((c|0)!=(d|0)){break b}}b=h}a=i[g+8>>2];i[g+8>>2]=0;if(!a){break a}Wb(a)}F=g+16|0;return b}function pd(a,b,c,d,e){var f=0,g=0,h=0,j=0;f=F-32|0;F=f;h=i[i[i[b+4>>2]+8>>2]+(d<<2)>>2];a:{b:{if((I[i[i[b>>2]+8>>2]](b)|0)!=1|c+ -1>>>0>5){break b}j=I[i[i[b>>2]+52>>2]](b)|0;g=I[i[i[b>>2]+60>>2]](b,d)|0;if(!(g?j:0)){i[a>>2]=0;break a}d=I[i[i[b>>2]+56>>2]](b,d)|0;if(d){b=i[b+56>>2];i[f+20>>2]=d;i[f+16>>2]=b;i[f+28>>2]=g;i[f+24>>2]=g+12;qd(a,c,h,e,f+16|0);if(!i[a>>2]){break b}break a}b=i[b+56>>2];i[f+20>>2]=j;i[f+16>>2]=b;i[f+28>>2]=g;i[f+24>>2]=g+12;rd(a,c,h,e,f+16|0);if(i[a>>2]){break a}}i[a>>2]=0}F=f+32|0}function Yo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Qo(a,i[b+8>>2],e)){Xo(b,c,d);return}a:{if(Qo(a,i[b>>2],e)){if(!(i[b+20>>2]!=(c|0)?i[b+16>>2]!=(c|0):0)){if((d|0)!=1){break a}i[b+32>>2]=1;return}i[b+32>>2]=d;b:{if(i[b+44>>2]==4){break b}h[b+52>>1]=0;a=i[a+8>>2];I[i[i[a>>2]+20>>2]](a,b,c,c,1,e);if(j[b+53|0]){i[b+44>>2]=3;if(!j[b+52|0]){break b}break a}i[b+44>>2]=4}i[b+20>>2]=c;i[b+40>>2]=i[b+40>>2]+1;if(i[b+36>>2]!=1|i[b+24>>2]!=2){break a}g[b+54|0]=1;return}a=i[a+8>>2];I[i[i[a>>2]+24>>2]](a,b,c,d,e)}}function vn(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;a:{if(f&64){c=f+ -64|0;b=c&31;if(32<=(c&63)>>>0){c=0;b=e>>>b|0}else{c=e>>>b|0;b=((1<>>b}d=0;e=0;break a}if(!f){break a}h=e;j=d;k=64-f|0;g=k&31;if(32<=(k&63)>>>0){h=j<>>32-g|h<>>0){g=0;b=c>>>b|0}else{g=c>>>b|0;b=((1<>>b}b=k|b;c=g|h;g=d;d=f&31;if(32<=(f&63)>>>0){h=0;d=e>>>d|0}else{h=e>>>d|0;d=((1<>>d}e=h}i[a>>2]=b;i[a+4>>2]=c;i[a+8>>2]=d;i[a+12>>2]=e}function rm(a,b,c){var d=0,e=0,f=0,h=0;d=F-48|0;F=d;e=uc(a,b);if((e|0)!=(a+4|0)){pm(a,e)}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;e=i[c>>2];f=i[c+4>>2]-e|0;if(f){Qj(d,f);e=i[c>>2];c=i[d>>2]}else{c=0}hp(c,e,f);f=ro(d+16|0,b);i[d+36>>2]=0;i[d+28>>2]=0;i[d+32>>2]=0;e=0;b=i[d>>2];c=i[d+4>>2]-b|0;h=0;a:{if(!c){break a}Qj(d+28|0,c);e=i[d+28>>2];b=i[d>>2];h=i[d+4>>2]-b|0}c=h;hp(e,b,c);qm(d+40|0,a,f,d+16|0);a=i[d+28>>2];if(a){i[d+32>>2]=a;bp(a)}if(g[d+27|0]<=-1){bp(i[d+16>>2])}a=i[d>>2];if(a){i[d+4>>2]=a;bp(a)}F=d+48|0}function rn(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;h=-1;f=d&2147483647;i=f;g=c;a:{if(!c&(f|0)==2147418112?a|b:(f|0)==2147418112&c>>>0>0|f>>>0>2147418112){break a}f=e&2147483647;j=f;if((f|0)==2147418112?0:f>>>0>2147418112){break a}if(!(a|g|(i|j|b))){return 0}g=d&e;if((g|0)>0?1:(g|0)>=0){if(!c&(d|0)==(e|0)?!b&a>>>0<0|b>>>0<0:(d|0)<(e|0)?1:(d|0)<=(e|0)?c>>>0<0:0){break a}return(a|c)!=0|(d^e|b)!=0}if(!c&(d|0)==(e|0)?!b&a>>>0>0|b>>>0>0:(d|0)>(e|0)?1:(d|0)>=(e|0)?c>>>0>0:0){break a}h=(a|c)!=0|(d^e|b)!=0}return h}function bd(a,b){var c=0,d=0;c=F-32|0;F=c;a:{b:{if(i[a+8>>2]<<5>>>0>=b>>>0){break b}i[c+24>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;if((b|0)<=-1){break a}b=(b+ -1>>>5|0)+1|0;d=ho(b<<2);i[c+24>>2]=b;i[c+20>>2]=0;i[c+16>>2]=d;b=i[a>>2];i[c+12>>2]=0;i[c+8>>2]=b;d=i[a+4>>2];i[c+4>>2]=d&31;i[c>>2]=b+(d>>>3&536870908);cd(c+16|0,c+8|0,c);b=i[a>>2];i[a>>2]=i[c+16>>2];i[c+16>>2]=b;d=i[a+4>>2];i[a+4>>2]=i[c+20>>2];i[c+20>>2]=d;d=i[a+8>>2];i[a+8>>2]=i[c+24>>2];i[c+24>>2]=d;if(!b){break b}bp(b)}F=c+32|0;return}Ho();x()}function om(a,b,c){var d=0,e=0,f=0,h=0;d=F-48|0;F=d;e=uc(a,b);if((e|0)!=(a+4|0)){pm(a,e)}e=ho(4);i[d>>2]=e;f=e+4|0;i[d+8>>2]=f;i[d+4>>2]=f;c=i[c>>2];g[e|0]=c;g[e+1|0]=c>>>8;g[e+2|0]=c>>>16;g[e+3|0]=c>>>24;f=ro(d+16|0,b);i[d+36>>2]=0;i[d+28>>2]=0;i[d+32>>2]=0;e=0;b=i[d>>2];c=i[d+4>>2]-b|0;h=0;a:{if(!c){break a}Qj(d+28|0,c);e=i[d+28>>2];b=i[d>>2];h=i[d+4>>2]-b|0}c=h;hp(e,b,c);qm(d+40|0,a,f,d+16|0);a=i[d+28>>2];if(a){i[d+32>>2]=a;bp(a)}if(g[d+27|0]<=-1){bp(i[d+16>>2])}a=i[d>>2];if(a){bp(a)}F=d+48|0}function fm(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;c=F-16|0;F=c;d=i[b+100>>2];h=i[b+96>>2];i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=d-h|0;e=(d|0)/12|0;a:{if(d){if(e>>>0>=357913942){break a}f=ho(d);i[c>>2]=f;g=f+o(e,12)|0;i[c+8>>2]=g;b=0;f=ip(f,0,d-((d+ -12>>>0)%12|0)|0);i[c+4>>2]=g;g=e>>>0>1?e:1;while(1){e=o(b,12);d=e+h|0;j=i[d+4>>2];k=i[d>>2];e=e+f|0;i[e+8>>2]=i[d+8>>2];i[e>>2]=k;i[e+4>>2]=j;b=b+1|0;if((g|0)!=(b|0)){continue}break}}Jl(a,c);a=i[c>>2];if(a){i[c+4>>2]=a;bp(a)}F=c+16|0;return}Ho();x()}function sn(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;a:{if(f&64){d=b;e=f+ -64|0;b=e&31;if(32<=(e&63)>>>0){e=d<>>32-b|c<>>0){h=g<>>32-d|e<>>0){f=0;d=d>>>e|0}else{f=d>>>e|0;d=((1<>>e}d=k|d;e=f|h;f=b;b=j&31;if(32<=(j&63)>>>0){h=f<>>32-b|c<>2]=b;i[a+4>>2]=c;i[a+8>>2]=d;i[a+12>>2]=e}function te(a,b,c,d){var e=0,f=0,g=0,h=0;e=F-32|0;F=e;g=i[i[i[b+4>>2]+8>>2]+(c<<2)>>2];a:{b:{if((I[i[i[b>>2]+8>>2]](b)|0)!=1){break b}h=I[i[i[b>>2]+52>>2]](b)|0;f=I[i[i[b>>2]+60>>2]](b,c)|0;if(!(f?h:0)){i[a>>2]=0;break a}c=I[i[i[b>>2]+56>>2]](b,c)|0;if(c){b=i[b+56>>2];i[e+20>>2]=c;i[e+16>>2]=b;i[e+28>>2]=f;i[e+24>>2]=f+12;ue(a,g,d,e+16|0);if(!i[a>>2]){break b}break a}b=i[b+56>>2];i[e+20>>2]=h;i[e+16>>2]=b;i[e+28>>2]=f;i[e+24>>2]=f+12;ve(a,g,d,e+16|0);if(i[a>>2]){break a}}i[a>>2]=0}F=e+32|0}function oc(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}e=o(b,12);b=ho(e);i[a>>2]=b;i[a+4>>2]=b;f=b+e|0;i[a+8>>2]=f;g=i[c>>2];d=i[c+4>>2]-g|0;h=d>>2;j=h>>>0<1073741824;k=(d|0)<1;l=d>>>2<<2;while(1){i[b+8>>2]=0;i[b>>2]=0;i[b+4>>2]=0;if(d){if(!j){break a}c=ho(d);i[b>>2]=c;i[b+4>>2]=c;i[b+8>>2]=c+(h<<2);e=b;if(!k){c=hp(c,g,d)+l|0}i[e+4>>2]=c}b=b+12|0;if((f|0)!=(b|0)){continue}break}i[a+4>>2]=f}return}Ho();x()}Ho();x()}function Mg(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0;e=a+8|0;Ng(a,a+4|0,e,c);a:{d=a+12|0;if((d|0)!=(b|0)){c=i[c>>2];f=i[c>>2];g=i[c+4>>2]-f>>3;while(1){h=i[d>>2];if(g>>>0<=h>>>0){break a}j=d;d=i[e>>2];if(g>>>0<=d>>>0){break a}k=j;m=(h<<3)+f|0;if(l[m>>2]>2]){while(1){b:{i[k>>2]=d;c=e;if((c|0)==(a|0)){c=a;break b}e=c+ -4|0;d=i[e>>2];if(g>>>0<=d>>>0){break a}k=c;if(l[m>>2]>2]){continue}}break}i[c>>2]=h}e=j;d=e+4|0;if((d|0)!=(b|0)){continue}break}}return}Io();x()}function vj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;a:{c=i[a+8>>2];b:{if((c|0)<0){break b}d=i[a+4>>2];b=i[d>>2];e=i[d+4>>2]-b>>2;c:{if(c>>>0>e>>>0){wj(d,c-e|0);f=i[a+8>>2];break c}f=c;if(c>>>0>=e>>>0){break c}i[d+4>>2]=b+(c<<2);f=c}g=f;if((f|0)<1){break b}a=i[a+4>>2];b=i[a+4>>2];d=i[a>>2];a=b-d|0;e=(a|0)>-1?a:-1;b=d-b|0;b=o((e|0)<1?e:1,((b|0)>(a|0)?b:a)>>>2|0);a=0;while(1){if((a|0)==(b|0)){break a}i[d+(a<<2)>>2]=a;a=a+1|0;if((a|0)<(g|0)){continue}break}}return(c^-1)>>>31|0}Io();x()}function Vl(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=16864;b=i[a+68>>2];if(b){i[a+72>>2]=b;bp(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;bp(b)}b=i[a+44>>2];if(b){i[a+48>>2]=b;bp(b)}b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}b=i[a+20>>2];if(b){i[a+24>>2]=b;bp(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){Wb(b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;bp(b)}b=i[a+4>>2];i[a+4>>2]=0;if(b){Al(b)}return a|0}function Bl(a,b,c){var d=0,e=0,f=0;e=F-16|0;F=e;a:{if(!c|(!a|(b|0)<0)){break a}f=i[a+8>>2];if(i[a+12>>2]-f>>2<=(b|0)){break a}if(!i[a+4>>2]){d=ho(36);i[d+4>>2]=0;i[d+8>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+32>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d>>2]=d+4;i[d+12>>2]=d+16;i[a+4>>2]=d}d=i[i[(b<<2)+f>>2]+60>>2];b=ho(28);lm(b,c);i[b+24>>2]=d;a=i[a+4>>2];i[e+8>>2]=b;jm(a,e+8|0);a=i[e+8>>2];i[e+8>>2]=0;d=1;if(!a){break a}yk(a+12|0,i[a+16>>2]);zk(a,i[a+4>>2]);bp(a)}F=e+16|0;return d}function Wc(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=2032;b=i[a+72>>2];i[a+72>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}b=i[a+60>>2];if(b){i[a- -64>>2]=b;bp(b)}b=i[a+48>>2];if(b){bp(b)}d=i[a+36>>2];if(d){b=d;c=i[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+36>>2]}b=e;i[a+40>>2]=d;bp(b)}i[a>>2]=1432;b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;bp(b)}return a|0}function zi(a){var b=0,c=0,d=0,e=0,f=0;d=a+32|0;sf(a,d);c=i[a+80>>2];a:{if(!c){break a}b=1;if(i[a+84>>2]<1){break a}sf(c,d);if(i[a+84>>2]<2){break a}while(1){sf(i[a+80>>2]+(b<<5)|0,d);b=b+1|0;if((b|0)>2]){continue}break}}b=i[a+136>>2];if((b|0)!=i[a+140>>2]){c=0;while(1){e=o(c,12);b=e+b|0;Jb(i[b+4>>2]-i[b>>2]>>2,d);b=i[a+136>>2];f=e+b|0;e=i[f>>2];f=i[f+4>>2]-e|0;if(f){kg(e,f>>2,1,0,d);b=i[a+136>>2]}c=c+1|0;if(c>>>0<(i[a+140>>2]-b|0)/12>>>0){continue}break}}}function Sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a=i[a+4>>2];if(a){c=j[b+11|0];d=c<<24>>24<0;g=d?i[b>>2]:b;b=d?i[b+4>>2]:c;while(1){c=j[a+27|0];d=c<<24>>24<0;c=d?i[a+20>>2]:c;h=c>>>0>>0;a:{b:{f=h?c:b;c:{if(f){e=a+16|0;d=d?i[e>>2]:e;e=Km(g,d,f);d:{if(!e){if(b>>>0>=c>>>0){break d}break a}if((e|0)<=-1){break a}}c=Km(d,g,f);if(!c){break c}if((c|0)<=-1){break b}return 1}if(b>>>0>>0){break a}}if(h){break b}return 1}a=a+4|0}a=i[a>>2];if(a){continue}break}}return 0}function wj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ip(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=ho(d<<2)}b=b<<2;b=ip(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){hp(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){bp(f)}return}Ho();x()}za(13344);x()}function Ai(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ip(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=ho(d<<2)}b=b<<2;b=ip(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){hp(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){bp(f)}return}Ho();x()}za(11708);x()}function ka(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ip(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=ho(d<<2)}b=b<<2;b=ip(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){hp(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){bp(f)}return}Ho();x()}za(1244);x()}function Bd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ip(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=ho(d<<2)}b=b<<2;b=ip(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){hp(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){bp(f)}return}Ho();x()}za(2400);x()}function Vj(a,b,c,d){var e=0,f=0,h=0;a:{if((c|0)<0?1:(c|0)<=0?b>>>0<1:0){break a}e=i[a+20>>2];if((e|0)>0?1:(e|0)>=0?l[a+16>>2]>0:0){break a}g[a+24|0]=d;e=a;f=a;b=b+7|0;if(b>>>0<7){c=c+1|0}c=vp(b,c,8,0);i[f+16>>2]=c;i[e+20>>2]=H;e=i[a>>2];b=i[a+4>>2]-e|0;h=c;c=b;f=c+8|0;d=d?f:c;f=h+d|0;c=f;b:{if(b>>>0>>0){Qj(a,c-b|0);e=i[a>>2];break b}if(b>>>0<=c>>>0){break b}i[a+4>>2]=c+e}b=ho(8);i[b+4>>2]=0;i[b>>2]=d+e;c=i[a+12>>2];i[a+12>>2]=b;if(!c){break a}bp(c)}}function ig(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=ip(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>3;d=g+b|0;if(d>>>0<536870912){c=0;g=g<<3;e=e-f|0;j=e>>2;d=e>>3>>>0<268435455?j>>>0>>0?d:j:536870911;if(d){if(d>>>0>=536870912){break a}c=ho(d<<3)}b=b<<3;b=ip(c+g|0,0,b)+b|0;d=(d<<3)+c|0;if((h|0)>=1){hp(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){bp(f)}return}Ho();x()}za(10734);x()}function Di(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=i[a+4>>2];e=i[a+8>>2];if(c>>>0>>0){i[c>>2]=i[b>>2];i[a+4>>2]=c+4;return}a:{f=i[a>>2];g=c-f|0;c=g>>2;d=c+1|0;if(d>>>0<1073741824){h=c<<2;e=e-f|0;c=e>>1;d=e>>2>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}c=ho(d<<2)}e=h+c|0;i[e>>2]=i[b>>2];b=c+(d<<2)|0;d=e+4|0;if((g|0)>=1){hp(c,f,g)}i[a+8>>2]=b;i[a+4>>2]=d;i[a>>2]=c;if(f){bp(f)}return}Ho();x()}za(11708);x()}function un(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=F-16|0;F=e;f=(Fp(b),Bp(2));c=f&2147483647;a:{if(c+ -8388608>>>0<=2130706431){d=c;c=c>>>7|0;d=d<<25;c=c+1065353216|0;g=d;c=d>>>0<0?c+1|0:c;break a}if(c>>>0>=2139095040){c=f;d=c>>>7|0;g=c<<25;c=d|2147418112;break a}if(!c){c=0;break a}d=c;c=r(c);sn(e,d,0,0,0,c+81|0);h=i[e>>2];j=i[e+4>>2];g=i[e+8>>2];c=i[e+12>>2]^65536|16265-c<<16}i[a>>2]=h;i[a+4>>2]=j;i[a+8>>2]=g;i[a+12>>2]=f&-2147483648|c;F=e+16|0}function ei(a){var b=0,c=0,d=0,e=0;pf(a);c=i[a+84>>2];a:{if((c|0)<1){break a}b=c<<5;d=ho((c|0)!=(c&134217727)?-1:b|4);i[d>>2]=c;d=d+4|0;c=d+b|0;b=d;while(1){b=mf(b)+32|0;if((c|0)!=(b|0)){continue}break}e=i[a+80>>2];i[a+80>>2]=d;if(e){c=e+ -4|0;d=i[c>>2];if(d){b=e+(d<<5)|0;while(1){b=nf(b+ -32|0);if((e|0)!=(b|0)){continue}break}}bp(c)}if(i[a+84>>2]<1){break a}b=0;while(1){pf(i[a+80>>2]+(b<<5)|0);b=b+1|0;if((b|0)>2]){continue}break}}}function Om(a,b){a:{if(a){if(b>>>0<=127){break a}b:{if(!i[i[4790]>>2]){if((b&-128)==57216){break a}break b}if(b>>>0<=2047){g[a+1|0]=b&63|128;g[a|0]=b>>>6|192;return 2}if(!((b&-8192)!=57344?b>>>0>=55296:0)){g[a+2|0]=b&63|128;g[a|0]=b>>>12|224;g[a+1|0]=b>>>6&63|128;return 3}if(b+ -65536>>>0<=1048575){g[a+3|0]=b&63|128;g[a|0]=b>>>18|240;g[a+2|0]=b>>>6&63|128;g[a+1|0]=b>>>12&63|128;return 4}}i[4805]=25;a=-1}else{a=1}return a}g[a|0]=b;return 1}function md(a,b,c,d){var e=0,f=0,h=0,j=0;e=F-80|0;F=e;f=Ba(e+16|0);h=i[i[a+8>>2]+56>>2];j=c<<24>>24;c=o(Sj(5),c);Ca(f,h,0,j,5,c,c>>31);c=ho(96);f=Fa(c,f);i[e+8>>2]=c;Ha(f,b);i[e+8>>2]=0;b=i[a+32>>2];i[a+32>>2]=c;if(b){Wb(b)}a:{if(!d){break a}a=i[a+32>>2];g[a+84|0]=0;c=i[a+68>>2];b=i[a+72>>2]-c>>2;if(b>>>0>>0){Xa(a+68|0,d-b|0,2396);break a}if(b>>>0<=d>>>0){break a}i[a+72>>2]=c+(d<<2)}a=i[e+8>>2];i[e+8>>2]=0;if(a){Wb(a)}F=e+80|0}function ta(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=F-16|0;F=d;e=i[a+4>>2];a:{if((e|0)==-1){break a}c=i[b+20>>2];if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>0:0){break a}ca(b,i[b+4>>2],i[a+8>>2],i[a+12>>2]);c=i[b+20>>2];if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>=1:0){break a}c=a+20|0;ca(b,i[b+4>>2],c,c+4|0);c=i[b+20>>2];f=i[b+16>>2];g[d+15|0]=i[a+4>>2];if((c|0)>0?1:(c|0)>=0?f>>>0>0:0){break a}ca(b,i[b+4>>2],d+15|0,d+16|0)}F=d+16|0;return(e|0)!=-1|0}function Ui(a,b){var c=0,d=0,e=0,f=0,g=0;d=i[a+4>>2];a=i[d+4>>2];if((a|0)!=i[d+8>>2]){i[a>>2]=b;i[d+4>>2]=a+4;return}a:{f=i[d>>2];g=a-f|0;e=g>>2;c=e+1|0;if(c>>>0<1073741824){a=g>>1;c=e>>>0<536870911?a>>>0>>0?c:a:1073741823;a=0;b:{if(!c){break b}if(c>>>0>=1073741824){break a}a=ho(c<<2)}e=a+(e<<2)|0;i[e>>2]=b;b=a+(c<<2)|0;c=e+4|0;if((g|0)>=1){hp(a,f,g)}i[d+8>>2]=b;i[d+4>>2]=c;i[d>>2]=a;if(f){bp(f)}return}Ho();x()}za(11708);x()}function Pl(a,b){var c=0,d=0,e=0,f=0,g=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){i[c>>2]=i[b>>2];i[a+4>>2]=c+4;return}a:{f=i[a>>2];g=c-f|0;e=g>>2;d=e+1|0;if(d>>>0<1073741824){c=g>>1;d=e>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}c=ho(d<<2)}e=c+(e<<2)|0;i[e>>2]=i[b>>2];b=c+(d<<2)|0;d=e+4|0;if((g|0)>=1){hp(c,f,g)}i[a+8>>2]=b;i[a+4>>2]=d;i[a>>2]=c;if(f){bp(f)}return}Ho();x()}za(16516);x()}function Tb(a,b,c,d){var e=0,f=0,h=0,k=p(0);e=F-32|0;F=e;h=a+4|0;a=uc(a,b);a:{if((h|0)==(a|0)){break a}f=ro(e+16|0,a+28|0);b=g[f+11|0];b:{c:{if((b|0)<=-1){if(!i[f+4>>2]){break b}a=i[f>>2];break c}a=e+16|0;if(!b){break a}}if((c|0)>=1){b=0;while(1){d:{k=nn(a,e+12|0);h=a;a=i[e+12>>2];if((h|0)==(a|0)){break d}m[(b<<2)+d>>2]=k;b=b+1|0;if((c|0)!=(b|0)){continue}}break}b=j[f+11|0]}if(b<<24>>24>-1){break a}}bp(i[f>>2])}F=e+32|0}function Cj(a,b,c){var d=0,e=0,f=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;a:{b:{if(!b){break b}if((b|0)<=-1){break a}e=b+ -1>>>5|0;f=e+1|0;d=ho(f<<2);i[a+8>>2]=f;i[a>>2]=d;f=j[c|0];i[a+4>>2]=b;i[(b>>>0<33?d:d+(e<<2)|0)>>2]=0;c=b>>>5|0;e=c<<2;if(f){d=ip(d,255,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;i[c>>2]=i[c>>2]|-1>>>32-b;return a}d=ip(d,0,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;i[c>>2]=i[c>>2]&(-1>>>32-b^-1)}return a}Ho();x()}function mm(a,b,c,d){var e=0,f=0,g=0,h=0,j=0;f=F-16|0;F=f;c=Nf(a,b,f+12|0,f+8|0,c);if(!i[c>>2]){b=ho(40);ro(b+16|0,d);i[b+36>>2]=0;i[b+28>>2]=0;i[b+32>>2]=0;g=i[d+12>>2];h=i[d+16>>2]-g|0;e=0;a:{if(!h){break a}e=b+28|0;Qj(e,h);g=i[d+12>>2];j=i[d+16>>2]-g|0;e=i[e>>2]}hp(e,g,j);i[b+8>>2]=i[f+12>>2];i[b>>2]=0;i[b+4>>2]=0;i[c>>2]=b;d=i[i[a>>2]>>2];if(d){i[a>>2]=d;b=i[c>>2]}Kf(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}F=f+16|0}function Zj(a,b,c){var d=0,e=0,f=0,h=0;e=F-16|0;F=e;Co(e,c);f=Of(a,e+12|0,b);d=i[f>>2];if(!d){d=ho(40);ro(d+16|0,b);i[d+36>>2]=0;i[d+28>>2]=0;i[d+32>>2]=0;i[d+8>>2]=i[e+12>>2];i[d>>2]=0;i[d+4>>2]=0;i[f>>2]=d;b=i[i[a>>2]>>2];h=d;a:{if(!b){break a}i[a>>2]=b;h=i[f>>2]}b=h;Kf(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}a=d+28|0;if(g[d+39|0]<=-1){bp(i[a>>2])}b=i[e+4>>2];i[a>>2]=i[e>>2];i[a+4>>2]=b;i[a+8>>2]=i[e+8>>2];F=e+16|0}function zb(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){Ab(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}Ab(a,b)}}function xb(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){yb(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}yb(a,b)}}function rb(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){sb(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}sb(a,b)}}function pb(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){qb(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}qb(a,b)}}function nb(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){ob(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}ob(a,b)}}function lb(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){mb(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}mb(a,b)}}function jj(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){kj(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}kj(a,b)}}function fb(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){gb(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}gb(a,b)}}function db(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){eb(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}eb(a,b)}}function bb(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){cb(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}cb(a,b)}}function Nm(a,b){var c=0;c=(b|0)!=0;a:{b:{c:{if(!b|!(a&3)){break c}while(1){if(!j[a|0]){break b}a=a+1|0;b=b+ -1|0;c=(b|0)!=0;if(!b){break c}if(a&3){continue}break}}if(!c){break a}}d:{if(!j[a|0]|b>>>0<4){break d}while(1){c=i[a>>2];if((c^-1)&c+ -16843009&-2139062144){break d}a=a+4|0;b=b+ -4|0;if(b>>>0>3){continue}break}}if(!b){break a}while(1){if(!j[a|0]){return a}a=a+1|0;b=b+ -1|0;if(b){continue}break}}return 0}function Gl(a,b,c,d){var e=0,f=0,h=0;f=F-48|0;F=f;a:{if(!b){a=0;break a}e=Tj(f+16|0);h=0;b:{if((xm(b,0)|0)==-1){break b}if(c){h=0;if(!(I[i[i[b>>2]+16>>2]](b)|0)){break b}I[i[i[b>>2]+20>>2]](b)}uf(f,a,b,e);a=i[f>>2];if(g[f+15|0]<=-1){bp(i[f+4>>2])}h=0;if(a){break b}rl(d,i[e>>2],i[e+4>>2]);h=i[e+4>>2]-i[e>>2]|0}a=h;b=i[e+12>>2];i[e+12>>2]=0;if(b){bp(b)}b=i[e>>2];if(!b){break a}i[e+4>>2]=b;bp(b)}F=f+48|0;return a}function Fm(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){Jm(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+20>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}Jm(a,b)}}function Db(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){Eb(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}Eb(a,b)}}function Bb(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){Cb(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}Cb(a,b)}}function $a(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=Fn(b)}d=i[a+4>>2];if(c>>>0>d>>>0){ab(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(xp(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=Fn(b)}b=c>>>0>>0?b:c;if(b>>>0>=d>>>0){break b}ab(a,b)}}function Yj(a,b,c){var d=0,e=0,f=0;d=F-16|0;F=d;Bo(d,c);e=Of(a,d+12|0,b);c=i[e>>2];if(!c){c=ho(40);ro(c+16|0,b);i[c+36>>2]=0;i[c+28>>2]=0;i[c+32>>2]=0;i[c+8>>2]=i[d+12>>2];i[c>>2]=0;i[c+4>>2]=0;i[e>>2]=c;b=i[i[a>>2]>>2];f=c;a:{if(!b){break a}i[a>>2]=b;f=i[e>>2]}b=f;Kf(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}a=c+28|0;if(g[c+39|0]<=-1){bp(i[a>>2])}b=i[d+4>>2];i[a>>2]=i[d>>2];i[a+4>>2]=b;i[a+8>>2]=i[d+8>>2];F=d+16|0}function Hh(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=10936;b=i[a+64>>2];i[a+64>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=13484;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}b=i[a+20>>2];if(b){i[a+24>>2]=b;bp(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;bp(b)}return a|0}function Jl(a,b){var c=0,d=0,e=0;d=F-16|0;F=d;e=ho(88);c=e;i[c>>2]=0;i[c+4>>2]=0;i[c+64>>2]=0;i[c+68>>2]=0;i[c+56>>2]=0;i[c+48>>2]=0;i[c+52>>2]=0;i[c+40>>2]=0;i[c+44>>2]=0;i[c+32>>2]=0;i[c+36>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+72>>2]=0;i[c+76>>2]=0;i[c+80>>2]=0;i[c+84>>2]=0;i[c+60>>2]=c;a:{if(Kl(c,b)){i[a>>2]=e;break a}i[a>>2]=0;i[d+8>>2]=0;bi(e)}F=d+16|0}function Ih(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=10936;b=i[a+64>>2];i[a+64>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=13484;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}b=i[a+20>>2];if(b){i[a+24>>2]=b;bp(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;bp(b)}bp(a)}function Fl(a,b,c){var d=0,e=0,f=0;e=F-48|0;F=e;a:{if(!b){a=0;break a}d=Tj(e+16|0);f=0;b:{if((xm(b,0)|0)==-1){break b}f=0;if(!(I[i[i[b>>2]+16>>2]](b)|0)){break b}I[i[i[b>>2]+20>>2]](b);Af(e,a,b,d);a=i[e>>2];if(g[e+15|0]<=-1){bp(i[e+4>>2])}f=0;if(a){break b}rl(c,i[d>>2],i[d+4>>2]);f=i[d+4>>2]-i[d>>2]|0}a=f;b=i[d+12>>2];i[d+12>>2]=0;if(b){bp(b)}b=i[d>>2];if(!b){break a}i[d+4>>2]=b;bp(b)}F=e+48|0;return a}function kc(a){pf(a);pf(a+32|0);pf(a- -64|0);pf(a+96|0);pf(a+128|0);pf(a+160|0);pf(a+192|0);pf(a+224|0);pf(a+256|0);pf(a+288|0);pf(a+320|0);pf(a+352|0);pf(a+384|0);pf(a+416|0);pf(a+448|0);pf(a+480|0);pf(a+512|0);pf(a+544|0);pf(a+576|0);pf(a+608|0);pf(a+640|0);pf(a+672|0);pf(a+704|0);pf(a+736|0);pf(a+768|0);pf(a+800|0);pf(a+832|0);pf(a+864|0);pf(a+896|0);pf(a+928|0);pf(a+960|0);pf(a+992|0);pf(a+1024|0)}function vo(a,b,c,d,e,f,h,j){var k=0,l=0,m=0;k=F-16|0;F=k;if((b^-1)+ -17>>>0>=c>>>0){l=Yn(a);a:{if(2147483623>b>>>0){i[k+8>>2]=b<<1;i[k+12>>2]=b+c;c=ao(i[Mn(k+12|0,k+8|0)>>2]);break a}c=-18}m=c+1|0;c=bo(m);if(e){Ln(c,l,e)}if(h){Ln(c+e|0,j,h)}d=d-f|0;j=d-e|0;if(j){Ln((c+e|0)+h|0,(e+l|0)+f|0,j)}if((b|0)!=10){bp(l)}co(a,c);eo(a,m);b=a;a=d+h|0;aa(b,a);g[k+7|0]=0;_n(a+c|0,k+7|0);F=k+16|0;return}qo();x()}function on(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=F-160|0;F=e;ip(e+16|0,0,144);i[e+92>>2]=-1;i[e+60>>2]=b;i[e+24>>2]=-1;i[e+20>>2]=b;en(e+16|0);jn(e,e+16|0,d);d=i[e+8>>2];g=i[e+12>>2];h=i[e>>2];j=i[e+4>>2];if(c){k=c;f=b;b=i[e+20>>2]-i[e+24>>2]|0;l=b;c=b+i[e+136>>2]|0;b=i[e+140>>2]+(b>>31)|0;b=c>>>0>>0?b+1|0:b;i[k>>2]=!(b|c)?f:f+c|0}i[a>>2]=h;i[a+4>>2]=j;i[a+8>>2]=d;i[a+12>>2]=g;F=e+160|0}function Af(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=F-96|0;F=e;f=Rf(e+40|0,c);vf(e,b,c);Vf(f,e);kd(e+24|0,i[e+28>>2]);wf(e+12|0,i[e+16>>2]);kd(e,i[e+4>>2]);Sf(a,f,d);if(!i[a>>2]){if(g[a+15|0]<=-1){bp(i[a+4>>2])}i[b+40>>2]=i[f+40>>2];i[b+44>>2]=i[f+44>>2];i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0}i[f>>2]=10308;kd(f+28|0,i[f+32>>2]);wf(f+16|0,i[f+20>>2]);kd(f+4|0,i[f+8>>2]);F=e+96|0}function nc(a){mf(a);mf(a+32|0);mf(a- -64|0);mf(a+96|0);mf(a+128|0);mf(a+160|0);mf(a+192|0);mf(a+224|0);mf(a+256|0);mf(a+288|0);mf(a+320|0);mf(a+352|0);mf(a+384|0);mf(a+416|0);mf(a+448|0);mf(a+480|0);mf(a+512|0);mf(a+544|0);mf(a+576|0);mf(a+608|0);mf(a+640|0);mf(a+672|0);mf(a+704|0);mf(a+736|0);mf(a+768|0);mf(a+800|0);mf(a+832|0);mf(a+864|0);mf(a+896|0);mf(a+928|0);mf(a+960|0);mf(a+992|0)}function mc(a){nf(a+992|0);nf(a+960|0);nf(a+928|0);nf(a+896|0);nf(a+864|0);nf(a+832|0);nf(a+800|0);nf(a+768|0);nf(a+736|0);nf(a+704|0);nf(a+672|0);nf(a+640|0);nf(a+608|0);nf(a+576|0);nf(a+544|0);nf(a+512|0);nf(a+480|0);nf(a+448|0);nf(a+416|0);nf(a+384|0);nf(a+352|0);nf(a+320|0);nf(a+288|0);nf(a+256|0);nf(a+224|0);nf(a+192|0);nf(a+160|0);nf(a+128|0);nf(a+96|0);nf(a- -64|0);nf(a+32|0);nf(a)}function Oc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0;d=F-16|0;F=d;f=Ib(a,b);a:{if(!f){break a}c=i[a+36>>2];if((c|0)==i[a+40>>2]){break a}h=d+16|0;while(1){c=i[(e<<2)+c>>2];j=d,k=I[i[i[c>>2]+32>>2]](c)|0,g[j+15|0]=k;c=i[b+20>>2];if((c|0)<0?1:(c|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],d+15|0,h)}e=e+1|0;c=i[a+36>>2];if(e>>>0>2]-c>>2>>>0){continue}break}}F=d+16|0;return f|0}function Mi(a,b){var c=0,d=0,e=0;a:{if((a|0)!=(b|0)){e=a;c=i[b+4>>2];d=0;b:{if(!c){break b}c:{if(c>>>0<=i[a+8>>2]<<5>>>0){d=i[a>>2];break c}d=i[a>>2];if(d){bp(d);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;c=i[b+4>>2]}if((c|0)<=-1){break a}c=(c+ -1>>>5|0)+1|0;d=ho(c<<2);i[a+8>>2]=c;i[a+4>>2]=0;i[a>>2]=d;c=i[b+4>>2]}jp(d,i[b>>2],(c+ -1>>>3&536870908)+4|0);d=i[b+4>>2]}i[e+4>>2]=d}return}Ho();x()}function Il(a,b,c){var d=0,e=0,f=0;d=F-48|0;F=d;e=i[a+4>>2];a:{if(!e){break a}if(b){if(!(I[i[i[e>>2]+16>>2]](e)|0)){break a}b=i[a+4>>2];I[i[i[b>>2]+20>>2]](b)}b=Tj(d+16|0);Sf(d,i[a>>2],b);a=i[d>>2];if(g[d+15|0]<=-1){bp(i[d+4>>2])}if(!a){rl(c,i[b>>2],i[b+4>>2]);f=i[b+4>>2]-i[b>>2]|0}a=i[b+12>>2];i[b+12>>2]=0;if(a){bp(a)}a=i[b>>2];if(!a){break a}i[b+4>>2]=a;bp(a)}F=d+48|0;return f}function Yh(a,b){var c=0;c=i[b+8>>2];i[a+12>>2]=i[b+4>>2];i[a+16>>2]=c;i[a+28>>2]=i[b+20>>2];c=i[b+16>>2];i[a+20>>2]=i[b+12>>2];i[a+24>>2]=c;Mi(a+32|0,b+24|0);Mi(a+44|0,b+36|0);if((a+8|0)==(b|0)){i[a+92>>2]=i[b+84>>2];return}Vh(a+56|0,i[b+48>>2],i[b+52>>2]);Vh(a+68|0,i[b+60>>2],i[b- -64>>2]);Vh(a+80|0,i[b+72>>2],i[b+76>>2]);i[a+92>>2]=i[b+84>>2];ra(a+96|0,i[b+88>>2],i[b+92>>2])}function pm(a,b){var c=0,d=0,e=0;c=i[b+4>>2];a:{if(!c){d=i[b+8>>2];if(i[d>>2]==(b|0)){break a}e=b+8|0;while(1){c=i[e>>2];e=c+8|0;d=i[c+8>>2];if((c|0)!=i[d>>2]){continue}break}break a}while(1){d=c;c=i[c>>2];if(c){continue}break}}if(i[a>>2]==(b|0)){i[a>>2]=d}i[a+8>>2]=i[a+8>>2]+ -1;vm(i[a+4>>2],b);a=i[b+28>>2];if(a){i[b+32>>2]=a;bp(a)}if(g[b+27|0]<=-1){bp(i[b+16>>2])}bp(b)}function ld(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0;d=i[a+8>>2];e=g[d+24|0];md(a,i[b+4>>2]-i[b>>2]>>2,e,c);c=i[b>>2];f=i[b+4>>2];if((c|0)==(f|0)){return 1}a=i[a+32>>2];h=i[i[a>>2]>>2]+i[a+48>>2]|0;b=0;while(1){a=i[c>>2];k=d;if(!j[d+84|0]){a=i[i[d+68>>2]+(a<<2)>>2]}a=Xb(k,a,g[d+24|0],(b<<2)+h|0);if(a){b=b+e|0;c=c+4|0;if((f|0)!=(c|0)){continue}}break}return a|0}function Yb(a,b){a=a|0;b=b|0;var c=0,d=0;c=i[a+36>>2];if((c|0)!=i[a+40>>2]){while(1){c=o(d,24)+c|0;I[i[i[c>>2]+28>>2]](c,b)|0;d=d+1|0;c=i[a+36>>2];if(d>>>0<(i[a+40>>2]-c|0)/24>>>0){continue}break}}c=i[a+48>>2];if((c|0)!=i[a+52>>2]){d=0;while(1){c=i[(d<<2)+c>>2];Jb((c|0)>-1?c<<1:(c^-1)<<1|1,b);d=d+1|0;c=i[a+48>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}return 1}function Jg(a,b,c){var d=0,e=0,f=0;d=F-16|0;F=d;e=a;g[d+15|0]=a&127;a:{if(!b&a>>>0>=128|b>>>0>0){g[d+15|0]=e|128;e=i[c+20>>2];f=0;if((e|0)>0?1:(e|0)>=0?l[c+16>>2]>0:0){break a}ca(c,i[c+4>>2],d+15|0,d+16|0);f=Jg((b&127)<<25|a>>>7,b>>>7|0,c);break a}a=i[c+20>>2];if((a|0)<0?1:(a|0)<=0?l[c+16>>2]<=0:0){ca(c,i[c+4>>2],d+15|0,d+16|0);f=1;break a}f=0}e=f;F=d+16|0;return e}function Qj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>>0>=b>>>0){if(b){c=ip(c,0,b)+b|0}i[a+4>>2]=c;return}f=i[a>>2];g=c-f|0;d=g+b|0;if((d|0)>-1){c=0;e=e-f|0;h=e<<1;d=e>>>0<1073741823?h>>>0>>0?d:h:2147483647;if(d){c=ho(d)}d=c+d|0;b=ip(c+g|0,0,b)+b|0;if((g|0)>=1){hp(c,f,g)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){bp(f)}return}Ho();x()}function lp(a,b,c){var d=0,e=0,f=0;a:{d=i[c+16>>2];if(!d){if(kp(c)){break a}d=i[c+16>>2]}f=i[c+20>>2];if(d-f>>>0>>0){I[i[c+36>>2]](c,a,b)|0;return}b:{if(g[c+75|0]<0){break b}d=b;while(1){e=d;if(!e){break b}d=e+ -1|0;if(j[d+a|0]!=10){continue}break}if(I[i[c+36>>2]](c,a,e)>>>0>>0){break a}a=a+e|0;b=b-e|0;f=i[c+20>>2]}hp(f,a,b);i[c+20>>2]=i[c+20>>2]+b}}function Bn(a,b,c,d,e){var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=a;k=e;e=0;g=e;f=c;c=0;e=up(k,e,f,c);l=H;h=b;m=up(d,0,b,0);b=H;d=up(d,n,f,c);c=b+d|0;b=H;b=c>>>0>>0?b+1|0:b;f=b;d=b+e|0;b=l;b=d>>>0>>0?b+1|0:b;f=d;e=b;b=up(h,o,k,g)+c|0;d=H;g=b;d=b>>>0>>0?d+1|0:d;h=d;d=d+f|0;if(d>>>0>>0){e=e+1|0}i[j+8>>2]=d;i[j+12>>2]=e;i[a>>2]=m;i[a+4>>2]=g}function vl(a,b,c){var d=0,e=0,f=0,h=0;d=F-16|0;F=d;a:{b:{if(!a){break b}e=mp(b);if(e>>>0>=4294967280){break a}c:{d:{if(e>>>0>=11){f=e+16&-16;h=ho(f);i[d+8>>2]=f|-2147483648;i[d>>2]=h;i[d+4>>2]=e;f=d;break d}g[d+11|0]=e;f=d;h=d;if(!e){break c}}hp(h,b,e)}g[e+h|0]=0;sm(a,d,c);if(g[f+11|0]>-1){break b}bp(i[d>>2])}F=d+16|0;return(a|0)!=0}qo();x()}function tl(a,b,c){var d=0,e=0,f=0,h=0;d=F-16|0;F=d;a:{b:{if(!a){break b}e=mp(b);if(e>>>0>=4294967280){break a}c:{d:{if(e>>>0>=11){f=e+16&-16;h=ho(f);i[d+8>>2]=f|-2147483648;i[d>>2]=h;i[d+4>>2]=e;f=d;break d}g[d+11|0]=e;f=d;h=d;if(!e){break c}}hp(h,b,e)}g[e+h|0]=0;nm(a,d,c);if(g[f+11|0]>-1){break b}bp(i[d>>2])}F=d+16|0;return(a|0)!=0}qo();x()}function nj(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=13484;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}b=i[a+20>>2];if(b){i[a+24>>2]=b;bp(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;bp(b)}return a|0}function Fb(a,b){var c=0,d=0,e=0,f=0;e=F-16|0;F=e;i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=1432;d=a+12|0;c=d;i[c>>2]=0;i[c+4>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;c=ho(4);i[c>>2]=b;f=d;d=c+4|0;i[f>>2]=d;f=a+8|0;i[f>>2]=d;i[a+4>>2]=c;i[e+12>>2]=-1;Gb(a+16|0,b+1|0,e+12|0);i[i[a+16>>2]+(b<<2)>>2]=(i[f>>2]-i[a+4>>2]>>2)+ -1;F=e+16|0}function Wo(a,b,c,d){g[a+53|0]=1;a:{if(i[a+4>>2]!=(c|0)){break a}g[a+52|0]=1;c=i[a+16>>2];if(!c){i[a+36>>2]=1;i[a+24>>2]=d;i[a+16>>2]=b;if((d|0)!=1|i[a+48>>2]!=1){break a}g[a+54|0]=1;return}if((b|0)==(c|0)){c=i[a+24>>2];if((c|0)==2){i[a+24>>2]=d;c=d}if(i[a+48>>2]!=1|(c|0)!=1){break a}g[a+54|0]=1;return}g[a+54|0]=1;i[a+36>>2]=i[a+36>>2]+1}}function Ro(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F+ -64|0;F=d;e=1;a:{if(Qo(a,b,0)){break a}e=0;if(!b){break a}b=So(b,18792,18840);e=0;if(!b){break a}ip(d+8|4,0,52);i[d+56>>2]=1;i[d+20>>2]=-1;i[d+16>>2]=a;i[d+8>>2]=b;I[i[i[b>>2]+28>>2]](b,d+8|0,i[c>>2],1);a=i[d+32>>2];if((a|0)==1){i[c>>2]=i[d+24>>2]}e=(a|0)==1}a=e;F=d- -64|0;return a|0}function Pn(a,b,c){var d=0,e=0;d=F-160|0;F=d;hp(d+8|0,18056,144);a:{b:{if(b+ -1>>>0>=2147483647){if(b){break b}b=1;a=d+159|0}i[d+52>>2]=a;i[d+28>>2]=a;e=-2-a|0;b=b>>>0>e>>>0?e:b;i[d+56>>2]=b;a=a+b|0;i[d+36>>2]=a;i[d+24>>2]=a;a=Rm(d+8|0,c);if(!b){break a}b=i[d+28>>2];g[b-((b|0)==i[d+24>>2])|0]=0;break a}i[4805]=61;a=-1}F=d+160|0;return a}function tj(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=13484;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}b=i[a+20>>2];if(b){i[a+24>>2]=b;bp(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;bp(b)}bp(a)}function Ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=1;a:{if((I[i[i[b>>2]+20>>2]](b)|0)<1){break a}c=0;while(1){e=xm(i[i[a+4>>2]+4>>2],I[i[i[b>>2]+24>>2]](b,d)|0);if((e|0)==-1){break a}if(!(g=b,h=Hj(i[a+4>>2],e),f=i[i[b>>2]+28>>2],I[f](g|0,h|0)|0)){break a}d=d+1|0;if((d|0)<(I[i[i[b>>2]+20>>2]](b)|0)){continue}break}c=1}return c|0}function Jb(a,b){var c=0,d=0,e=0;c=F-16|0;F=c;g[c+15|0]=a&127;a:{if(a>>>0>=128){g[c+15|0]=a|128;e=i[b+20>>2];d=0;if((e|0)>0?1:(e|0)>=0?l[b+16>>2]>0:0){break a}ca(b,i[b+4>>2],c+15|0,c+16|0);d=Jb(a>>>7|0,b);break a}a=i[b+20>>2];if((a|0)<0?1:(a|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],c+15|0,c+16|0);d=1;break a}d=0}a=d;F=c+16|0;return a}function Nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a:{if(!Hb(a,b,c)){break a}if(!(I[i[i[a>>2]+52>>2]](a)|0)){break a}e=i[a+4>>2];if((e|0)==i[a+8>>2]){return 1}c=0;while(1){d=c<<2;f=i[d+i[a+36>>2]>>2];d=I[i[i[f>>2]+8>>2]](f,b,i[d+e>>2])|0;if(!d){break a}c=c+1|0;e=i[a+4>>2];if(c>>>0>2]-e>>2>>>0){continue}break}}return d|0}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F-16|0;F=d;i[a+4>>2]=b;b=i[b+64>>2];e=i[b>>2];b=i[b+4>>2];g[d+15|0]=0;Uh(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=i[a+4>>2];e=i[b+56>>2];b=i[b+52>>2];g[d+14|0]=0;Uh(a+36|0,e-b>>2,d+14|0);b=i[c+12>>2];i[a+16>>2]=i[c+8>>2];i[a+20>>2]=b;b=i[c+4>>2];i[a+8>>2]=i[c>>2];i[a+12>>2]=b;F=d+16|0}function mp(a){var b=0,c=0,d=0;a:{b:{b=a;if(!(b&3)){break b}if(!j[a|0]){return 0}while(1){b=b+1|0;if(!(b&3)){break b}if(j[b|0]){continue}break}break a}while(1){c=b;b=b+4|0;d=i[c>>2];if(!((d^-1)&d+ -16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=j[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function _l(a){i[a>>2]=0;i[a+4>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;g[a+24|0]=1;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+36>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;i[a+80>>2]=0;i[a+84>>2]=0;i[a+88>>2]=0;i[a+92>>2]=0;i[a+68>>2]=a}function Zo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Qo(a,i[b+8>>2],e)){Xo(b,c,d);return}a:{if(!Qo(a,i[b>>2],e)){break a}if(!(i[b+20>>2]!=(c|0)?i[b+16>>2]!=(c|0):0)){if((d|0)!=1){break a}i[b+32>>2]=1;return}i[b+20>>2]=c;i[b+32>>2]=d;i[b+40>>2]=i[b+40>>2]+1;if(!(i[b+36>>2]!=1|i[b+24>>2]!=2)){g[b+54|0]=1}i[b+44>>2]=4}}function Wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F-16|0;F=c;i[c+12>>2]=i[a+12>>2];d=i[b+20>>2];e=d;f=i[b+16>>2];if((d|0)<0?1:(d|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],c+12|0,c+16|0);f=i[b+16>>2];e=i[b+20>>2]}i[c+8>>2]=i[a+16>>2];if((e|0)<0?1:(e|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],c+8|0,c+12|0)}sf(a+112|0,b);F=c+16|0;return 1}function Oe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F-16|0;F=c;i[c+12>>2]=i[a+12>>2];d=i[b+20>>2];e=d;f=i[b+16>>2];if((d|0)<0?1:(d|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],c+12|0,c+16|0);f=i[b+16>>2];e=i[b+20>>2]}i[c+8>>2]=i[a+24>>2];if((e|0)<0?1:(e|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],c+8|0,c+12|0)}sf(a+96|0,b);F=c+16|0;return 1}function Li(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F-16|0;F=d;i[a+4>>2]=b;e=i[b>>2];b=i[b+4>>2];g[d+15|0]=0;Uh(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=i[a+4>>2];e=i[b+28>>2];b=i[b+24>>2];g[d+14|0]=0;Uh(a+36|0,e-b>>2,d+14|0);b=i[c+12>>2];i[a+16>>2]=i[c+8>>2];i[a+20>>2]=b;b=i[c+4>>2];i[a+8>>2]=i[c>>2];i[a+12>>2]=b;F=d+16|0}function _c(a,b){a=a|0;b=b|0;var c=0,d=0;c=i[a+16>>2];a:{if(i[a+20>>2]-c>>2<=(b|0)){break a}b=i[c+(b<<2)>>2];if((b|0)<0){break a}if(l[a+52>>2]<=b>>>0){$c(a+48|0,b+1|0)}d=1;c=i[a+48>>2]+(b>>>3&536870908)|0;i[c>>2]=i[c>>2]|1<>2];a=i[a+36>>2];if(c-a>>2>>>0<=b>>>0){break a}Gc(i[a+(b<<2)>>2])}return d|0}function Al(a){var b=0,c=0,d=0,e=0;if(a){d=i[a+24>>2];if(d){b=d;c=i[a+28>>2];e=b;a:{if((c|0)==(b|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){yk(b+12|0,i[b+16>>2]);zk(b,i[b+4>>2]);bp(b)}if((c|0)!=(d|0)){continue}break}e=i[a+24>>2]}b=e;i[a+28>>2]=d;bp(b)}yk(a+12|0,i[a+16>>2]);zk(a,i[a+4>>2]);bp(a)}}function fp(a){var b=0;b=1;a:{if((a|0)>=1024){b=8.98846567431158e+307;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.2250738585072014e-308;if((a|0)>-2045){a=a+1022|0;break a}b=0;a=((a|0)>-3066?a:-3066)+2044|0}Cp(0,0);Cp(1,a+1023<<20);return b*+Dp()}function zd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F-16|0;F=c;i[c+12>>2]=i[a+12>>2];d=i[b+20>>2];e=d;f=i[b+16>>2];if((d|0)<0?1:(d|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],c+12|0,c+16|0);f=i[b+16>>2];e=i[b+20>>2]}i[c+8>>2]=i[a+16>>2];if((e|0)<0?1:(e|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],c+8|0,c+12|0)}F=c+16|0;return 1}function xe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F-16|0;F=c;i[c+12>>2]=i[a+12>>2];d=i[b+20>>2];e=d;f=i[b+16>>2];if((d|0)<0?1:(d|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],c+12|0,c+16|0);f=i[b+16>>2];e=i[b+20>>2]}i[c+8>>2]=i[a+24>>2];if((e|0)<0?1:(e|0)<=0?f>>>0<=0:0){ca(b,i[b+4>>2],c+8|0,c+12|0)}F=c+16|0;return 1}function Tl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;Gm(a,b,c);d=i[a+96>>2];a=i[a+100>>2];if((d|0)!=(a|0)){a=(a-d|0)/12|0;e=a>>>0>1?a:1;b=i[b>>2];c=0;while(1){a=o(c,12)+d|0;i[a>>2]=i[b+(i[a>>2]<<2)>>2];i[a+4>>2]=i[b+(i[a+4>>2]<<2)>>2];i[a+8>>2]=i[b+(i[a+8>>2]<<2)>>2];c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function Xl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F-16|0;F=d;e=i[c>>2];i[c>>2]=0;i[d+8>>2]=e;Am(a,b,d+8|0);c=i[d+8>>2];i[d+8>>2]=0;if(c){Wb(c)}e=i[a+84>>2];c=i[a+88>>2]-e>>2;a:{if((c|0)>(b|0)){break a}b=b+1|0;if(b>>>0>c>>>0){Yl(a+84|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}i[a+88>>2]=e+(b<<2)}F=d+16|0}function An(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=F-16|0;F=d;g=a;h=a;a:{if(!b){b=0;break a}c=b>>31;e=c+b^c;c=r(e);sn(d,e,0,0,0,c+81|0);c=(i[d+12>>2]^65536)+(16414-c<<16)|0;e=0+i[d+8>>2]|0;if(e>>>0>>0){c=c+1|0}f=b&-2147483648|c;c=i[d+4>>2];b=i[d>>2]}i[h>>2]=b;i[g+4>>2]=c;i[a+8>>2]=e;i[a+12>>2]=f;F=d+16|0}function zo(a,b,c,d,e){var f=0,g=0,h=0;f=F-16|0;F=f;if(-17-b>>>0>=c>>>0){g=Yn(a);a:{if(2147483623>b>>>0){i[f+8>>2]=b<<1;i[f+12>>2]=b+c;c=ao(i[Mn(f+12|0,f+8|0)>>2]);break a}c=-18}h=c+1|0;c=bo(h);if(e){Ln(c,g,e)}d=d-e|0;if(d){Ln(c+e|0,e+g|0,d)}if((b|0)!=10){bp(g)}co(a,c);eo(a,h);F=f+16|0;return}qo();x()}function da(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,k=0;h=i[c+8>>2];f=i[c+16>>2];g=i[c+12>>2];d=g;e=i[c+20>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?h>>>0>f>>>0:0){b=j[f+i[c>>2]|0];d=e;k=f+1|0;if(k>>>0<1){d=d+1|0}i[c+16>>2]=k;i[c+20>>2]=d;i[a+4>>2]=b}return((g|0)>(e|0)?1:(g|0)>=(e|0)?h>>>0>f>>>0:0)|0}function Ql(a,b){var c=0,d=0,e=0,f=0;a:{if((b|0)==-1){break a}b=o(b,3);if((b|0)==-1){break a}d=-1;e=i[a>>2];f=i[e+(b<<2)>>2];a=-1;c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)!=-1){a=i[(c<<2)+e>>2]}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)!=-1){d=i[(b<<2)+e>>2]}return(a|0)==(f|0)|(d|0)==(f|0)|(a|0)==(d|0)}return 1}function bn(a){var b=0,c=0,d=0,e=0,f=0;while(1){b=a;a=b+1|0;if(an(g[b|0])){continue}break}a:{b:{c:{c=g[b|0];switch(c+ -43|0){case 0:break b;case 2:break c;default:break a}}e=1}c=g[a|0];b=a;f=e}if(Mm(c)){while(1){d=(o(d,10)-g[b|0]|0)+48|0;a=g[b+1|0];b=b+1|0;if(Mm(a)){continue}break}}return f?d:0-d|0}function Ym(a,b,c){var d=0,e=0,f=0;a:{if((b|0)==1&a>>>0<0|b>>>0<1){d=a;break a}while(1){d=wp(a,b,10,0);e=H;f=e;e=up(d,e,10,0);c=c+ -1|0;g[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;g[c|0]=d-o(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function hd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=F-48|0;F=d;f=i[b+4>>2];b=i[b+12>>2];i[d+40>>2]=0;e=d+32|0;i[e>>2]=0;i[e+4>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;id(d,c,b,f,d+8|0);b=i[e>>2];if(b){i[d+36>>2]=b;bp(b)}i[a>>2]=i[d>>2];F=d+48|0}function cf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=F-16|0;F=c;d=a+40|0;Aa(c+8|0,d,i[a+8>>2],i[b+4>>2]-i[b>>2]>>2);d=ma(d,i[a+8>>2],b,i[c+8>>2]);a:{if(!d){break a}e=i[c+8>>2];i[c+8>>2]=0;b=i[a+32>>2];i[a+32>>2]=e;if(!b){break a}Wb(b)}a=i[c+8>>2];i[c+8>>2]=0;if(a){Wb(a)}F=c+16|0;return d|0}function Oi(a){a=a|0;var b=0;i[a+8>>2]=12332;i[a>>2]=12120;b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+80>>2];if(b){i[a+84>>2]=b;bp(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;bp(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;bp(b)}i[a+8>>2]=12568;b=i[a+44>>2];if(b){bp(b)}b=i[a+32>>2];if(b){bp(b)}return a|0}function qe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=F-16|0;F=c;d=a+40|0;Aa(c+8|0,d,i[a+8>>2],i[b+4>>2]-i[b>>2]>>2);d=Y(d,i[a+8>>2],b,i[c+8>>2]);a:{if(!d){break a}e=i[c+8>>2];i[c+8>>2]=0;b=i[a+32>>2];i[a+32>>2]=e;if(!b){break a}Wb(b)}a=i[c+8>>2];i[c+8>>2]=0;if(a){Wb(a)}F=c+16|0;return d|0}function Aa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,h=0,j=0;e=F+ -64|0;F=e;f=I[i[i[b>>2]+44>>2]](b,c)|0;b=I[i[i[b>>2]+40>>2]](b,c)|0;h=Ba(e);j=i[c+56>>2];c=b;b=o(Sj(b),f);Ca(h,j,0,f<<24>>24,c,b,b>>31);b=ho(96);c=Fa(b,h);i[a>>2]=b;Ha(c,d);g[b+84|0]=1;i[b+72>>2]=i[b+68>>2];F=e- -64|0}function Do(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=F-16|0;F=f;g=+c;d=Sn(b);while(1){a:{e=Yn(b);n[f>>3]=g;h=b;e=Rn(e,d+1|0,f);b:{if((e|0)>=0){if(e>>>0<=d>>>0){break a}d=e;break b}d=d<<1|1}Un(h,d);continue}break}Un(b,e);d=i[b+4>>2];i[a>>2]=i[b>>2];i[a+4>>2]=d;i[a+8>>2]=i[b+8>>2];Vn(b);F=f+16|0}function be(a){a=a|0;var b=0;i[a>>2]=4804;b=i[a+152>>2];if(b){i[a+156>>2]=b;bp(b)}b=i[a+112>>2];if(b){i[a+116>>2]=b;bp(b)}b=i[a+96>>2];if(b){bp(b)}b=i[a+84>>2];if(b){bp(b)}b=i[a+72>>2];if(b){bp(b)}b=i[a+60>>2];if(b){bp(b)}i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}return a|0}function Pi(a){a=a|0;var b=0;i[a+8>>2]=12332;i[a>>2]=12120;b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+80>>2];if(b){i[a+84>>2]=b;bp(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;bp(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;bp(b)}i[a+8>>2]=12568;b=i[a+44>>2];if(b){bp(b)}b=i[a+32>>2];if(b){bp(b)}bp(a)}function Cd(a){a=a|0;var b=0;i[a>>2]=3240;b=i[a+152>>2];if(b){i[a+156>>2]=b;bp(b)}b=i[a+112>>2];if(b){i[a+116>>2]=b;bp(b)}b=i[a+96>>2];if(b){bp(b)}b=i[a+84>>2];if(b){bp(b)}b=i[a+72>>2];if(b){bp(b)}b=i[a+60>>2];if(b){bp(b)}i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}return a|0}function go(a,b,c){var d=0,e=0,f=0,h=0;f=F-16|0;F=f;e=c-b|0;if(e>>>0<=4294967279){a:{if(e>>>0<=10){$n(a,e);d=a;break a}h=ao(e)+1|0;d=bo(h);co(a,d);eo(a,h);aa(a,e)}while(1){if((b|0)!=(c|0)){_n(d,b);d=d+1|0;b=b+1|0;continue}break}g[f+15|0]=0;_n(d,f+15|0);F=f+16|0;return}qo();x()}function gg(a){var b=0,c=0;c=i[a+8>>2];if((c|0)>=2){b=+(c|0);b=v(ep(b)*b-n[a>>3]);if(q(b)<0x8000000000000000){H=q(b)>=1?b>0?~~s(u(b*2.3283064365386963e-10),4294967295)>>>0:~~v((b- +(~~b>>>0>>>0))*2.3283064365386963e-10)>>>0:0;return~~b>>>0}a=-2147483648}else{a=0}H=a;return 0}function Ni(a){a=a|0;var b=0;i[a>>2]=12332;b=i[a+88>>2];if(b){i[a+92>>2]=b;bp(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;bp(b)}b=i[a+60>>2];if(b){i[a- -64>>2]=b;bp(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}i[a>>2]=12568;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}return a|0}function En(a,b){var c=0,d=0,e=0,f=0;i[a>>2]=0;i[a+4>>2]=0;e=a;f=a;if(b){a=b;c=r(a);d=(c|32)+113&63;b=d&31;if(32<=(d&63)>>>0){d=a<>>32-b;b=a<>>0>>0?a+1|0:a}else{a=0;b=0}i[f+8>>2]=b;i[e+12>>2]=a}function Hl(a,b){var c=0;i[a+4>>2]=b;i[a>>2]=0;a:{b:{if(!b){break b}c=So(b,16916,16636);if(!c){break b}b=ho(56);Rf(b,c);c=i[a>>2];i[a>>2]=b;if(!c){break a}I[i[i[c>>2]+4>>2]](c);return a}c=ho(56);Pf(c,b);b=i[a>>2];i[a>>2]=c;if(!b){break a}I[i[i[b>>2]+4>>2]](b)}return a}function Vi(a){a=a|0;var b=0;i[a>>2]=12332;b=i[a+88>>2];if(b){i[a+92>>2]=b;bp(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;bp(b)}b=i[a+60>>2];if(b){i[a- -64>>2]=b;bp(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}i[a>>2]=12568;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}bp(a)}function Pj(a,b,c){var d=0;if((c|0)<0?1:(c|0)<=0?b>>>0<0:0){return 0}d=i[a>>2];c=i[a+4>>2]-d|0;a:{if(c>>>0>>0){Qj(a,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+4>>2]=b+d}b=a+24|0;c=b;d=b;a=i[b+4>>2];b=i[b>>2]+1|0;if(b>>>0<1){a=a+1|0}i[d>>2]=b;i[c+4>>2]=a;return 1}function Ha(a,b){var c=0,d=0;a:{if(i[a+64>>2]){break a}d=ho(32);Oj(d);c=i[a+64>>2];i[a+64>>2]=d;if(!c){break a}d=i[c>>2];if(d){i[c+4>>2]=d;bp(d)}bp(c)}c=Sj(i[a+28>>2]);c=o(c,g[a+24|0]);d=c;c=c>>31;if(Pj(i[a+64>>2],up(d,c,b,0),H)){Da(a,i[a+64>>2],d,c);i[a+80>>2]=b}}function Qm(a,b){var c=0,d=0,e=0;Ep(+a);c=Bp(1)|0;d=Bp(0)|0;e=c;c=c>>>20&2047;if((c|0)!=2047){if(!c){c=b;if(a==0){b=0}else{a=Qm(a*0x10000000000000000,b);b=i[b>>2]+ -64|0}i[c>>2]=b;return a}i[b>>2]=c+ -1022;Cp(0,d|0);Cp(1,e&-2146435073|1071644672);a=+Dp()}return a}function df(a){a=a|0;var b=0;i[a+40>>2]=1140;i[a>>2]=9756;b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}i[a>>2]=2248;b=i[a+36>>2];i[a+36>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=1860;b=i[a+32>>2];i[a+32>>2]=0;if(b){Wb(b)}b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}return a|0}function bi(a){var b=0;if(a){b=i[a+76>>2];if(b){i[a+80>>2]=b;bp(b)}b=i[a- -64>>2];if(b){i[a+68>>2]=b;bp(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}b=i[a+24>>2];if(b){i[a+28>>2]=b;bp(b)}b=i[a+12>>2];if(b){i[a+16>>2]=b;bp(b)}b=i[a>>2];if(b){i[a+4>>2]=b;bp(b)}bp(a)}}function Mf(a,b,c,d){var e=0;e=F-16|0;F=e;c=Nf(a,b,e+12|0,e+8|0,c);if(!i[c>>2]){b=ho(40);ro(b+16|0,d);ro(b+28|0,d+12|0);i[b+8>>2]=i[e+12>>2];i[b>>2]=0;i[b+4>>2]=0;i[c>>2]=b;d=i[i[a>>2]>>2];if(d){i[a>>2]=d;b=i[c>>2]}Kf(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}F=e+16|0}function ni(a){var b=0;b=i[a+84>>2];if(b){i[a+88>>2]=b;bp(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;bp(b)}b=i[a+52>>2];if(b){i[a+56>>2]=b;bp(b)}b=i[a+40>>2];if(b){i[a+44>>2]=b;bp(b)}b=i[a+28>>2];if(b){i[a+32>>2]=b;bp(b)}b=i[a+12>>2];if(b){bp(b)}a=i[a>>2];if(a){bp(a)}}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=F-96|0;F=e;f=Pf(e+40|0,c);vf(e,b,c);Vf(f,e);kd(e+24|0,i[e+28>>2]);wf(e+12|0,i[e+16>>2]);kd(e,i[e+4>>2]);Sf(a,f,d);i[f>>2]=10308;kd(f+28|0,i[f+32>>2]);wf(f+16|0,i[f+20>>2]);kd(f+4|0,i[f+8>>2]);F=e+96|0}function ef(a){a=a|0;var b=0;i[a+40>>2]=1140;i[a>>2]=9756;b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}i[a>>2]=2248;b=i[a+36>>2];i[a+36>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=1860;b=i[a+32>>2];i[a+32>>2]=0;if(b){Wb(b)}b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}bp(a)}function cn(a){var b=0,c=0;b=j[a+74|0];g[a+74|0]=b+ -1|b;if(l[a+20>>2]>l[a+28>>2]){I[i[a+36>>2]](a,0,0)|0}i[a+28>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;b=i[a>>2];if(b&4){i[a>>2]=b|32;return-1}c=i[a+44>>2]+i[a+48>>2]|0;i[a+8>>2]=c;i[a+4>>2]=c;return b<<27>>31}function sp(a,b,c,d){var e=0,f=0,g=0,h=0;e=b;f=e>>31;e=e>>31;a=a^e;g=a-e|0;h=(b^f)-((a>>>0>>0)+f|0)|0;e=d;f=e>>31;e=e>>31;a=c^e;e=wp(g,h,a-e|0,(d^f)-((a>>>0>>0)+f|0)|0);b=b^d;c=b>>31;a=b>>31;b=e^a;d=b-a|0;H=(c^H)-((b>>>0>>0)+c|0)|0;return d}function Pc(a,b){a=a|0;b=b|0;var c=0,d=0;c=i[a+72>>2];a:{if(!c){break a}i[c+4>>2]=a+60;if(!(I[i[i[c>>2]+12>>2]](c)|0)){break a}if(!(I[i[i[a>>2]+40>>2]](a)|0)){break a}if(!(I[i[i[a>>2]+44>>2]](a,b)|0)){break a}d=I[i[i[a>>2]+48>>2]](a,b)|0}return d|0}function Ca(a,b,c,d,e,f,h){var j=0;i[a>>2]=c;if(c){j=i[c+20>>2];i[a+8>>2]=i[c+16>>2];i[a+12>>2]=j;j=i[c+28>>2];i[a+16>>2]=i[c+24>>2];i[a+20>>2]=j}i[a+56>>2]=b;i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=f;i[a+44>>2]=h;g[a+32|0]=0;i[a+28>>2]=e;g[a+24|0]=d}function Oh(a,b){a=a|0;b=b|0;var c=0,d=0;a:{c=i[a+172>>2];a=i[a+176>>2];if((c|0)!=(a|0)){d=(a-c|0)/136|0;a=0;while(1){if(i[o(a,136)+c>>2]==(b|0)){break a}a=a+1|0;if(a>>>0>>0){continue}break}}return 0}a=o(a,136)+c|0;return(j[a+100|0]?a+4|0:0)|0}function Rc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=i[a+36>>2];if((c|0)==i[a+40>>2]){return 1}f=a+60|0;while(1){c=i[(d<<2)+c>>2];e=I[i[i[c>>2]+20>>2]](c,f,b)|0;if(e){d=d+1|0;c=i[a+36>>2];if(d>>>0>2]-c>>2>>>0){continue}}break}return e|0}function Ph(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:{d=i[a+172>>2];c=i[a+176>>2];if((d|0)!=(c|0)){e=(c-d|0)/136|0;c=0;while(1){if(i[o(c,136)+d>>2]==(b|0)){break a}c=c+1|0;if(c>>>0>>0){continue}break}}return a+40|0}return(o(c,136)+d|0)+104|0}function Hm(a){a=a|0;var b=0,c=0,d=0;b=1;a:{if(!i[a+80>>2]){break a}c=i[a+8>>2];if((i[a+12>>2]-c|0)<=0){break a}while(1){b=i[(d<<2)+c>>2];b=Ia(b,b);if(b){d=d+1|0;c=i[a+8>>2];if((d|0)>2]-c>>2){continue}}break}b=(b|0)!=0}return b|0}function Jn(a,b,c){var d=0,e=0,f=0,g=0;e=F-16|0;F=e;b=b-a>>2;while(1){if(b){i[e+12>>2]=a;d=e+12|0;f=d;g=i[d>>2];d=b>>>1|0;i[f>>2]=g+(d<<2);f=(d^-1)+b|0;b=d;d=Kn(i[e+12>>2],c);b=d?f:b;a=d?i[e+12>>2]+4|0:a;continue}break}F=e+16|0;return a}function im(a,b,c){var d=0,e=0,f=0;if(c){d=c+28|0;Jb(i[d>>2]-i[c+24>>2]>>2,b);e=i[c+24>>2];f=i[d>>2];if((e|0)!=(f|0)){while(1){d=i[e>>2];if(d){Jb(i[d+24>>2],b);gm(a,b,d)}e=e+4|0;if((f|0)!=(e|0)){continue}break}}gm(a,b,c)}return(c|0)!=0}function Fj(a){a=a|0;var b=0,c=0,d=0;b=i[a+32>>2];d=i[a+36>>2];if((b|0)==(d|0)){return 1}while(1){a:{c=i[i[a+8>>2]+(i[b>>2]<<2)>>2];c=I[i[i[c>>2]+20>>2]](c,i[a+44>>2])|0;b=b+4|0;if((d|0)==(b|0)){break a}if(c){continue}}break}return c|0}function Jj(a,b){a=a|0;b=b|0;var c=0,d=0;c=F-16|0;F=c;i[c+12>>2]=i[i[b+4>>2]+80>>2];b=i[b+44>>2];d=i[b+20>>2];if((d|0)<0?1:(d|0)<=0?l[b+16>>2]<=0:0){ca(b,i[b+4>>2],c+12|0,c+16|0)}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;F=c+16|0}function Qc(a){a=a|0;var b=0,c=0,d=0,e=0;b=i[a+36>>2];if((b|0)==i[a+40>>2]){return 1}e=a+60|0;while(1){b=i[(c<<2)+b>>2];d=I[i[i[b>>2]+16>>2]](b,e)|0;if(d){c=c+1|0;b=i[a+36>>2];if(c>>>0>2]-b>>2>>>0){continue}}break}return d|0}function Re(a){a=a|0;var b=0;i[a>>2]=8408;b=i[a+136>>2];if(b){i[a+140>>2]=b;bp(b)}b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+80>>2];if(b){bp(b)}b=i[a+68>>2];if(b){bp(b)}b=i[a+56>>2];if(b){bp(b)}b=i[a+44>>2];if(b){bp(b)}return a|0}function Ae(a){a=a|0;var b=0;i[a>>2]=6760;b=i[a+136>>2];if(b){i[a+140>>2]=b;bp(b)}b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+80>>2];if(b){bp(b)}b=i[a+68>>2];if(b){bp(b)}b=i[a+56>>2];if(b){bp(b)}b=i[a+44>>2];if(b){bp(b)}return a|0}function Wb(a){a=a|0;var b=0,c=0;if(a){b=i[a+88>>2];i[a+88>>2]=0;if(b){c=i[b+8>>2];if(c){i[b+12>>2]=c;bp(c)}bp(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;bp(b)}b=i[a+64>>2];i[a+64>>2]=0;if(b){c=i[b>>2];if(c){i[b+4>>2]=c;bp(c)}bp(b)}bp(a)}}function Sc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=i[a+36>>2];if((c|0)==i[a+40>>2]){return 1}while(1){c=i[(d<<2)+c>>2];e=I[i[i[c>>2]+24>>2]](c,b)|0;if(e){d=d+1|0;c=i[a+36>>2];if(d>>>0>2]-c>>2>>>0){continue}}break}return e|0}function Se(a){a=a|0;var b=0;i[a>>2]=8408;b=i[a+136>>2];if(b){i[a+140>>2]=b;bp(b)}b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+80>>2];if(b){bp(b)}b=i[a+68>>2];if(b){bp(b)}b=i[a+56>>2];if(b){bp(b)}b=i[a+44>>2];if(b){bp(b)}bp(a)}function Be(a){a=a|0;var b=0;i[a>>2]=6760;b=i[a+136>>2];if(b){i[a+140>>2]=b;bp(b)}b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+80>>2];if(b){bp(b)}b=i[a+68>>2];if(b){bp(b)}b=i[a+56>>2];if(b){bp(b)}b=i[a+44>>2];if(b){bp(b)}bp(a)}function Ga(a,b,c,d,e){var f=0,h=0,j=0;j=ho(32);f=Oj(j);h=i[a+64>>2];i[a+64>>2]=j;j=a;if(h){f=i[h>>2];if(f){i[h+4>>2]=f;bp(f)}bp(h);f=i[a+64>>2]}h=b;b=o(Sj(d),c);Ca(j,h,f,c,d,b,b>>31);Ha(a,e);g[a+84|0]=1;i[a+72>>2]=i[a+68>>2]}function zm(a,b){var c=0,d=0,e=0,f=0;c=F-16|0;F=c;d=i[a+12>>2];e=i[a+8>>2];f=i[b>>2];i[b>>2]=0;i[c+8>>2]=f;I[i[i[a>>2]+8>>2]](a,d-e>>2,c+8|0);b=i[c+8>>2];i[c+8>>2]=0;if(b){Wb(b)}F=c+16|0;return(i[a+12>>2]-i[a+8>>2]>>2)+ -1|0}function rp(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=o(e,f);g=c&65535;h=a&65535;i=o(g,h);f=(i>>>16|0)+o(f,g)|0;e=(f&65535)+o(e,h)|0;a=(o(b,c)+j|0)+o(a,d)+(f>>>16)+(e>>>16)|0;b=i&65535|e<<16;H=a;return b}function ba(a,b){a=a|0;b=b|0;var c=0,d=0;c=F-16|0;F=c;a=i[a+4>>2];a:{if((a|0)==-1){break a}g[c+15|0]=a;d=i[b+20>>2];if((d|0)>0?1:(d|0)>=0?l[b+16>>2]>0:0){break a}ca(b,i[b+4>>2],c+15|0,c+16|0)}F=c+16|0;return(a|0)!=-1|0}function Ao(a,b,c){var d=0,e=0,f=0;f=F-16|0;F=f;d=Tn(a);e=Sn(a);a:{if(d-e>>>0>=c>>>0){if(!c){break a}d=Yn(a);Ln(d+e|0,b,c);b=a;a=c+e|0;fo(b,a);g[f+15|0]=0;_n(a+d|0,f+15|0);break a}vo(a,d,(c+e|0)-d|0,e,e,0,c,b)}F=f+16|0}function Rj(a,b){var c=0,d=0;d=i[a>>2];c=i[a+4>>2]-d|0;a:{if(c>>>0>>0){Qj(a,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+4>>2]=b+d}b=a+24|0;c=b;d=b;a=i[b+4>>2];b=i[b>>2]+1|0;if(b>>>0<1){a=a+1|0}i[d>>2]=b;i[c+4>>2]=a}function so(a,b,c){var d=0,e=0,f=0;d=F-16|0;F=d;if(4294967279>=c>>>0){a:{if(c>>>0<=10){$n(a,c);e=a;break a}f=ao(c)+1|0;e=bo(f);co(a,e);eo(a,f);aa(a,c)}Ln(e,b,c);g[d+15|0]=0;_n(c+e|0,d+15|0);F=d+16|0;return}qo();x()}function To(a,b,c){var d=0;d=i[a+16>>2];if(!d){i[a+36>>2]=1;i[a+24>>2]=c;i[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(i[a+24>>2]!=2){break a}i[a+24>>2]=c;return}g[a+54|0]=1;i[a+24>>2]=2;i[a+36>>2]=i[a+36>>2]+1}}function X(a,b){a=a|0;b=b|0;var c=0,d=0;i[b>>2]=2;c=i[b+8>>2];d=i[b+12>>2]-c|0;if(d>>>0<=4294967291){b=b+8|0;Rj(b,d+4|0);c=i[b>>2]}b=c+d|0;a=i[a+4>>2];g[b|0]=a;g[b+1|0]=a>>>8;g[b+2|0]=a>>>16;g[b+3|0]=a>>>24}function nf(a){var b=0,c=0;c=F-16|0;F=c;i[c+8>>2]=0;i[c+12>>2]=0;of(a,c+8|0);i[a+24>>2]=0;i[a+28>>2]=0;b=i[a+12>>2];i[a+16>>2]=b;if(b){i[a+16>>2]=b;bp(b)}b=i[a>>2];if(b){i[a+4>>2]=b;bp(b)}F=c+16|0;return a}function ad(a,b){a=a|0;b=b|0;var c=0,d=0;d=i[a+16>>2];a:{if(i[a+20>>2]-d>>2<=(b|0)){break a}b=i[(b<<2)+d>>2];if((b|0)<0){break a}a=i[i[a+36>>2]+(b<<2)>>2];c=i[a+32>>2];if(c){break a}c=i[a+8>>2]}return c|0}function Zm(a,b,c,d,e){var f=0;f=F-256|0;F=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;ip(f,b&255,d?c:256);if(!d){while(1){Tm(a,f,256);c=c+ -256|0;if(c>>>0>255){continue}break}}Tm(a,f,c)}F=f+256|0}function uo(a,b,c){var d=0,e=0,f=0,h=0;e=F-16|0;F=e;d=Tn(a);a:{if(d>>>0>=c>>>0){f=Yn(a);h=f;d=c;if(c){jp(h,b,d)}g[e+15|0]=0;_n(c+f|0,e+15|0);fo(a,c);break a}f=a;a=Sn(a);vo(f,d,c-d|0,a,0,a,c,b)}F=e+16|0}function Zc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=-1;e=i[a+16>>2];a:{if(i[a+20>>2]-e>>2<=(b|0)){break a}b=i[(b<<2)+e>>2];if((b|0)<0){break a}d=i[i[i[i[a+36>>2]+(b<<2)>>2]+16>>2]+(c<<2)>>2]}return d|0}function Yc(a,b){a=a|0;b=b|0;var c=0,d=0;d=i[a+16>>2];c=0;a:{if(i[a+20>>2]-d>>2<=(b|0)){break a}b=i[(b<<2)+d>>2];c=0;if((b|0)<0){break a}a=i[i[a+36>>2]+(b<<2)>>2];c=i[a+20>>2]-i[a+16>>2]>>2}return c|0}function Bc(a){i[a+32>>2]=0;i[a+12>>2]=-1;i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=1860;i[a+16>>2]=0;i[a+20>>2]=0;g[a+21|0]=0;g[a+22|0]=0;g[a+23|0]=0;g[a+24|0]=0;g[a+25|0]=0;g[a+26|0]=0;g[a+27|0]=0;g[a+28|0]=0}function xo(a,b){var c=0,d=0,e=0,f=0;e=F-16|0;F=e;if(b){d=Tn(a);c=Sn(a);f=c+b|0;if(d-c>>>0>>0){zo(a,d,f-d|0,c,c)}d=c;c=Yn(a);d=d+c|0;if(b){ip(d,0,b)}fo(a,f);g[e+15|0]=0;_n(c+f|0,e+15|0)}F=e+16|0}function xj(a){i[a+52>>2]=0;i[a>>2]=13484;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;i[a+36>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;return a} - - - -function nd(a){a=a|0;var b=0;i[a>>2]=2248;b=i[a+36>>2];i[a+36>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=1860;b=i[a+32>>2];i[a+32>>2]=0;if(b){Wb(b)}b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}return a|0}function Hj(a,b){var c=0,d=0;a:{if((b|0)<0){break a}c=i[a+4>>2];if(i[c+12>>2]-i[c+8>>2]>>2<=(b|0)){break a}a=i[i[a+8>>2]+(i[i[a+20>>2]+(b<<2)>>2]<<2)>>2];d=I[i[i[a>>2]+36>>2]](a,b)|0}return d}function od(a){a=a|0;var b=0;i[a>>2]=2248;b=i[a+36>>2];i[a+36>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}i[a>>2]=1860;b=i[a+32>>2];i[a+32>>2]=0;if(b){Wb(b)}b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}bp(a)}function Ea(a){Ba(a);i[a+64>>2]=0;i[a+68>>2]=0;i[a+88>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;g[a+77|0]=0;g[a+78|0]=0;g[a+79|0]=0;g[a+80|0]=0;g[a+81|0]=0;g[a+82|0]=0;g[a+83|0]=0;g[a+84|0]=0;return a}function Mc(a,b,c){Fb(a,c);i[a+36>>2]=0;i[a+40>>2]=0;i[a>>2]=2032;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+68>>2]=0;c=i[b>>2];i[b>>2]=0;i[a+72>>2]=c}function Da(a,b,c,d){var e=0;i[a>>2]=b;e=i[b+20>>2];i[a+8>>2]=i[b+16>>2];i[a+12>>2]=e;e=i[b+24>>2];b=i[b+28>>2];i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=c;i[a+44>>2]=d;i[a+16>>2]=e;i[a+20>>2]=b}function kp(a){var b=0;b=j[a+74|0];g[a+74|0]=b+ -1|b;b=i[a>>2];if(b&8){i[a>>2]=b|32;return-1}i[a+4>>2]=0;i[a+8>>2]=0;b=i[a+44>>2];i[a+28>>2]=b;i[a+20>>2]=b;i[a+16>>2]=b+i[a+48>>2];return 0}function Ba(a){i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+28>>2]=9;g[a+24|0]=1;i[a+56>>2]=-1;i[a+60>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;return a}function On(a,b){var c=0,d=0;c=j[a|0];d=j[b|0];a:{if(!c|(c|0)!=(d|0)){break a}while(1){d=j[b+1|0];c=j[a+1|0];if(!c){break a}b=b+1|0;a=a+1|0;if((c|0)==(d|0)){continue}break}}return c-d|0}function Zl(a,b){a=a|0;b=b|0;var c=0,d=0;Cm(a,b);a:{if((b|0)<0){break a}c=i[a+88>>2];d=i[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){jp(b,d,c)}i[a+88>>2]=b+c}}function zn(a,b,c,d,e,f,g,h,j){var k=0;k=F-16|0;F=k;tn(k,b,c,d,e,f,g,h,j^-2147483648);b=i[k+4>>2];i[a>>2]=i[k>>2];i[a+4>>2]=b;b=i[k+12>>2];i[a+8>>2]=i[k+8>>2];i[a+12>>2]=b;F=k+16|0}function yk(a,b){var c=0;if(b){yk(a,i[b>>2]);yk(a,i[b+4>>2]);c=b+28|0;a=i[c>>2];i[c>>2]=0;if(a){yk(a+12|0,i[a+16>>2]);zk(a,i[a+4>>2]);bp(a)}if(g[b+27|0]<=-1){bp(i[b+16>>2])}bp(b)}}function cp(a){var b=0,c=0;b=i[4804];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?(c|0)>=1:0){break a}if(a>>>0>Ip()<<16>>>0){if(!(D(a|0)|0)){break a}}i[4804]=a;return b}i[4805]=48;return-1}function Gj(a,b){var c=0;a:{if((b|0)<0){break a}c=i[a+4>>2];if(i[c+12>>2]-i[c+8>>2]>>2<=(b|0)){break a}a=i[i[a+8>>2]+(i[i[a+20>>2]+(b<<2)>>2]<<2)>>2];I[i[i[a>>2]+32>>2]](a,b)|0}}function ro(a,b){var c=0,d=0,e=0;d=F-16|0;F=d;c=a;a:{if(!Wn(b)){i[c+8>>2]=i[b+8>>2];e=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=e;break a}so(a,i[b>>2],i[b+4>>2])}F=d+16|0;return a}function dj(a){a=a|0;var b=0;i[a+8>>2]=11784;i[a>>2]=12880;b=i[a+56>>2];if(b){i[a+60>>2]=b;bp(b)}i[a+8>>2]=12036;b=i[a+44>>2];if(b){bp(b)}b=i[a+32>>2];if(b){bp(b)}return a|0}function Zi(a){a=a|0;var b=0;i[a+8>>2]=12752;i[a>>2]=12588;b=i[a+56>>2];if(b){i[a+60>>2]=b;bp(b)}i[a+8>>2]=12568;b=i[a+44>>2];if(b){bp(b)}b=i[a+32>>2];if(b){bp(b)}return a|0}function ej(a){a=a|0;var b=0;i[a+8>>2]=11784;i[a>>2]=12880;b=i[a+56>>2];if(b){i[a+60>>2]=b;bp(b)}i[a+8>>2]=12036;b=i[a+44>>2];if(b){bp(b)}b=i[a+32>>2];if(b){bp(b)}bp(a)}function _i(a){a=a|0;var b=0;i[a+8>>2]=12752;i[a>>2]=12588;b=i[a+56>>2];if(b){i[a+60>>2]=b;bp(b)}i[a+8>>2]=12568;b=i[a+44>>2];if(b){bp(b)}b=i[a+32>>2];if(b){bp(b)}bp(a)}function Km(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}while(1){d=j[a|0];e=j[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}f=d-e|0}return f}function Qb(a,b){Fb(a,b);i[a+36>>2]=0;i[a+40>>2]=0;i[a>>2]=1596;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+68>>2]=0;i[a+72>>2]=0}function zl(a,b){var c=0;a:{if(i[a+4>>2]|!a){break a}c=ho(36);lm(c,b);i[c+32>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;b=i[a+4>>2];i[a+4>>2]=c;c=1;if(!b){break a}Al(b)}return c}function Fo(a,b,c,d){var e=0,f=0,g=0,h=0;f=a;a:{b:{e=c-b|0;if((e|0)<=9){if((Go(d)|0)>(e|0)){break b}}g=a,h=jo(d,b),i[g>>2]=h;a=0;break a}i[a>>2]=c;a=61}i[f+4>>2]=a}function hg(a){var b=0,c=0,d=0;b=i[a+12>>2];a=i[a+16>>2];c=(((b-a|0)+1|0)/64|0)+a<<3;b=c;a=a<<3;d=a;b=b+a|0;a=(c>>31)+(a>>31)|0;a=b>>>0>>0?a+1|0:a;H=a;return b}function W(a,b){a=a|0;b=b|0;var c=0;b=i[b+88>>2];if(!(!b|i[b>>2]!=2)){c=a;a=i[b+8>>2];i[c+4>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24);c=1}return c|0}function Gh(a){a=a|0;var b=0;a:{b=i[a+64>>2];if(!b){break a}b=I[i[i[b>>2]+32>>2]](b)|0;if(!b){break a}i[a+60>>2]=((i[b+4>>2]-i[b>>2]>>2>>>0)/3|0)-i[b+40>>2]}}function Mb(a,b){a=a|0;b=b|0;a:{if(!(I[i[i[a>>2]+40>>2]](a)|0)){break a}if(!(I[i[i[a>>2]+44>>2]](a,b)|0)){break a}return I[i[i[a>>2]+48>>2]](a,b)|0}return 0}function yo(a,b){var c=0,d=0;c=F-16|0;F=c;a:{if(Wn(a)){d=i[a>>2];g[c+15|0]=0;_n(b+d|0,c+15|0);aa(a,b);break a}g[c+14|0]=0;_n(a+b|0,c+14|0);$n(a,b)}F=c+16|0}function _h(a){a=a|0;var b=0;i[a>>2]=11784;b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}i[a>>2]=12036;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}return a|0}function Yi(a){a=a|0;var b=0;i[a>>2]=12752;b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}i[a>>2]=12568;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}return a|0}function Um(a){var b=0,c=0,d=0;if(Mm(g[i[a>>2]])){while(1){b=i[a>>2];d=g[b|0];i[a>>2]=b+1;c=(o(c,10)+d|0)+ -48|0;if(Mm(g[b+1|0])){continue}break}}return c}function Nj(a,b,c){var d=0,e=0,f=0;if((b|0)>0){while(1){f=d<<2;e=i[f+a>>2];i[c+f>>2]=(e|0)>-1?e<<1:(e^-1)<<1|1;d=d+1|0;if((d|0)!=(b|0)){continue}break}}}function cj(a){a=a|0;var b=0;i[a>>2]=12752;b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}i[a>>2]=12568;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}bp(a)}function Ii(a){a=a|0;var b=0;i[a>>2]=11784;b=i[a+48>>2];if(b){i[a+52>>2]=b;bp(b)}i[a>>2]=12036;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}bp(a)}function jo(a,b){var c=0,d=0;if(a>>>0<=99999999){return ko(b,a)}c=(a>>>0)/1e8|0;d=a-o(c,1e8)|0;a=(d>>>0)/1e4|0;return mo(mo(lo(b,c),a),d-o(a,1e4)|0)}function jm(a,b){var c=0,d=0;a:{d=i[b>>2];if(!d){break a}c=i[a+28>>2];if(c>>>0>2]){i[b>>2]=0;i[c>>2]=d;i[a+28>>2]=c+4;break a}km(a+24|0,b)}}function bk(a,b){a:{b=uc(a,b);if((b|0)==(a+4|0)){break a}a=b+28|0;if(g[b+39|0]<=-1){a=i[a>>2]}a=bn(a);if((a|0)==-1){break a}return(a|0)!=0}return 0}function _o(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(Qo(a,i[b+8>>2],f)){Wo(b,c,d,e);return}a=i[a+8>>2];I[i[i[a>>2]+20>>2]](a,b,c,d,e,f)}function Ud(a){a=a|0;var b=0;a:{if(!i[a- -64>>2]|!i[a+68>>2]|(!i[a+44>>2]|!i[a+48>>2])){break a}if(!i[a+52>>2]){break a}b=i[a+56>>2]!=0}return b|0}function ck(a,b,c){b=uc(a,b);a:{if((b|0)==(a+4|0)){break a}a=b+28|0;if(g[b+39|0]<=-1){a=i[a>>2]}a=bn(a);if((a|0)==-1){break a}c=(a|0)!=0}return c}function Me(a){a=a|0;var b=0;a:{if(!i[a+48>>2]|!i[a+52>>2]|(!i[a+28>>2]|!i[a+32>>2])){break a}if(!i[a+36>>2]){break a}b=i[a+40>>2]!=0}return b|0}function Qn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=i[a+20>>2];d=i[a+16>>2]-e|0;d=d>>>0>c>>>0?c:d;hp(e,b,d);i[a+20>>2]=d+i[a+20>>2];return c|0}function gp(a,b,c,d){var e=0,f=0;f=d&65535;d=d>>>16&32767;a:{if((d|0)!=32767){e=4;if(d){break a}return a|c|(b|f)?3:2}e=!(a|c|(b|f))}return e}function dn(a){var b=0,c=0;b=F-16|0;F=b;c=-1;a:{if(cn(a)){break a}if((I[i[a+32>>2]](a,b+15|0,1)|0)!=1){break a}c=j[b+15|0]}F=b+16|0;return c}function ym(a){var b=0,c=0;b=i[a+20>>2];a:{if((i[a+24>>2]-b|0)<1){break a}b=i[b>>2];if((b|0)==-1){break a}c=i[i[a+8>>2]+(b<<2)>>2]}return c}function xm(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=o(b,12)+a|0;a=i[b+20>>2];if((i[b+24>>2]-a|0)<1){break a}c=i[a>>2]}return c}function $m(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b;b=i[b>>2]+15&-16;i[c>>2]=b+16;d=a,e=Dn(i[b>>2],i[b+4>>2],i[b+8>>2],i[b+12>>2]),n[d>>3]=e}function Wm(a,b,c,d){if(a|b){while(1){c=c+ -1|0;g[c|0]=j[(a&15)+17488|0]|d;a=(b&15)<<28|a>>>4;b=b>>>4|0;if(a|b){continue}break}}return c}function Ul(a){a=a|0;var b=0;i[a>>2]=16592;b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+84>>2];if(b){i[a+88>>2]=b;bp(b)}Vl(a);return a|0}function Co(a,b){var c=0,d=0;c=F-16|0;F=c;d=F-16|0;F=d;Vn(c);F=d+16|0;Un(c,Tn(c));Do(a,c,b);a=c;if(Wn(c)){d=i[a>>2];Xn(a);bp(d)}F=c+16|0}function no(a,b){var c=0;if(b>>>0<=99){return lo(a,b)}if(b>>>0<=999){c=a;a=(b>>>0)/100|0;return po(oo(c,a),b-o(a,100)|0)}return mo(a,b)}function Wl(a){a=a|0;var b=0;i[a>>2]=16592;b=i[a+96>>2];if(b){i[a+100>>2]=b;bp(b)}b=i[a+84>>2];if(b){i[a+88>>2]=b;bp(b)}Vl(a);bp(a)}function zk(a,b){if(b){zk(a,i[b>>2]);zk(a,i[b+4>>2]);a=i[b+28>>2];if(a){i[b+32>>2]=a;bp(a)}if(g[b+27|0]<=-1){bp(i[b+16>>2])}bp(b)}}function pf(a){var b=0;b=F-16|0;F=b;i[b+8>>2]=0;i[b+12>>2]=0;of(a,b+8|0);i[a+24>>2]=0;i[a+28>>2]=0;i[a+16>>2]=i[a+12>>2];F=b+16|0}function en(a){var b=0,c=0;i[a+112>>2]=0;i[a+116>>2]=0;b=i[a+8>>2];c=b-i[a+4>>2]|0;i[a+120>>2]=c;i[a+124>>2]=c>>31;i[a+104>>2]=b}function ee(a){a=a|0;var b=0;i[a>>2]=5040;b=i[a+76>>2];if(b){bp(b)}i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}return a|0}function Vf(a,b){var c=0;c=a+4|0;if((c|0)!=(b|0)){xf(c,i[b>>2],b+4|0);Wf(a+16|0,i[b+12>>2],b+16|0);xf(a+28|0,i[b+24>>2],b+28|0)}}function Jc(a){a=a|0;var b=0;i[a>>2]=1860;b=i[a+32>>2];i[a+32>>2]=0;if(b){Wb(b)}b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}return a|0}function Id(a){a=a|0;var b=0;i[a>>2]=3488;b=i[a+76>>2];if(b){bp(b)}i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}return a|0}function io(a,b){var c=0,d=0,e=0,f=0;c=mp(b);d=ho(c+13|0);i[d+8>>2]=0;i[d+4>>2]=c;i[d>>2]=c;e=a,f=hp(d+12|0,b,c+1|0),i[e>>2]=f}function Kb(a){a=a|0;var b=0;i[a>>2]=1432;b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;bp(b)}return a|0}function kd(a,b){if(b){kd(a,i[b>>2]);kd(a,i[b+4>>2]);if(g[b+39|0]<=-1){bp(i[b+28>>2])}if(g[b+27|0]<=-1){bp(i[b+16>>2])}bp(b)}}function ak(a,b){var c=p(0);b=uc(a,b);if((b|0)!=(a+4|0)){a=b+28|0;if(g[b+39|0]<=-1){a=i[a>>2]}c=p(pn(a))}else{c=p(1)}return c}function Vo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Qo(a,i[b+8>>2],0)){To(b,c,d);return}a=i[a+8>>2];I[i[i[a>>2]+28>>2]](a,b,c,d)}function fe(a){a=a|0;var b=0;i[a>>2]=5040;b=i[a+76>>2];if(b){bp(b)}i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}bp(a)}function Sl(a){wm(a);i[a+84>>2]=0;i[a+88>>2]=0;i[a>>2]=16592;i[a+92>>2]=0;i[a+96>>2]=0;i[a+100>>2]=0;i[a+104>>2]=0;return a}function Kc(a){a=a|0;var b=0;i[a>>2]=1860;b=i[a+32>>2];i[a+32>>2]=0;if(b){Wb(b)}b=i[a+16>>2];if(b){i[a+20>>2]=b;bp(b)}bp(a)}function Jd(a){a=a|0;var b=0;i[a>>2]=3488;b=i[a+76>>2];if(b){bp(b)}i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}bp(a)}function mf(a){i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;return a}function ho(a){var b=0;a=a?a:1;a:{while(1){b=ap(a);if(b){break a}b=i[4822];if(b){I[b|0]();continue}break}C();x()}return b}function Xm(a,b,c){if(a|b){while(1){c=c+ -1|0;g[c|0]=a&7|48;a=(b&7)<<29|a>>>3;b=b>>>3|0;if(a|b){continue}break}}return c}function Uj(a,b){var c=0,d=0;d=i[a>>2];c=i[a+4>>2]-d|0;if(c>>>0>>0){Qj(a,b-c|0);return}if(c>>>0>b>>>0){i[a+4>>2]=b+d}}function wk(){var a=0;a=ho(24);i[a+4>>2]=0;i[a+8>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a>>2]=a+4;i[a+12>>2]=a+16;return a|0}function nn(a,b){var c=0,d=p(0);c=F-16|0;F=c;on(c,a,b,0);d=wn(i[c>>2],i[c+4>>2],i[c+8>>2],i[c+12>>2]);F=c+16|0;return d}function qa(a,b,c,d,e){var f=0;f=b+ -1|0;if(f>>>0<=29){i[a+4>>2]=b;ra(a+8|0,c,(d<<2)+c|0);m[a+20>>2]=e}return f>>>0<30}function ma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(i[c>>2]==i[c+4>>2]){na(a,b,i[d+80>>2],d);return 1}oa(a,b,c,d);return 1}function Bo(a,b){var c=0;c=F-32|0;F=c;Eo(c+8|0,c+21|0,c+32|0,b);b=F-16|0;F=b;go(a,c+21|0,i[c+8>>2]);F=b+16|0;F=c+32|0}function ie(a){a=a|0;var b=0;i[a>>2]=5264;nf(a+112|0);i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}return a|0}function gn(a,b,c,d,e,f,g,h,j){i[a>>2]=b;i[a+4>>2]=c;i[a+8>>2]=d;i[a+12>>2]=e&65535|(j>>>16&32768|e>>>16&32767)<<16}function Rf(a,b){i[a>>2]=10308;Qf(a+4|0);i[a+40>>2]=0;i[a+44>>2]=0;i[a+52>>2]=b;i[a+48>>2]=b;i[a>>2]=10492;return a}function Rd(a){a=a|0;var b=0;i[a>>2]=3724;nf(a+112|0);i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}return a|0}function Pf(a,b){i[a>>2]=10308;Qf(a+4|0);i[a+40>>2]=0;i[a+44>>2]=0;i[a+52>>2]=0;i[a+48>>2]=b;i[a>>2]=10492;return a}function Cc(a,b,c){a=a|0;b=b|0;c=c|0;i[a+4>>2]=b;b=i[i[i[b+4>>2]+8>>2]+(c<<2)>>2];i[a+12>>2]=c;i[a+8>>2]=b;return 1}function $e(a){ed(a);i[a+48>>2]=0;i[a+52>>2]=0;i[a+44>>2]=-1;i[a+40>>2]=1140;i[a>>2]=9756;i[a+56>>2]=0;i[a+60>>2]=0}function pn(a){var b=0,c=0;b=F-16|0;F=b;on(b,a,0,1);c=Dn(i[b>>2],i[b+4>>2],i[b+8>>2],i[b+12>>2]);F=b+16|0;return c}function cg(a){i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0}function Ld(a){a=a|0;var b=0;if(!(!i[a+60>>2]|!i[a+44>>2]|(!i[a+48>>2]|!i[a+52>>2]))){b=i[a+56>>2]!=0}return b|0}function Ge(a){a=a|0;var b=0;if(!(!i[a+44>>2]|!i[a+28>>2]|(!i[a+32>>2]|!i[a+36>>2]))){b=i[a+40>>2]!=0}return b|0}function al(a){a=a|0;if(a){i[a>>2]=10384;kd(a+28|0,i[a+32>>2]);Bf(a+16|0,i[a+20>>2]);kd(a+4|0,i[a+8>>2]);bp(a)}}function je(a){a=a|0;var b=0;i[a>>2]=5264;nf(a+112|0);i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}bp(a)}function bg(a,b){var c=0,d=0;if(!(!a|!b|(a|0)==(b|0))){c=+(b>>>0)/+(a>>>0);d=1-c;c=-(c*ep(c)+d*ep(d))}return c}function Sd(a){a=a|0;var b=0;i[a>>2]=3724;nf(a+112|0);i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}bp(a)}function Qo(a,b,c){if(!c){return i[a+4>>2]==i[b+4>>2]}if((a|0)==(b|0)){return 1}return!On(i[a+4>>2],i[b+4>>2])}function zf(a){a=a|0;i[a>>2]=10308;kd(a+28|0,i[a+32>>2]);wf(a+16|0,i[a+20>>2]);kd(a+4|0,i[a+8>>2]);return a|0}function Oj(a){i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;return a}function Hf(a){a=a|0;i[a>>2]=10384;kd(a+28|0,i[a+32>>2]);Bf(a+16|0,i[a+20>>2]);kd(a+4|0,i[a+8>>2]);return a|0}function Tj(a){i[a>>2]=0;i[a+4>>2]=0;g[a+24|0]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;return a}function Mo(a){var b=0,c=0;a:{b=i[a>>2]+ -12|0;c=b+8|0;a=i[c>>2]+ -1|0;i[c>>2]=a;if((a|0)>-1){break a}bp(b)}}function ko(a,b){var c=0;if(b>>>0<=9999){return no(a,b)}c=a;a=(b>>>0)/1e4|0;return mo(no(c,a),b-o(a,1e4)|0)}function za(a){var b=0;b=A(8)|0;i[b>>2]=18596;i[b>>2]=18640;io(b+4|0,a);i[b>>2]=18688;B(b|0,18720,13);x()}function Tk(){var a=0;a=ho(48);i[a>>2]=10384;tf(a+4|0);i[a+40>>2]=0;i[a+44>>2]=0;i[a>>2]=10112;return a|0}function _j(a,b){b=uc(a,b);if((b|0)==(a+4|0)){return-1}a=b+28|0;if(g[b+39|0]<=-1){a=i[a>>2]}return bn(a)}function Jf(a){a=a|0;i[a>>2]=10308;kd(a+28|0,i[a+32>>2]);wf(a+16|0,i[a+20>>2]);kd(a+4|0,i[a+8>>2]);bp(a)}function If(a){a=a|0;i[a>>2]=10384;kd(a+28|0,i[a+32>>2]);Bf(a+16|0,i[a+20>>2]);kd(a+4|0,i[a+8>>2]);bp(a)}function Wi(a){a=a|0;var b=0;i[a>>2]=12568;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}return a|0}function Ji(a){a=a|0;var b=0;i[a>>2]=12036;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}return a|0}function $j(a,b,c){b=uc(a,b);if((b|0)!=(a+4|0)){a=b+28|0;if(g[b+39|0]<=-1){a=i[a>>2]}c=bn(a)}return c}function xd(a){a=a|0;var b=0;if(!(!i[a+52>>2]|(!i[a+44>>2]|!i[a+48>>2]))){b=i[a+56>>2]!=0}return b|0}function we(a){a=a|0;var b=0;if(!(!i[a+36>>2]|(!i[a+28>>2]|!i[a+32>>2]))){b=i[a+40>>2]!=0}return b|0}function Xi(a){a=a|0;var b=0;i[a>>2]=12568;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}bp(a)}function Ki(a){a=a|0;var b=0;i[a>>2]=12036;b=i[a+36>>2];if(b){bp(b)}b=i[a+24>>2];if(b){bp(b)}bp(a)}function Vd(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a- -64>>2]=b;c=1}return c|0}function jf(a){var b=0;i[a+12>>2]=0;i[a+16>>2]=0;b=i[a>>2];i[a+4>>2]=b;if(b){i[a+4>>2]=b;bp(b)}}function Ne(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a+48>>2]=b;c=1}return c|0}function Md(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a+60>>2]=b;c=1}return c|0}function He(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a+44>>2]=b;c=1}return c|0}function $o(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(Qo(a,i[b+8>>2],f)){Wo(b,c,d,e)}}function Go(a){var b=0;b=o(32-r(a|1)|0,1233)>>>12|0;return(b-(l[(b<<2)+18496>>2]>a>>>0)|0)+1|0}function Vn(a){var b=0;b=a;a=0;while(1){if((a|0)!=3){i[(a<<2)+b>>2]=0;a=a+1|0;continue}break}}function ao(a){var b=0;if(a>>>0>=11){b=a+16&-16;a=b+ -1|0;a=(a|0)==11?b:a}else{a=10}return a}function ud(a){a=a|0;var b=0;i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}return a|0}function va(a){a=a|0;var b=0;i[a>>2]=1140;b=i[a+8>>2];if(b){i[a+12>>2]=b;bp(b)}return a|0}function kl(a){a=a|0;var b=0;if(a){b=i[a>>2];i[a>>2]=0;if(b){I[i[i[b>>2]+4>>2]](b)}bp(a)}}function yp(a,b){var c=0,d=0;c=b&31;d=(-1>>>c&a)<>>a}function Eo(a,b,c,d){if(!((b|0)==(c|0)|(d|0)>-1)){g[b|0]=45;d=0-d|0;b=b+1|0}Fo(a,b,c,d)}function sj(a){a=a|0;var b=0;b=a;a=i[a+56>>2];i[b+60>>2]=(i[a+100>>2]-i[a+96>>2]|0)/12}function xp(a){var b=0,c=0;while(1){c=b;if(a){a=a-1&a;b=b+1|0;continue}break}return c}function vd(a){a=a|0;var b=0;i[a>>2]=3184;b=i[a+32>>2];if(b){i[a+36>>2]=b;bp(b)}bp(a)}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;return wl(b,c,d,e,f,6)|0}function Ok(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 wl(b,c,d,e,f,5)|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;return yl(b,c,d,e,f,4)|0}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;return yl(b,c,d,e,f,3)|0}function Lk(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 xl(b,c,d,e,f,2)|0}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;return xl(b,c,d,e,f,1)|0}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;return wl(b,c,d,e,f,9)|0}function wa(a){a=a|0;var b=0;i[a>>2]=1140;b=i[a+8>>2];if(b){i[a+12>>2]=b;bp(b)}bp(a)}function el(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=p(f);Zf(i[a>>2],b,c,d,e,f)}function Rn(a,b,c){var d=0;d=F-16|0;F=d;i[d+12>>2]=c;a=Pn(a,b,c);F=d+16|0;return a}function wf(a,b){if(b){wf(a,i[b>>2]);wf(a,i[b+4>>2]);kd(b+20|0,i[b+24>>2]);bp(b)}}function Bf(a,b){if(b){Bf(a,i[b>>2]);Bf(a,i[b+4>>2]);kd(b+20|0,i[b+24>>2]);bp(b)}}function Eh(a,b){a=a|0;b=b|0;var c=0;c=a;a=i[b+64>>2];I[i[i[a>>2]+28>>2]](c,a)}function Wk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=p(f);Ef(a,b,c,d,e,f)}function Uo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Qo(a,i[b+8>>2],0)){To(b,c,d)}}function Ue(a){a=a|0;var b=0;i[a>>2]=8668;b=i[a+60>>2];if(b){bp(b)}return a|0}function Ee(a){a=a|0;var b=0;i[a>>2]=7032;b=i[a+60>>2];if(b){bp(b)}return a|0}function ri(a,b){a=a|0;b=b|0;return i[i[a+28>>2]+(b>>>3&536870908)>>2]>>>b&1}function nm(a,b,c){var d=0;d=F-16|0;F=d;i[d+12>>2]=c;om(a,b,d+12|0);F=d+16|0}function mo(a,b){var c=0;c=a;a=(b>>>0)/100|0;return po(po(c,a),b-o(a,100)|0)}function wo(a,b){var c=0;c=Sn(a);if(c>>>0>>0){xo(a,b-c|0);return}yo(a,b)}function Lh(a,b){a=a|0;b=b|0;a=i[a+64>>2];return I[i[i[a>>2]+16>>2]](a,b)|0}function Kh(a,b){a=a|0;b=b|0;a=i[a+64>>2];return I[i[i[a>>2]+12>>2]](a,b)|0}function Ij(a,b){a=a|0;b=b|0;i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}function Dk(a){a=a|0;var b=0;if(a){b=i[a>>2];if(b){i[a+4>>2]=b;bp(b)}bp(a)}}function Dh(a,b){a=a|0;b=b|0;a=i[a+64>>2];return I[i[i[a>>2]+24>>2]](a,b)|0}function Ch(a,b){a=a|0;b=b|0;a=i[a+64>>2];return I[i[i[a>>2]+20>>2]](a,b)|0}function Ak(){var a=0;a=ho(12);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;return a|0}function sm(a,b,c){var d=0;d=F-16|0;F=d;n[d+8>>3]=c;tm(a,b,d+8|0);F=d+16|0}function po(a,b){b=k[(b<<1)+18272>>1];g[a|0]=b;g[a+1|0]=b>>>8;return a+2|0}function hf(a){i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}function Y(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Z(a,b,c,i[d+80>>2],d)|0}function Sj(a){a=a+ -1|0;if(a>>>0<=10){return i[(a<<2)+16240>>2]}return-1}function Nn(a,b){var c=0,d=0;c=F-16|0;F=c;d=Kn(a,b);F=c+16|0;return d?b:a}function Hk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ul(b,c,d,e)|0}function Ve(a){a=a|0;var b=0;i[a>>2]=8668;b=i[a+60>>2];if(b){bp(b)}bp(a)}function Fe(a){a=a|0;var b=0;i[a>>2]=7032;b=i[a+60>>2];if(b){bp(b)}bp(a)}function Ec(a,b,c){a=a|0;b=b|0;c=c|0;return I[i[i[a>>2]+44>>2]](a,b,c)|0}function xk(a){a=a|0;if(a){yk(a+12|0,i[a+16>>2]);zk(a,i[a+4>>2]);bp(a)}}function uj(a,b){a=a|0;b=b|0;g[b+84|0]=1;i[b+72>>2]=i[b+68>>2];return 1}function Zd(a,b){a=a|0;b=b|0;if(b>>>0<=1){i[a+28>>2]=b}return b>>>0<2|0}function Hb(a,b,c){a=a|0;b=b|0;c=c|0;i[a+32>>2]=c;i[a+28>>2]=b;return 1}function Xo(a,b,c){if(!(i[a+28>>2]==1|i[a+4>>2]!=(b|0))){i[a+28>>2]=c}}function Hn(a,b,c){var d=0;d=F-16|0;F=d;a=Jn(a,b,c);F=d+16|0;return a}function _k(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Gl(a,b,c,d)|0}function Jh(a){a=a|0;a=i[a+64>>2];return I[i[i[a>>2]+32>>2]](a)|0}function Sk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Cl(b,c,d)|0}function Rk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Bl(b,c,d)|0}function Gk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return tl(b,c,d)|0}function Fk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return sl(b,c,d)|0}function Dc(a,b){a=a|0;b=b|0;i[a+12>>2]=-1;i[a+8>>2]=b;return 1}function qp(a,b){a=a|0;b=b|0;if(!i[4947]){i[4948]=b;i[4947]=a}}function bo(a){if(4294967295>>0){za(18200);x()}return ho(a)}function Ik(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return vl(b,c,d)|0}function lj(a){xj(a);i[a+56>>2]=0;i[a+60>>2]=0;i[a>>2]=13060}function lo(a,b){if(b>>>0<=9){return oo(a,b)}return po(a,b)}function Xj(a){i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=a+4;return a}function uk(a){a=a|0;return(i[a+100>>2]-i[a+96>>2]|0)/12|0}function kf(a){i[a+12>>2]=0;i[a+16>>2]=0;i[a+4>>2]=i[a>>2]}function Sn(a){if(Wn(a)){return i[a+4>>2]}return j[a+11|0]}function zp(a){if(a){return 31-r(a+ -1^a)|0}return 32} - - - -function Tn(a){if(Wn(a)){a=Xn(a)+ -1|0}else{a=10}return a}function fl(a,b,c){a=a|0;b=b|0;c=c|0;Xf(i[a>>2]+4|0,b,c)}function hl(a,b,c){a=a|0;b=b|0;c=c|0;return Il(a,b,c)|0}function Zk(a,b,c){a=a|0;b=b|0;c=c|0;return Fl(a,b,c)|0}function Xe(a){a=a|0;i[a>>2]=8916;nf(a+96|0);return a|0}function Lo(a){a=a|0;i[a>>2]=18640;Mo(a+4|0);return a|0}function Ke(a){a=a|0;i[a>>2]=7292;nf(a+96|0);return a|0}function Qk(a,b,c){a=a|0;b=b|0;c=c|0;return zl(b,c)|0}function wm(a){i[a>>2]=16864;ip(a+4|0,0,80);return a}function to(a,b){if((a|0)!=(b|0)){uo(a,Yn(b),Sn(b))}}function dl(a,b,c){a=a|0;b=b|0;c=c|0;Yf(i[a>>2],b,c)}function rk(a){a=a|0;return i[a+12>>2]-i[a+8>>2]>>2}function rj(a){a=a|0;i[a+52>>2]=i[i[a+56>>2]+80>>2]}function pe(a,b){a=a|0;b=b|0;return ba(a+40|0,b)|0}function bf(a,b){a=a|0;b=b|0;return ta(a+40|0,b)|0}function Ye(a){a=a|0;i[a>>2]=8916;nf(a+96|0);bp(a)}function Xk(a,b,c){a=a|0;b=b|0;c=c|0;Cf(a+4|0,b,c)}function Lj(a){a=a|0;i[a+52>>2]=i[i[a+4>>2]+80>>2]}function Le(a){a=a|0;i[a>>2]=7292;nf(a+96|0);bp(a)}function Bk(a,b){a=a|0;b=b|0;return g[i[a>>2]+b|0]}function sk(a){a=a|0;if(a){I[i[i[a>>2]+4>>2]](a)}}function fo(a,b){if(Wn(a)){aa(a,b);return}$n(a,b)}function Yn(a){if(Wn(a)){return i[a>>2]}return a}function Pm(a,b){if(!a){return 0}return Om(a,b)}function Ck(a){a=a|0;return i[a+4>>2]-i[a>>2]|0}function ed(a){Bc(a);i[a+36>>2]=0;i[a>>2]=2248}function Vk(a,b,c){a=a|0;b=b|0;c=c|0;Df(a,b,c)}function Tm(a,b,c){if(!(j[a|0]&32)){lp(b,c,a)}}function ya(a,b){a=a|0;b=b|0;return g[b+24|0]}function pp(a){a=a|0;a=F-a&-16;F=a;return a|0}function Ob(a,b,c){a=a|0;b=b|0;c=c|0;return-1}function jl(a){a=a|0;return i[i[a>>2]+44>>2]}function il(a){a=a|0;return i[i[a>>2]+40>>2]}function wp(a,b,c,d){a=tp(a,b,c,d);return a}function vp(a,b,c,d){a=sp(a,b,c,d);return a}function up(a,b,c,d){a=rp(a,b,c,d);return a}function gl(a,b){a=a|0;b=b|0;El(i[a>>2],b)}function dk(a){i[a>>2]=1065353216;return a}function cl(a,b){a=a|0;b=b|0;_f(i[a>>2],b)}function an(a){return(a|0)==32|a+ -9>>>0<5}function Xn(a){return i[a+8>>2]&2147483647}function vk(a,b){a=a|0;b=b|0;i[a+80>>2]=b}function oo(a,b){g[a|0]=b+48;return a+1|0}function bl(a){a=a|0;return Hl(ho(8),a)|0}function eo(a,b){i[a+8>>2]=b|-2147483648}function Kn(a,b){return l[a>>2]>2]}function qi(a){a=a|0;return i[a+12>>2]}function pk(a){a=a|0;return i[a+60>>2]}function ok(a){a=a|0;return i[a+48>>2]}function nk(a){a=a|0;return i[a+40>>2]}function kk(a){a=a|0;return i[a+56>>2]}function jk(a){a=a|0;return i[a+80>>2]}function _d(a){a=a|0;return i[a+28>>2]}function $k(a){a=a|0;return i[a+44>>2]}function yd(a,b){a=a|0;b=b|0;return-1}function wd(a){a=a|0;return i[a+4>>2]}function mk(a){a=a|0;return j[a+32|0]}function lk(a){a=a|0;return g[a+24|0]}function ia(a,b){a=a|0;b=b|0;return 2}function ha(a,b){a=a|0;b=b|0;return 6}function Wn(a){return j[a+11|0]>>>7|0}function Pb(a,b){a=a|0;b=b|0;return 1}function Oo(a){a=a|0;return i[a+4>>2]}function Nb(a,b){a=a|0;b=b|0;return 0}function Yk(a,b){a=a|0;b=b|0;El(a,b)}function Uk(a,b){a=a|0;b=b|0;Gf(a,b)}function ek(a,b,c){m[a>>2]=p(c|0)/b}function Mm(a){return a+ -48>>>0<10}function Ln(a,b,c){if(c){hp(a,b,c)}}function Gn(a,b,c){return Hn(a,b,c)}function tk(){return Sl(ho(108))|0}function fg(a,b,c,d){eg(a,b,c,d,1)}function dg(a,b,c,d){eg(a,b,c,d,0)}function qk(){return wm(ho(84))|0}function ik(){return Ea(ho(96))|0}function hk(){return Ba(ho(64))|0}function gk(a){a=a|0;if(a){bp(a)}}function Ko(a){a=a|0;return 18573}function Po(a){a=a|0;Lo(a);bp(a)}function ea(a){a=a|0;return a|0}function Mn(a,b){return Nn(a,b)}function tc(a){a=a|0;bp(sc(a))}function ce(a){a=a|0;bp(be(a))}function _n(a,b){g[a|0]=j[b|0]}function Xc(a){a=a|0;bp(Wc(a))}function No(a){a=a|0;bp(Lo(a))}function Im(a){a=a|0;bp(Vl(a))}function Hi(a){a=a|0;bp(Gi(a))}function Fi(a){a=a|0;bp(Ei(a))}function Dd(a){a=a|0;bp(Cd(a))}function xa(a){a=a|0;return 1}function re(a){a=a|0;return 3}function ga(a){a=a|0;return 2}function Td(a){a=a|0;return 6}function Lc(a){a=a|0;return 0}function Kd(a){a=a|0;return 5}function Ed(a){a=a|0;return 4}function aa(a,b){i[a+4>>2]=b}function Ek(){return ho(1)|0}function $n(a,b){g[a+11|0]=b}function qo(){za(18472);x()}function Ho(){za(18536);x()}function fk(){return 16284}function fa(a){a=a|0;bp(a)}function co(a,b){i[a>>2]=b}function Lm(){return 19220}function Gc(a){g[a+28|0]=1}function op(a){a=a|0;F=a}function np(){return F|0}function dm(a,b){em(a,b)}function Un(a,b){wo(a,b)}function Lb(a){a=a|0;x()}function ql(){return 4}function pl(){return 3}function ol(){return 2}function nl(){return 1}function ml(){return 0}function ll(){return-1}function Io(){In();x()}function In(){C();x()}function Zn(a){a=a|0}function Jo(){x()}function V(){} +function Gd(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;C=da-48|0;da=C;a:{b:{c:{d:{if((b|0)<0){break d}if(!b){o=1;break d}if(b>>>0>=1073741824){break b}f=b<<2;j=ra(f);H[C+36>>2]=j;H[C+32>>2]=j;B=f+j|0;H[C+40>>2]=B;r=(c|0)>1?c:1;f=r-1|0;h=f&-4;f=f&3;z=r-2>>>0>2;q=j;l=j;while(1){o=H[(y<<2)+a>>2];e:{if((c|0)<2){break e}s=1;n=h;if(z){while(1){v=(s+y<<2)+a|0;A=H[v+12>>2];m=H[v+8>>2];k=H[v+4>>2];v=H[v>>2];v=o>>>0>>0?v:o;v=k>>>0>v>>>0?k:v;v=m>>>0>v>>>0?m:v;o=v>>>0>>0?A:v;s=s+4|0;n=n-4|0;if(n){continue}break}}n=f;if(!f){break e}while(1){v=H[(s+y<<2)+a>>2];o=o>>>0>>0?v:o;s=s+1|0;n=n-1|0;if(n){continue}break}}s=o?(Q(o)^31)+1|0:1;f:{if(l>>>0>>0){H[l>>2]=s;l=l+4|0;H[C+36>>2]=l;break f}m=l-q|0;v=m>>2;k=v+1|0;if(k>>>0>=1073741824){break a}n=B-q|0;l=n>>1;n=n>>2>>>0<536870911?k>>>0>l>>>0?k:l:1073741823;j=0;g:{if(!n){break g}if(n>>>0>=1073741824){break c}j=ra(n<<2)}l=j+(v<<2)|0;H[l>>2]=s;B=(n<<2)+j|0;l=l+4|0;if((m|0)>=1){sa(j,q,m)}H[C+40>>2]=B;H[C+36>>2]=l;H[C+32>>2]=j;if(q){qa(q)}q=j}g=g>>>0>>0?o:g;y=r+y|0;if((y|0)<(b|0)){continue}break}c=0;H[C+24>>2]=0;H[C+16>>2]=0;H[C+20>>2]=0;f=l-j|0;h:{if(!f){s=0;break h}if((f|0)<=-1){break a}s=ra(f);H[C+16>>2]=s;H[C+24>>2]=(f>>2<<2)+s;G=C,J=sa(s,j,f)+f|0,H[G+20>>2]=J;c=f}i:{if(!c){break i}f=c>>31;h=(f+c^f)>>>2|0;f=(c|0)>-1?c:-1;f=N(h,(f|0)<1?f:1);f=f>>>0>1?f:1;y=f&3;j:{if(f-1>>>0<3){o=0;break j}n=f&-4;o=0;while(1){q=o<<2;f=H[q+s>>2];l=f+u|0;h=i;h=f>>>0>l>>>0?h+1|0:h;i=H[(q|4)+s>>2];l=i+l|0;f=h;f=l>>>0>>0?f+1|0:f;i=H[(q|8)+s>>2];h=i+l|0;f=h>>>0>>0?f+1|0:f;i=H[(q|12)+s>>2];l=i+h|0;u=l;i=l>>>0>>0?f+1|0:f;o=o+4|0;n=n-4|0;if(n){continue}break}}if(!y){break i}while(1){f=i;h=H[(o<<2)+s>>2];l=h+u|0;u=l;i=h>>>0>l>>>0?f+1|0:f;o=o+1|0;y=y-1|0;if(y){continue}break}}k=gg(s,c>>2,32,C);q=ea;l=H[C>>2];c=H[C+16>>2];if(c){H[C+20>>2]=c;qa(c)}v=gg(a,b,g,C);n=ea;z=H[C>>2];j=(g-z|0)/64|0;k:{if(d){c=ra(32);h=I[10824]|I[10825]<<8|(I[10826]<<16|I[10827]<<24);f=I[10820]|I[10821]<<8|(I[10822]<<16|I[10823]<<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]=h;F[c+19|0]=h>>>8;F[c+20|0]=h>>>16;F[c+21|0]=h>>>24;m=I[10818]|I[10819]<<8|(I[10820]<<16|I[10821]<<24);h=I[10814]|I[10815]<<8|(I[10816]<<16|I[10817]<<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]=m;F[c+13|0]=m>>>8;F[c+14|0]=m>>>16;F[c+15|0]=m>>>24;m=I[10810]|I[10811]<<8|(I[10812]<<16|I[10813]<<24);h=I[10806]|I[10807]<<8|(I[10808]<<16|I[10809]<<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]=m;F[c+5|0]=m>>>8;F[c+6|0]=m>>>16;F[c+7|0]=m>>>24;F[c+22|0]=0;o=H[d+4>>2];if(o){while(1){f=I[o+27|0];h=f<<24>>24<0;A=h?H[o+20>>2]:f;s=A>>>0<22;l:{m:{m=s?A:22;n:{o:{if(m){f=o+16|0;h=h?H[f>>2]:f;f=Ca(c,h,m);p:{if(!f){if(A>>>0<=22){break p}break l}if((f|0)<=-1){break l}}f=Ca(h,c,m);if(!f){break o}if((f|0)>-1){break n}break m}if(A>>>0>22){break l}}if(s){break m}}qa(c);c=ra(32);H[C>>2]=c;H[C+4>>2]=22;H[C+8>>2]=-2147483616;F[c+22|0]=0;f=I[10824]|I[10825]<<8|(I[10826]<<16|I[10827]<<24);i=I[10820]|I[10821]<<8|(I[10822]<<16|I[10823]<<24);F[c+14|0]=i;F[c+15|0]=i>>>8;F[c+16|0]=i>>>16;F[c+17|0]=i>>>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[10818]|I[10819]<<8|(I[10820]<<16|I[10821]<<24);i=I[10814]|I[10815]<<8|(I[10816]<<16|I[10817]<<24);F[c+8|0]=i;F[c+9|0]=i>>>8;F[c+10|0]=i>>>16;F[c+11|0]=i>>>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[10810]|I[10811]<<8|(I[10812]<<16|I[10813]<<24);i=I[10806]|I[10807]<<8|(I[10808]<<16|I[10809]<<24);F[c|0]=i;F[c+1|0]=i>>>8;F[c+2|0]=i>>>16;F[c+3|0]=i>>>24;F[c+4|0]=f;F[c+5|0]=f>>>8;F[c+6|0]=f>>>16;F[c+7|0]=f>>>24;s=yf(d,C);if(F[C+11|0]>-1){break k}qa(H[C>>2]);break k}o=o+4|0}o=H[o>>2];if(o){continue}break}}qa(c)}if((Q(g>>>0>1?g:1)^30)>>>0<18){c=el(u,i,r,0);i=c+k|0;f=ea+q|0;f=c>>>0>i>>>0?f+1|0:f;h=i;i=l<<3;c=i>>31;l=c<<1|i>>>31;c=i<<1;i=h+c|0;h=f+l|0;q=i;c=c>>>0>i>>>0?h+1|0:h;f=j+z<<3;l=f>>31;u=q;m=f;f=z<<3;q=f+v|0;h=(f>>31)+n|0;h=f>>>0>q>>>0?h+1|0:h;i=q;q=m+i|0;f=h+l|0;f=i>>>0>q>>>0?f+1|0:f;s=(c|0)>(f|0)?1:(f|0)<=(c|0)?u>>>0>=q>>>0:0}else{s=0}}F[C|0]=s;c=H[e+20>>2];if((c|0)<0?1:(c|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],C,C+1|0)}o=0;q:{r:{switch(s|0){case 0:g=0;m=da-336|0;da=m;ta(m+80|0,0,256);j=H[C+32>>2];d=H[C+36>>2]-j|0;s:{if(!d){break s}c=d>>31;f=(c+d^c)>>>2|0;c=(d|0)>-1?d:-1;c=N(f,(c|0)<1?c:1);c=c>>>0>1?c:1;q=c&3;if(c-1>>>0>=3){n=c&-4;while(1){h=g<<2;c=(m+80|0)+(H[h+j>>2]<<3)|0;d=c;f=H[d+4>>2];c=H[d>>2]+1|0;f=c>>>0<1?f+1|0:f;H[d>>2]=c;H[d+4>>2]=f;c=(m+80|0)+(H[j+(h|4)>>2]<<3)|0;d=c;l=H[d+4>>2];c=H[d>>2]+1|0;l=c>>>0<1?l+1|0:l;H[d>>2]=c;H[d+4>>2]=l;c=(m+80|0)+(H[j+(h|8)>>2]<<3)|0;i=c;d=H[c+4>>2];c=H[c>>2]+1|0;d=c>>>0<1?d+1|0:d;H[i>>2]=c;H[i+4>>2]=d;c=(m+80|0)+(H[j+(h|12)>>2]<<3)|0;d=c;f=H[d+4>>2];c=H[d>>2]+1|0;f=c>>>0<1?f+1|0:f;H[d>>2]=c;H[d+4>>2]=f;g=g+4|0;n=n-4|0;if(n){continue}break}}if(!q){break s}while(1){c=(m+80|0)+(H[j+(g<<2)>>2]<<3)|0;d=c;l=H[d+4>>2];c=H[d>>2]+1|0;l=c>>>0<1?l+1|0:l;H[d>>2]=c;H[d+4>>2]=l;g=g+1|0;q=q-1|0;if(q){continue}break}}k=m+48|0;c=k;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[m+8>>2]=0;H[m+12>>2]=0;H[m+16>>2]=0;H[m+20>>2]=0;H[m+24>>2]=0;H[m+28>>2]=0;H[m+32>>2]=0;H[m>>2]=0;H[m+4>>2]=0;H[m+40>>2]=0;H[m+44>>2]=0;eg(m,m+80|0,32,e);d=H[m+16>>2];c=H[m+20>>2];i=H[e+4>>2]-H[e>>2]|0;H[m+40>>2]=i;H[m+44>>2]=0;u=e;l=c<<1|d>>>31;c=(d<<1)+39|0;d=l;d=c>>>0<39?d+1|0:d;h=d>>>3|0;d=(d&7)<<29|c>>>3;c=i;d=d+c|0;f=h;f=c>>>0>d>>>0?f+1|0:f;c=d+8|0;c>>>0<8;Pa(u,c);c=H[e>>2];H[m+28>>2]=0;H[m+32>>2]=16384;H[m+24>>2]=c+H[m+40>>2];d=b;gd(k,d<<5,d>>31<<5|d>>>27,0);b=d-r|0;if((b|0)>-1){q=(r|0)<1;c=b;while(1){g=H[m+32>>2];o=H[C+32>>2];f=H[m>>2]+(H[o+((c|0)/(r|0)<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(g>>>0>=i>>>0){while(1){d=H[m+28>>2];H[m+28>>2]=d+1;F[d+H[m+24>>2]|0]=g;g=H[m+32>>2]>>>8|0;H[m+32>>2]=g;if(g>>>0>=i>>>0){continue}break}o=H[C+32>>2]}d=(g>>>0)/(h>>>0)|0;H[m+32>>2]=H[f+4>>2]+((d<<12)+(g-N(d,h)|0)|0);g=b-c|0;d=(g|0)/(r|0)|0;t:{if(q){break t}n=0;l=H[(d<<2)+o>>2];if((l|0)<1){break t}while(1){d=H[k+20>>2];if((d|0)>0?1:(d|0)>=0?K[k+16>>2]>=1:0){h=H[(g+n<<2)+a>>2];v=H[k+12>>2];o=H[v+4>>2];j=0;while(1){f=o>>>3|0;i=f+H[v>>2]|0;d=I[i|0];u=i;i=o&7;G=u,J=il(-2,i)&d,F[G|0]=J;d=f+H[v>>2]|0;F[d|0]=I[d|0]|(h>>>j&1)<>2]+1|0;H[v+4>>2]=o;j=j+1|0;if((l|0)!=(j|0)){continue}break}}n=n+1|0;if((r|0)!=(n|0)){continue}break}}c=c-r|0;if((c|0)>-1){continue}break}}Eb(m,e);fd(k);a=H[e+20>>2];if((a|0)<0?1:(a|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],H[k>>2],H[k+4>>2])}a=H[m>>2];if(a){H[m+4>>2]=a;qa(a)}a=H[k+12>>2];H[k+12>>2]=0;if(a){qa(a)}a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}da=m+336|0;o=1;break q;case 1:break r;default:break q}}E=da-32|0;da=E;j=1;u:{if((z|0)>=1){c=Q(z);if((c^30)>>>0>17){break u}j=32-c|0}v:{if(!d){break v}q=ra(48);F[q+32|0]=I[10861];i=I[10857]|I[10858]<<8|(I[10859]<<16|I[10860]<<24);c=I[10853]|I[10854]<<8|(I[10855]<<16|I[10856]<<24);F[q+24|0]=c;F[q+25|0]=c>>>8;F[q+26|0]=c>>>16;F[q+27|0]=c>>>24;F[q+28|0]=i;F[q+29|0]=i>>>8;F[q+30|0]=i>>>16;F[q+31|0]=i>>>24;i=I[10849]|I[10850]<<8|(I[10851]<<16|I[10852]<<24);c=I[10845]|I[10846]<<8|(I[10847]<<16|I[10848]<<24);F[q+16|0]=c;F[q+17|0]=c>>>8;F[q+18|0]=c>>>16;F[q+19|0]=c>>>24;F[q+20|0]=i;F[q+21|0]=i>>>8;F[q+22|0]=i>>>16;F[q+23|0]=i>>>24;i=I[10841]|I[10842]<<8|(I[10843]<<16|I[10844]<<24);c=I[10837]|I[10838]<<8|(I[10839]<<16|I[10840]<<24);F[q+8|0]=c;F[q+9|0]=c>>>8;F[q+10|0]=c>>>16;F[q+11|0]=c>>>24;F[q+12|0]=i;F[q+13|0]=i>>>8;F[q+14|0]=i>>>16;F[q+15|0]=i>>>24;i=I[10833]|I[10834]<<8|(I[10835]<<16|I[10836]<<24);c=I[10829]|I[10830]<<8|(I[10831]<<16|I[10832]<<24);F[q|0]=c;F[q+1|0]=c>>>8;F[q+2|0]=c>>>16;F[q+3|0]=c>>>24;F[q+4|0]=i;F[q+5|0]=i>>>8;F[q+6|0]=i>>>16;F[q+7|0]=i>>>24;F[q+33|0]=0;o=H[d+4>>2];if(o){w:{while(1){c=I[o+27|0];i=c<<24>>24<0;l=i?H[o+20>>2]:c;h=l>>>0<33;x:{y:{f=h?l:33;z:{A:{if(f){c=o+16|0;i=i?H[c>>2]:c;c=Ca(q,i,f);B:{if(!c){if(l>>>0<=33){break B}break x}if((c|0)<=-1){break x}}c=Ca(i,q,f);if(!c){break A}if((c|0)>-1){break z}break y}if(l>>>0>33){break x}}if(h){break y}}qa(q);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[10861];f=I[10857]|I[10858]<<8|(I[10859]<<16|I[10860]<<24);i=I[10853]|I[10854]<<8|(I[10855]<<16|I[10856]<<24);F[c+24|0]=i;F[c+25|0]=i>>>8;F[c+26|0]=i>>>16;F[c+27|0]=i>>>24;F[c+28|0]=f;F[c+29|0]=f>>>8;F[c+30|0]=f>>>16;F[c+31|0]=f>>>24;f=I[10849]|I[10850]<<8|(I[10851]<<16|I[10852]<<24);i=I[10845]|I[10846]<<8|(I[10847]<<16|I[10848]<<24);F[c+16|0]=i;F[c+17|0]=i>>>8;F[c+18|0]=i>>>16;F[c+19|0]=i>>>24;F[c+20|0]=f;F[c+21|0]=f>>>8;F[c+22|0]=f>>>16;F[c+23|0]=f>>>24;f=I[10841]|I[10842]<<8|(I[10843]<<16|I[10844]<<24);i=I[10837]|I[10838]<<8|(I[10839]<<16|I[10840]<<24);F[c+8|0]=i;F[c+9|0]=i>>>8;F[c+10|0]=i>>>16;F[c+11|0]=i>>>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[10833]|I[10834]<<8|(I[10835]<<16|I[10836]<<24);i=I[10829]|I[10830]<<8|(I[10831]<<16|I[10832]<<24);F[c|0]=i;F[c+1|0]=i>>>8;F[c+2|0]=i>>>16;F[c+3|0]=i>>>24;F[c+4|0]=f;F[c+5|0]=f>>>8;F[c+6|0]=f>>>16;F[c+7|0]=f>>>24;c=yf(d,E+16|0);if(F[E+27|0]<=-1){qa(H[E+16>>2])}if((c|0)>3){break w}j=j-2|0;break v}o=o+4|0}o=H[o>>2];if(o){continue}break}qa(q);break v}if((c|0)<=5){j=j-1|0;break v}if((c|0)>=10){j=j+2|0;break v}j=((c|0)>7)+j|0;break v}qa(q)}c=(j|0)>1?j:1;d=(c|0)<18?c:18;F[E+15|0]=d;c=H[e+20>>2];if((c|0)<0?1:(c|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],E+15|0,E+16|0)}o=0;C:{switch(d-1|0){case 0:k=a;j=0;n=0;s=0;u=0;i=0;m=da+-64|0;da=m;H[m+56>>2]=0;H[m+48>>2]=0;H[m+52>>2]=0;D:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[m+48>>2]=n;s=a+n|0;H[m+56>>2]=s;ta(n,0,(g<<3)+8|0);H[m+52>>2]=s}E:{if((b|0)<1){break E}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){g=a<<2;d=(H[g+k>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;f=(H[k+(g|4)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;d=(H[k+(g|8)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|12)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break E}while(1){f=(H[k+(a<<2)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;a=a+1|0;c=c-1|0;if(c){continue}break}}H[m+8>>2]=0;H[m+12>>2]=0;H[m+16>>2]=0;H[m+20>>2]=0;H[m+24>>2]=0;H[m+28>>2]=0;H[m+32>>2]=0;H[m>>2]=0;H[m+4>>2]=0;H[m+40>>2]=0;H[m+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;F:{if((a|0)<1){break F}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;f=H[d+4>>2];y=H[d>>2];l=j|2;d=(l<<3)+n|0;q=H[d+4>>2];B=H[d>>2];h=j|3;d=(h<<3)+n|0;v=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=v|z?h:q|B?l:f|y?s:!(A|d)?D:j;h=i+A|0;l=d+u|0;h=l>>>0>>0?h+1|0:h;d=l;i=d+y|0;l=f+h|0;l=d>>>0>i>>>0?l+1|0:l;d=i;i=d+B|0;f=l+q|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+z|0;f=f+v|0;u=i;i=d>>>0>i>>>0?f+1|0:f;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break F}while(1){a=(j<<3)+n|0;d=H[a+4>>2];a=H[a>>2];c=!(d|a)?c:j;j=j+1|0;d=d+i|0;f=a+u|0;d=f>>>0>>0?d+1|0:d;u=f;i=d;g=g-1|0;if(g){continue}break}}l=c+1|0;H[m+12>>2]=l;a=H[m>>2];d=H[m+4>>2]-a>>3;G:{if(d>>>0>>0){Ya(m,l-d|0);break G}if(d>>>0<=l>>>0){break G}H[m+4>>2]=a+(l<<3)}H:{I:{J:{K:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[m>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*4096+.5;L:{if(w<4294967296&w>=0){a=~~w>>>0;break L}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==4096){break K}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;M:{if((c|0)<0){break M}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break M}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=m;Ed(g,t,r+24|0);if((o|0)<4096){a=H[m>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)+4096;j=0;break J}if((c|0)>=1){g=o-4096|0;v=H[m>>2];while(1){w=4096/+(o|0);j=H[r+8>>2];a=c;while(1){N:{O:{l=v+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));P:{if(P(p)<2147483648){u=~~p;break P}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=4096){break O}o=4096;break N}if((a|0)!=(c|0)){break N}j=1;break J}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break J}j=0;if((o|0)<4097){break J}while(1)continue}if((c|0)<0){break H}break I}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break H}}h=c+1|0;o=h&3;l=H[m>>2];Q:{if(c>>>0<3){g=0;j=0;break Q}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=4096){break H}j=0;p=0;R:{if((c|0)<0){break R}f=H[m>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break R}a=j<<3;d=H[a+f>>2];if(!d){break R}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*.000244140625)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=m;p=U(-p);S:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break S}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(m,e)}da=r+32|0;d=H[m+16>>2];a=H[m+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[m+40>>2]=c;H[m+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;h=a>>>0<39?f+1|0:f;d=(h&7)<<29|a>>>3;a=c;c=d+a|0;f=h>>>3|0;f=a>>>0>c>>>0?f+1|0:f;a=c+8|0;Pa(e,a);a=H[e>>2];H[m+28>>2]=0;H[m+32>>2]=16384;H[m+24>>2]=a+H[m+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;f=H[m>>2]+(H[k+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[m+28>>2];H[m+28>>2]=d+1;F[d+H[m+24>>2]|0]=a;a=H[m+32>>2]>>>8|0;H[m+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<12)+(a-N(d,h)|0)|0)|0;H[m+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Eb(m,e);a=H[m>>2];if(a){H[m+4>>2]=a;qa(a)}a=H[m+48>>2];if(a){H[m+52>>2]=a;qa(a)}da=m- -64|0;break D}o=1;break u;case 1:v=a;j=0;n=0;s=0;u=0;i=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;T:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;s=a+n|0;H[k+56>>2]=s;ta(n,0,(g<<3)+8|0);H[k+52>>2]=s}U:{if((b|0)<1){break U}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){l=a<<2;d=(H[l+v>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;d=(H[v+(l|4)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[v+(l|8)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[v+(l|12)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break U}while(1){d=(H[v+(a<<2)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;V:{if((a|0)<1){break V}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;f=H[d+4>>2];y=H[d>>2];m=j|2;d=(m<<3)+n|0;l=H[d+4>>2];B=H[d>>2];h=j|3;d=(h<<3)+n|0;q=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=q|z?h:l|B?m:f|y?s:!(A|d)?D:j;h=i+A|0;m=d+u|0;h=m>>>0>>0?h+1|0:h;d=m;i=d+y|0;f=f+h|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+B|0;f=f+l|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+z|0;l=f+q|0;u=i;i=d>>>0>i>>>0?l+1|0:l;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break V}while(1){a=(j<<3)+n|0;f=H[a+4>>2];a=H[a>>2];c=!(f|a)?c:j;j=j+1|0;h=f+i|0;d=a+u|0;h=d>>>0>>0?h+1|0:h;u=d;i=h;g=g-1|0;if(g){continue}break}}l=c+1|0;H[k+12>>2]=l;a=H[k>>2];d=H[k+4>>2]-a>>3;W:{if(d>>>0>>0){Ya(k,l-d|0);break W}if(d>>>0<=l>>>0){break W}H[k+4>>2]=a+(l<<3)}X:{Y:{Z:{_:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*4096+.5;$:{if(w<4294967296&w>=0){a=~~w>>>0;break $}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==4096){break _}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;aa:{if((c|0)<0){break aa}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break aa}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=k;Dd(g,t,r+24|0);if((o|0)<4096){a=H[k>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)+4096;j=0;break Z}if((c|0)>=1){g=o-4096|0;m=H[k>>2];while(1){w=4096/+(o|0);j=H[r+8>>2];a=c;while(1){ba:{ca:{l=m+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));da:{if(P(p)<2147483648){u=~~p;break da}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=4096){break ca}o=4096;break ba}if((a|0)!=(c|0)){break ba}j=1;break Z}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break Z}j=0;if((o|0)<4097){break Z}while(1)continue}if((c|0)<0){break X}break Y}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break X}}h=c+1|0;o=h&3;l=H[k>>2];ea:{if(c>>>0<3){g=0;j=0;break ea}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=4096){break X}j=0;p=0;fa:{if((c|0)<0){break fa}f=H[k>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break fa}a=j<<3;d=H[a+f>>2];if(!d){break fa}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*.000244140625)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);ga:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break ga}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=r+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;h=a>>>0<39?f+1|0:f;d=(h&7)<<29|a>>>3;a=c;c=d+a|0;l=h>>>3|0;l=a>>>0>c>>>0?l+1|0:l;a=c+8|0;Pa(e,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=16384;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<12)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Eb(k,e);a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break T}o=1;break u;case 2:v=a;j=0;n=0;s=0;u=0;i=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;ha:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;s=a+n|0;H[k+56>>2]=s;ta(n,0,(g<<3)+8|0);H[k+52>>2]=s}ia:{if((b|0)<1){break ia}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){l=a<<2;d=(H[l+v>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;d=(H[v+(l|4)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;f=(H[v+(l|8)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;d=(H[v+(l|12)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break ia}while(1){d=(H[v+(a<<2)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;ja:{if((a|0)<1){break ja}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){A=j|1;d=(A<<3)+n|0;h=H[d+4>>2];y=H[d>>2];s=j|2;d=(s<<3)+n|0;l=H[d+4>>2];B=H[d>>2];m=j|3;d=(m<<3)+n|0;q=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;d=H[c+4>>2];f=H[c>>2];c=q|z?m:l|B?s:h|y?A:!(d|f)?D:j;d=d+i|0;m=f+u|0;d=m>>>0>>0?d+1|0:d;i=m;m=m+y|0;f=d+h|0;f=i>>>0>m>>>0?f+1|0:f;d=m;i=d+B|0;l=f+l|0;l=d>>>0>i>>>0?l+1|0:l;d=i;i=d+z|0;f=l+q|0;u=i;i=d>>>0>i>>>0?f+1|0:f;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break ja}while(1){a=(j<<3)+n|0;f=H[a+4>>2];a=H[a>>2];c=!(f|a)?c:j;j=j+1|0;h=f+i|0;d=a+u|0;h=d>>>0>>0?h+1|0:h;u=d;i=h;g=g-1|0;if(g){continue}break}}l=c+1|0;H[k+12>>2]=l;a=H[k>>2];d=H[k+4>>2]-a>>3;ka:{if(d>>>0>>0){Ya(k,l-d|0);break ka}if(d>>>0<=l>>>0){break ka}H[k+4>>2]=a+(l<<3)}la:{ma:{na:{oa:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*4096+.5;pa:{if(w<4294967296&w>=0){a=~~w>>>0;break pa}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==4096){break oa}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;qa:{if((c|0)<0){break qa}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break qa}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=k;Cd(g,t,r+24|0);if((o|0)<4096){a=H[k>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)+4096;j=0;break na}if((c|0)>=1){g=o-4096|0;m=H[k>>2];while(1){w=4096/+(o|0);j=H[r+8>>2];a=c;while(1){ra:{sa:{l=m+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));ta:{if(P(p)<2147483648){u=~~p;break ta}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=4096){break sa}o=4096;break ra}if((a|0)!=(c|0)){break ra}j=1;break na}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break na}j=0;if((o|0)<4097){break na}while(1)continue}if((c|0)<0){break la}break ma}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break la}}h=c+1|0;o=h&3;l=H[k>>2];ua:{if(c>>>0<3){g=0;j=0;break ua}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=4096){break la}j=0;p=0;va:{if((c|0)<0){break va}f=H[k>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break va}a=j<<3;d=H[a+f>>2];if(!d){break va}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*.000244140625)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);wa:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break wa}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=r+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;l=a<<1|d>>>31;a=(d<<1)+39|0;d=l;d=a>>>0<39?d+1|0:d;f=d>>>3|0;d=(d&7)<<29|a>>>3;a=c;c=d+a|0;f=a>>>0>c>>>0?f+1|0:f;a=c+8|0;Pa(e,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=16384;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<12)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Eb(k,e);a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break ha}o=1;break u;case 3:k=a;j=0;n=0;s=0;u=0;i=0;m=da+-64|0;da=m;H[m+56>>2]=0;H[m+48>>2]=0;H[m+52>>2]=0;xa:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[m+48>>2]=n;s=a+n|0;H[m+56>>2]=s;ta(n,0,(g<<3)+8|0);H[m+52>>2]=s}ya:{if((b|0)<1){break ya}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){g=a<<2;d=(H[g+k>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;f=(H[k+(g|4)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;d=(H[k+(g|8)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|12)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break ya}while(1){f=(H[k+(a<<2)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;a=a+1|0;c=c-1|0;if(c){continue}break}}H[m+8>>2]=0;H[m+12>>2]=0;H[m+16>>2]=0;H[m+20>>2]=0;H[m+24>>2]=0;H[m+28>>2]=0;H[m+32>>2]=0;H[m>>2]=0;H[m+4>>2]=0;H[m+40>>2]=0;H[m+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;za:{if((a|0)<1){break za}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;f=H[d+4>>2];y=H[d>>2];l=j|2;d=(l<<3)+n|0;q=H[d+4>>2];B=H[d>>2];h=j|3;d=(h<<3)+n|0;v=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=v|z?h:q|B?l:f|y?s:!(A|d)?D:j;h=i+A|0;l=d+u|0;h=l>>>0>>0?h+1|0:h;d=l;i=d+y|0;l=f+h|0;l=d>>>0>i>>>0?l+1|0:l;d=i;i=d+B|0;f=l+q|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+z|0;f=f+v|0;u=i;i=d>>>0>i>>>0?f+1|0:f;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break za}while(1){a=(j<<3)+n|0;d=H[a+4>>2];a=H[a>>2];c=!(d|a)?c:j;j=j+1|0;d=d+i|0;f=a+u|0;d=f>>>0>>0?d+1|0:d;u=f;i=d;g=g-1|0;if(g){continue}break}}l=c+1|0;H[m+12>>2]=l;a=H[m>>2];d=H[m+4>>2]-a>>3;Aa:{if(d>>>0>>0){Ya(m,l-d|0);break Aa}if(d>>>0<=l>>>0){break Aa}H[m+4>>2]=a+(l<<3)}Ba:{Ca:{Da:{Ea:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[m>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*4096+.5;Fa:{if(w<4294967296&w>=0){a=~~w>>>0;break Fa}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==4096){break Ea}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;Ga:{if((c|0)<0){break Ga}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break Ga}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=m;Bd(g,t,r+24|0);if((o|0)<4096){a=H[m>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)+4096;j=0;break Da}if((c|0)>=1){g=o-4096|0;v=H[m>>2];while(1){w=4096/+(o|0);j=H[r+8>>2];a=c;while(1){Ha:{Ia:{l=v+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));Ja:{if(P(p)<2147483648){u=~~p;break Ja}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=4096){break Ia}o=4096;break Ha}if((a|0)!=(c|0)){break Ha}j=1;break Da}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break Da}j=0;if((o|0)<4097){break Da}while(1)continue}if((c|0)<0){break Ba}break Ca}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break Ba}}h=c+1|0;o=h&3;l=H[m>>2];Ka:{if(c>>>0<3){g=0;j=0;break Ka}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=4096){break Ba}j=0;p=0;La:{if((c|0)<0){break La}f=H[m>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break La}a=j<<3;d=H[a+f>>2];if(!d){break La}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*.000244140625)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=m;p=U(-p);Ma:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break Ma}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(m,e)}da=r+32|0;d=H[m+16>>2];a=H[m+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[m+40>>2]=c;H[m+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;h=a>>>0<39?f+1|0:f;d=(h&7)<<29|a>>>3;a=c;c=d+a|0;f=h>>>3|0;f=a>>>0>c>>>0?f+1|0:f;a=c+8|0;Pa(e,a);a=H[e>>2];H[m+28>>2]=0;H[m+32>>2]=16384;H[m+24>>2]=a+H[m+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;f=H[m>>2]+(H[k+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[m+28>>2];H[m+28>>2]=d+1;F[d+H[m+24>>2]|0]=a;a=H[m+32>>2]>>>8|0;H[m+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<12)+(a-N(d,h)|0)|0)|0;H[m+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Eb(m,e);a=H[m>>2];if(a){H[m+4>>2]=a;qa(a)}a=H[m+48>>2];if(a){H[m+52>>2]=a;qa(a)}da=m- -64|0;break xa}o=1;break u;case 4:c=0;j=0;n=da+-64|0;da=n;H[n+56>>2]=0;H[n+48>>2]=0;H[n+52>>2]=0;Na:{d=g+1|0;if(d>>>0>=g>>>0){if(d>>>0>=536870912){break a}d=d<<3;c=ra(d);H[n+48>>2]=c;j=c+d|0;H[n+56>>2]=j;ta(c,0,(g<<3)+8|0);H[n+52>>2]=j}Oa:{if((b|0)<1){break Oa}q=b&3;g=0;if(b-1>>>0>=3){o=b&-4;while(1){l=g<<2;d=(H[l+a>>2]<<3)+c|0;i=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[i>>2]=d;H[i+4>>2]=f;d=(H[(l|4)+a>>2]<<3)+c|0;i=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[i>>2]=d;H[i+4>>2]=h;d=(H[(l|8)+a>>2]<<3)+c|0;i=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[i>>2]=d;H[i+4>>2]=h;d=(H[(l|12)+a>>2]<<3)+c|0;i=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[i>>2]=d;H[i+4>>2]=f;g=g+4|0;o=o-4|0;if(o){continue}break}}if(!q){break Oa}while(1){d=(H[(g<<2)+a>>2]<<3)+c|0;i=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[i>>2]=d;H[i+4>>2]=h;g=g+1|0;q=q-1|0;if(q){continue}break}}H[n+8>>2]=0;H[n+12>>2]=0;H[n+16>>2]=0;H[n+20>>2]=0;H[n+24>>2]=0;H[n+28>>2]=0;H[n+32>>2]=0;H[n>>2]=0;H[n+4>>2]=0;H[n+40>>2]=0;H[n+44>>2]=0;eg(n,c,j-c>>3,e);i=H[n+16>>2];c=H[n+20>>2];d=H[e+4>>2]-H[e>>2]|0;H[n+40>>2]=d;H[n+44>>2]=0;l=e;h=c<<1|i>>>31;c=(i<<1)+39|0;if(c>>>0<39){h=h+1|0}f=h>>>3|0;i=(h&7)<<29|c>>>3;c=d;d=i+d|0;f=c>>>0>d>>>0?f+1|0:f;c=d+8|0;Pa(l,c);c=H[e>>2];H[n+28>>2]=0;H[n+32>>2]=16384;H[n+24>>2]=c+H[n+40>>2];if((b|0)>0){g=16384;while(1){c=b-1|0;f=H[n>>2]+(H[(c<<2)+a>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=g>>>0){while(1){d=H[n+28>>2];H[n+28>>2]=d+1;F[d+H[n+24>>2]|0]=g;g=H[n+32>>2]>>>8|0;H[n+32>>2]=g;if(g>>>0>=i>>>0){continue}break}}d=(g>>>0)/(h>>>0)|0;g=H[f+4>>2]+((d<<12)+(g-N(d,h)|0)|0)|0;H[n+32>>2]=g;d=(b|0)>1;b=c;if(d){continue}break}}Eb(n,e);a=H[n>>2];if(a){H[n+4>>2]=a;qa(a)}a=H[n+48>>2];if(a){H[n+52>>2]=a;qa(a)}da=n- -64|0;break Na}o=1;break u;case 5:k=a;j=0;n=0;s=0;u=0;i=0;m=da+-64|0;da=m;H[m+56>>2]=0;H[m+48>>2]=0;H[m+52>>2]=0;Pa:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[m+48>>2]=n;s=a+n|0;H[m+56>>2]=s;ta(n,0,(g<<3)+8|0);H[m+52>>2]=s}Qa:{if((b|0)<1){break Qa}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){g=a<<2;d=(H[g+k>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|4)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|8)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;d=(H[k+(g|12)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break Qa}while(1){d=(H[k+(a<<2)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+1|0;c=c-1|0;if(c){continue}break}}H[m+8>>2]=0;H[m+12>>2]=0;H[m+16>>2]=0;H[m+20>>2]=0;H[m+24>>2]=0;H[m+28>>2]=0;H[m+32>>2]=0;H[m>>2]=0;H[m+4>>2]=0;H[m+40>>2]=0;H[m+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;Ra:{if((a|0)<1){break Ra}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;f=H[d+4>>2];y=H[d>>2];l=j|2;d=(l<<3)+n|0;q=H[d+4>>2];B=H[d>>2];h=j|3;d=(h<<3)+n|0;v=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=v|z?h:q|B?l:f|y?s:!(A|d)?D:j;l=i+A|0;h=d+u|0;l=h>>>0>>0?l+1|0:l;d=h;i=d+y|0;h=f+l|0;h=d>>>0>i>>>0?h+1|0:h;d=i;i=d+B|0;f=h+q|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+z|0;f=f+v|0;u=i;i=d>>>0>i>>>0?f+1|0:f;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break Ra}while(1){a=(j<<3)+n|0;f=H[a+4>>2];a=H[a>>2];c=!(f|a)?c:j;j=j+1|0;h=f+i|0;d=a+u|0;h=d>>>0>>0?h+1|0:h;u=d;i=h;g=g-1|0;if(g){continue}break}}l=c+1|0;H[m+12>>2]=l;a=H[m>>2];d=H[m+4>>2]-a>>3;Sa:{if(d>>>0>>0){Ya(m,l-d|0);break Sa}if(d>>>0<=l>>>0){break Sa}H[m+4>>2]=a+(l<<3)}Ta:{Ua:{Va:{Wa:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[m>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*4096+.5;Xa:{if(w<4294967296&w>=0){a=~~w>>>0;break Xa}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==4096){break Wa}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;Ya:{if((c|0)<0){break Ya}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break Ya}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=m;Ad(g,t,r+24|0);if((o|0)<4096){a=H[m>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)+4096;j=0;break Va}if((c|0)>=1){g=o-4096|0;v=H[m>>2];while(1){w=4096/+(o|0);j=H[r+8>>2];a=c;while(1){Za:{_a:{l=v+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));$a:{if(P(p)<2147483648){u=~~p;break $a}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=4096){break _a}o=4096;break Za}if((a|0)!=(c|0)){break Za}j=1;break Va}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break Va}j=0;if((o|0)<4097){break Va}while(1)continue}if((c|0)<0){break Ta}break Ua}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break Ta}}h=c+1|0;o=h&3;l=H[m>>2];ab:{if(c>>>0<3){g=0;j=0;break ab}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=4096){break Ta}j=0;p=0;bb:{if((c|0)<0){break bb}f=H[m>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break bb}a=j<<3;d=H[a+f>>2];if(!d){break bb}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*.000244140625)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=m;p=U(-p);cb:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break cb}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(m,e)}da=r+32|0;d=H[m+16>>2];a=H[m+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[m+40>>2]=c;H[m+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;l=a>>>0<39?f+1|0:f;d=(l&7)<<29|a>>>3;a=c;c=d+a|0;f=l>>>3|0;f=a>>>0>c>>>0?f+1|0:f;a=c+8|0;Pa(e,a);a=H[e>>2];H[m+28>>2]=0;H[m+32>>2]=16384;H[m+24>>2]=a+H[m+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;f=H[m>>2]+(H[k+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[m+28>>2];H[m+28>>2]=d+1;F[d+H[m+24>>2]|0]=a;a=H[m+32>>2]>>>8|0;H[m+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<12)+(a-N(d,h)|0)|0)|0;H[m+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Eb(m,e);a=H[m>>2];if(a){H[m+4>>2]=a;qa(a)}a=H[m+48>>2];if(a){H[m+52>>2]=a;qa(a)}da=m- -64|0;break Pa}o=1;break u;case 6:v=a;j=0;n=0;s=0;u=0;i=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;db:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;s=a+n|0;H[k+56>>2]=s;ta(n,0,(g<<3)+8|0);H[k+52>>2]=s}eb:{if((b|0)<1){break eb}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){g=a<<2;d=(H[g+v>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;d=(H[v+(g|4)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;f=(H[v+(g|8)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;d=(H[v+(g|12)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break eb}while(1){d=(H[v+(a<<2)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;fb:{if((a|0)<1){break fb}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){A=j|1;d=(A<<3)+n|0;h=H[d+4>>2];y=H[d>>2];s=j|2;d=(s<<3)+n|0;l=H[d+4>>2];B=H[d>>2];m=j|3;d=(m<<3)+n|0;q=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;d=H[c+4>>2];f=H[c>>2];c=q|z?m:l|B?s:h|y?A:!(d|f)?D:j;d=d+i|0;m=f+u|0;d=m>>>0>>0?d+1|0:d;i=m;m=m+y|0;f=d+h|0;f=i>>>0>m>>>0?f+1|0:f;d=m;i=d+B|0;f=f+l|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+z|0;h=f+q|0;u=i;i=d>>>0>i>>>0?h+1|0:h;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break fb}while(1){a=(j<<3)+n|0;f=H[a+4>>2];a=H[a>>2];c=!(f|a)?c:j;j=j+1|0;l=f+i|0;d=a+u|0;l=d>>>0>>0?l+1|0:l;u=d;i=l;g=g-1|0;if(g){continue}break}}l=c+1|0;H[k+12>>2]=l;a=H[k>>2];d=H[k+4>>2]-a>>3;gb:{if(d>>>0>>0){Ya(k,l-d|0);break gb}if(d>>>0<=l>>>0){break gb}H[k+4>>2]=a+(l<<3)}hb:{ib:{jb:{kb:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*4096+.5;lb:{if(w<4294967296&w>=0){a=~~w>>>0;break lb}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==4096){break kb}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;mb:{if((c|0)<0){break mb}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break mb}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=k;zd(g,t,r+24|0);if((o|0)<4096){a=H[k>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)+4096;j=0;break jb}if((c|0)>=1){g=o-4096|0;m=H[k>>2];while(1){w=4096/+(o|0);j=H[r+8>>2];a=c;while(1){nb:{ob:{l=m+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));pb:{if(P(p)<2147483648){u=~~p;break pb}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=4096){break ob}o=4096;break nb}if((a|0)!=(c|0)){break nb}j=1;break jb}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break jb}j=0;if((o|0)<4097){break jb}while(1)continue}if((c|0)<0){break hb}break ib}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break hb}}h=c+1|0;o=h&3;l=H[k>>2];qb:{if(c>>>0<3){g=0;j=0;break qb}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=4096){break hb}j=0;p=0;rb:{if((c|0)<0){break rb}f=H[k>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break rb}a=j<<3;d=H[a+f>>2];if(!d){break rb}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*.000244140625)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);sb:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break sb}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=r+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;i=e;f=a<<1|d>>>31;a=(d<<1)+39|0;d=f;d=a>>>0<39?d+1|0:d;f=(d&7)<<29|a>>>3;a=c;c=f+a|0;h=d>>>3|0;h=a>>>0>c>>>0?h+1|0:h;a=c+8|0;a>>>0<8;Pa(i,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=16384;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<12)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Eb(k,e);a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break db}o=1;break u;case 7:v=a;j=0;n=0;s=0;u=0;i=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;tb:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;s=a+n|0;H[k+56>>2]=s;ta(n,0,(g<<3)+8|0);H[k+52>>2]=s}ub:{if((b|0)<1){break ub}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){l=a<<2;d=(H[l+v>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;f=(H[v+(l|4)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;d=(H[v+(l|8)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[v+(l|12)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break ub}while(1){f=(H[v+(a<<2)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;vb:{if((a|0)<1){break vb}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;f=H[d+4>>2];y=H[d>>2];m=j|2;d=(m<<3)+n|0;l=H[d+4>>2];B=H[d>>2];h=j|3;d=(h<<3)+n|0;q=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=q|z?h:l|B?m:f|y?s:!(A|d)?D:j;h=i+A|0;m=d+u|0;h=m>>>0>>0?h+1|0:h;d=m;i=d+y|0;f=f+h|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+B|0;h=f+l|0;h=d>>>0>i>>>0?h+1|0:h;d=i;i=d+z|0;f=h+q|0;u=i;i=d>>>0>i>>>0?f+1|0:f;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break vb}while(1){a=(j<<3)+n|0;d=H[a+4>>2];a=H[a>>2];c=!(d|a)?c:j;j=j+1|0;d=d+i|0;f=a+u|0;d=f>>>0>>0?d+1|0:d;u=f;i=d;g=g-1|0;if(g){continue}break}}l=c+1|0;H[k+12>>2]=l;a=H[k>>2];d=H[k+4>>2]-a>>3;wb:{if(d>>>0>>0){Ya(k,l-d|0);break wb}if(d>>>0<=l>>>0){break wb}H[k+4>>2]=a+(l<<3)}xb:{yb:{zb:{Ab:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*4096+.5;Bb:{if(w<4294967296&w>=0){a=~~w>>>0;break Bb}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==4096){break Ab}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;Cb:{if((c|0)<0){break Cb}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break Cb}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=k;yd(g,t,r+24|0);if((o|0)<4096){a=H[k>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)+4096;j=0;break zb}if((c|0)>=1){g=o-4096|0;m=H[k>>2];while(1){w=4096/+(o|0);j=H[r+8>>2];a=c;while(1){Db:{Eb:{l=m+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));Fb:{if(P(p)<2147483648){u=~~p;break Fb}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=4096){break Eb}o=4096;break Db}if((a|0)!=(c|0)){break Db}j=1;break zb}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break zb}j=0;if((o|0)<4097){break zb}while(1)continue}if((c|0)<0){break xb}break yb}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break xb}}h=c+1|0;o=h&3;l=H[k>>2];Gb:{if(c>>>0<3){g=0;j=0;break Gb}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=4096){break xb}j=0;p=0;Hb:{if((c|0)<0){break Hb}f=H[k>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*.000244140625)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break Hb}a=j<<3;d=H[a+f>>2];if(!d){break Hb}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*.000244140625)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);Ib:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break Ib}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=r+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;i=e;h=a<<1|d>>>31;a=(d<<1)+39|0;if(a>>>0<39){h=h+1|0}f=h>>>3|0;d=(h&7)<<29|a>>>3;a=c;c=d+a|0;f=a>>>0>c>>>0?f+1|0:f;a=c+8|0;Pa(i,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=16384;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<12)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Eb(k,e);a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break tb}o=1;break u;case 8:k=a;q=0;n=0;u=0;i=0;s=0;m=da+-64|0;da=m;H[m+56>>2]=0;H[m+48>>2]=0;H[m+52>>2]=0;Jb:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[m+48>>2]=n;q=a+n|0;H[m+56>>2]=q;ta(n,0,(g<<3)+8|0);H[m+52>>2]=q}Kb:{if((b|0)<1){break Kb}c=b&3;a=0;if(b-1>>>0>=3){o=b&-4;while(1){g=a<<2;d=(H[g+k>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|4)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|8)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;d=(H[k+(g|12)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+4|0;o=o-4|0;if(o){continue}break}}if(!c){break Kb}while(1){d=(H[k+(a<<2)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+1|0;c=c-1|0;if(c){continue}break}}H[m+8>>2]=0;H[m+12>>2]=0;H[m+16>>2]=0;H[m+20>>2]=0;H[m+24>>2]=0;H[m+28>>2]=0;H[m+32>>2]=0;H[m>>2]=0;H[m+4>>2]=0;H[m+40>>2]=0;H[m+44>>2]=0;a=0;o=0;x=da-32|0;da=x;c=q-n>>3;Lb:{if((c|0)<1){break Lb}q=c&3;Mb:{if(c-1>>>0<3){g=0;break Mb}c=c&-4;g=0;while(1){A=g|1;d=(A<<3)+n|0;f=H[d+4>>2];r=H[d>>2];l=g|2;d=(l<<3)+n|0;j=H[d+4>>2];y=H[d>>2];h=g|3;d=(h<<3)+n|0;v=H[d+4>>2];B=H[d>>2];D=a;a=(g<<3)+n|0;z=H[a+4>>2];d=H[a>>2];a=v|B?h:j|y?l:f|r?A:!(z|d)?D:g;l=i+z|0;h=d+u|0;l=h>>>0>>0?l+1|0:l;d=h;i=d+r|0;h=f+l|0;h=d>>>0>i>>>0?h+1|0:h;d=i;i=d+y|0;f=j+h|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+B|0;f=f+v|0;u=i;i=d>>>0>i>>>0?f+1|0:f;g=g+4|0;c=c-4|0;if(c){continue}break}}if(!q){break Lb}while(1){d=a;a=(g<<3)+n|0;f=H[a+4>>2];c=H[a>>2];a=!(f|c)?d:g;g=g+1|0;h=f+i|0;d=c+u|0;h=d>>>0>>0?h+1|0:h;u=d;i=h;q=q-1|0;if(q){continue}break}}l=a+1|0;H[m+12>>2]=l;c=H[m>>2];d=H[m+4>>2]-c>>3;Nb:{if(d>>>0>>0){Ya(m,l-d|0);break Nb}if(d>>>0<=l>>>0){break Nb}H[m+4>>2]=c+(l<<3)}Ob:{Pb:{Qb:{Rb:{if((a|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[m>>2];g=0;while(1){d=g<<3;c=d+n|0;h=H[c+4>>2];c=H[c>>2];i=(c|0)!=0|(h|0)!=0;d=d+f|0;w=(+(c>>>0)+ +(h>>>0)*4294967296)/p*8192+.5;Sb:{if(w<4294967296&w>=0){c=~~w>>>0;break Sb}c=0}c=c?c:i?1:c;H[d>>2]=c;o=c+o|0;c=(a|0)==(g|0);g=g+1|0;if(!c){continue}break}if((o|0)==8192){break Rb}}H[x+16>>2]=0;H[x+8>>2]=0;H[x+12>>2]=0;q=0;if(l){if(l>>>0>=1073741824){break a}c=l<<2;q=ra(c);H[x+8>>2]=q;s=c+q|0;H[x+16>>2]=s;ta(q,0,c);H[x+12>>2]=s}g=0;Tb:{if((a|0)<0){break Tb}d=a+1|0;c=d&7;if(a>>>0>=7){t=d&-8;while(1){H[(g<<2)+q>>2]=g;d=g|1;H[(d<<2)+q>>2]=d;d=g|2;H[(d<<2)+q>>2]=d;d=g|3;H[(d<<2)+q>>2]=d;d=g|4;H[(d<<2)+q>>2]=d;d=g|5;H[(d<<2)+q>>2]=d;d=g|6;H[(d<<2)+q>>2]=d;d=g|7;H[(d<<2)+q>>2]=d;g=g+8|0;t=t-8|0;if(t){continue}break}}if(!c){break Tb}while(1){H[(g<<2)+q>>2]=g;g=g+1|0;c=c-1|0;if(c){continue}break}}H[x+24>>2]=m;xd(q,s,x+24|0);if((o|0)<8192){c=H[m>>2]+(H[H[x+12>>2]-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-o|0)- -8192;g=0;break Qb}if((a|0)>=1){q=o+-8192|0;v=H[m>>2];while(1){w=8192/+(o|0);j=H[x+8>>2];c=a;while(1){Ub:{Vb:{l=v+(H[j+(c<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){g=d-1|0;f=d;h=q;i=d;p=T(w*+(d>>>0));Wb:{if(P(p)<2147483648){u=~~p;break Wb}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:g;d=(d|0)>(q|0)?h:d;H[l>>2]=f-d;q=q-d|0;o=o-d|0;if((o|0)!=8192){break Vb}o=8192;break Ub}if((a|0)!=(c|0)){break Ub}g=1;break Qb}d=(c|0)>1;c=c-1|0;if(d){continue}}break}g=0;if((q|0)>0){continue}break}break Qb}g=0;if((o|0)<8193){break Qb}while(1)continue}if((a|0)<0){break Ob}break Pb}c=H[x+8>>2];if(c){H[x+12>>2]=c;qa(c)}if((a|0)<0|g){break Ob}}h=a+1|0;o=h&3;j=H[m>>2];Xb:{if(a>>>0<3){q=0;g=0;break Xb}l=h&-4;q=0;g=0;while(1){f=q<<3;c=f+j|0;H[c+4>>2]=g;d=j+(f|8)|0;c=H[c>>2]+g|0;H[d+4>>2]=c;i=j+(f|16)|0;c=c+H[d>>2]|0;H[i+4>>2]=c;d=j+(f|24)|0;c=c+H[i>>2]|0;H[d+4>>2]=c;g=c+H[d>>2]|0;q=q+4|0;l=l-4|0;if(l){continue}break}}if(o){while(1){c=j+(q<<3)|0;H[c+4>>2]=g;q=q+1|0;g=H[c>>2]+g|0;o=o-1|0;if(o){continue}break}}if((g|0)!=8192){break Ob}g=0;p=0;Yb:{if((a|0)<0){break Yb}f=H[m>>2];if(a){c=h&-2;while(1){a=g<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*.0001220703125)*(+(a>>>0)+ +(d>>>0)*4294967296)}a=(g|1)<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*.0001220703125)*(+(a>>>0)+ +(d>>>0)*4294967296)}g=g+2|0;c=c-2|0;if(c){continue}break}}if(!(h&1)){break Yb}a=g<<3;d=H[a+f>>2];if(!d){break Yb}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*.0001220703125)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=m;p=U(-p);Zb:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break Zb}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(m,e)}da=x+32|0;d=H[m+16>>2];a=H[m+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[m+40>>2]=c;H[m+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;l=a>>>0<39?f+1|0:f;d=(l&7)<<29|a>>>3;a=c;c=d+a|0;f=l>>>3|0;f=a>>>0>c>>>0?f+1|0:f;a=c+8|0;Pa(e,a);a=H[e>>2];H[m+28>>2]=0;H[m+32>>2]=32768;H[m+24>>2]=a+H[m+40>>2];if((b|0)>0){a=32768;while(1){c=b-1|0;f=H[m>>2]+(H[k+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[m+28>>2];H[m+28>>2]=d+1;F[d+H[m+24>>2]|0]=a;a=H[m+32>>2]>>>8|0;H[m+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<13)+(a-N(d,h)|0)|0)|0;H[m+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}c=da-32|0;da=c;l=H[e>>2]+H[m+40>>2]|0;a=H[m+32>>2];b=a-32768|0;_b:{if(b>>>0<=63){F[H[m+24>>2]+H[m+28>>2]|0]=b;i=H[m+28>>2]+1|0;break _b}if(b>>>0<=16383){b=H[m+24>>2]+H[m+28>>2]|0;a=a-16384|0;F[b|0]=a;F[b+1|0]=a>>>8;i=H[m+28>>2]+2|0;break _b}if(b>>>0<=4194303){b=H[m+24>>2]+H[m+28>>2]|0;a=a+8355840|0;F[b+2|0]=a>>>16;F[b+1|0]=a>>>8;F[b|0]=a;i=H[m+28>>2]+3|0;break _b}if(b>>>0<=1073741823){b=H[m+24>>2]+H[m+28>>2]|0;a=a-1073774592|0;F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24;i=H[m+28>>2]+4|0;break _b}i=H[m+28>>2]}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;a=i;f=a>>31;d=c;Db(a,f,d);h=H[d+4>>2]-H[d>>2]|0;Ha(h+l|0,l,a);sa(l,H[d>>2],h);b=H[m+44>>2];i=e;e=a+h|0;f=e>>>0>>0?f+1|0:f;a=e;e=a+H[m+40>>2]|0;Pa(i,e);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=c+32|0;a=H[m>>2];if(a){H[m+4>>2]=a;qa(a)}a=H[m+48>>2];if(a){H[m+52>>2]=a;qa(a)}da=m- -64|0;break Jb}o=1;break u;case 9:v=a;q=0;n=0;u=0;i=0;s=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;$b:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;q=a+n|0;H[k+56>>2]=q;ta(n,0,(g<<3)+8|0);H[k+52>>2]=q}ac:{if((b|0)<1){break ac}c=b&3;a=0;if(b-1>>>0>=3){o=b&-4;while(1){g=a<<2;f=(H[g+v>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;d=(H[v+(g|4)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;d=(H[v+(g|8)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;f=(H[v+(g|12)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;a=a+4|0;o=o-4|0;if(o){continue}break}}if(!c){break ac}while(1){d=(H[v+(a<<2)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;a=0;o=0;x=da-32|0;da=x;c=q-n>>3;bc:{if((c|0)<1){break bc}q=c&3;cc:{if(c-1>>>0<3){g=0;break cc}c=c&-4;g=0;while(1){A=g|1;d=(A<<3)+n|0;f=H[d+4>>2];r=H[d>>2];m=g|2;d=(m<<3)+n|0;h=H[d+4>>2];y=H[d>>2];l=g|3;d=(l<<3)+n|0;j=H[d+4>>2];B=H[d>>2];D=a;a=(g<<3)+n|0;z=H[a+4>>2];d=H[a>>2];a=j|B?l:h|y?m:f|r?A:!(z|d)?D:g;l=i+z|0;m=d+u|0;l=m>>>0>>0?l+1|0:l;i=m;m=m+r|0;d=f+l|0;d=i>>>0>m>>>0?d+1|0:d;l=m+y|0;f=d+h|0;f=l>>>0>>0?f+1|0:f;d=l;i=d+B|0;h=f+j|0;u=i;i=d>>>0>i>>>0?h+1|0:h;g=g+4|0;c=c-4|0;if(c){continue}break}}if(!q){break bc}while(1){d=a;a=(g<<3)+n|0;f=H[a+4>>2];c=H[a>>2];a=!(f|c)?d:g;g=g+1|0;f=f+i|0;d=c+u|0;f=d>>>0>>0?f+1|0:f;u=d;i=f;q=q-1|0;if(q){continue}break}}l=a+1|0;H[k+12>>2]=l;c=H[k>>2];d=H[k+4>>2]-c>>3;dc:{if(d>>>0>>0){Ya(k,l-d|0);break dc}if(d>>>0<=l>>>0){break dc}H[k+4>>2]=c+(l<<3)}ec:{fc:{gc:{hc:{if((a|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];g=0;while(1){d=g<<3;c=d+n|0;h=H[c+4>>2];c=H[c>>2];i=(c|0)!=0|(h|0)!=0;d=d+f|0;w=(+(c>>>0)+ +(h>>>0)*4294967296)/p*32768+.5;ic:{if(w<4294967296&w>=0){c=~~w>>>0;break ic}c=0}c=c?c:i?1:c;H[d>>2]=c;o=c+o|0;c=(a|0)==(g|0);g=g+1|0;if(!c){continue}break}if((o|0)==32768){break hc}}H[x+16>>2]=0;H[x+8>>2]=0;H[x+12>>2]=0;q=0;if(l){if(l>>>0>=1073741824){break a}c=l<<2;q=ra(c);H[x+8>>2]=q;s=c+q|0;H[x+16>>2]=s;ta(q,0,c);H[x+12>>2]=s}g=0;jc:{if((a|0)<0){break jc}d=a+1|0;c=d&7;if(a>>>0>=7){t=d&-8;while(1){H[(g<<2)+q>>2]=g;d=g|1;H[(d<<2)+q>>2]=d;d=g|2;H[(d<<2)+q>>2]=d;d=g|3;H[(d<<2)+q>>2]=d;d=g|4;H[(d<<2)+q>>2]=d;d=g|5;H[(d<<2)+q>>2]=d;d=g|6;H[(d<<2)+q>>2]=d;d=g|7;H[(d<<2)+q>>2]=d;g=g+8|0;t=t-8|0;if(t){continue}break}}if(!c){break jc}while(1){H[(g<<2)+q>>2]=g;g=g+1|0;c=c-1|0;if(c){continue}break}}H[x+24>>2]=k;wd(q,s,x+24|0);if((o|0)<32768){c=H[k>>2]+(H[H[x+12>>2]-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-o|0)+32768;g=0;break gc}if((a|0)>=1){q=o-32768|0;m=H[k>>2];while(1){w=32768/+(o|0);j=H[x+8>>2];c=a;while(1){kc:{lc:{l=m+(H[j+(c<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){g=d-1|0;f=d;h=q;i=d;p=T(w*+(d>>>0));mc:{if(P(p)<2147483648){u=~~p;break mc}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:g;d=(d|0)>(q|0)?h:d;H[l>>2]=f-d;q=q-d|0;o=o-d|0;if((o|0)!=32768){break lc}o=32768;break kc}if((a|0)!=(c|0)){break kc}g=1;break gc}d=(c|0)>1;c=c-1|0;if(d){continue}}break}g=0;if((q|0)>0){continue}break}break gc}g=0;if((o|0)<32769){break gc}while(1)continue}if((a|0)<0){break ec}break fc}c=H[x+8>>2];if(c){H[x+12>>2]=c;qa(c)}if((a|0)<0|g){break ec}}h=a+1|0;o=h&3;j=H[k>>2];nc:{if(a>>>0<3){q=0;g=0;break nc}l=h&-4;q=0;g=0;while(1){f=q<<3;c=f+j|0;H[c+4>>2]=g;d=j+(f|8)|0;c=H[c>>2]+g|0;H[d+4>>2]=c;i=j+(f|16)|0;c=c+H[d>>2]|0;H[i+4>>2]=c;d=j+(f|24)|0;c=c+H[i>>2]|0;H[d+4>>2]=c;g=c+H[d>>2]|0;q=q+4|0;l=l-4|0;if(l){continue}break}}if(o){while(1){c=j+(q<<3)|0;H[c+4>>2]=g;q=q+1|0;g=H[c>>2]+g|0;o=o-1|0;if(o){continue}break}}if((g|0)!=32768){break ec}g=0;p=0;oc:{if((a|0)<0){break oc}f=H[k>>2];if(a){c=h&-2;while(1){a=g<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*30517578125e-15)*(+(a>>>0)+ +(d>>>0)*4294967296)}a=(g|1)<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*30517578125e-15)*(+(a>>>0)+ +(d>>>0)*4294967296)}g=g+2|0;c=c-2|0;if(c){continue}break}}if(!(h&1)){break oc}a=g<<3;d=H[a+f>>2];if(!d){break oc}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*30517578125e-15)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);pc:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break pc}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=x+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;i=e;f=a<<1|d>>>31;a=(d<<1)+39|0;l=a>>>0<39?f+1|0:f;d=(l&7)<<29|a>>>3;a=c;c=d+a|0;h=l>>>3|0;h=a>>>0>c>>>0?h+1|0:h;a=c+8|0;a>>>0<8;Pa(i,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=131072;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=131072;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<15)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}d=da-32|0;da=d;h=H[e>>2]+H[k+40>>2]|0;a=H[k+32>>2];b=a-131072|0;qc:{if(b>>>0<=63){F[H[k+24>>2]+H[k+28>>2]|0]=b;c=H[k+28>>2]+1|0;break qc}if(b>>>0<=16383){b=H[k+24>>2]+H[k+28>>2]|0;a=a-114688|0;F[b|0]=a;F[b+1|0]=a>>>8;c=H[k+28>>2]+2|0;break qc}if(b>>>0<=4194303){b=H[k+24>>2]+H[k+28>>2]|0;a=a+8257536|0;F[b+2|0]=a>>>16;F[b+1|0]=a>>>8;F[b|0]=a;c=H[k+28>>2]+3|0;break qc}if(b>>>0<=1073741823){b=H[k+24>>2]+H[k+28>>2]|0;a=a-1073872896|0;F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24;c=H[k+28>>2]+4|0;break qc}c=H[k+28>>2]}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;a=c;f=a>>31;b=d;Db(a,f,d);i=H[d+4>>2]-H[d>>2]|0;Ha(i+h|0,h,a);sa(h,H[d>>2],i);c=H[k+44>>2];h=e;e=a+i|0;f=e>>>0>>0?f+1|0:f;a=e;e=a+H[k+40>>2]|0;Pa(h,e);a=H[d+12>>2];H[d+12>>2]=0;if(a){qa(a)}a=H[b>>2];if(a){H[b+4>>2]=a;qa(a)}da=d+32|0;a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break $b}o=1;break u;case 10:k=a;q=0;n=0;u=0;i=0;s=0;m=da+-64|0;da=m;H[m+56>>2]=0;H[m+48>>2]=0;H[m+52>>2]=0;rc:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[m+48>>2]=n;q=a+n|0;H[m+56>>2]=q;ta(n,0,(g<<3)+8|0);H[m+52>>2]=q}sc:{if((b|0)<1){break sc}c=b&3;a=0;if(b-1>>>0>=3){o=b&-4;while(1){g=a<<2;d=(H[g+k>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|4)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|8)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;d=(H[k+(g|12)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+4|0;o=o-4|0;if(o){continue}break}}if(!c){break sc}while(1){d=(H[k+(a<<2)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+1|0;c=c-1|0;if(c){continue}break}}H[m+8>>2]=0;H[m+12>>2]=0;H[m+16>>2]=0;H[m+20>>2]=0;H[m+24>>2]=0;H[m+28>>2]=0;H[m+32>>2]=0;H[m>>2]=0;H[m+4>>2]=0;H[m+40>>2]=0;H[m+44>>2]=0;a=0;o=0;x=da-32|0;da=x;c=q-n>>3;tc:{if((c|0)<1){break tc}q=c&3;uc:{if(c-1>>>0<3){g=0;break uc}c=c&-4;g=0;while(1){A=g|1;d=(A<<3)+n|0;f=H[d+4>>2];r=H[d>>2];l=g|2;d=(l<<3)+n|0;j=H[d+4>>2];y=H[d>>2];h=g|3;d=(h<<3)+n|0;v=H[d+4>>2];B=H[d>>2];D=a;a=(g<<3)+n|0;z=H[a+4>>2];d=H[a>>2];a=v|B?h:j|y?l:f|r?A:!(z|d)?D:g;l=i+z|0;h=d+u|0;l=h>>>0>>0?l+1|0:l;d=h;i=d+r|0;h=f+l|0;h=d>>>0>i>>>0?h+1|0:h;d=i;i=d+y|0;f=j+h|0;f=d>>>0>i>>>0?f+1|0:f;h=i+B|0;d=f+v|0;u=h;i=h>>>0>>0?d+1|0:d;g=g+4|0;c=c-4|0;if(c){continue}break}}if(!q){break tc}while(1){d=a;a=(g<<3)+n|0;f=H[a+4>>2];c=H[a>>2];a=!(f|c)?d:g;g=g+1|0;h=f+i|0;d=c+u|0;h=d>>>0>>0?h+1|0:h;u=d;i=h;q=q-1|0;if(q){continue}break}}l=a+1|0;H[m+12>>2]=l;c=H[m>>2];d=H[m+4>>2]-c>>3;vc:{if(d>>>0>>0){Ya(m,l-d|0);break vc}if(d>>>0<=l>>>0){break vc}H[m+4>>2]=c+(l<<3)}wc:{xc:{yc:{zc:{if((a|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[m>>2];g=0;while(1){d=g<<3;c=d+n|0;h=H[c+4>>2];c=H[c>>2];i=(c|0)!=0|(h|0)!=0;d=d+f|0;w=(+(c>>>0)+ +(h>>>0)*4294967296)/p*65536+.5;Ac:{if(w<4294967296&w>=0){c=~~w>>>0;break Ac}c=0}c=c?c:i?1:c;H[d>>2]=c;o=c+o|0;c=(a|0)==(g|0);g=g+1|0;if(!c){continue}break}if((o|0)==65536){break zc}}H[x+16>>2]=0;H[x+8>>2]=0;H[x+12>>2]=0;q=0;if(l){if(l>>>0>=1073741824){break a}c=l<<2;q=ra(c);H[x+8>>2]=q;s=c+q|0;H[x+16>>2]=s;ta(q,0,c);H[x+12>>2]=s}g=0;Bc:{if((a|0)<0){break Bc}d=a+1|0;c=d&7;if(a>>>0>=7){t=d&-8;while(1){H[(g<<2)+q>>2]=g;d=g|1;H[(d<<2)+q>>2]=d;d=g|2;H[(d<<2)+q>>2]=d;d=g|3;H[(d<<2)+q>>2]=d;d=g|4;H[(d<<2)+q>>2]=d;d=g|5;H[(d<<2)+q>>2]=d;d=g|6;H[(d<<2)+q>>2]=d;d=g|7;H[(d<<2)+q>>2]=d;g=g+8|0;t=t-8|0;if(t){continue}break}}if(!c){break Bc}while(1){H[(g<<2)+q>>2]=g;g=g+1|0;c=c-1|0;if(c){continue}break}}H[x+24>>2]=m;vd(q,s,x+24|0);if((o|0)<65536){c=H[m>>2]+(H[H[x+12>>2]-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-o|0)+65536;g=0;break yc}if((a|0)>=1){q=o-65536|0;v=H[m>>2];while(1){w=65536/+(o|0);j=H[x+8>>2];c=a;while(1){Cc:{Dc:{l=v+(H[j+(c<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){g=d-1|0;f=d;h=q;i=d;p=T(w*+(d>>>0));Ec:{if(P(p)<2147483648){u=~~p;break Ec}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:g;d=(d|0)>(q|0)?h:d;H[l>>2]=f-d;q=q-d|0;o=o-d|0;if((o|0)!=65536){break Dc}o=65536;break Cc}if((a|0)!=(c|0)){break Cc}g=1;break yc}d=(c|0)>1;c=c-1|0;if(d){continue}}break}g=0;if((q|0)>0){continue}break}break yc}g=0;if((o|0)<65537){break yc}while(1)continue}if((a|0)<0){break wc}break xc}c=H[x+8>>2];if(c){H[x+12>>2]=c;qa(c)}if((a|0)<0|g){break wc}}h=a+1|0;o=h&3;j=H[m>>2];Fc:{if(a>>>0<3){q=0;g=0;break Fc}l=h&-4;q=0;g=0;while(1){f=q<<3;c=f+j|0;H[c+4>>2]=g;d=j+(f|8)|0;c=H[c>>2]+g|0;H[d+4>>2]=c;i=j+(f|16)|0;c=c+H[d>>2]|0;H[i+4>>2]=c;d=j+(f|24)|0;c=c+H[i>>2]|0;H[d+4>>2]=c;g=c+H[d>>2]|0;q=q+4|0;l=l-4|0;if(l){continue}break}}if(o){while(1){c=j+(q<<3)|0;H[c+4>>2]=g;q=q+1|0;g=H[c>>2]+g|0;o=o-1|0;if(o){continue}break}}if((g|0)!=65536){break wc}g=0;p=0;Gc:{if((a|0)<0){break Gc}f=H[m>>2];if(a){c=h&-2;while(1){a=g<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*152587890625e-16)*(+(a>>>0)+ +(d>>>0)*4294967296)}a=(g|1)<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*152587890625e-16)*(+(a>>>0)+ +(d>>>0)*4294967296)}g=g+2|0;c=c-2|0;if(c){continue}break}}if(!(h&1)){break Gc}a=g<<3;d=H[a+f>>2];if(!d){break Gc}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*152587890625e-16)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=m;p=U(-p);Hc:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break Hc}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(m,e)}da=x+32|0;d=H[m+16>>2];a=H[m+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[m+40>>2]=c;H[m+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;l=a>>>0<39?f+1|0:f;d=(l&7)<<29|a>>>3;a=c;c=d+a|0;d=l>>>3|0;d=a>>>0>c>>>0?d+1|0:d;a=c+8|0;Pa(e,a);a=H[e>>2];H[m+28>>2]=0;H[m+32>>2]=262144;H[m+24>>2]=a+H[m+40>>2];if((b|0)>0){a=262144;while(1){c=b-1|0;f=H[m>>2]+(H[k+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[m+28>>2];H[m+28>>2]=d+1;F[d+H[m+24>>2]|0]=a;a=H[m+32>>2]>>>8|0;H[m+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<16)+(a-N(d,h)|0)|0)|0;H[m+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}d=da-32|0;da=d;h=H[e>>2]+H[m+40>>2]|0;a=H[m+32>>2];b=a-262144|0;Ic:{if(b>>>0<=63){F[H[m+24>>2]+H[m+28>>2]|0]=b;c=H[m+28>>2]+1|0;break Ic}if(b>>>0<=16383){b=H[m+24>>2]+H[m+28>>2]|0;a=a-245760|0;F[b|0]=a;F[b+1|0]=a>>>8;c=H[m+28>>2]+2|0;break Ic}if(b>>>0<=4194303){b=H[m+24>>2]+H[m+28>>2]|0;a=a+8126464|0;F[b+2|0]=a>>>16;F[b+1|0]=a>>>8;F[b|0]=a;c=H[m+28>>2]+3|0;break Ic}if(b>>>0<=1073741823){b=H[m+24>>2]+H[m+28>>2]|0;a=a-1074003968|0;F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24;c=H[m+28>>2]+4|0;break Ic}c=H[m+28>>2]}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;a=c;f=a>>31;b=d;Db(a,f,d);i=H[d+4>>2]-H[d>>2]|0;Ha(i+h|0,h,a);sa(h,H[d>>2],i);c=H[m+44>>2];h=e;e=a+i|0;f=e>>>0>>0?f+1|0:f;a=e;e=a+H[m+40>>2]|0;Pa(h,e);a=H[d+12>>2];H[d+12>>2]=0;if(a){qa(a)}a=H[b>>2];if(a){H[b+4>>2]=a;qa(a)}da=d+32|0;a=H[m>>2];if(a){H[m+4>>2]=a;qa(a)}a=H[m+48>>2];if(a){H[m+52>>2]=a;qa(a)}da=m- -64|0;break rc}o=1;break u;case 11:v=a;q=0;n=0;u=0;i=0;s=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;Jc:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;q=a+n|0;H[k+56>>2]=q;ta(n,0,(g<<3)+8|0);H[k+52>>2]=q}Kc:{if((b|0)<1){break Kc}c=b&3;a=0;if(b-1>>>0>=3){o=b&-4;while(1){g=a<<2;d=(H[g+v>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;f=(H[v+(g|4)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;d=(H[v+(g|8)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;d=(H[v+(g|12)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+4|0;o=o-4|0;if(o){continue}break}}if(!c){break Kc}while(1){f=(H[v+(a<<2)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;a=0;o=0;x=da-32|0;da=x;c=q-n>>3;Lc:{if((c|0)<1){break Lc}q=c&3;Mc:{if(c-1>>>0<3){g=0;break Mc}c=c&-4;g=0;while(1){A=g|1;d=(A<<3)+n|0;f=H[d+4>>2];r=H[d>>2];m=g|2;d=(m<<3)+n|0;h=H[d+4>>2];y=H[d>>2];l=g|3;d=(l<<3)+n|0;j=H[d+4>>2];B=H[d>>2];D=a;a=(g<<3)+n|0;z=H[a+4>>2];d=H[a>>2];a=j|B?l:h|y?m:f|r?A:!(z|d)?D:g;l=i+z|0;m=d+u|0;l=m>>>0>>0?l+1|0:l;d=m;i=d+r|0;f=f+l|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+y|0;f=f+h|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+B|0;h=f+j|0;u=i;i=d>>>0>i>>>0?h+1|0:h;g=g+4|0;c=c-4|0;if(c){continue}break}}if(!q){break Lc}while(1){f=a;a=(g<<3)+n|0;d=H[a+4>>2];c=H[a>>2];a=!(d|c)?f:g;g=g+1|0;d=d+i|0;f=c+u|0;d=f>>>0>>0?d+1|0:d;u=f;i=d;q=q-1|0;if(q){continue}break}}l=a+1|0;H[k+12>>2]=l;c=H[k>>2];d=H[k+4>>2]-c>>3;Nc:{if(d>>>0>>0){Ya(k,l-d|0);break Nc}if(d>>>0<=l>>>0){break Nc}H[k+4>>2]=c+(l<<3)}Oc:{Pc:{Qc:{Rc:{if((a|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];g=0;while(1){d=g<<3;c=d+n|0;h=H[c+4>>2];c=H[c>>2];i=(c|0)!=0|(h|0)!=0;d=d+f|0;w=(+(c>>>0)+ +(h>>>0)*4294967296)/p*262144+.5;Sc:{if(w<4294967296&w>=0){c=~~w>>>0;break Sc}c=0}c=c?c:i?1:c;H[d>>2]=c;o=c+o|0;c=(a|0)==(g|0);g=g+1|0;if(!c){continue}break}if((o|0)==262144){break Rc}}H[x+16>>2]=0;H[x+8>>2]=0;H[x+12>>2]=0;q=0;if(l){if(l>>>0>=1073741824){break a}c=l<<2;q=ra(c);H[x+8>>2]=q;s=c+q|0;H[x+16>>2]=s;ta(q,0,c);H[x+12>>2]=s}g=0;Tc:{if((a|0)<0){break Tc}d=a+1|0;c=d&7;if(a>>>0>=7){t=d&-8;while(1){H[(g<<2)+q>>2]=g;d=g|1;H[(d<<2)+q>>2]=d;d=g|2;H[(d<<2)+q>>2]=d;d=g|3;H[(d<<2)+q>>2]=d;d=g|4;H[(d<<2)+q>>2]=d;d=g|5;H[(d<<2)+q>>2]=d;d=g|6;H[(d<<2)+q>>2]=d;d=g|7;H[(d<<2)+q>>2]=d;g=g+8|0;t=t-8|0;if(t){continue}break}}if(!c){break Tc}while(1){H[(g<<2)+q>>2]=g;g=g+1|0;c=c-1|0;if(c){continue}break}}H[x+24>>2]=k;ud(q,s,x+24|0);if((o|0)<262144){c=H[k>>2]+(H[H[x+12>>2]-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-o|0)+262144;g=0;break Qc}if((a|0)>=1){q=o-262144|0;m=H[k>>2];while(1){w=262144/+(o|0);j=H[x+8>>2];c=a;while(1){Uc:{Vc:{l=m+(H[j+(c<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){g=d-1|0;f=d;h=q;i=d;p=T(w*+(d>>>0));Wc:{if(P(p)<2147483648){u=~~p;break Wc}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:g;d=(d|0)>(q|0)?h:d;H[l>>2]=f-d;q=q-d|0;o=o-d|0;if((o|0)!=262144){break Vc}o=262144;break Uc}if((a|0)!=(c|0)){break Uc}g=1;break Qc}d=(c|0)>1;c=c-1|0;if(d){continue}}break}g=0;if((q|0)>0){continue}break}break Qc}g=0;if((o|0)<262145){break Qc}while(1)continue}if((a|0)<0){break Oc}break Pc}c=H[x+8>>2];if(c){H[x+12>>2]=c;qa(c)}if((a|0)<0|g){break Oc}}h=a+1|0;o=h&3;j=H[k>>2];Xc:{if(a>>>0<3){q=0;g=0;break Xc}l=h&-4;q=0;g=0;while(1){f=q<<3;c=f+j|0;H[c+4>>2]=g;d=j+(f|8)|0;c=H[c>>2]+g|0;H[d+4>>2]=c;i=j+(f|16)|0;c=c+H[d>>2]|0;H[i+4>>2]=c;d=j+(f|24)|0;c=c+H[i>>2]|0;H[d+4>>2]=c;g=c+H[d>>2]|0;q=q+4|0;l=l-4|0;if(l){continue}break}}if(o){while(1){c=j+(q<<3)|0;H[c+4>>2]=g;q=q+1|0;g=H[c>>2]+g|0;o=o-1|0;if(o){continue}break}}if((g|0)!=262144){break Oc}g=0;p=0;Yc:{if((a|0)<0){break Yc}f=H[k>>2];if(a){c=h&-2;while(1){a=g<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*3814697265625e-18)*(+(a>>>0)+ +(d>>>0)*4294967296)}a=(g|1)<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*3814697265625e-18)*(+(a>>>0)+ +(d>>>0)*4294967296)}g=g+2|0;c=c-2|0;if(c){continue}break}}if(!(h&1)){break Yc}a=g<<3;d=H[a+f>>2];if(!d){break Yc}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*3814697265625e-18)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);Zc:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break Zc}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=x+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;i=e;f=a<<1|d>>>31;a=(d<<1)+39|0;l=a>>>0<39?f+1|0:f;d=(l&7)<<29|a>>>3;a=c;c=d+a|0;h=l>>>3|0;h=a>>>0>c>>>0?h+1|0:h;a=c+8|0;a>>>0<8;Pa(i,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=1048576;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=1048576;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<18)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}c=da-32|0;da=c;l=H[e>>2]+H[k+40>>2]|0;a=H[k+32>>2];b=a+-1048576|0;_c:{if(b>>>0<=63){F[H[k+24>>2]+H[k+28>>2]|0]=b;i=H[k+28>>2]+1|0;break _c}if(b>>>0<=16383){b=H[k+24>>2]+H[k+28>>2]|0;a=a-1032192|0;F[b|0]=a;F[b+1|0]=a>>>8;i=H[k+28>>2]+2|0;break _c}if(b>>>0<=4194303){b=H[k+24>>2]+H[k+28>>2]|0;a=a+7340032|0;F[b+2|0]=a>>>16;F[b+1|0]=a>>>8;F[b|0]=a;i=H[k+28>>2]+3|0;break _c}if(b>>>0<=1073741823){b=H[k+24>>2]+H[k+28>>2]|0;a=a-1074790400|0;F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24;i=H[k+28>>2]+4|0;break _c}i=H[k+28>>2]}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;a=i;f=a>>31;d=c;Db(a,f,d);h=H[d+4>>2]-H[d>>2]|0;Ha(h+l|0,l,a);sa(l,H[d>>2],h);b=H[k+44>>2];i=e;e=a+h|0;f=e>>>0>>0?f+1|0:f;a=e;e=a+H[k+40>>2]|0;Pa(i,e);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=c+32|0;a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break Jc}o=1;break u;case 12:k=a;q=0;n=0;u=0;i=0;s=0;m=da+-64|0;da=m;H[m+56>>2]=0;H[m+48>>2]=0;H[m+52>>2]=0;$c:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[m+48>>2]=n;q=a+n|0;H[m+56>>2]=q;ta(n,0,(g<<3)+8|0);H[m+52>>2]=q}ad:{if((b|0)<1){break ad}c=b&3;a=0;if(b-1>>>0>=3){o=b&-4;while(1){g=a<<2;d=(H[g+k>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|4)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[k+(g|8)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;d=(H[k+(g|12)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+4|0;o=o-4|0;if(o){continue}break}}if(!c){break ad}while(1){d=(H[k+(a<<2)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+1|0;c=c-1|0;if(c){continue}break}}H[m+8>>2]=0;H[m+12>>2]=0;H[m+16>>2]=0;H[m+20>>2]=0;H[m+24>>2]=0;H[m+28>>2]=0;H[m+32>>2]=0;H[m>>2]=0;H[m+4>>2]=0;H[m+40>>2]=0;H[m+44>>2]=0;a=0;o=0;x=da-32|0;da=x;c=q-n>>3;bd:{if((c|0)<1){break bd}q=c&3;cd:{if(c-1>>>0<3){g=0;break cd}c=c&-4;g=0;while(1){A=g|1;d=(A<<3)+n|0;f=H[d+4>>2];r=H[d>>2];l=g|2;d=(l<<3)+n|0;j=H[d+4>>2];y=H[d>>2];h=g|3;d=(h<<3)+n|0;v=H[d+4>>2];B=H[d>>2];D=a;a=(g<<3)+n|0;z=H[a+4>>2];d=H[a>>2];a=v|B?h:j|y?l:f|r?A:!(z|d)?D:g;l=i+z|0;h=d+u|0;l=h>>>0>>0?l+1|0:l;d=h;i=d+r|0;h=f+l|0;h=d>>>0>i>>>0?h+1|0:h;d=i;i=d+y|0;f=j+h|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+B|0;f=f+v|0;u=i;i=d>>>0>i>>>0?f+1|0:f;g=g+4|0;c=c-4|0;if(c){continue}break}}if(!q){break bd}while(1){d=a;a=(g<<3)+n|0;f=H[a+4>>2];c=H[a>>2];a=!(f|c)?d:g;g=g+1|0;h=f+i|0;d=c+u|0;h=d>>>0>>0?h+1|0:h;u=d;i=h;q=q-1|0;if(q){continue}break}}l=a+1|0;H[m+12>>2]=l;c=H[m>>2];d=H[m+4>>2]-c>>3;dd:{if(d>>>0>>0){Ya(m,l-d|0);break dd}if(d>>>0<=l>>>0){break dd}H[m+4>>2]=c+(l<<3)}ed:{fd:{gd:{hd:{if((a|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[m>>2];g=0;while(1){d=g<<3;c=d+n|0;h=H[c+4>>2];c=H[c>>2];i=(c|0)!=0|(h|0)!=0;d=d+f|0;w=(+(c>>>0)+ +(h>>>0)*4294967296)/p*524288+.5;id:{if(w<4294967296&w>=0){c=~~w>>>0;break id}c=0}c=c?c:i?1:c;H[d>>2]=c;o=c+o|0;c=(a|0)==(g|0);g=g+1|0;if(!c){continue}break}if((o|0)==524288){break hd}}H[x+16>>2]=0;H[x+8>>2]=0;H[x+12>>2]=0;q=0;if(l){if(l>>>0>=1073741824){break a}c=l<<2;q=ra(c);H[x+8>>2]=q;s=c+q|0;H[x+16>>2]=s;ta(q,0,c);H[x+12>>2]=s}g=0;jd:{if((a|0)<0){break jd}d=a+1|0;c=d&7;if(a>>>0>=7){t=d&-8;while(1){H[(g<<2)+q>>2]=g;d=g|1;H[(d<<2)+q>>2]=d;d=g|2;H[(d<<2)+q>>2]=d;d=g|3;H[(d<<2)+q>>2]=d;d=g|4;H[(d<<2)+q>>2]=d;d=g|5;H[(d<<2)+q>>2]=d;d=g|6;H[(d<<2)+q>>2]=d;d=g|7;H[(d<<2)+q>>2]=d;g=g+8|0;t=t-8|0;if(t){continue}break}}if(!c){break jd}while(1){H[(g<<2)+q>>2]=g;g=g+1|0;c=c-1|0;if(c){continue}break}}H[x+24>>2]=m;td(q,s,x+24|0);if((o|0)<524288){c=H[m>>2]+(H[H[x+12>>2]-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-o|0)+524288;g=0;break gd}if((a|0)>=1){q=o-524288|0;v=H[m>>2];while(1){w=524288/+(o|0);j=H[x+8>>2];c=a;while(1){kd:{ld:{l=v+(H[j+(c<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){g=d-1|0;f=d;h=q;i=d;p=T(w*+(d>>>0));md:{if(P(p)<2147483648){u=~~p;break md}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:g;d=(d|0)>(q|0)?h:d;H[l>>2]=f-d;q=q-d|0;o=o-d|0;if((o|0)!=524288){break ld}o=524288;break kd}if((a|0)!=(c|0)){break kd}g=1;break gd}d=(c|0)>1;c=c-1|0;if(d){continue}}break}g=0;if((q|0)>0){continue}break}break gd}g=0;if((o|0)<524289){break gd}while(1)continue}if((a|0)<0){break ed}break fd}c=H[x+8>>2];if(c){H[x+12>>2]=c;qa(c)}if((a|0)<0|g){break ed}}h=a+1|0;o=h&3;j=H[m>>2];nd:{if(a>>>0<3){q=0;g=0;break nd}l=h&-4;q=0;g=0;while(1){f=q<<3;c=f+j|0;H[c+4>>2]=g;d=j+(f|8)|0;c=H[c>>2]+g|0;H[d+4>>2]=c;i=j+(f|16)|0;c=c+H[d>>2]|0;H[i+4>>2]=c;d=j+(f|24)|0;c=c+H[i>>2]|0;H[d+4>>2]=c;g=c+H[d>>2]|0;q=q+4|0;l=l-4|0;if(l){continue}break}}if(o){while(1){c=j+(q<<3)|0;H[c+4>>2]=g;q=q+1|0;g=H[c>>2]+g|0;o=o-1|0;if(o){continue}break}}if((g|0)!=524288){break ed}g=0;p=0;od:{if((a|0)<0){break od}f=H[m>>2];if(a){c=h&-2;while(1){a=g<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*19073486328125e-19)*(+(a>>>0)+ +(d>>>0)*4294967296)}a=(g|1)<<3;i=H[a+f>>2];if(i){a=a+n|0;d=H[a+4>>2];a=H[a>>2];p=p+ya(+(i>>>0)*19073486328125e-19)*(+(a>>>0)+ +(d>>>0)*4294967296)}g=g+2|0;c=c-2|0;if(c){continue}break}}if(!(h&1)){break od}a=g<<3;d=H[a+f>>2];if(!d){break od}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*19073486328125e-19)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=m;p=U(-p);pd:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break pd}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(m,e)}da=x+32|0;d=H[m+16>>2];a=H[m+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[m+40>>2]=c;H[m+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;l=a>>>0<39?f+1|0:f;d=(l&7)<<29|a>>>3;a=c;c=d+a|0;f=l>>>3|0;f=a>>>0>c>>>0?f+1|0:f;a=c+8|0;Pa(e,a);a=H[e>>2];H[m+28>>2]=0;H[m+32>>2]=2097152;H[m+24>>2]=a+H[m+40>>2];if((b|0)>0){a=2097152;while(1){c=b-1|0;f=H[m>>2]+(H[k+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[m+28>>2];H[m+28>>2]=d+1;F[d+H[m+24>>2]|0]=a;a=H[m+32>>2]>>>8|0;H[m+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<19)+(a-N(d,h)|0)|0)|0;H[m+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}c=da-32|0;da=c;l=H[e>>2]+H[m+40>>2]|0;a=H[m+32>>2];b=a-2097152|0;qd:{if(b>>>0<=63){F[H[m+24>>2]+H[m+28>>2]|0]=b;i=H[m+28>>2]+1|0;break qd}if(b>>>0<=16383){b=H[m+24>>2]+H[m+28>>2]|0;a=a-2080768|0;F[b|0]=a;F[b+1|0]=a>>>8;i=H[m+28>>2]+2|0;break qd}if(b>>>0<=4194303){b=H[m+24>>2]+H[m+28>>2]|0;a=a+6291456|0;F[b+2|0]=a>>>16;F[b+1|0]=a>>>8;F[b|0]=a;i=H[m+28>>2]+3|0;break qd}if(b>>>0<=1073741823){b=H[m+24>>2]+H[m+28>>2]|0;a=a-1075838976|0;F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24;i=H[m+28>>2]+4|0;break qd}i=H[m+28>>2]}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;a=i;f=a>>31;d=c;Db(a,f,d);h=H[d+4>>2]-H[d>>2]|0;Ha(h+l|0,l,a);sa(l,H[d>>2],h);b=H[m+44>>2];i=e;e=a+h|0;f=e>>>0>>0?f+1|0:f;a=e;e=a+H[m+40>>2]|0;Pa(i,e);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=c+32|0;a=H[m>>2];if(a){H[m+4>>2]=a;qa(a)}a=H[m+48>>2];if(a){H[m+52>>2]=a;qa(a)}da=m- -64|0;break $c}o=1;break u;case 13:v=a;j=0;n=0;s=0;u=0;i=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;rd:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;s=a+n|0;H[k+56>>2]=s;ta(n,0,(g<<3)+8|0);H[k+52>>2]=s}sd:{if((b|0)<1){break sd}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){g=a<<2;f=(H[g+v>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;d=(H[v+(g|4)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;d=(H[v+(g|8)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;f=(H[v+(g|12)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break sd}while(1){d=(H[v+(a<<2)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;td:{if((a|0)<1){break td}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;f=H[d+4>>2];y=H[d>>2];m=j|2;d=(m<<3)+n|0;h=H[d+4>>2];B=H[d>>2];l=j|3;d=(l<<3)+n|0;q=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=q|z?l:h|B?m:f|y?s:!(A|d)?D:j;l=i+A|0;m=d+u|0;l=m>>>0>>0?l+1|0:l;i=m;m=m+y|0;d=f+l|0;d=i>>>0>m>>>0?d+1|0:d;l=m+B|0;f=d+h|0;f=l>>>0>>0?f+1|0:f;d=l;i=d+z|0;h=f+q|0;u=i;i=d>>>0>i>>>0?h+1|0:h;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break td}while(1){a=(j<<3)+n|0;f=H[a+4>>2];a=H[a>>2];c=!(f|a)?c:j;j=j+1|0;f=f+i|0;d=a+u|0;f=d>>>0>>0?f+1|0:f;u=d;i=f;g=g-1|0;if(g){continue}break}}l=c+1|0;H[k+12>>2]=l;a=H[k>>2];d=H[k+4>>2]-a>>3;ud:{if(d>>>0>>0){Ya(k,l-d|0);break ud}if(d>>>0<=l>>>0){break ud}H[k+4>>2]=a+(l<<3)}vd:{wd:{xd:{yd:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*1048576+.5;zd:{if(w<4294967296&w>=0){a=~~w>>>0;break zd}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==1048576){break yd}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;Ad:{if((c|0)<0){break Ad}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break Ad}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=k;sd(g,t,r+24|0);if((o|0)<1048576){a=H[k>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)- -1048576;j=0;break xd}if((c|0)>=1){g=o+-1048576|0;m=H[k>>2];while(1){w=1048576/+(o|0);j=H[r+8>>2];a=c;while(1){Bd:{Cd:{l=m+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));Dd:{if(P(p)<2147483648){u=~~p;break Dd}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=1048576){break Cd}o=1048576;break Bd}if((a|0)!=(c|0)){break Bd}j=1;break xd}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break xd}j=0;if((o|0)<1048577){break xd}while(1)continue}if((c|0)<0){break vd}break wd}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break vd}}h=c+1|0;o=h&3;l=H[k>>2];Ed:{if(c>>>0<3){g=0;j=0;break Ed}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=1048576){break vd}j=0;p=0;Fd:{if((c|0)<0){break Fd}f=H[k>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break Fd}a=j<<3;d=H[a+f>>2];if(!d){break Fd}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*9.5367431640625e-7)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);Gd:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break Gd}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=r+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;i=e;f=a<<1|d>>>31;a=(d<<1)+39|0;l=a>>>0<39?f+1|0:f;d=(l&7)<<29|a>>>3;a=c;c=d+a|0;h=l>>>3|0;h=a>>>0>c>>>0?h+1|0:h;a=c+8|0;a>>>0<8;Pa(i,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=4194304;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<20)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}cc(k,e);a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break rd}o=1;break u;case 14:v=a;j=0;n=0;s=0;u=0;i=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;Hd:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;s=a+n|0;H[k+56>>2]=s;ta(n,0,(g<<3)+8|0);H[k+52>>2]=s}Id:{if((b|0)<1){break Id}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){g=a<<2;d=(H[g+v>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;d=(H[v+(g|4)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;d=(H[v+(g|8)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[v+(g|12)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break Id}while(1){d=(H[v+(a<<2)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;Jd:{if((a|0)<1){break Jd}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;f=H[d+4>>2];y=H[d>>2];m=j|2;d=(m<<3)+n|0;l=H[d+4>>2];B=H[d>>2];h=j|3;d=(h<<3)+n|0;q=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=q|z?h:l|B?m:f|y?s:!(A|d)?D:j;h=i+A|0;m=d+u|0;h=m>>>0>>0?h+1|0:h;d=m;i=d+y|0;f=f+h|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+B|0;h=f+l|0;h=d>>>0>i>>>0?h+1|0:h;f=i+z|0;d=h+q|0;u=f;i=f>>>0>>0?d+1|0:d;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break Jd}while(1){a=(j<<3)+n|0;f=H[a+4>>2];a=H[a>>2];c=!(f|a)?c:j;j=j+1|0;l=f+i|0;d=a+u|0;l=d>>>0>>0?l+1|0:l;u=d;i=l;g=g-1|0;if(g){continue}break}}l=c+1|0;H[k+12>>2]=l;a=H[k>>2];d=H[k+4>>2]-a>>3;Kd:{if(d>>>0>>0){Ya(k,l-d|0);break Kd}if(d>>>0<=l>>>0){break Kd}H[k+4>>2]=a+(l<<3)}Ld:{Md:{Nd:{Od:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*1048576+.5;Pd:{if(w<4294967296&w>=0){a=~~w>>>0;break Pd}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==1048576){break Od}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;Qd:{if((c|0)<0){break Qd}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break Qd}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=k;rd(g,t,r+24|0);if((o|0)<1048576){a=H[k>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)- -1048576;j=0;break Nd}if((c|0)>=1){g=o+-1048576|0;m=H[k>>2];while(1){w=1048576/+(o|0);j=H[r+8>>2];a=c;while(1){Rd:{Sd:{l=m+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));Td:{if(P(p)<2147483648){u=~~p;break Td}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=1048576){break Sd}o=1048576;break Rd}if((a|0)!=(c|0)){break Rd}j=1;break Nd}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break Nd}j=0;if((o|0)<1048577){break Nd}while(1)continue}if((c|0)<0){break Ld}break Md}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break Ld}}h=c+1|0;o=h&3;l=H[k>>2];Ud:{if(c>>>0<3){g=0;j=0;break Ud}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=1048576){break Ld}j=0;p=0;Vd:{if((c|0)<0){break Vd}f=H[k>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break Vd}a=j<<3;d=H[a+f>>2];if(!d){break Vd}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*9.5367431640625e-7)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);Wd:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break Wd}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=r+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;f=e;h=a<<1|d>>>31;a=(d<<1)+39|0;if(a>>>0<39){h=h+1|0}d=(h&7)<<29|a>>>3;a=c;c=d+a|0;d=h>>>3|0;d=a>>>0>c>>>0?d+1|0:d;a=c+8|0;Pa(f,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=4194304;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<20)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}cc(k,e);a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break Hd}o=1;break u;case 15:v=a;j=0;n=0;s=0;u=0;i=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;Xd:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;s=a+n|0;H[k+56>>2]=s;ta(n,0,(g<<3)+8|0);H[k+52>>2]=s}Yd:{if((b|0)<1){break Yd}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){l=a<<2;d=(H[l+v>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[v+(l|4)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[v+(l|8)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;d=(H[v+(l|12)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break Yd}while(1){d=(H[v+(a<<2)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;Zd:{if((a|0)<1){break Zd}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;h=H[d+4>>2];y=H[d>>2];m=j|2;d=(m<<3)+n|0;l=H[d+4>>2];B=H[d>>2];f=j|3;d=(f<<3)+n|0;q=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=q|z?f:l|B?m:h|y?s:!(A|d)?D:j;f=i+A|0;m=d+u|0;f=m>>>0>>0?f+1|0:f;d=m;i=d+y|0;h=f+h|0;h=d>>>0>i>>>0?h+1|0:h;f=i+B|0;d=h+l|0;d=f>>>0>>0?d+1|0:d;i=f;h=f+z|0;f=d+q|0;u=h;i=h>>>0>>0?f+1|0:f;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break Zd}while(1){a=(j<<3)+n|0;f=H[a+4>>2];a=H[a>>2];c=!(f|a)?c:j;j=j+1|0;h=f+i|0;d=a+u|0;h=d>>>0>>0?h+1|0:h;u=d;i=h;g=g-1|0;if(g){continue}break}}l=c+1|0;H[k+12>>2]=l;a=H[k>>2];d=H[k+4>>2]-a>>3;_d:{if(d>>>0>>0){Ya(k,l-d|0);break _d}if(d>>>0<=l>>>0){break _d}H[k+4>>2]=a+(l<<3)}$d:{ae:{be:{ce:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*1048576+.5;de:{if(w<4294967296&w>=0){a=~~w>>>0;break de}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==1048576){break ce}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;ee:{if((c|0)<0){break ee}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break ee}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=k;qd(g,t,r+24|0);if((o|0)<1048576){a=H[k>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)- -1048576;j=0;break be}if((c|0)>=1){g=o+-1048576|0;m=H[k>>2];while(1){w=1048576/+(o|0);j=H[r+8>>2];a=c;while(1){fe:{ge:{l=m+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));he:{if(P(p)<2147483648){u=~~p;break he}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=1048576){break ge}o=1048576;break fe}if((a|0)!=(c|0)){break fe}j=1;break be}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break be}j=0;if((o|0)<1048577){break be}while(1)continue}if((c|0)<0){break $d}break ae}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break $d}}h=c+1|0;o=h&3;l=H[k>>2];ie:{if(c>>>0<3){g=0;j=0;break ie}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=1048576){break $d}j=0;p=0;je:{if((c|0)<0){break je}f=H[k>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break je}a=j<<3;d=H[a+f>>2];if(!d){break je}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*9.5367431640625e-7)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);ke:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break ke}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=r+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;i=d;d=a<<1|d>>>31;a=(i<<1)+39|0;f=a>>>0<39?d+1|0:d;d=(f&7)<<29|a>>>3;a=c;c=d+a|0;f=f>>>3|0;f=a>>>0>c>>>0?f+1|0:f;a=c+8|0;Pa(e,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=4194304;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<20)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}cc(k,e);a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break Xd}o=1;break u;case 16:v=a;j=0;n=0;s=0;u=0;i=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;le:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;s=a+n|0;H[k+56>>2]=s;ta(n,0,(g<<3)+8|0);H[k+52>>2]=s}me:{if((b|0)<1){break me}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){g=a<<2;f=(H[g+v>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;d=(H[v+(g|4)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;d=(H[v+(g|8)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;f=(H[v+(g|12)>>2]<<3)+n|0;h=f;d=H[f+4>>2];f=H[f>>2]+1|0;d=f>>>0<1?d+1|0:d;H[h>>2]=f;H[h+4>>2]=d;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break me}while(1){d=(H[v+(a<<2)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;ne:{if((a|0)<1){break ne}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;f=H[d+4>>2];y=H[d>>2];m=j|2;d=(m<<3)+n|0;h=H[d+4>>2];B=H[d>>2];l=j|3;d=(l<<3)+n|0;q=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=q|z?l:h|B?m:f|y?s:!(A|d)?D:j;l=i+A|0;m=d+u|0;l=m>>>0>>0?l+1|0:l;i=m;m=m+y|0;d=f+l|0;d=i>>>0>m>>>0?d+1|0:d;l=m+B|0;f=d+h|0;f=l>>>0>>0?f+1|0:f;d=l;i=d+z|0;h=f+q|0;u=i;i=d>>>0>i>>>0?h+1|0:h;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break ne}while(1){a=(j<<3)+n|0;f=H[a+4>>2];a=H[a>>2];c=!(f|a)?c:j;j=j+1|0;f=f+i|0;d=a+u|0;f=d>>>0>>0?f+1|0:f;u=d;i=f;g=g-1|0;if(g){continue}break}}l=c+1|0;H[k+12>>2]=l;a=H[k>>2];d=H[k+4>>2]-a>>3;oe:{if(d>>>0>>0){Ya(k,l-d|0);break oe}if(d>>>0<=l>>>0){break oe}H[k+4>>2]=a+(l<<3)}pe:{qe:{re:{se:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*1048576+.5;te:{if(w<4294967296&w>=0){a=~~w>>>0;break te}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==1048576){break se}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;ue:{if((c|0)<0){break ue}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break ue}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=k;pd(g,t,r+24|0);if((o|0)<1048576){a=H[k>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)- -1048576;j=0;break re}if((c|0)>=1){g=o+-1048576|0;m=H[k>>2];while(1){w=1048576/+(o|0);j=H[r+8>>2];a=c;while(1){ve:{we:{l=m+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));xe:{if(P(p)<2147483648){u=~~p;break xe}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=1048576){break we}o=1048576;break ve}if((a|0)!=(c|0)){break ve}j=1;break re}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break re}j=0;if((o|0)<1048577){break re}while(1)continue}if((c|0)<0){break pe}break qe}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break pe}}h=c+1|0;o=h&3;l=H[k>>2];ye:{if(c>>>0<3){g=0;j=0;break ye}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=1048576){break pe}j=0;p=0;ze:{if((c|0)<0){break ze}f=H[k>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break ze}a=j<<3;d=H[a+f>>2];if(!d){break ze}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*9.5367431640625e-7)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);Ae:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break Ae}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=r+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;i=e;f=a<<1|d>>>31;a=(d<<1)+39|0;l=a>>>0<39?f+1|0:f;d=(l&7)<<29|a>>>3;a=c;c=d+a|0;h=l>>>3|0;h=a>>>0>c>>>0?h+1|0:h;a=c+8|0;a>>>0<8;Pa(i,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=4194304;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<20)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}cc(k,e);a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break le}o=1;break u;case 17:break C;default:break u}}v=a;j=0;n=0;s=0;u=0;i=0;k=da+-64|0;da=k;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;Be:{a=g+1|0;if(a>>>0>=g>>>0){if(a>>>0>=536870912){break a}a=a<<3;n=ra(a);H[k+48>>2]=n;s=a+n|0;H[k+56>>2]=s;ta(n,0,(g<<3)+8|0);H[k+52>>2]=s}Ce:{if((b|0)<1){break Ce}c=b&3;a=0;if(b-1>>>0>=3){t=b&-4;while(1){g=a<<2;d=(H[g+v>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;d=(H[v+(g|4)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;d=(H[v+(g|8)>>2]<<3)+n|0;f=d;h=H[d+4>>2];d=H[d>>2]+1|0;h=d>>>0<1?h+1|0:h;H[f>>2]=d;H[f+4>>2]=h;d=(H[v+(g|12)>>2]<<3)+n|0;h=d;f=H[d+4>>2];d=H[d>>2]+1|0;f=d>>>0<1?f+1|0:f;H[h>>2]=d;H[h+4>>2]=f;a=a+4|0;t=t-4|0;if(t){continue}break}}if(!c){break Ce}while(1){d=(H[v+(a<<2)>>2]<<3)+n|0;f=d;l=H[d+4>>2];d=H[d>>2]+1|0;l=d>>>0<1?l+1|0:l;H[f>>2]=d;H[f+4>>2]=l;a=a+1|0;c=c-1|0;if(c){continue}break}}H[k+8>>2]=0;H[k+12>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+32>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+40>>2]=0;H[k+44>>2]=0;c=0;t=0;r=da-32|0;da=r;a=s-n>>3;De:{if((a|0)<1){break De}g=a&3;if(a-1>>>0>=3){a=a&-4;while(1){s=j|1;d=(s<<3)+n|0;f=H[d+4>>2];y=H[d>>2];m=j|2;d=(m<<3)+n|0;l=H[d+4>>2];B=H[d>>2];h=j|3;d=(h<<3)+n|0;q=H[d+4>>2];z=H[d>>2];D=c;c=(j<<3)+n|0;A=H[c+4>>2];d=H[c>>2];c=q|z?h:l|B?m:f|y?s:!(A|d)?D:j;h=i+A|0;m=d+u|0;h=m>>>0>>0?h+1|0:h;d=m;i=d+y|0;f=f+h|0;f=d>>>0>i>>>0?f+1|0:f;d=i;i=d+B|0;h=f+l|0;h=d>>>0>i>>>0?h+1|0:h;f=i+z|0;d=h+q|0;u=f;i=f>>>0>>0?d+1|0:d;j=j+4|0;a=a-4|0;if(a){continue}break}}if(!g){break De}while(1){a=(j<<3)+n|0;f=H[a+4>>2];a=H[a>>2];c=!(f|a)?c:j;j=j+1|0;l=f+i|0;d=a+u|0;l=d>>>0>>0?l+1|0:l;u=d;i=l;g=g-1|0;if(g){continue}break}}l=c+1|0;H[k+12>>2]=l;a=H[k>>2];d=H[k+4>>2]-a>>3;Ee:{if(d>>>0>>0){Ya(k,l-d|0);break Ee}if(d>>>0<=l>>>0){break Ee}H[k+4>>2]=a+(l<<3)}Fe:{Ge:{He:{Ie:{if((c|0)>=0){p=+(u>>>0)+ +(i>>>0)*4294967296;f=H[k>>2];j=0;while(1){d=j<<3;a=d+n|0;h=H[a+4>>2];a=H[a>>2];i=(a|0)!=0|(h|0)!=0;d=d+f|0;w=(+(a>>>0)+ +(h>>>0)*4294967296)/p*1048576+.5;Je:{if(w<4294967296&w>=0){a=~~w>>>0;break Je}a=0}a=a?a:i?1:a;H[d>>2]=a;o=a+o|0;a=(c|0)==(j|0);j=j+1|0;if(!a){continue}break}if((o|0)==1048576){break Ie}}H[r+16>>2]=0;H[r+8>>2]=0;H[r+12>>2]=0;g=0;if(l){if(l>>>0>=1073741824){break a}a=l<<2;g=ra(a);H[r+8>>2]=g;t=a+g|0;H[r+16>>2]=t;ta(g,0,a);H[r+12>>2]=t}j=0;Ke:{if((c|0)<0){break Ke}d=c+1|0;a=d&7;if(c>>>0>=7){s=d&-8;while(1){H[(j<<2)+g>>2]=j;d=j|1;H[(d<<2)+g>>2]=d;d=j|2;H[(d<<2)+g>>2]=d;d=j|3;H[(d<<2)+g>>2]=d;d=j|4;H[(d<<2)+g>>2]=d;d=j|5;H[(d<<2)+g>>2]=d;d=j|6;H[(d<<2)+g>>2]=d;d=j|7;H[(d<<2)+g>>2]=d;j=j+8|0;s=s-8|0;if(s){continue}break}}if(!a){break Ke}while(1){H[(j<<2)+g>>2]=j;j=j+1|0;a=a-1|0;if(a){continue}break}}H[r+24>>2]=k;od(g,t,r+24|0);if((o|0)<1048576){a=H[k>>2]+(H[H[r+12>>2]-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-o|0)- -1048576;j=0;break He}if((c|0)>=1){g=o+-1048576|0;m=H[k>>2];while(1){w=1048576/+(o|0);j=H[r+8>>2];a=c;while(1){Le:{Me:{l=m+(H[j+(a<<2)>>2]<<3)|0;d=H[l>>2];if(d>>>0>=2){q=d-1|0;f=d;h=g;i=d;p=T(w*+(d>>>0));Ne:{if(P(p)<2147483648){u=~~p;break Ne}u=-2147483648}i=i-u|0;i=i?i:1;d=(d|0)>(i|0)?i:q;d=(d|0)>(g|0)?h:d;H[l>>2]=f-d;g=g-d|0;o=o-d|0;if((o|0)!=1048576){break Me}o=1048576;break Le}if((a|0)!=(c|0)){break Le}j=1;break He}d=(a|0)>1;a=a-1|0;if(d){continue}}break}j=0;if((g|0)>0){continue}break}break He}j=0;if((o|0)<1048577){break He}while(1)continue}if((c|0)<0){break Fe}break Ge}a=H[r+8>>2];if(a){H[r+12>>2]=a;qa(a)}if((c|0)<0|j){break Fe}}h=c+1|0;o=h&3;l=H[k>>2];Oe:{if(c>>>0<3){g=0;j=0;break Oe}t=h&-4;g=0;j=0;while(1){f=g<<3;a=f+l|0;H[a+4>>2]=j;d=l+(f|8)|0;a=H[a>>2]+j|0;H[d+4>>2]=a;i=l+(f|16)|0;a=a+H[d>>2]|0;H[i+4>>2]=a;d=l+(f|24)|0;a=a+H[i>>2]|0;H[d+4>>2]=a;j=a+H[d>>2]|0;g=g+4|0;t=t-4|0;if(t){continue}break}}if(o){while(1){a=l+(g<<3)|0;H[a+4>>2]=j;g=g+1|0;j=H[a>>2]+j|0;o=o-1|0;if(o){continue}break}}if((j|0)!=1048576){break Fe}j=0;p=0;Pe:{if((c|0)<0){break Pe}f=H[k>>2];if(c){a=h&-2;while(1){c=j<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}c=(j|1)<<3;i=H[c+f>>2];if(i){c=c+n|0;d=H[c+4>>2];c=H[c>>2];p=p+ya(+(i>>>0)*9.5367431640625e-7)*(+(c>>>0)+ +(d>>>0)*4294967296)}j=j+2|0;a=a-2|0;if(a){continue}break}}if(!(h&1)){break Pe}a=j<<3;d=H[a+f>>2];if(!d){break Pe}a=a+n|0;c=H[a+4>>2];a=H[a>>2];p=p+ya(+(d>>>0)*9.5367431640625e-7)*(+(a>>>0)+ +(c>>>0)*4294967296)}a=k;p=U(-p);Qe:{if(p<0x10000000000000000&p>=0){d=~~p>>>0;c=P(p)>=1?p>0?~~R(T(p*2.3283064365386963e-10),4294967295)>>>0:~~U((p-+(~~p>>>0>>>0))*2.3283064365386963e-10)>>>0:0;break Qe}d=0;c=0}H[a+16>>2]=d;H[a+20>>2]=c;Xa(k,e)}da=r+32|0;d=H[k+16>>2];a=H[k+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[k+40>>2]=c;H[k+44>>2]=0;f=e;h=a<<1|d>>>31;a=(d<<1)+39|0;if(a>>>0<39){h=h+1|0}d=(h&7)<<29|a>>>3;a=c;c=d+a|0;d=h>>>3|0;d=a>>>0>c>>>0?d+1|0:d;a=c+8|0;Pa(f,a);a=H[e>>2];H[k+28>>2]=0;H[k+32>>2]=4194304;H[k+24>>2]=a+H[k+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;f=H[k>>2]+(H[v+(c<<2)>>2]<<3)|0;h=H[f>>2];i=h<<10;if(i>>>0<=a>>>0){while(1){d=H[k+28>>2];H[k+28>>2]=d+1;F[d+H[k+24>>2]|0]=a;a=H[k+32>>2]>>>8|0;H[k+32>>2]=a;if(a>>>0>=i>>>0){continue}break}}d=(a>>>0)/(h>>>0)|0;a=H[f+4>>2]+((d<<20)+(a-N(d,h)|0)|0)|0;H[k+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}cc(k,e);a=H[k>>2];if(a){H[k+4>>2]=a;qa(a)}a=H[k+48>>2];if(a){H[k+52>>2]=a;qa(a)}da=k- -64|0;break Be}o=1}da=E+32|0}a=H[C+32>>2];if(!a){break d}H[C+36>>2]=a;qa(a)}da=C+48|0;return o}wa(10863);X()}wa(10863);X()}ua();X()}function $g(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=0,R=O(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,ga=0,ha=0;d=da-1696|0;da=d;e=10-fb(H[H[a+28>>2]+48>>2])|0;e=(e|0)<6?e:6;F[d+1695|0]=e;if(!((e&255)!=6|H[a+72>>2]<16)){F[d+1695|0]=5}e=H[b+20>>2];if((e|0)<0?1:(e|0)<=0?!H[b+16>>2]:0){va(b,H[b+4>>2],d+1695|0,d+1696|0)}c=H[a+28>>2];y=H[H[c+4>>2]+80>>2];g=H[a+72>>2];H[d+1684>>2]=0;H[d+1676>>2]=0;H[d+1680>>2]=0;H[d+1668>>2]=g;H[d+1664>>2]=y;H[d+1672>>2]=g<<2;a:{t=N(g,y);if(t){if(t>>>0>=1073741824){break a}e=t<<2;i=ra(e);H[d+1676>>2]=i;f=e+i|0;H[d+1684>>2]=f;ta(i,0,e);H[d+1680>>2]=f}H[d+1688>>2]=i;e=H[a+4>>2];b:{if((e|0)!=H[a+8>>2]){t=0;while(1){g=H[H[H[c+4>>2]+8>>2]+(H[(h<<2)+e>>2]<<2)>>2];e=H[g+28>>2];if(e-1>>>0>=6){if((e|0)!=9){break b}g=H[H[a+60>>2]+(m<<2)>>2];if(!g){break b}m=m+1|0;e=H[g+28>>2]}c:{d:{switch(e-1|0){case 5:e=0;if(!y){break c}while(1){l=(H[d+1688>>2]+(C<<2)|0)+(N(H[d+1668>>2],e)<<2)|0;f=H[H[g>>2]>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],I[g+84|0]?e:H[H[g+68>>2]+(e<<2)>>2],0)|0;sa(l,f+c|0,F[g+24|0]<<2);e=e+1|0;if((y|0)!=(e|0)){continue}break};break c;case 0:case 2:case 4:c=F[g+24|0];e=0;H[d+464>>2]=0;H[d+456>>2]=0;H[d+460>>2]=0;i=0;if(c){if((c|0)<=-1){break a}c=c<<2;f=ra(c);H[d+456>>2]=f;i=c+f|0;H[d+464>>2]=i;ta(f,0,c);H[d+460>>2]=i;i=I[g+24|0]}H[d+1656>>2]=0;H[d+1648>>2]=0;H[d+1652>>2]=0;if(i&255){e=i<<24>>24;if((e|0)<=-1){break a}c=e<<2;e=ra(c);H[d+1648>>2]=e;f=c+e|0;H[d+1656>>2]=f;ta(e,0,c);H[d+1652>>2]=f}c=0;if(y){while(1){Mc(g,I[g+84|0]?c:H[H[g+68>>2]+(c<<2)>>2],F[g+24|0],H[d+456>>2]);f=H[d+1648>>2];j=F[g+24|0];e:{if((j|0)<1){break e}u=H[d+456>>2];o=H[a+48>>2];e=0;if((j|0)!=1){i=j&-2;while(1){k=e<<2;H[k+f>>2]=H[k+u>>2]-H[o+(e+t<<2)>>2];k=e|1;p=k<<2;H[p+f>>2]=H[p+u>>2]-H[o+(k+t<<2)>>2];e=e+2|0;i=i-2|0;if(i){continue}break}}if(!(j&1)){break e}i=e<<2;H[i+f>>2]=H[i+u>>2]-H[o+(e+t<<2)>>2]}sa((H[d+1688>>2]+(C<<2)|0)+(N(H[d+1668>>2],c)<<2)|0,f,j<<2);c=c+1|0;if((y|0)!=(c|0)){continue}break}e=H[d+1648>>2]}c=F[g+24|0];if(e){H[d+1652>>2]=e;qa(e)}e=H[d+456>>2];if(e){H[d+460>>2]=e;qa(e)}t=c+t|0;break c;default:break d}}f=F[g+24|0];e=0;H[d+464>>2]=0;H[d+456>>2]=0;H[d+460>>2]=0;c=0;if(f){if((f|0)<=-1){break a}f=f<<2;c=ra(f);H[d+456>>2]=c;i=c+f|0;H[d+464>>2]=i;ta(c,0,f);H[d+460>>2]=i}if(y){while(1){c=I[g+84|0]?e:H[H[g+68>>2]+(e<<2)>>2];j=F[g+24|0];i=0;u=H[d+456>>2];f:{if(!u){break f}g:{h:{switch(H[g+28>>2]-1|0){case 0:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}H[u+(i<<2)>>2]=F[c|0];c=c+1|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 1:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}H[u+(i<<2)>>2]=I[c|0];c=c+1|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 2:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}H[u+(i<<2)>>2]=G[c>>1];c=c+2|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 3:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}H[u+(i<<2)>>2]=J[c>>1];c=c+2|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 4:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}H[u+(i<<2)>>2]=H[c>>2];c=c+4|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 5:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}H[u+(i<<2)>>2]=H[c>>2];c=c+4|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 6:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}f=H[c>>2];if(H[c+4>>2]){break f}H[u+(i<<2)>>2]=f;c=c+8|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 7:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}f=H[c>>2];if(H[c+4>>2]){break f}H[u+(i<<2)>>2]=f;c=c+8|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 8:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}f=u+(i<<2)|0;R=L[c>>2];i:{if(R=O(0)){l=~~R>>>0;break i}l=0}H[f>>2]=l;c=c+4|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 9:f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}f=u+(i<<2)|0;S=M[c>>3];j:{if(S<4294967296&S>=0){l=~~S>>>0;break j}l=0}H[f>>2]=l;c=c+8|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}break g;case 10:break h;default:break f}}f=F[g+24|0];if((((f|0)>(j|0)?j:f)|0)>=1){f=H[g>>2];l=H[f>>2];c=H[g+48>>2]+el(H[g+40>>2],H[g+44>>2],c,0)|0;c=l+c|0;o=H[f+4>>2];while(1){if(c>>>0>=o>>>0){break f}H[u+(i<<2)>>2]=I[c|0];c=c+1|0;i=i+1|0;f=F[g+24|0];if((i|0)<(((f|0)>(j|0)?j:f)|0)){continue}break}}if((f|0)>=(j|0)){break f}ta(u+(f<<2)|0,0,j-f<<2);break f}if((f|0)>=(j|0)){break f}ta(u+(f<<2)|0,0,j-f<<2)}sa((H[d+1688>>2]+(C<<2)|0)+(N(H[d+1668>>2],e)<<2)|0,H[d+456>>2],F[g+24|0]<<2);e=e+1|0;if((y|0)!=(e|0)){continue}break}c=H[d+456>>2]}if(!c){break c}H[d+460>>2]=c;qa(c)}h=h+1|0;e=H[a+4>>2];if(h>>>0>2]-e>>2>>>0){C=F[g+24|0]+C|0;c=H[a+28>>2];continue}break}g=H[a+72>>2];t=N(y,g);i=H[d+1688>>2]}e=0;k:{if((t|0)<1){break k}a=t&1;l:{if((t|0)==1){c=0;break l}t=t&-2;c=0;while(1){f=c<<2;j=H[f+i>>2];if(j){j=Q(j);e=(j^31)<(e|0)?e:32-j|0}f=H[(f|4)+i>>2];if(f){f=Q(f);e=(f^31)<(e|0)?e:32-f|0}c=c+2|0;t=t-2|0;if(t){continue}break}}if(!a){break k}a=H[(c<<2)+i>>2];if(!a){break k}a=Q(a);e=(a^31)<(e|0)?e:32-a|0}m:{n:{switch(I[d+1695|0]){case 6:k=Kc(d+456|0,g);a=H[d+1668>>2];H[d+448>>2]=a;H[d+432>>2]=a;H[d+32>>2]=a;H[d+16>>2]=a;H[d+440>>2]=0;H[d+424>>2]=H[d+1664>>2];H[d+444>>2]=d+1664;a=H[d+444>>2];H[d+24>>2]=H[d+440>>2];H[d+28>>2]=a;H[d+428>>2]=d+1664;H[d+1648>>2]=e;a=H[d+428>>2];H[d+8>>2]=H[d+424>>2];H[d+12>>2]=a;p=da-32|0;da=p;H[k>>2]=H[d+1648>>2];a=H[d+8>>2]-H[d+24>>2]|0;H[k+4>>2]=a;e=H[b+20>>2];if((e|0)<0?1:(e|0)<=0?!H[b+16>>2]:0){a=k+4|0;va(b,H[b+4>>2],k,a);e=H[b+20>>2];if((e|0)<0?1:(e|0)<=0?!H[b+16>>2]:0){va(b,H[b+4>>2],a,a+4|0)}a=H[a>>2]}if(a){V=k+12|0;Sd(V);W=k+1068|0;a=W;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];Y=k+1088|0;a=Y;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];Z=k+1108|0;a=Z;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];H[p+24>>2]=H[d+32>>2];a=H[d+28>>2];H[p+16>>2]=H[d+24>>2];H[p+20>>2]=a;H[p+8>>2]=H[d+16>>2];a=H[d+12>>2];H[p>>2]=H[d+8>>2];H[p+4>>2]=a;e=0;c=0;h=da+-64|0;da=h;f=H[k+8>>2];H[h+48>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;e=ra(a);H[h+40>>2]=e;c=a+e|0;H[h+48>>2]=c;ta(e,0,a);H[h+44>>2]=c}a=H[k+1164>>2];g=H[a>>2];if(g){H[a+4>>2]=g;qa(g);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;f=H[k+8>>2];c=H[h+44>>2];e=H[h+40>>2]}H[a+4>>2]=c;H[a>>2]=e;H[a+8>>2]=H[h+48>>2];e=0;H[h+48>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;a=0;o:{if(f){if(f>>>0>=1073741824){break a}c=f<<2;a=ra(c);H[h+40>>2]=a;e=a+c|0;H[h+48>>2]=e;ta(a,0,c);H[h+44>>2]=e}c=H[k+1176>>2];g=H[c>>2];if(g){H[c+4>>2]=g;qa(g);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;e=H[h+44>>2];a=H[h+40>>2]}H[c+4>>2]=e;H[c>>2]=a;H[c+8>>2]=H[h+48>>2];t=H[p+4>>2];_=H[p+8>>2];u=H[p+20>>2];$=H[p+24>>2];e=H[p>>2];c=H[p+16>>2];H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;kb(h+40|0);a=H[h+56>>2]+H[h+60>>2]|0;g=(a>>>0)/113|0;a=H[H[h+44>>2]+(g<<2)>>2]+N(a-N(g,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=e-c;H[a+24>>2]=0;H[a+12>>2]=e;H[a+4>>2]=u;H[a+8>>2]=$;H[a>>2]=c;H[a+16>>2]=t;H[a+20>>2]=_;a=H[h+60>>2];f=a+1|0;H[h+60>>2]=f;if(a>>>0<=f>>>0){ba=k+1068|0;ca=k+1108|0;y=t;j=u;aa=H[p+8>>2];A=H[p+24>>2];C=A&-4;o=A&3;ea=A-1>>>0<3;while(1){m=H[h+44>>2];e=H[h+56>>2];c=f-1|0;a=e+c|0;g=(a>>>0)/113|0;a=H[m+(g<<2)>>2]+N(a-N(g,113)|0,36)|0;T=H[a+32>>2];i=H[a+12>>2];g=H[a>>2];H[h+60>>2]=c;a=H[h+48>>2];c=a-m|0;if(((c?N(c>>2,113)-1|0:0)-(e+f|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[h+48>>2]=H[h+48>>2]-4}H[p+16>>2]=g;H[p>>2]=i;a=H[k+1164>>2];e=H[k+1176>>2];H[h+32>>2]=H[p+24>>2];c=H[p+20>>2];H[h+24>>2]=H[p+16>>2];H[h+28>>2]=c;H[h+16>>2]=H[p+8>>2];c=H[p+4>>2];H[h+8>>2]=H[p>>2];H[h+12>>2]=c;U=N(T,12);w=a+U|0;c=w;B=e+U|0;a=B;m=0;p:{q:{r:{s:{r=H[h+8>>2];e=H[h+24>>2];s=r-e|0;if(s>>>0>=64){if(!H[k+8>>2]){e=0;break q}D=H[a>>2];E=H[k+1140>>2];q=H[k+1128>>2];if((e|0)!=(r|0)){break s}a=0;while(1){e=a<<2;c=e+q|0;H[c>>2]=0;f=e+E|0;e=H[k>>2]-H[e+D>>2]|0;H[f>>2]=e;if(e){e=H[c>>2];f=s-e|0;H[c>>2]=e>>>0>f>>>0?e:f}a=a+1|0;c=H[k+8>>2];if(a>>>0>>0){continue}break}break r}e=0;f=H[k+8>>2];if(f>>>0<2){break p}c=H[a>>2];a=f-1|0;m=a&3;t:{if(f-2>>>0<3){a=1;break t}f=a&-4;a=1;while(1){n=a+3|0;r=a+2|0;s=a+1|0;e=K[c+(e<<2)>>2]>K[c+(a<<2)>>2]?a:e;e=K[c+(e<<2)>>2]>K[c+(s<<2)>>2]?s:e;e=K[c+(e<<2)>>2]>K[c+(r<<2)>>2]?r:e;e=K[c+(e<<2)>>2]>K[c+(n<<2)>>2]?n:e;a=a+4|0;f=f-4|0;if(f){continue}break}}if(!m){break p}while(1){e=K[c+(e<<2)>>2]>K[c+(a<<2)>>2]?a:e;a=a+1|0;m=m-1|0;if(m){continue}break}break p}P=H[h+28>>2];fa=H[c>>2];ga=s&1;f=e+1|0;ha=(r|0)!=(f|0);x=H[h+32>>2];l=N(x,e)<<2;while(1){a=m<<2;n=a+q|0;H[n>>2]=0;c=H[k>>2]-H[a+D>>2]|0;H[a+E>>2]=c;if(c){z=H[a+fa>>2]+(1<>2]|0;c=H[n>>2];if(ga){c=(z>>>0>K[v+l>>2])+c|0;H[n>>2]=c;a=f}else{a=e}if(ha){while(1){c=(z>>>0>K[v+(N(a,x)<<2)>>2])+c|0;H[n>>2]=c;c=c+(z>>>0>K[v+(N(x,a+1|0)<<2)>>2])|0;H[n>>2]=c;a=a+2|0;if((r|0)!=(a|0)){continue}break}}a=s-c|0;H[n>>2]=a>>>0>>0?c:a}c=H[k+8>>2];m=m+1|0;if(c>>>0>m>>>0){continue}break}}if(!c){e=0;break q}r=c&1;m=H[k+1140>>2];u:{if((c|0)==1){a=0;c=0;e=0;break u}f=c&-2;a=0;c=0;e=0;while(1){n=a<<2;if(H[n+m>>2]){s=H[n+H[k+1128>>2]>>2];n=s>>>0>c>>>0;c=n?s:c;e=n?a:e}s=a|1;n=s<<2;if(H[n+m>>2]){z=H[n+H[k+1128>>2]>>2];n=z>>>0>c>>>0;c=n?z:c;e=n?s:e}a=a+2|0;f=f-2|0;if(f){continue}break}}if(!r){break q}f=a<<2;if(!H[f+m>>2]){break q}e=K[f+H[k+1128>>2]>>2]>c>>>0?a:e}Nb(k+1088|0,4,e)}f=e;n=e<<2;e=H[k>>2]-H[n+H[B>>2]>>2]|0;v:{w:{if(!e){break w}x:{y:{z=i-g|0;if(z>>>0<=2){c=H[k+1152>>2];H[c>>2]=f;e=1;a=H[k+8>>2];if(a>>>0>1){break y}break x}a=H[k+1164>>2];E=T+1|0;B=N(E,12);c=a+B|0;if((c|0)!=(w|0)){eb(c,H[w>>2],H[w+4>>2]);a=H[k+1164>>2]}a=n+H[a+B>>2]|0;w=H[a>>2]+(1<>2]=w;a=g;z:{if((i|0)==(a|0)){break z}D=H[j+24>>2];e=g;a=i;if(!A){if(w>>>0>K[n+D>>2]){break z}while(1){a=a-1|0;if((e|0)==(a|0)){a=e;break z}if(w>>>0<=K[(n+H[y+24>>2]|0)+(N(a,aa)<<2)>>2]){continue}e=e+1|0;if((e|0)!=(a|0)){continue}break}break z}while(1){r=D+(N(e,A)<<2)|0;if(w>>>0>K[r+n>>2]){e=e+1|0;if((e|0)!=(a|0)){continue}break z}while(1){a=a-1|0;if((e|0)==(a|0)){a=e;break z}s=H[y+24>>2]+(N(a,aa)<<2)|0;if(w>>>0<=K[s+n>>2]){continue}break}m=0;c=C;if(!ea){while(1){v=m<<2;q=v+r|0;x=H[q>>2];l=q;q=s+v|0;H[l>>2]=H[q>>2];H[q>>2]=x;q=v|4;x=q+r|0;P=H[x>>2];q=s+q|0;H[x>>2]=H[q>>2];H[q>>2]=P;q=v|8;x=q+r|0;P=H[x>>2];q=s+q|0;H[x>>2]=H[q>>2];H[q>>2]=P;v=v|12;q=v+r|0;x=H[q>>2];v=s+v|0;H[q>>2]=H[v>>2];H[v>>2]=x;m=m+4|0;c=c-4|0;if(c){continue}break}}c=o;if(c){while(1){v=m<<2;q=v+r|0;x=H[q>>2];v=s+v|0;H[q>>2]=H[v>>2];H[v>>2]=x;m=m+1|0;c=c-1|0;if(c){continue}break}}e=e+1|0;if((e|0)!=(a|0)){continue}break}}m=a-g|0;w=i-a|0;if((m|0)!=(w|0)){ic(ca,m>>>0>>0)}e=Q(z);r=e^31;c=z>>>1|0;A:{if(m>>>0>>0){if(!r){break A}s=c-m|0;e=1<<30-e;c=0;while(1){Ea((k+(c<<5)|0)+12|0,(e&s)!=0);e=e>>>1|0;c=c+1|0;if((r|0)!=(c|0)){continue}break}break A}if(!r){break A}s=c-w|0;e=1<<30-e;c=0;while(1){Ea((k+(c<<5)|0)+12|0,(e&s)!=0);e=e>>>1|0;c=c+1|0;if((r|0)!=(c|0)){continue}break}}l=n;e=H[k+1176>>2];c=e+U|0;n=H[c>>2];r=l+n|0;H[r>>2]=H[r>>2]+1;eb(e+B|0,n,H[c+4>>2]);if((a|0)!=(g|0)){e=H[h+60>>2]+H[h+56>>2]|0;c=H[h+44>>2];n=H[h+48>>2]-c|0;if((e|0)==((n?N(n>>2,113)-1|0:0)|0)){kb(h+40|0);c=H[h+44>>2];e=H[h+56>>2]+H[h+60>>2]|0}l=c;c=(e>>>0)/113|0;e=H[l+(c<<2)>>2]+N(e-N(c,113)|0,36)|0;H[e+32>>2]=T;H[e+28>>2]=m;H[e+24>>2]=f;H[e+12>>2]=a;H[e+4>>2]=u;H[e+8>>2]=$;H[e>>2]=g;H[e+20>>2]=A;H[e+16>>2]=j;H[h+60>>2]=H[h+60>>2]+1}if((a|0)==(i|0)){break w}e=H[h+60>>2]+H[h+56>>2]|0;c=H[h+44>>2];g=H[h+48>>2]-c|0;if((e|0)==((g?N(g>>2,113)-1|0:0)|0)){kb(h+40|0);c=H[h+44>>2];e=H[h+56>>2]+H[h+60>>2]|0}g=c;c=(e>>>0)/113|0;e=H[g+(c<<2)>>2]+N(e-N(c,113)|0,36)|0;H[e+32>>2]=E;H[e+28>>2]=w;H[e+24>>2]=f;H[e+12>>2]=i;H[e+8>>2]=A;H[e+4>>2]=j;H[e>>2]=a;H[e+16>>2]=t;H[e+20>>2]=_;f=H[h+60>>2]+1|0;H[h+60>>2]=f;break v}while(1){f=(a-1|0)==(f|0)?0:f+1|0;H[c+(e<<2)>>2]=f;a=H[k+8>>2];e=e+1|0;if(a>>>0>e>>>0){continue}break}}c=0;e=a;if(!z){break w}while(1){B:{if(!e){e=0;break B}i=H[j+24>>2]+(N(H[j+4>>2],c+g|0)<<2)|0;f=0;while(1){e=H[H[k+1152>>2]+(f<<2)>>2]<<2;m=H[k>>2]-H[e+H[B>>2]>>2]|0;if(m){Nb(ba,m,H[e+i>>2]);a=H[k+8>>2]}e=a;f=f+1|0;if(a>>>0>f>>>0){continue}break}}c=c+1|0;if((z|0)!=(c|0)){continue}break}}f=H[h+60>>2]}if(f){continue}break}}H[h+60>>2]=0;c=H[h+48>>2];f=H[h+44>>2];a=c-f>>2;if(a>>>0>=3){while(1){qa(H[f>>2]);f=H[h+44>>2]+4|0;H[h+44>>2]=f;c=H[h+48>>2];a=c-f>>2;if(a>>>0>2){continue}break}}e=56;C:{switch(a-1|0){case 1:e=113;case 0:H[h+56>>2]=e;break;default:break C}}D:{if((c|0)==(f|0)){break D}while(1){qa(H[f>>2]);f=f+4|0;if((f|0)!=(c|0)){continue}break}a=H[h+48>>2];e=H[h+44>>2];if((a|0)==(e|0)){break D}H[h+48>>2]=a+(((a-e|0)-4>>>2^-1)<<2)}a=H[h+40>>2];if(a){qa(a)}da=h- -64|0;break o}Rd(V,b);jb(W,b);jb(Y,b);jb(Z,b)}da=p+32|0;Lc(k);break m;case 5:c=Kc(d+456|0,g);a=H[d+1668>>2];H[d+416>>2]=a;H[d+400>>2]=a;H[d- -64>>2]=a;H[d+48>>2]=a;H[d+408>>2]=0;H[d+392>>2]=H[d+1664>>2];H[d+412>>2]=d+1664;a=H[d+412>>2];H[d+56>>2]=H[d+408>>2];H[d+60>>2]=a;H[d+396>>2]=d+1664;H[d+1648>>2]=e;a=H[d+396>>2];H[d+40>>2]=H[d+392>>2];H[d+44>>2]=a;a=Zd(c,d+56|0,d+40|0,d+1648|0,b);Lc(c);if(a){break m}break b;case 4:c=Kc(d+456|0,g);a=H[d+1668>>2];H[d+384>>2]=a;H[d+368>>2]=a;H[d+96>>2]=a;H[d+80>>2]=a;H[d+376>>2]=0;H[d+360>>2]=H[d+1664>>2];H[d+380>>2]=d+1664;a=H[d+380>>2];H[d+88>>2]=H[d+376>>2];H[d+92>>2]=a;H[d+364>>2]=d+1664;H[d+1648>>2]=e;a=H[d+364>>2];H[d+72>>2]=H[d+360>>2];H[d+76>>2]=a;a=Zd(c,d+88|0,d+72|0,d+1648|0,b);Lc(c);if(a){break m}break b;case 3:c=Yd(d+456|0,g);a=H[d+1668>>2];H[d+352>>2]=a;H[d+336>>2]=a;H[d+128>>2]=a;H[d+112>>2]=a;H[d+344>>2]=0;H[d+328>>2]=H[d+1664>>2];H[d+348>>2]=d+1664;a=H[d+348>>2];H[d+120>>2]=H[d+344>>2];H[d+124>>2]=a;H[d+332>>2]=d+1664;H[d+1648>>2]=e;a=H[d+332>>2];H[d+104>>2]=H[d+328>>2];H[d+108>>2]=a;a=Xd(c,d+120|0,d+104|0,d+1648|0,b);Wd(c);if(a){break m}break b;case 2:c=Yd(d+456|0,g);a=H[d+1668>>2];H[d+320>>2]=a;H[d+304>>2]=a;H[d+160>>2]=a;H[d+144>>2]=a;H[d+312>>2]=0;H[d+296>>2]=H[d+1664>>2];H[d+316>>2]=d+1664;a=H[d+316>>2];H[d+152>>2]=H[d+312>>2];H[d+156>>2]=a;H[d+300>>2]=d+1664;H[d+1648>>2]=e;a=H[d+300>>2];H[d+136>>2]=H[d+296>>2];H[d+140>>2]=a;a=Xd(c,d+152|0,d+136|0,d+1648|0,b);Wd(c);if(a){break m}break b;case 1:c=Vd(d+456|0,g);a=H[d+1668>>2];H[d+288>>2]=a;H[d+272>>2]=a;H[d+192>>2]=a;H[d+176>>2]=a;H[d+280>>2]=0;H[d+264>>2]=H[d+1664>>2];H[d+284>>2]=d+1664;a=H[d+284>>2];H[d+184>>2]=H[d+280>>2];H[d+188>>2]=a;H[d+268>>2]=d+1664;H[d+1648>>2]=e;a=H[d+268>>2];H[d+168>>2]=H[d+264>>2];H[d+172>>2]=a;a=Ud(c,d+184|0,d+168|0,d+1648|0,b);Td(c);if(a){break m}break b;case 0:break n;default:break b}}c=Vd(d+456|0,g);a=H[d+1668>>2];H[d+256>>2]=a;H[d+240>>2]=a;H[d+224>>2]=a;H[d+208>>2]=a;H[d+248>>2]=0;H[d+232>>2]=H[d+1664>>2];H[d+252>>2]=d+1664;a=H[d+252>>2];H[d+216>>2]=H[d+248>>2];H[d+220>>2]=a;H[d+236>>2]=d+1664;H[d+1648>>2]=e;a=H[d+236>>2];H[d+200>>2]=H[d+232>>2];H[d+204>>2]=a;a=Ud(c,d+216|0,d+200|0,d+1648|0,b);Td(c);if(!a){break b}}A=1}a=H[d+1676>>2];if(a){H[d+1680>>2]=a;qa(a)}da=d+1696|0;return A|0}ua();X()}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,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,G=0,J=0,L=0;t=da-160|0;da=t;ta(t+16|0,0,144);H[t+92>>2]=-1;H[t+60>>2]=b;H[t+24>>2]=-1;H[t+20>>2]=b;H[t+128>>2]=0;H[t+132>>2]=0;u=H[t+24>>2];q=u-H[t+20>>2]|0;H[t+136>>2]=q;H[t+140>>2]=q>>31;H[t+120>>2]=u;h=t+16|0;u=da-48|0;da=u;if(d>>>0<=2){a:{d=d<<2;E=H[d+17548>>2];D=H[d+17536>>2];while(1){d=H[h+4>>2];b:{if(d>>>0>2]){H[h+4>>2]=d+1;d=I[d|0];break b}d=Ra(h)}if((d|0)==32|d-9>>>0<5){continue}break}q=1;c:{d:{switch(d-43|0){case 0:case 2:break d;default:break c}}q=(d|0)==45?-1:1;d=H[h+4>>2];if(d>>>0>2]){H[h+4>>2]=d+1;d=I[d|0];break c}d=Ra(h)}e:{f:{while(1){if(F[g+17461|0]==(d|32)){g:{if(g>>>0>6){break g}d=H[h+4>>2];if(d>>>0>2]){H[h+4>>2]=d+1;d=I[d|0];break g}d=Ra(h)}g=g+1|0;if((g|0)!=8){continue}break f}break}if((g|0)!=3){if((g|0)==8){break f}if(g>>>0<4){break e}if((g|0)==8){break f}}d=H[h+104>>2];if(d){H[h+4>>2]=H[h+4>>2]-1}if(g>>>0<4){break f}while(1){if(d){H[h+4>>2]=H[h+4>>2]-1}g=g-1|0;if(g>>>0>3){continue}break}}m=da-16|0;da=m;l=(C(O(O(q|0)*O(Z))),v(2));d=l&2147483647;h:{if(d-8388608>>>0<=2130706431){g=d;d=d>>>7|0;j=g<<25;g=d+1065353216|0;break h}j=l;g=j>>>7|0;j=j<<25;g=g|2147418112;if(d>>>0>=2139095040){break h}j=0;g=0;if(!d){break h}g=d;d=Q(d);Za(m,g,0,0,0,d+81|0);i=H[m>>2];k=H[m+4>>2];j=H[m+8>>2];g=H[m+12>>2]^65536|16265-d<<16}H[u>>2]=i;H[u+4>>2]=k;i=u;H[i+8>>2]=j;H[i+12>>2]=l&-2147483648|g;da=m+16|0;i=H[i+8>>2];k=H[u+12>>2];n=H[u>>2];l=H[u+4>>2];break a}i:{j:{k:{if(g){break k}g=0;while(1){if(F[g+17470|0]!=(d|32)){break k}l:{if(g>>>0>1){break l}d=H[h+4>>2];if(d>>>0>2]){H[h+4>>2]=d+1;d=I[d|0];break l}d=Ra(h)}g=g+1|0;if((g|0)!=3){continue}break}break j}m:{switch(g|0){case 0:n:{if((d|0)!=48){break n}g=H[h+4>>2];o:{if(g>>>0>2]){H[h+4>>2]=g+1;g=I[g|0];break o}g=Ra(h)}if((g&-33)==88){f=da-432|0;da=f;d=H[h+4>>2];p:{if(d>>>0>2]){H[h+4>>2]=d+1;g=I[d|0];break p}g=Ra(h)}q:{r:{while(1){if((g|0)!=48){s:{if((g|0)!=46){break q}d=H[h+4>>2];if(d>>>0>=K[h+104>>2]){break s}H[h+4>>2]=d+1;g=I[d|0];break r}}else{d=H[h+4>>2];if(d>>>0>2]){o=1;H[h+4>>2]=d+1;g=I[d|0]}else{o=1;g=Ra(h)}continue}break}g=Ra(h)}x=1;if((g|0)!=48){break q}while(1){d=m;m=d-1|0;p=p-(d>>>0<1)|0;d=H[h+4>>2];t:{if(d>>>0>2]){H[h+4>>2]=d+1;g=I[d|0];break t}g=Ra(h)}if((g|0)==48){continue}break}o=1}l=1073676288;while(1){u:{d=g|32;v:{w:{w=g-48|0;if(w>>>0<10){break w}if(d-97>>>0>5?(g|0)!=46:0){break u}if((g|0)!=46){break w}if(x){break u}x=1;m=i;p=k;break v}d=(g|0)>57?d-87|0:w;x:{if((k|0)<0?1:(k|0)<=0?i>>>0<=7:0){j=d+(j<<4)|0;break x}if((k|0)<0?1:(k|0)<=0?i>>>0<=28:0){db(f+48|0,d);Ka(f+32|0,A,B,n,l,0,0,0,1073414144);A=H[f+32>>2];B=H[f+36>>2];n=H[f+40>>2];l=H[f+44>>2];Ka(f+16|0,A,B,n,l,H[f+48>>2],H[f+52>>2],H[f+56>>2],H[f+60>>2]);cb(f,r,s,y,z,H[f+16>>2],H[f+20>>2],H[f+24>>2],H[f+28>>2]);y=H[f+8>>2];z=H[f+12>>2];r=H[f>>2];s=H[f+4>>2];break x}if(!d|J){break x}Ka(f+80|0,A,B,n,l,0,0,0,1073610752);cb(f- -64|0,r,s,y,z,H[f+80>>2],H[f+84>>2],H[f+88>>2],H[f+92>>2]);y=H[f+72>>2];z=H[f+76>>2];J=1;r=H[f+64>>2];s=H[f+68>>2]}d=i+1|0;o=d>>>0<1?k+1|0:k;i=d;k=o;o=1}d=H[h+4>>2];if(d>>>0>2]){H[h+4>>2]=d+1;g=I[d|0]}else{g=Ra(h)}continue}break}y:{z:{if(!o){if(!H[h+104>>2]){break z}d=H[h+4>>2];H[h+4>>2]=d-1;H[h+4>>2]=d-2;if(!x){break z}H[h+4>>2]=d-3;break z}if((k|0)<0?1:(k|0)<=0?i>>>0<=7:0){n=i;l=k;while(1){j=j<<4;d=n+1|0;l=d>>>0<1?l+1|0:l;n=d;if((d|0)!=8|l){continue}break}}A:{if((g&-33)==80){n=Ae(h);d=ea;l=d;if(n|(d|0)!=-2147483648){break A}n=0;l=0;if(!H[h+104>>2]){break A}H[h+4>>2]=H[h+4>>2]-1;break A}n=0;l=0;if(!H[h+104>>2]){break A}H[h+4>>2]=H[h+4>>2]-1}if(!j){xb(f+112|0,+(q|0)*0);r=H[f+112>>2];s=H[f+116>>2];i=H[f+124>>2];d=H[f+120>>2];break y}d=x?m:i;i=n+(d<<2)|0;d=l+((x?p:k)<<2|d>>>30)|0;d=i>>>0>>0?d+1|0:d;g=i;i=g-32|0;k=d-(g>>>0<32)|0;d=k;if((d|0)>0?1:(d|0)>=0?i>>>0>0-E>>>0:0){H[4808]=68;db(f+160|0,q);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);r=H[f+128>>2];s=H[f+132>>2];i=H[f+140>>2];d=H[f+136>>2];break y}d=E-226|0;g=i>>>0>=d>>>0;d=d>>31;if((d|0)<(k|0)?1:(k|0)>=(d|0)?g:0){if((j|0)>-1){while(1){cb(f+416|0,r,s,y,z,0,0,0,-1073807360);g=ye(r,s,y,z,1073610752);d=(g|0)<0;cb(f+400|0,r,s,y,z,d?r:H[f+416>>2],d?s:H[f+420>>2],d?y:H[f+424>>2],d?z:H[f+428>>2]);d=i;i=d-1|0;k=k-(d>>>0<1)|0;y=H[f+408>>2];z=H[f+412>>2];r=H[f+400>>2];s=H[f+404>>2];j=j<<1|(g|0)>-1;if((j|0)>-1){continue}break}}d=i;g=E;l=(d-g|0)+32|0;d=k-((g>>31)+(d>>>0>>0)|0)|0;g=l;d=g>>>0<32?d+1|0:d;g=((d|0)<0?1:(d|0)<=0?g>>>0>>0:0)?(g|0)>0?g:0:D;B:{if((g|0)>=113){db(f+384|0,q);m=H[f+392>>2];p=H[f+396>>2];A=H[f+384>>2];B=H[f+388>>2];l=0;d=0;break B}xb(f+352|0,Nc(144-g|0));db(f+336|0,q);A=H[f+336>>2];B=H[f+340>>2];m=H[f+344>>2];p=H[f+348>>2];De(f+368|0,H[f+352>>2],H[f+356>>2],H[f+360>>2],H[f+364>>2],A,B,m,p);e=H[f+376>>2];G=H[f+380>>2];l=H[f+372>>2];d=H[f+368>>2]}g=!(j&1)&((Mb(r,s,y,z,0,0,0,0)|0)!=0&(g|0)<32);Qb(f+320|0,g+j|0);Ka(f+304|0,A,B,m,p,H[f+320>>2],H[f+324>>2],H[f+328>>2],H[f+332>>2]);k=d;cb(f+272|0,H[f+304>>2],H[f+308>>2],H[f+312>>2],H[f+316>>2],d,l,e,G);d=g;Ka(f+288|0,d?0:r,d?0:s,d?0:y,d?0:z,A,B,m,p);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],k,l,e,G);d=H[f+240>>2];g=H[f+244>>2];k=H[f+248>>2];l=H[f+252>>2];if(!Mb(d,g,k,l,0,0,0,0)){H[4808]=68}Ce(f+224|0,d,g,k,l,i);r=H[f+224>>2];s=H[f+228>>2];i=H[f+236>>2];d=H[f+232>>2];break y}H[4808]=68;db(f+208|0,q);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);r=H[f+176>>2];s=H[f+180>>2];i=H[f+188>>2];d=H[f+184>>2];break y}xb(f+96|0,+(q|0)*0);r=H[f+96>>2];s=H[f+100>>2];i=H[f+108>>2];d=H[f+104>>2]}H[u+16>>2]=r;H[u+20>>2]=s;H[u+24>>2]=d;H[u+28>>2]=i;da=f+432|0;i=H[u+24>>2];k=H[u+28>>2];n=H[u+16>>2];l=H[u+20>>2];break a}if(!H[h+104>>2]){break n}H[h+4>>2]=H[h+4>>2]-1}j=d;x=q;g=0;q=0;e=da-8976|0;da=e;G=D+E|0;J=0-G|0;C:{D:{while(1){if((j|0)!=48){E:{if((j|0)!=46){break C}d=H[h+4>>2];if(d>>>0>=K[h+104>>2]){break E}H[h+4>>2]=d+1;j=I[d|0];break D}}else{d=H[h+4>>2];if(d>>>0>2]){H[h+4>>2]=d+1;j=I[d|0]}else{j=Ra(h)}g=1;continue}break}j=Ra(h)}f=1;if((j|0)!=48){break C}i=-1;k=-1;while(1){d=H[h+4>>2];F:{if(d>>>0>2]){H[h+4>>2]=d+1;j=I[d|0];break F}j=Ra(h)}if((j|0)==48){d=i;i=d-1|0;k=k-(d>>>0<1)|0;continue}break}g=1}H[e+784>>2]=0;G:{H:{o=(j|0)==46;d=j-48|0;I:{J:{if(!(d>>>0>9?!o:0)){while(1){K:{if(o&1){if(!f){i=n;k=l;f=1;break K}o=!g;break J}o=l;l=n+1|0;o=l>>>0<1?o+1|0:o;n=l;l=o;if((m|0)<=2044){q=(j|0)==48?q:n;g=(e+784|0)+(m<<2)|0;o=g;if(w){d=(N(H[g>>2],10)+j|0)-48|0}H[o>>2]=d;g=1;j=w+1|0;d=(j|0)==9;w=d?0:j;m=d+m|0;break K}if((j|0)==48){break K}H[e+8960>>2]=H[e+8960>>2]|1;q=18396}d=H[h+4>>2];L:{if(d>>>0>2]){H[h+4>>2]=d+1;j=I[d|0];break L}j=Ra(h)}o=(j|0)==46;d=j-48|0;if(o|d>>>0<10){continue}break}}i=f?i:n;k=f?k:l;if(!(!g|(j&-33)!=69)){d=Ae(h);g=ea;j=g;if(d|(g|0)!=-2147483648){g=k+j|0;i=d+i|0;g=i>>>0>>0?g+1|0:g;k=g;break H}if(!H[h+104>>2]){break H}H[h+4>>2]=H[h+4>>2]-1;break H}o=!g;if((j|0)<0){break I}}if(!H[h+104>>2]){break I}H[h+4>>2]=H[h+4>>2]-1}if(!o){break H}H[4808]=28;n=0;l=0;H[h+112>>2]=0;H[h+116>>2]=0;d=H[h+8>>2];i=d-H[h+4>>2]|0;H[h+120>>2]=i;H[h+124>>2]=i>>31;H[h+104>>2]=d;i=0;d=0;break G}d=H[e+784>>2];if(!d){xb(e,+(x|0)*0);n=H[e>>2];l=H[e+4>>2];i=H[e+12>>2];d=H[e+8>>2];break G}if(!((i|0)!=(n|0)|(k|0)!=(l|0)|((l|0)>0?1:(l|0)>=0?n>>>0>9:0)|(d>>>D|0?(D|0)<=30:0))){db(e+48|0,x);Qb(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]);n=H[e+16>>2];l=H[e+20>>2];i=H[e+28>>2];d=H[e+24>>2];break G}if((k|0)>0?1:(k|0)>=0?i>>>0>(E|0)/-2>>>0:0){H[4808]=68;db(e+96|0,x);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);n=H[e+64>>2];l=H[e+68>>2];i=H[e+76>>2];d=H[e+72>>2];break G}d=E-226|0;g=i>>>0>>0;d=d>>31;if((d|0)>(k|0)?1:(k|0)<=(d|0)?g:0){H[4808]=68;db(e+144|0,x);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);n=H[e+112>>2];l=H[e+116>>2];i=H[e+124>>2];d=H[e+120>>2];break G}if(w){if((w|0)<=8){g=(e+784|0)+(m<<2)|0;d=H[g>>2];while(1){d=N(d,10);w=w+1|0;if((w|0)!=9){continue}break}H[g>>2]=d}m=m+1|0}M:{f=i;if((f|0)<(q|0)|(q|0)>=9|(f|0)>17){break M}if((f|0)==9){db(e+192|0,x);Qb(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]);n=H[e+160>>2];l=H[e+164>>2];i=H[e+172>>2];d=H[e+168>>2];break G}if((f|0)<=8){db(e+272|0,x);Qb(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-f<<2)+17536>>2]);we(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]);n=H[e+208>>2];l=H[e+212>>2];i=H[e+220>>2];d=H[e+216>>2];break G}d=(N(f,-3)+D|0)+27|0;i=H[e+784>>2];if(i>>>d|0?(d|0)<=30:0){break M}db(e+352|0,x);Qb(e+336|0,i);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[(f<<2)+17464>>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]);n=H[e+288>>2];l=H[e+292>>2];i=H[e+300>>2];d=H[e+296>>2];break G}while(1){d=m;m=d-1|0;if(!H[(e+784|0)+(m<<2)>>2]){continue}break}w=0;i=(f|0)%9|0;N:{if(!i){m=0;break N}i=(f|0)>-1?i:i+9|0;O:{if(!d){m=0;d=0;break O}g=H[(0-i<<2)+17536>>2];l=1e9/(g|0)|0;o=0;j=0;m=0;while(1){k=o;o=(e+784|0)+(j<<2)|0;n=H[o>>2];p=(n>>>0)/(g>>>0)|0;k=k+p|0;H[o>>2]=k;k=!k&(j|0)==(m|0);m=k?m+1&2047:m;f=k?f-9|0:f;o=N(l,n-N(g,p)|0);j=j+1|0;if((j|0)!=(d|0)){continue}break}if(!o){break O}H[(e+784|0)+(d<<2)>>2]=o;d=d+1|0}f=(f-i|0)+9|0}while(1){n=(e+784|0)+(m<<2)|0;P:{while(1){if((f|0)!=36|K[n>>2]>=10384593?(f|0)>=36:0){break P}j=d+2047|0;i=0;while(1){o=0;j=j&2047;p=(e+784|0)+(j<<2)|0;k=H[p>>2];g=k>>>3|0;k=i+(k<<29)|0;l=i>>>0>k>>>0?g+1|0:g;i=k;k=l;if(!k&i>>>0>=1000000001|k){g=i;o=gl(g,k,1e9,0);i=g-el(o,ea,1e9,0)|0}H[p>>2]=i;g=i?d:j;i=(j|0)==(m|0);g=(j|0)!=(d-1&2047)?d:i?d:g;if(!i){j=j-1|0;i=o;d=g;continue}break}w=w-29|0;if(!o){continue}break}m=m-1&2047;if((g|0)==(m|0)){d=(e+784|0)+((g+2046&2047)<<2)|0;i=d;l=H[d>>2];d=g-1&2047;H[i>>2]=l|H[(e+784|0)+(d<<2)>>2]}f=f+9|0;H[(e+784|0)+(m<<2)>>2]=o;continue}break}Q:{R:while(1){i=d+1&2047;l=(e+784|0)+((d-1&2047)<<2)|0;while(1){k=(f|0)>45?9:1;S:{while(1){g=m;j=0;T:{while(1){U:{m=g+j&2047;if((m|0)==(d|0)){break U}m=H[(e+784|0)+(m<<2)>>2];o=H[(j<<2)+17488>>2];if(m>>>0>>0){break U}if(m>>>0>o>>>0){break T}j=j+1|0;if((j|0)!=4){continue}}break}if((f|0)!=36){break T}i=0;k=0;j=0;n=0;l=0;while(1){m=g+j&2047;if((m|0)==(d|0)){d=d+1&2047;H[((d<<2)+e|0)+780>>2]=0}Ka(e+768|0,i,k,n,l,0,0,1342177280,1075633366);Qb(e+752|0,H[(e+784|0)+(m<<2)>>2]);cb(e+736|0,H[e+768>>2],H[e+772>>2],H[e+776>>2],H[e+780>>2],H[e+752>>2],H[e+756>>2],H[e+760>>2],H[e+764>>2]);n=H[e+744>>2];l=H[e+748>>2];i=H[e+736>>2];k=H[e+740>>2];j=j+1|0;if((j|0)!=4){continue}break}db(e+720|0,x);Ka(e+704|0,i,k,n,l,H[e+720>>2],H[e+724>>2],H[e+728>>2],H[e+732>>2]);n=H[e+712>>2];l=H[e+716>>2];i=0;k=0;r=H[e+704>>2];s=H[e+708>>2];h=w+113|0;o=h-E|0;f=(o|0)<(D|0);j=f?(o|0)>0?o:0:D;if((j|0)<=112){break S}m=0;p=0;break Q}w=k+w|0;m=d;if((d|0)==(g|0)){continue}break}o=1e9>>>k|0;n=-1<>2];j=(q>>>k|0)+j|0;H[p>>2]=j;j=!j&(g|0)==(m|0);m=j?m+1&2047:m;f=j?f-9|0:f;j=N(o,n&q);g=g+1&2047;if((g|0)!=(d|0)){continue}break}if(!j){continue}if((i|0)!=(m|0)){H[(e+784|0)+(d<<2)>>2]=j;d=i;continue R}H[l>>2]=H[l>>2]|1;m=i;continue}break}break}xb(e+656|0,Nc(225-j|0));De(e+688|0,H[e+656>>2],H[e+660>>2],H[e+664>>2],H[e+668>>2],r,s,n,l);y=H[e+696>>2];z=H[e+700>>2];A=H[e+688>>2];B=H[e+692>>2];xb(e+640|0,Nc(113-j|0));fe(e+672|0,r,s,n,l,H[e+640>>2],H[e+644>>2],H[e+648>>2],H[e+652>>2]);i=H[e+672>>2];k=H[e+676>>2];m=H[e+680>>2];p=H[e+684>>2];Tc(e+624|0,r,s,n,l,i,k,m,p);cb(e+608|0,A,B,y,z,H[e+624>>2],H[e+628>>2],H[e+632>>2],H[e+636>>2]);n=H[e+616>>2];l=H[e+620>>2];r=H[e+608>>2];s=H[e+612>>2]}q=g+4&2047;V:{if((q|0)==(d|0)){break V}q=H[(e+784|0)+(q<<2)>>2];W:{if(q>>>0<=499999999){if((g+5&2047)==(d|0)?!q:0){break W}xb(e+496|0,+(x|0)*.25);cb(e+480|0,i,k,m,p,H[e+496>>2],H[e+500>>2],H[e+504>>2],H[e+508>>2]);m=H[e+488>>2];p=H[e+492>>2];i=H[e+480>>2];k=H[e+484>>2];break W}if((q|0)!=5e8){xb(e+592|0,+(x|0)*.75);cb(e+576|0,i,k,m,p,H[e+592>>2],H[e+596>>2],H[e+600>>2],H[e+604>>2]);m=H[e+584>>2];p=H[e+588>>2];i=H[e+576>>2];k=H[e+580>>2];break W}L=+(x|0);if((g+5&2047)==(d|0)){xb(e+528|0,L*.5);cb(e+512|0,i,k,m,p,H[e+528>>2],H[e+532>>2],H[e+536>>2],H[e+540>>2]);m=H[e+520>>2];p=H[e+524>>2];i=H[e+512>>2];k=H[e+516>>2];break W}xb(e+560|0,L*.75);cb(e+544|0,i,k,m,p,H[e+560>>2],H[e+564>>2],H[e+568>>2],H[e+572>>2]);m=H[e+552>>2];p=H[e+556>>2];i=H[e+544>>2];k=H[e+548>>2]}if((j|0)>111){break V}fe(e+464|0,i,k,m,p,0,0,0,1073676288);if(Mb(H[e+464>>2],H[e+468>>2],H[e+472>>2],H[e+476>>2],0,0,0,0)){break V}cb(e+448|0,i,k,m,p,0,0,0,1073676288);m=H[e+456>>2];p=H[e+460>>2];i=H[e+448>>2];k=H[e+452>>2]}cb(e+432|0,r,s,n,l,i,k,m,p);Tc(e+416|0,H[e+432>>2],H[e+436>>2],H[e+440>>2],H[e+444>>2],A,B,y,z);n=H[e+424>>2];l=H[e+428>>2];r=H[e+416>>2];s=H[e+420>>2];X:{if((-2-G|0)>=(h&2147483647)){break X}H[e+408>>2]=n;H[e+412>>2]=l&2147483647;H[e+400>>2]=r;H[e+404>>2]=s;Ka(e+384|0,r,s,n,l,0,0,0,1073610752);g=ye(H[e+400>>2],H[e+404>>2],H[e+408>>2],H[e+412>>2],1081081856);d=(g|0)<0;n=d?n:H[e+392>>2];l=d?l:H[e+396>>2];r=d?r:H[e+384>>2];s=d?s:H[e+388>>2];w=((g|0)>-1)+w|0;if((Mb(i,k,m,p,0,0,0,0)|0)!=0&(d?f:f&(j|0)!=(o|0))?0:(w+110|0)<=(J|0)){break X}H[4808]=68}Ce(e+368|0,r,s,n,l,w);n=H[e+368>>2];l=H[e+372>>2];i=H[e+380>>2];d=H[e+376>>2]}H[u+32>>2]=n;H[u+36>>2]=l;H[u+40>>2]=d;H[u+44>>2]=i;da=e+8976|0;i=H[u+40>>2];k=H[u+44>>2];n=H[u+32>>2];l=H[u+36>>2];break a;case 3:break j;default:break m}}if(H[h+104>>2]){H[h+4>>2]=H[h+4>>2]-1}break i}Y:{d=H[h+4>>2];Z:{if(d>>>0>2]){H[h+4>>2]=d+1;d=I[d|0];break Z}d=Ra(h)}if((d|0)==40){g=1;break Y}k=2147450880;if(!H[h+104>>2]){break a}H[h+4>>2]=H[h+4>>2]-1;break a}while(1){_:{d=H[h+4>>2];$:{if(d>>>0>2]){H[h+4>>2]=d+1;d=I[d|0];break $}d=Ra(h)}if(!(d-48>>>0<10|d-65>>>0<26|(d|0)==95)){if(d-97>>>0>=26){break _}}g=g+1|0;continue}break}k=2147450880;if((d|0)==41){break a}d=H[h+104>>2];if(d){H[h+4>>2]=H[h+4>>2]-1}if(!g){break a}while(1){g=g-1|0;if(d){H[h+4>>2]=H[h+4>>2]-1}if(g){continue}break}break a}H[4808]=28;H[h+112>>2]=0;H[h+116>>2]=0;d=H[h+8>>2];g=d-H[h+4>>2]|0;H[h+120>>2]=g;H[h+124>>2]=g>>31;H[h+104>>2]=d}}H[t>>2]=n;H[t+4>>2]=l;H[t+8>>2]=i;H[t+12>>2]=k;da=u+48|0;i=H[t+8>>2];g=H[t+12>>2];k=H[t>>2];l=H[t+4>>2];if(c){o=c;m=b;c=H[t+20>>2]-H[t+24>>2]|0;j=c;b=j+H[t+136>>2]|0;d=H[t+140>>2]+(j>>31)|0;d=b>>>0>>0?d+1|0:d;H[o>>2]=!(b|d)?m:m+b|0}H[a>>2]=k;H[a+4>>2]=l;H[a+8>>2]=i;H[a+12>>2]=g;da=t+160|0}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,m=0,n=0,o=0,p=0;h=da-48|0;da=h;a:{if(I[b+352|0]){Se(h+32|0,H[b+8>>2]);c=H[h+32>>2];H[h+32>>2]=0;d=H[b+12>>2];H[b+12>>2]=c;if(!d){break a}sb(d);d=H[h+32>>2];H[h+32>>2]=0;if(!d){break a}sb(d);break a}Te(h+32|0,H[b+8>>2]);c=H[h+32>>2];H[h+32>>2]=0;d=H[b+12>>2];H[b+12>>2]=c;if(!d){break a}sb(d);d=H[h+32>>2];H[h+32>>2]=0;if(!d){break a}sb(d)}b:{c:{d:{d=H[b+12>>2];e:{if(!(H[d+40>>2]!=((H[d+4>>2]-H[d>>2]>>2>>>0)/3|0)?d:0)){b=ra(32);H[h+32>>2]=b;H[h+36>>2]=29;H[h+40>>2]=-2147483616;F[b+29|0]=0;d=I[11285]|I[11286]<<8|(I[11287]<<16|I[11288]<<24);c=I[11281]|I[11282]<<8|(I[11283]<<16|I[11284]<<24);F[b+21|0]=c;F[b+22|0]=c>>>8;F[b+23|0]=c>>>16;F[b+24|0]=c>>>24;F[b+25|0]=d;F[b+26|0]=d>>>8;F[b+27|0]=d>>>16;F[b+28|0]=d>>>24;d=I[11280]|I[11281]<<8|(I[11282]<<16|I[11283]<<24);c=I[11276]|I[11277]<<8|(I[11278]<<16|I[11279]<<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[11272]|I[11273]<<8|(I[11274]<<16|I[11275]<<24);c=I[11268]|I[11269]<<8|(I[11270]<<16|I[11271]<<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[11264]|I[11265]<<8|(I[11266]<<16|I[11267]<<24);c=I[11260]|I[11261]<<8|(I[11262]<<16|I[11263]<<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;H[a>>2]=-1;Ja(a+4|0,h+32|0);if(F[h+43|0]>-1){break e}qa(H[h+32>>2]);break e}n=b+200|0;k=n;c=k;H[c+128>>2]=2;H[c+132>>2]=7;H[c+64>>2]=b;d=fa[H[H[b>>2]+32>>2]](b)|0;H[c+88>>2]=d;e=H[d+28>>2]-H[d+24>>2]>>2;d=H[c+108>>2];j=H[c+104>>2];c=d-j>>2;f:{if(e>>>0>c>>>0){La(k+104|0,e-c|0);j=H[k+104>>2];d=H[k+108>>2];break f}if(c>>>0<=e>>>0){break f}d=(e<<2)+j|0;H[k+108>>2]=d}if((d|0)!=(j|0)){j=0;while(1){o=H[k+88>>2];g=-1;g:{if((j|0)==-1){break g}c=H[H[o+24>>2]+(j<<2)>>2];if((c|0)==-1){g=0;break g}g=1;e=1;d=c;while(1){h:{if(e&255){f=0;i=d+1|0;d=(i>>>0)%3|0?i:d-2|0;if((d|0)==-1){d=c;break h}i=H[H[o+12>>2]+(d<<2)>>2];if((i|0)==-1){d=c;break h}d=c;m=i+1|0;i=(m>>>0)%3|0?m:i-2|0;if((i|0)==-1){break h}f=e;d=i;if((c|0)==(d|0)){break g}break h}d=((d>>>0)%3|0?-1:2)+d|0;if((d|0)==-1){break g}d=H[H[o+12>>2]+(d<<2)>>2];if((d|0)==-1){break g}d=(d>>>0)%3|0?d-1|0:d+2|0;f=0}if((d|0)==-1){break g}g=g+1|0;e=f;continue}}d=H[k+104>>2];H[d+(j<<2)>>2]=g;j=j+1|0;if(j>>>0>2]-d>>2>>>0){continue}break}}e=k+92|0;j=H[k+88>>2];d=H[j>>2];c=H[j+4>>2]-d>>2;g=H[k+92>>2];f=H[k+96>>2]-g>>2;i:{if(c>>>0>f>>>0){Lf(e,c-f|0);j=H[k+88>>2];d=H[j>>2];break i}if(c>>>0>=f>>>0){break i}H[k+96>>2]=g+(c<<2)}c=H[j+4>>2]-d|0;j:{if(!c){break j}f=c>>31;f=(f+c^f)>>>2|0;c=(c|0)>-1?c:-1;c=N(f,(c|0)<1?c:1);g=c>>>0>1?c:1;c=g&3;f=H[e>>2];j=0;if(g-1>>>0>=3){e=g&-4;while(1){g=j<<2;H[g+f>>2]=H[d+g>>2];i=g|4;H[i+f>>2]=H[d+i>>2];i=g|8;H[i+f>>2]=H[d+i>>2];g=g|12;H[g+f>>2]=H[d+g>>2];j=j+4|0;e=e-4|0;if(e){continue}break}}if(!c){break j}while(1){e=j<<2;H[e+f>>2]=H[d+e>>2];j=j+1|0;c=c-1|0;if(c){continue}break}}c=(H[k+132>>2]-H[k+128>>2]|0)+1|0;d=H[k+140>>2];f=H[k+136>>2];e=(d-f|0)/12|0;k:{if(c>>>0>e>>>0){j=0;d=c-e|0;f=H[k+144>>2];g=H[k+140>>2];if(d>>>0<=(f-g|0)/12>>>0){if(d){d=N((N(d,12)-12>>>0)/12|0,12)+12|0;g=ta(g,0,d)+d|0}H[k+140>>2]=g;break k}l:{m:{n:{c=H[k+136>>2];i=(g-c|0)/12|0;e=i+d|0;if(e>>>0<357913942){f=(f-c|0)/12|0;o=f<<1;e=f>>>0<178956970?e>>>0>o>>>0?e:o:357913941;if(e){if(e>>>0>=357913942){break n}j=ra(N(e,12))}f=N(i,12)+j|0;i=N((N(d,12)-12>>>0)/12|0,12)+12|0;d=ta(f,0,i);i=d+i|0;e=N(e,12)+j|0;if((c|0)==(g|0)){break m}while(1){f=f-12|0;H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;g=g-12|0;H[f>>2]=H[g>>2];H[f+4>>2]=H[g+4>>2];H[f+8>>2]=H[g+8>>2];H[g+8>>2]=0;H[g>>2]=0;H[g+4>>2]=0;if((c|0)!=(g|0)){continue}break}H[k+144>>2]=e;d=H[k+140>>2];H[k+140>>2]=i;g=H[k+136>>2];H[k+136>>2]=f;if((d|0)==(g|0)){break l}while(1){c=d-12|0;e=H[c>>2];if(e){H[d-8>>2]=e;qa(e)}d=c;if((d|0)!=(g|0)){continue}break}break l}ua();X()}wa(11712);X()}H[k+144>>2]=e;H[k+140>>2]=i;H[k+136>>2]=d}if(g){qa(g)}break k}if(c>>>0>>0){e=f+N(c,12)|0;if((e|0)!=(d|0)){while(1){c=d-12|0;f=H[c>>2];if(f){H[d-8>>2]=f;qa(f)}d=c;if((e|0)!=(d|0)){continue}break}}H[k+140>>2]=e}}d=H[b+12>>2];Ga((H[d+28>>2]-H[d+24>>2]>>2)-H[d+44>>2]|0,H[H[b+4>>2]+44>>2]);d=H[b+12>>2];Ga(((H[d+4>>2]-H[d>>2]>>2>>>0)/3|0)-H[d+40>>2]|0,H[H[b+4>>2]+44>>2]);d=H[b+8>>2];c=H[d+100>>2];d=H[d+96>>2];F[h+32|0]=0;k=b+28|0;Sa(k,(c-d|0)/12|0,h+32|0);d=H[b+12>>2];c=H[d+28>>2];d=H[d+24>>2];H[h+32>>2]=-1;Cb(b+52|0,c-d>>2,h+32|0);c=H[b+40>>2];H[b+44>>2]=c;d=H[b+12>>2];e=H[d+4>>2]-H[d>>2]>>2;e=e-((e>>>0)%3|0)|0;o:{if(e>>>0<=H[b+48>>2]-c>>2>>>0){break o}if(e>>>0>=1073741824){break b}f=e<<2;e=ra(f);H[b+44>>2]=e;H[b+40>>2]=e;H[b+48>>2]=e+f;if(!c){break o}qa(c);d=H[b+12>>2]}c=H[d+28>>2];d=H[d+24>>2];F[h+32|0]=0;Sa(b+84|0,c-d>>2,h+32|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(d){continue}break}}d=0;H[b+128>>2]=0;c=H[b+124>>2];p:{if(!c){break p}g=c&3;if(c-1>>>0>=3){c=c&-4;while(1){e=d<<2;H[e+H[b+120>>2]>>2]=0;H[H[b+120>>2]+(e|4)>>2]=0;H[H[b+120>>2]+(e|8)>>2]=0;H[H[b+120>>2]+(e|12)>>2]=0;d=d+4|0;c=c-4|0;if(c){continue}break}}if(!g){break p}while(1){H[H[b+120>>2]+(d<<2)>>2]=0;d=d+1|0;g=g-1|0;if(g){continue}break}}H[b+132>>2]=0}H[b+144>>2]=0;d=H[b+12>>2];c=H[d+28>>2];d=H[d+24>>2];H[h+32>>2]=-1;Cb(b+152|0,c-d>>2,h+32|0);d=H[b+72>>2];H[b+76>>2]=d;c=H[b+12>>2];c=H[c+4>>2]-H[c>>2]|0;e=(c>>2>>>0)/3|0;q:{if(e>>>0<=H[b+80>>2]-d>>2>>>0){break q}if((c|0)<=-1){break b}e=e<<2;c=ra(e);H[b+76>>2]=c;H[b+72>>2]=c;H[b+80>>2]=c+e;if(!d){break q}qa(d)}H[b- -64>>2]=0;if(!Yf(b)){b=ra(32);H[h+32>>2]=b;H[h+36>>2]=29;H[h+40>>2]=-2147483616;F[b+29|0]=0;d=I[11315]|I[11316]<<8|(I[11317]<<16|I[11318]<<24);c=I[11311]|I[11312]<<8|(I[11313]<<16|I[11314]<<24);F[b+21|0]=c;F[b+22|0]=c>>>8;F[b+23|0]=c>>>16;F[b+24|0]=c>>>24;F[b+25|0]=d;F[b+26|0]=d>>>8;F[b+27|0]=d>>>16;F[b+28|0]=d>>>24;d=I[11310]|I[11311]<<8|(I[11312]<<16|I[11313]<<24);c=I[11306]|I[11307]<<8|(I[11308]<<16|I[11309]<<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[11302]|I[11303]<<8|(I[11304]<<16|I[11305]<<24);c=I[11298]|I[11299]<<8|(I[11300]<<16|I[11301]<<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[11294]|I[11295]<<8|(I[11296]<<16|I[11297]<<24);c=I[11290]|I[11291]<<8|(I[11292]<<16|I[11293]<<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;H[a>>2]=-1;Ja(a+4|0,h+32|0);if(F[h+43|0]>-1){break e}qa(H[h+32>>2]);break e}r:{if(I[b+352|0]){break r}d=H[b+8>>2];e=H[d+12>>2]-H[d+8>>2]|0;f=e>>2;d=f-1|0;c=H[b+176>>2];i=H[b+172>>2];g=(c-i|0)/136|0;s:{if(d>>>0>g>>>0){Rf(b+172|0,d-g|0);break s}if(d>>>0>=g>>>0){break s}d=i+N(d,136)|0;if((d|0)!=(c|0)){while(1){g=H[c-20>>2];if(g){H[c-16>>2]=g;qa(g)}g=H[c-32>>2];if(g){H[c-28>>2]=g;qa(g)}ac(c-132|0);g=c-136|0;c=g;if((d|0)!=(c|0)){continue}break}}H[b+176>>2]=d}if((e|0)==4|(e|0)<1){break r}g=(f|0)>1?f:1;c=0;j=0;t:{while(1){i=H[H[H[b+8>>2]+8>>2]+(c<<2)>>2];if(H[i+56>>2]){o=N(j,136);d=o+H[b+172>>2]|0;H[d>>2]=c;e=H[d+104>>2];H[d+108>>2]=e;f=H[b+12>>2];f=H[f+4>>2]-H[f>>2]|0;m=f>>2;u:{if(m>>>0<=H[d+112>>2]-e>>2>>>0){break u}if((f|0)<=-1){break t}f=ra(f);H[d+104>>2]=f;H[d+108>>2]=f;H[d+112>>2]=f+(m<<2);if(!e){break u}qa(e)}d=o+H[b+172>>2]|0;H[d+128>>2]=0;Ue(d+4|0,H[b+8>>2],H[b+12>>2],i);j=j+1|0}c=c+1|0;if((g|0)!=(c|0)){continue}break}break r}wa(11712);X()}d=(H[b+176>>2]-H[b+172>>2]|0)/136|0;F[h+31|0]=d;c=b;e=H[H[b+4>>2]+44>>2];f=H[e+20>>2];if((f|0)<0?1:(f|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],h+31|0,h+32|0);d=I[h+31|0]}H[c+284>>2]=d&255;d=H[b+12>>2];c=H[d>>2];d=H[d+4>>2];Xf(n);H[h+40>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;d=d-c|0;c=(d|0)<1;v:{if(!c){d=N(d>>>2|0,c?d:1);o=(d|0)>1?d:1;d=0;while(1){w:{c=(d>>>0)/3|0;j=c>>>5<<2;m=1<>2]>>2]&m){break w}if(rc(H[b+12>>2],c)){break w}H[h+24>>2]=0;c=Wf(b,c,h+24|0);Ea(n,c);e=H[h+24>>2];if(c){f=-1;g=-1;c=-1;x:{if((e|0)==-1){break x}i=H[H[b+12>>2]>>2];f=i+(e<<2)|0;l=e+1|0;l=(l>>>0)%3|0?l:e-2|0;if((l|0)!=-1){g=H[i+(l<<2)>>2]}f=H[f>>2];l=((e>>>0)%3|0?-1:2)+e|0;if((l|0)==-1){break x}c=H[i+(l<<2)>>2]}i=H[b+84>>2];l=i+(f>>>3&536870908)|0;H[l>>2]=H[l>>2]|1<>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>2];l=H[b+104>>2];y:{if(c>>>0>>0){H[c>>2]=1;H[b+100>>2]=c+4;break y}f=H[b+96>>2];i=c-f|0;c=i>>2;g=c+1|0;if(g>>>0>=1073741824){break d}p=c<<2;l=l-f|0;c=l>>1;g=l>>2>>>0<536870911?c>>>0>>0?g:c:1073741823;c=0;z:{if(!g){break z}if(g>>>0>=1073741824){break b}c=ra(g<<2)}l=p+c|0;H[l>>2]=1;if((i|0)>=1){sa(c,f,i)}H[b+104>>2]=c+(g<<2);H[b+100>>2]=l+4;H[b+96>>2]=c;if(!f){break y}qa(f)}c=j+H[k>>2]|0;H[c>>2]=m|H[c>>2];g=-1;if((e|0)!=-1){c=e+1|0;g=(c>>>0)%3|0?c:e-2|0}c=H[h+36>>2];m=H[h+40>>2];A:{if(c>>>0>>0){H[c>>2]=g;H[h+36>>2]=c+4;break A}f=H[h+32>>2];j=c-f|0;l=j>>2;i=l+1|0;if(i>>>0>=1073741824){break c}m=m-f|0;c=m>>1;i=m>>2>>>0<536870911?c>>>0>>0?i:c:1073741823;c=0;B:{if(!i){break B}if(i>>>0>=1073741824){break b}c=ra(i<<2)}m=c+(l<<2)|0;H[m>>2]=g;if((j|0)>=1){sa(c,f,j)}H[h+40>>2]=c+(i<<2);H[h+36>>2]=m+4;H[h+32>>2]=c;if(!f){break A}qa(f)}if((e|0)==-1){break w}c=e+1|0;c=(c>>>0)%3|0?c:e-2|0;if((c|0)==-1){break w}c=H[H[H[b+12>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break w}e=(c>>>0)/3|0;if(H[H[k>>2]+(e>>>3&268435452)>>2]>>>e&1){break w}if(Mf(b,c)){break w}b=ra(48);H[h+8>>2]=b;H[h+12>>2]=32;H[h+16>>2]=-2147483600;F[b+32|0]=0;d=I[11385]|I[11386]<<8|(I[11387]<<16|I[11388]<<24);c=I[11381]|I[11382]<<8|(I[11383]<<16|I[11384]<<24);F[b+24|0]=c;F[b+25|0]=c>>>8;F[b+26|0]=c>>>16;F[b+27|0]=c>>>24;F[b+28|0]=d;F[b+29|0]=d>>>8;F[b+30|0]=d>>>16;F[b+31|0]=d>>>24;d=I[11377]|I[11378]<<8|(I[11379]<<16|I[11380]<<24);c=I[11373]|I[11374]<<8|(I[11375]<<16|I[11376]<<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[11369]|I[11370]<<8|(I[11371]<<16|I[11372]<<24);c=I[11365]|I[11366]<<8|(I[11367]<<16|I[11368]<<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[11361]|I[11362]<<8|(I[11363]<<16|I[11364]<<24);c=I[11357]|I[11358]<<8|(I[11359]<<16|I[11360]<<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;H[a>>2]=-1;Ja(a+4|0,h+8|0);if(F[h+19|0]>-1){break v}qa(H[h+8>>2]);break v}c=b;if((e|0)!=-1){f=e+1|0;e=(f>>>0)%3|0?f:e-2|0}else{e=-1}tc(c,e,1);if(Mf(b,H[h+24>>2])){break w}b=ra(48);H[h+8>>2]=b;H[h+12>>2]=32;H[h+16>>2]=-2147483600;F[b+32|0]=0;d=I[11385]|I[11386]<<8|(I[11387]<<16|I[11388]<<24);c=I[11381]|I[11382]<<8|(I[11383]<<16|I[11384]<<24);F[b+24|0]=c;F[b+25|0]=c>>>8;F[b+26|0]=c>>>16;F[b+27|0]=c>>>24;F[b+28|0]=d;F[b+29|0]=d>>>8;F[b+30|0]=d>>>16;F[b+31|0]=d>>>24;d=I[11377]|I[11378]<<8|(I[11379]<<16|I[11380]<<24);c=I[11373]|I[11374]<<8|(I[11375]<<16|I[11376]<<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[11369]|I[11370]<<8|(I[11371]<<16|I[11372]<<24);c=I[11365]|I[11366]<<8|(I[11367]<<16|I[11368]<<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[11361]|I[11362]<<8|(I[11363]<<16|I[11364]<<24);c=I[11357]|I[11358]<<8|(I[11359]<<16|I[11360]<<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;H[a>>2]=-1;Ja(a+4|0,h+8|0);if(F[h+19|0]>-1){break v}qa(H[h+8>>2]);break v}d=d+1|0;if((o|0)!=(d|0)){continue}break}}f=b+72|0;d=H[b+72>>2];e=H[b+76>>2];C:{if((d|0)==(e|0)){break C}c=e-4|0;if(c>>>0<=d>>>0){break C}while(1){g=H[d>>2];H[d>>2]=H[c>>2];H[c>>2]=g;d=d+4|0;c=c-4|0;if(d>>>0>>0){continue}break}}Uf(f,e,H[h+32>>2],H[h+36>>2]);D:{if(H[b+172>>2]==H[b+176>>2]){break D}d=H[b+8>>2];c=H[d+100>>2];d=H[d+96>>2];F[h+8|0]=0;Sa(k,(c-d|0)/12|0,h+8|0);d=H[b+72>>2];c=H[b+76>>2];if((d|0)==(c|0)){break D}while(1){Tf(b,H[d>>2]);d=d+4|0;if((c|0)!=(d|0)){continue}break}}d=n+32|0;Aa(n,d);e=H[n+80>>2];E:{if(!e){break E}c=1;if(H[n+84>>2]<1){break E}Aa(e,d);if(H[n+84>>2]<2){break E}while(1){Aa(H[n+80>>2]+(c<<5)|0,d);c=c+1|0;if((c|0)>2]){continue}break}}c=H[n+136>>2];if((c|0)!=H[n+140>>2]){e=0;while(1){f=N(e,12);c=f+c|0;Ga(H[c+4>>2]-H[c>>2]>>2,d);c=H[n+136>>2];g=f+c|0;f=H[g>>2];g=H[g+4>>2]-f|0;if(g){Gd(f,g>>2,1,0,d);c=H[n+136>>2]}e=e+1|0;if(e>>>0<(H[n+140>>2]-c|0)/12>>>0){continue}break}}Ga(H[b+324>>2],H[H[b+4>>2]+44>>2]);Ga(H[b+168>>2],H[H[b+4>>2]+44>>2]);if(!Sf(b)){b=ec(h+8|0,11390);H[a>>2]=-1;Ja(a+4|0,b);if(F[b+11|0]>-1){break v}qa(H[b>>2]);break v}d=H[H[b+4>>2]+44>>2];c=H[d+20>>2];if((c|0)<0?1:(c|0)<=0?!H[d+16>>2]:0){va(d,H[d+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}a=H[h+32>>2];if(!a){break e}H[h+36>>2]=a;qa(a)}da=h+48|0;return}ua();X()}ua();X()}wa(11712);X()}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;g=da-224|0;da=g;H[a+8>>2]=e;i=a+32|0;h=H[i>>2];f=H[a+36>>2]-h>>2;a:{if(f>>>0>>0){La(i,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=h+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){h=f;break c}j=1;i=d-1|0;l=i&1;d:{if((d|0)==2){h=f;break d}i=i&-2;h=f;while(1){m=(j<<2)+b|0;d=H[m+4>>2];m=H[m>>2];k=(m|0)<(h|0);h=k?m:h;y=(h|0)>(d|0);h=y?d:h;f=k?f:(f|0)<(m|0)?m:f;f=y?f:(d|0)>(f|0)?d:f;j=j+2|0;i=i-2|0;if(i){continue}break}}if(!l){break c}d=H[(j<<2)+b>>2];i=(d|0)<(h|0);h=i?d:h;f=i?f:(d|0)>(f|0)?d:f}H[a+16>>2]=f;H[a+12>>2]=h;d=h;i=(f>>31)-((d>>>0>f>>>0)+(d>>31)|0)|0;d=f-d|0;if(!i&d>>>0>2147483646|i){break b}d=d+1|0;H[a+20>>2]=d;f=(d|0)/2|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[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;d=e;e:{if(!d){i=0;f=0;break e}La(g+144|0,e);i=H[g+160>>2];f=H[g+156>>2]}j=d;d=i-f>>2;f:{if(j>>>0<=d>>>0){if(d>>>0<=e>>>0){break f}H[g+160>>2]=(e<<2)+f;break f}La(g+144|12,e-d|0)}f=H[g+168>>2];d=H[g+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}H[g+172>>2]=f+(e<<2);break g}La(g+168|0,e-d|0)}f=H[g+180>>2];d=H[g+184>>2]-f>>2;h:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break h}H[g+184>>2]=f+(e<<2);break h}La(g+180|0,e-d|0)}H[g+136>>2]=0;H[g+128>>2]=0;H[g+132>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;f=ra(d);H[g+128>>2]=f;i=d+f|0;H[g+136>>2]=i;ta(f,0,d);H[g+132>>2]=i}Q=a+152|0;f=H[a+152>>2];d=H[a+156>>2]-f>>2;j:{if(d>>>0>>0){La(Q,e-d|0);break j}if(d>>>0<=e>>>0){break j}H[a+156>>2]=f+(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;d=g- -64|0;H[d>>2]=0;H[d+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;if(e){d=e<<2;t=ra(d);w=ta(t,0,d)+d|0}else{w=0}f=H[a+56>>2];d=H[f>>2];k:{f=H[f+4>>2]-d|0;if((f|0)<5){break k}D=f>>>2|0;k=D-1|0;if(k>>>0>2>>>0){J=a+112|0;$=g+125|0;aa=g+36|0;ba=g+24|0;S=e<<2;K=w-t|0;V=K&-4;B=K>>2;y=e&-2;L=e&1;ca=e&-4;fa=e&3;E=e-1|0;while(1){z=k;j=H[(k<<2)+d>>2];d=(j>>>0)%3|0;m=0;l:{if((j|0)==-1){break l}k=j+(d?-1:2)|0;s=k>>>5|0;x=1<>2];h=1;i=0;d=j;while(1){m:{if(H[A+(d>>>3&536870908)>>2]>>>d&1){break m}f=H[H[H[v+64>>2]+12>>2]+(d<<2)>>2];if((f|0)==-1){break m}l=H[_>>2];m=H[v+28>>2];q=H[l+(H[m+(f<<2)>>2]<<2)>>2];if((q|0)>=(z|0)){break m}n=f+1|0;p=H[l+(H[m+(((n>>>0)%3|0?n:f-2|0)<<2)>>2]<<2)>>2];if((p|0)>=(z|0)){break m}f=H[l+(H[m+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(z|0)){break m}n:{if((e|0)<1){break n}m=H[(g+144|0)+N(i,12)>>2];n=N(e,f);p=N(e,p);q=N(e,q);f=0;l=y;if(E){while(1){H[m+(f<<2)>>2]=(H[(f+n<<2)+b>>2]+H[(f+p<<2)+b>>2]|0)-H[(f+q<<2)+b>>2];r=f|1;H[m+(r<<2)>>2]=(H[(n+r<<2)+b>>2]+H[(p+r<<2)+b>>2]|0)-H[(q+r<<2)+b>>2];f=f+2|0;l=l-2|0;if(l){continue}break}}if(!L){break n}H[m+(f<<2)>>2]=(H[(f+n<<2)+b>>2]+H[(f+p<<2)+b>>2]|0)-H[(f+q<<2)+b>>2]}m=4;i=i+1|0;if((i|0)==4){break l}}o:{if(h&1){f=-1;m=d+1|0;d=(m>>>0)%3|0?m:d-2|0;if((d|0)==-1|H[H[v>>2]+(d>>>3&536870908)>>2]>>>d&1){break o}d=H[H[H[v+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break o}f=d+1|0;f=(f>>>0)%3|0?f:d-2|0;break o}f=-1;d=((d>>>0)%3|0?-1:2)+d|0;if((d|0)==-1|H[H[v>>2]+(d>>>3&536870908)>>2]>>>d&1){break o}d=H[H[H[v+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break o}if((d>>>0)%3|0){f=d-1|0;break o}f=d+2|0}if((f|0)==(j|0)){m=i;break l}d=f;f=(f|0)==-1&h;d=f?-1:d;h=f^h;if(!(!f|(k|0)==-1)){if(x&H[H[v>>2]+(s<<2)>>2]){m=i;break l}d=H[H[H[v+64>>2]+12>>2]+(k<<2)>>2];if((d|0)==-1){m=i;break l}h=0;d=(d>>>0)%3|0?d-1|0:d+2|0}m=i;if((d|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;W=N(e,z)<<2;M=W+b|0;l=(N(D-2|0,e)<<2)+b|0;i=H[a+152>>2];k=0;x=(e|0)<1;if(!x){while(1){f=k<<2;d=H[f+l>>2]-H[f+M>>2]|0;H[f+t>>2]=d;H[f+i>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;f=d;d=d>>31;h=(f+d^d)+h|0;k=k+1|0;if((k|0)!=(e|0)){continue}break}}Ib(g+200|0,J,i,e);d=Hb(g+200|0);i=ea;n=d;d=H[g+216>>2];j=(((H[g+212>>2]-d|0)+1|0)/64|0)+d<<3;d=d<<3;k=d;f=j+d|0;d=(j>>31)+(d>>31)|0;d=f>>>0>>0?d+1|0:d;j=f;f=n+f|0;d=d+i|0;d=f>>>0>>0?d+1|0:d;i=f;O=(m|0)>0;p:{if(!O){G=m-1|0;break p}G=m-1|0;n=G<<3;f=n+(g+48|0)|0;p=f;j=m;k=j+H[f>>2]|0;f=H[f+4>>2];f=j>>>0>k>>>0?f+1|0:f;j=k;H[p>>2]=j;H[p+4>>2]=f;u=U(Jb(j,H[n+(g+80|0)>>2])*(+(j>>>0)+ +(f|0)*4294967296));q:{if(P(u)<0x8000000000000000){j=P(u)>=1?u>0?~~R(T(u*2.3283064365386963e-10),4294967295)>>>0:~~U((u-+(~~u>>>0>>>0))*2.3283064365386963e-10)>>>0:0;f=~~u>>>0;break q}j=-2147483648;f=0}f=f+i|0;i=f}H[g+20>>2]=0;F[g+16|0]=0;H[g+8>>2]=i;H[g+12>>2]=h;eb(ba,l,l+S|0);Gc(aa,t,w);d=G<<3;p=d+(g+80|0)|0;r:{Y=(m|0)<1;if(Y){break r}q=(g+124|0)+m|0;r=q-2|0;n=q-1|0;ga=!m|(n|0)==(g+124|0);Z=d+(g+48|0)|0;A=1;l=1;while(1){if(!Y){ta(g+124|0,1,m)}ta(g+124|0,0,A);s:{t:while(1){if(!x){ta(H[g+128>>2],0,S)}i=0;d=0;if((m|0)>0){while(1){if(!I[(g+124|0)+d|0]){u:{if(x){break u}k=H[g+128>>2];s=H[(g+144|0)+N(d,12)>>2];f=0;j=ca;if(E>>>0>2){while(1){h=f<<2;o=h+k|0;H[o>>2]=H[o>>2]+H[h+s>>2];o=h|4;C=o+k|0;H[C>>2]=H[C>>2]+H[s+o>>2];o=h|8;C=o+k|0;H[C>>2]=H[C>>2]+H[s+o>>2];h=h|12;o=h+k|0;H[o>>2]=H[o>>2]+H[h+s>>2];f=f+4|0;j=j-4|0;if(j){continue}break}}h=fa;if(!h){break u}while(1){j=f<<2;o=j+k|0;H[o>>2]=H[o>>2]+H[j+s>>2];f=f+1|0;h=h-1|0;if(h){continue}break}}i=1<>2];f=0;k=y;if(E){while(1){h=f<<2;j=h+d|0;H[j>>2]=H[j>>2]/(l|0);h=d+(h|4)|0;H[h>>2]=H[h>>2]/(l|0);f=f+2|0;k=k-2|0;if(k){continue}break}}if(L){d=d+(f<<2)|0;H[d>>2]=H[d>>2]/(l|0)}if((e|0)>0){break w}}j=H[a+152>>2];h=0;break v}s=H[g+128>>2];j=H[a+152>>2];h=0;k=0;while(1){f=k<<2;d=H[f+s>>2]-H[f+M>>2]|0;H[f+t>>2]=d;H[f+j>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;f=d;d=d>>31;h=(f+d^d)+h|0;k=k+1|0;if((k|0)!=(e|0)){continue}break}}Ib(g+200|0,J,j,e);d=Hb(g+200|0);k=d;d=H[g+216>>2];j=(((H[g+212>>2]-d|0)+1|0)/64|0)+d<<3;d=d<<3;f=j+d|0;d=k+f|0;f=d;if(O){d=H[Z+4>>2];j=H[Z>>2];u=U(Jb(j,H[p>>2]+l|0)*(+(j>>>0)+ +(d|0)*4294967296));x:{if(P(u)<0x8000000000000000){d=~~u>>>0;break x}d=0}f=d+f|0}d=H[g+8>>2];if(!((d|0)<(f|0)|H[g+12>>2]<=(h|0)?(d|0)<=(f|0):0)){H[g+20>>2]=l;F[g+16|0]=i;H[g+8>>2]=f;H[g+12>>2]=h;h=H[g+132>>2];i=H[g+128>>2];k=h-i|0;j=k>>2;d=H[g+32>>2];f=H[g+24>>2];y:{if(j>>>0<=d-f>>2>>>0){k=H[g+28>>2]-f|0;d=k+i|0;s=k>>2;o=s>>>0>>0?d:h;k=o-i|0;if(k){Ha(f,i,k)}if(j>>>0>s>>>0){f=H[g+28>>2];if((h|0)==(o|0)){break y}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}break y}f=f+k|0;break y}if(f){H[g+28>>2]=f;qa(f);H[g+32>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;d=0}if((k|0)<=-1){break i}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?j:f:1073741823;if(d>>>0>=1073741824){break i}d=d<<2;f=ra(d);H[g+24>>2]=f;H[g+28>>2]=f;H[g+32>>2]=d+f;if((h|0)==(i|0)){break y}d=k&-4;f=sa(f,i,d)+d|0}H[g+28>>2]=f;d=H[g+44>>2];f=H[g+36>>2];z:{if(d-f>>2>>>0>=B>>>0){i=H[g+40>>2]-f|0;d=i+t|0;h=i>>2;j=h>>>0>>0?d:w;i=j-t|0;if(i){Ha(f,t,i)}if(h>>>0>>0){f=H[g+40>>2];if((j|0)==(w|0)){break z}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((w|0)!=(d|0)){continue}break}break z}f=f+i|0;break z}if(f){H[g+40>>2]=f;qa(f);H[g+44>>2]=0;H[g+36>>2]=0;H[g+40>>2]=0;d=0}if((K|0)<=-1){break i}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?B:f:1073741823;if(d>>>0>=1073741824){break i}d=d<<2;f=ra(d);H[g+36>>2]=f;H[g+44>>2]=d+f;if((t|0)==(w|0)){break z}f=sa(f,t,V)+V|0}H[g+40>>2]=f}if(ga){break s}k=-1;i=I[n|0];f=i;while(1){j=f&255;d=k-1|0;h=d+q|0;f=I[h|0];if(j>>>0>f>>>0){j=n;d=q;if((i&255)>>>0<=f>>>0){while(1){i=j;j=i-1|0;s=d-2|0;d=i;if(I[s|0]<=f>>>0){continue}break}i=1}d=k+q|0;F[h|0]=i;F[j|0]=f;f=n;if((k|0)==-1){continue t}while(1){i=I[d|0];F[d|0]=I[f|0];F[f|0]=i;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}continue t}k=d;if((h|0)!=(g+124|0)){continue}break}break}if(n>>>0<=g+124>>>0){break s}d=I[g+124|0];F[g+124|0]=i;F[n|0]=d;d=$;f=r;if(d>>>0>=f>>>0){break s}while(1){i=I[d|0];F[d|0]=I[f|0];F[f|0]=i;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}}if((m|0)==(A|0)){break r}l=l+1|0;A=A+1|0;continue}}if(O){f=p;d=H[g+20>>2];h=d;i=d+H[f>>2]|0;d=H[f+4>>2]+(d>>31)|0;H[f>>2]=i;H[f+4>>2]=h>>>0>i>>>0?d+1|0:d}d=H[Q>>2];A:{if(x){break A}h=H[g+36>>2];f=0;i=y;if(E){while(1){k=f<<2;j=H[k+h>>2];H[d+k>>2]=(j|0)>-1?j<<1:(j^-1)<<1|1;k=k|4;j=H[k+h>>2];H[d+k>>2]=(j|0)>-1?j<<1:(j^-1)<<1|1;f=f+2|0;i=i-2|0;if(i){continue}break}}if(!L){break A}i=f<<2;f=H[i+h>>2];H[d+i>>2]=(f|0)>-1?f<<1:(f^-1)<<1|1}yc(g+200|0,J,d,e);d=0;B:{if((m|0)<=0){break B}i=N(G,12)+a|0;j=i;k=i- -64|0;C:{while(1){D:{l=H[j+68>>2];h=l<<5;f=H[k>>2];E:{if(!(I[g+16|0]>>>d&1)){F:{if((f|0)!=(h|0)){break F}if((f+1|0)<=-1){break D}h=2147483647;if(f>>>0<=1073741822){h=f+32&-32;l=l<<6;h=h>>>0>l>>>0?h:l}if(f>>>0>=h>>>0){break F}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((h|0)<=-1){break i}n=(h-1>>>5|0)+1|0;h=ra(n<<2);H[g+208>>2]=n;H[g+200>>2]=h;l=H[i+60>>2];H[g+204>>2]=f;G:{H:{I:{if(f>>>0>=33){H[h+(f-1>>>3&536870908)>>2]=0;break I}H[h>>2]=0;if(!f){break H}}r=f>>>5|0;p=r<<2;q=Ha(h,l,p);r=f-(r<<5)|0;if((r|0)<1){break H}f=q+p|0;h=f;o=H[f>>2];f=-1>>>32-r|0;H[h>>2]=o&(f^-1)|f&H[l+p>>2];H[i+60>>2]=q;H[j+68>>2]=n;break G}H[i+60>>2]=h;H[j+68>>2]=n;if(!l){break F}}qa(l);f=H[k>>2]}H[k>>2]=f+1;h=H[i+60>>2]+(f>>>3&536870908)|0;H[h>>2]=H[h>>2]|1<>>0<=1073741822){h=f+32&-32;l=l<<6;h=h>>>0>l>>>0?h:l}if(f>>>0>=h>>>0){break J}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((h|0)<=-1){break C}n=(h-1>>>5|0)+1|0;h=ra(n<<2);H[g+208>>2]=n;H[g+200>>2]=h;l=H[i+60>>2];H[g+204>>2]=f;K:{L:{M:{if(f>>>0>=33){H[h+(f-1>>>3&536870908)>>2]=0;break M}H[h>>2]=0;if(!f){break L}}r=f>>>5|0;p=r<<2;q=Ha(h,l,p);r=f-(r<<5)|0;if((r|0)<1){break L}f=q+p|0;h=f;o=H[f>>2];f=-1>>>32-r|0;H[h>>2]=o&(f^-1)|f&H[l+p>>2];H[i+60>>2]=q;H[j+68>>2]=n;break K}H[i+60>>2]=h;H[j+68>>2]=n;if(!l){break J}}qa(l);f=H[k>>2]}H[k>>2]=f+1;h=H[i+60>>2]+(f>>>3&536870908)|0;l=H[h>>2];ha=h,ia=il(-2,f)&l,H[ha>>2]=ia}d=d+1|0;if((m|0)!=(d|0)){continue}break B}break}break i}break i}l=H[g+24>>2];d=H[a+8>>2];if((d|0)>=1){k=c+W|0;i=l;h=0;while(1){f=0;N:{if((d|0)<=0){j=H[a+32>>2];break N}while(1){d=f<<2;m=H[d+i>>2];n=H[a+16>>2];O:{if((m|0)>(n|0)){j=H[a+32>>2];H[d+j>>2]=n;break O}j=H[a+32>>2];d=d+j|0;n=H[a+12>>2];if((n|0)>(m|0)){H[d>>2]=n;break O}H[d>>2]=m}f=f+1|0;if((f|0)>2]){continue}break}}f=h<<2;d=f+k|0;f=H[f+M>>2]-H[f+j>>2]|0;H[d>>2]=f;P:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break P}f=f-H[a+20>>2]|0}H[d>>2]=f}i=j;d=H[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}}d=H[g+36>>2];if(d){H[g+40>>2]=d;qa(d);l=H[g+24>>2]}if(l){H[g+28>>2]=l;qa(l)}if((D|0)<3){break k}D=z;f=H[a+56>>2];d=H[f>>2];k=z-1|0;if(k>>>0>2]-d>>2>>>0){continue}break}}xa();X()}i=H[g+144>>2];if((e|0)>=1){ta(i,0,e<<2);i=H[g+144>>2]}d=H[a+8>>2];if((d|0)>=1){h=0;while(1){f=0;Q:{if((d|0)<=0){j=H[a+32>>2];break Q}while(1){d=f<<2;e=H[d+i>>2];m=H[a+16>>2];R:{if((e|0)>(m|0)){j=H[a+32>>2];H[d+j>>2]=m;break R}j=H[a+32>>2];d=d+j|0;m=H[a+12>>2];if((m|0)>(e|0)){H[d>>2]=m;break R}H[d>>2]=e}f=f+1|0;if((f|0)>2]){continue}break}}e=h<<2;d=e+c|0;e=H[b+e>>2]-H[e+j>>2]|0;H[d>>2]=e;S:{if((e|0)>2]){e=e+H[a+20>>2]|0}else{if((e|0)<=H[a+24>>2]){break S}e=e-H[a+20>>2]|0}H[d>>2]=e}i=j;d=H[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}}if(t){qa(t)}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+224|0;return 1}ua();X()}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;g=da-224|0;da=g;H[a+8>>2]=e;h=a+32|0;i=H[h>>2];f=H[a+36>>2]-i>>2;a:{if(f>>>0>>0){La(h,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=i+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){h=f;break c}j=1;h=d-1|0;v=h&1;d:{if((d|0)==2){h=f;break d}i=h&-2;h=f;while(1){l=(j<<2)+b|0;d=H[l+4>>2];l=H[l>>2];k=(l|0)<(h|0);h=k?l:h;y=(h|0)>(d|0);h=y?d:h;f=k?f:(f|0)<(l|0)?l:f;f=y?f:(d|0)>(f|0)?d:f;j=j+2|0;i=i-2|0;if(i){continue}break}}if(!v){break c}d=H[(j<<2)+b>>2];i=(d|0)<(h|0);h=i?d:h;f=i?f:(d|0)>(f|0)?d:f}H[a+16>>2]=f;H[a+12>>2]=h;d=h;h=(f>>31)-((d>>>0>f>>>0)+(d>>31)|0)|0;d=f-d|0;if(!h&d>>>0>2147483646|h){break b}d=d+1|0;H[a+20>>2]=d;f=(d|0)/2|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];O=H[a+48>>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;d=e;e:{if(!d){h=0;f=0;break e}La(g+144|0,e);h=H[g+160>>2];f=H[g+156>>2]}j=d;d=h-f>>2;f:{if(j>>>0<=d>>>0){if(d>>>0<=e>>>0){break f}H[g+160>>2]=(e<<2)+f;break f}La(g+144|12,e-d|0)}f=H[g+168>>2];d=H[g+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}H[g+172>>2]=f+(e<<2);break g}La(g+168|0,e-d|0)}f=H[g+180>>2];d=H[g+184>>2]-f>>2;h:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break h}H[g+184>>2]=f+(e<<2);break h}La(g+180|0,e-d|0)}H[g+136>>2]=0;H[g+128>>2]=0;H[g+132>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}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}Q=a+152|0;f=H[a+152>>2];d=H[a+156>>2]-f>>2;j:{if(d>>>0>>0){La(Q,e-d|0);break j}if(d>>>0<=e>>>0){break j}H[a+156>>2]=f+(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;d=g- -64|0;H[d>>2]=0;H[d+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;if(e){d=e<<2;s=ra(d);x=ta(s,0,d)+d|0}else{x=0}f=H[a+56>>2];d=H[f>>2];k:{f=H[f+4>>2]-d|0;if((f|0)<5){break k}C=f>>>2|0;k=C-1|0;if(k>>>0>2>>>0){G=a+112|0;$=g+125|0;aa=g+36|0;ba=g+24|0;S=e<<2;J=x-s|0;V=J&-4;A=J>>2;y=e&-2;K=e&1;ca=e&-4;fa=e&3;D=e-1|0;while(1){v=k;j=H[(k<<2)+d>>2];d=(j>>>0)%3|0;l=0;l:{if((j|0)==-1){break l}k=H[O+12>>2];w=j+(d?-1:2)|0;z=k+(w<<2)|0;n=1;d=0;i=j;while(1){f=H[k+(i<<2)>>2];m:{if((f|0)==-1){break m}h=H[_>>2];l=H[O>>2];q=H[h+(H[l+(f<<2)>>2]<<2)>>2];o=f+1|0;o=(o>>>0)%3|0?o:f-2|0;m=h-4|0;n:{if((o|0)==-1){break n}m=h+(H[l+(o<<2)>>2]<<2)|0}f=f+((f>>>0)%3|0?-1:2)|0;o=h-4|0;o:{if((f|0)==-1){break o}o=h+(H[l+(f<<2)>>2]<<2)|0}if((q|0)>=(v|0)){break m}f=H[m>>2];if((f|0)>=(v|0)){break m}h=H[o>>2];if((h|0)>=(v|0)){break m}l=H[(g+144|0)+N(d,12)>>2];p:{if((e|0)<1){break p}m=N(e,h);o=N(e,f);q=N(e,q);f=0;h=y;if(D){while(1){H[l+(f<<2)>>2]=(H[(f+m<<2)+b>>2]+H[(f+o<<2)+b>>2]|0)-H[(f+q<<2)+b>>2];r=f|1;H[l+(r<<2)>>2]=(H[(m+r<<2)+b>>2]+H[(o+r<<2)+b>>2]|0)-H[(q+r<<2)+b>>2];f=f+2|0;h=h-2|0;if(h){continue}break}}if(!K){break p}H[l+(f<<2)>>2]=(H[(f+m<<2)+b>>2]+H[(f+o<<2)+b>>2]|0)-H[(f+q<<2)+b>>2]}l=4;d=d+1|0;if((d|0)==4){break l}}q:{if(n&1){l=i+1|0;i=(l>>>0)%3|0?l:i-2|0;f=-1;if((i|0)==-1){break q}i=H[k+(i<<2)>>2];f=-1;if((i|0)==-1){break q}f=i+1|0;f=(f>>>0)%3|0?f:i-2|0;break q}i=((i>>>0)%3|0?-1:2)+i|0;f=-1;if((i|0)==-1){break q}i=H[k+(i<<2)>>2];f=-1;if((i|0)==-1){break q}f=i-1|0;if((i>>>0)%3|0){break q}f=i+2|0}if((f|0)==(j|0)){l=d;break l}i=f;f=(f|0)==-1&n;i=f?-1:i;n=f^n;if(!(!f|(w|0)==-1)){f=H[z>>2];if((f|0)==-1){l=d;break l}n=0;i=(f>>>0)%3|0?f-1|0:f+2|0}l=d;if((i|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;W=N(e,v)<<2;L=W+b|0;m=(N(C-2|0,e)<<2)+b|0;i=H[a+152>>2];k=0;w=(e|0)<1;if(!w){while(1){f=k<<2;d=H[f+m>>2]-H[f+L>>2]|0;H[f+s>>2]=d;H[f+i>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;f=d;d=d>>31;h=(f+d^d)+h|0;k=k+1|0;if((k|0)!=(e|0)){continue}break}}Ib(g+200|0,G,i,e);d=Hb(g+200|0);i=ea;o=d;d=H[g+216>>2];j=(((H[g+212>>2]-d|0)+1|0)/64|0)+d<<3;d=d<<3;k=d;f=j+d|0;d=(j>>31)+(d>>31)|0;d=f>>>0>>0?d+1|0:d;j=f;f=o+f|0;d=d+i|0;d=f>>>0>>0?d+1|0:d;i=f;M=(l|0)>0;r:{if(!M){E=l-1|0;break r}E=l-1|0;n=E<<3;f=n+(g+48|0)|0;o=f;j=l;k=j+H[f>>2]|0;f=H[f+4>>2];f=j>>>0>k>>>0?f+1|0:f;j=k;H[o>>2]=j;H[o+4>>2]=f;t=U(Jb(j,H[n+(g+80|0)>>2])*(+(j>>>0)+ +(f|0)*4294967296));s:{if(P(t)<0x8000000000000000){j=P(t)>=1?t>0?~~R(T(t*2.3283064365386963e-10),4294967295)>>>0:~~U((t-+(~~t>>>0>>>0))*2.3283064365386963e-10)>>>0:0;f=~~t>>>0;break s}j=-2147483648;f=0}f=f+i|0;i=f}H[g+20>>2]=0;F[g+16|0]=0;H[g+8>>2]=i;H[g+12>>2]=h;eb(ba,m,m+S|0);Gc(aa,s,x);d=E<<3;o=d+(g+80|0)|0;t:{Y=(l|0)<1;if(Y){break t}q=(g+124|0)+l|0;r=q-2|0;m=q-1|0;ga=!l|(m|0)==(g+124|0);Z=d+(g+48|0)|0;z=1;n=1;while(1){if(!Y){ta(g+124|0,1,l)}ta(g+124|0,0,z);u:{v:while(1){if(!w){ta(H[g+128>>2],0,S)}u=0;i=0;if((l|0)>0){while(1){if(!I[(g+124|0)+i|0]){w:{if(w){break w}d=H[g+128>>2];k=H[(g+144|0)+N(i,12)>>2];f=0;j=ca;if(D>>>0>2){while(1){h=f<<2;p=h+d|0;H[p>>2]=H[p>>2]+H[h+k>>2];p=h|4;B=p+d|0;H[B>>2]=H[B>>2]+H[k+p>>2];p=h|8;B=p+d|0;H[B>>2]=H[B>>2]+H[k+p>>2];h=h|12;p=h+d|0;H[p>>2]=H[p>>2]+H[h+k>>2];f=f+4|0;j=j-4|0;if(j){continue}break}}h=fa;if(!h){break w}while(1){j=f<<2;p=j+d|0;H[p>>2]=H[p>>2]+H[j+k>>2];f=f+1|0;h=h-1|0;if(h){continue}break}}u=1<>2];f=0;k=y;if(D){while(1){h=f<<2;i=h+d|0;H[i>>2]=H[i>>2]/(n|0);h=d+(h|4)|0;H[h>>2]=H[h>>2]/(n|0);f=f+2|0;k=k-2|0;if(k){continue}break}}if(K){d=d+(f<<2)|0;H[d>>2]=H[d>>2]/(n|0)}if((e|0)>0){break y}}j=H[a+152>>2];h=0;break x}i=H[g+128>>2];j=H[a+152>>2];h=0;k=0;while(1){f=k<<2;d=H[f+i>>2]-H[f+L>>2]|0;H[f+s>>2]=d;H[f+j>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;f=d;d=d>>31;h=(f+d^d)+h|0;k=k+1|0;if((k|0)!=(e|0)){continue}break}}Ib(g+200|0,G,j,e);d=Hb(g+200|0);j=d;d=H[g+216>>2];i=(((H[g+212>>2]-d|0)+1|0)/64|0)+d<<3;d=d<<3;f=i+d|0;d=j+f|0;f=d;if(M){d=H[Z+4>>2];i=H[Z>>2];t=U(Jb(i,H[o>>2]+n|0)*(+(i>>>0)+ +(d|0)*4294967296));z:{if(P(t)<0x8000000000000000){d=~~t>>>0;break z}d=0}f=d+f|0}d=H[g+8>>2];if(!((d|0)<(f|0)|H[g+12>>2]<=(h|0)?(d|0)<=(f|0):0)){H[g+20>>2]=n;F[g+16|0]=u;H[g+8>>2]=f;H[g+12>>2]=h;i=H[g+132>>2];h=H[g+128>>2];k=i-h|0;j=k>>2;d=H[g+32>>2];f=H[g+24>>2];A:{if(j>>>0<=d-f>>2>>>0){k=H[g+28>>2]-f|0;d=k+h|0;u=k>>2;p=u>>>0>>0?d:i;k=p-h|0;if(k){Ha(f,h,k)}if(j>>>0>u>>>0){f=H[g+28>>2];if((i|0)==(p|0)){break A}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}break A}f=f+k|0;break A}if(f){H[g+28>>2]=f;qa(f);H[g+32>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;d=0}if((k|0)<=-1){break i}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?j:f:1073741823;if(d>>>0>=1073741824){break i}d=d<<2;f=ra(d);H[g+24>>2]=f;H[g+28>>2]=f;H[g+32>>2]=d+f;if((h|0)==(i|0)){break A}d=k&-4;f=sa(f,h,d)+d|0}H[g+28>>2]=f;d=H[g+44>>2];f=H[g+36>>2];B:{if(d-f>>2>>>0>=A>>>0){h=H[g+40>>2]-f|0;d=h+s|0;i=h>>2;j=i>>>0>>0?d:x;h=j-s|0;if(h){Ha(f,s,h)}if(i>>>0>>0){f=H[g+40>>2];if((j|0)==(x|0)){break B}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((x|0)!=(d|0)){continue}break}break B}f=f+h|0;break B}if(f){H[g+40>>2]=f;qa(f);H[g+44>>2]=0;H[g+36>>2]=0;H[g+40>>2]=0;d=0}if((J|0)<=-1){break i}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?A:f:1073741823;if(d>>>0>=1073741824){break i}d=d<<2;f=ra(d);H[g+36>>2]=f;H[g+44>>2]=d+f;if((s|0)==(x|0)){break B}f=sa(f,s,V)+V|0}H[g+40>>2]=f}if(ga){break u}k=-1;i=I[m|0];f=i;while(1){h=f&255;d=k-1|0;u=d+q|0;f=I[u|0];if(h>>>0>f>>>0){j=m;d=q;if((i&255)>>>0<=f>>>0){while(1){h=j;j=h-1|0;i=d-2|0;d=h;if(I[i|0]<=f>>>0){continue}break}i=1}d=k+q|0;F[u|0]=i;F[j|0]=f;f=m;if((k|0)==-1){continue v}while(1){h=I[d|0];F[d|0]=I[f|0];F[f|0]=h;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}continue v}k=d;if((u|0)!=(g+124|0)){continue}break}break}if(m>>>0<=g+124>>>0){break u}d=I[g+124|0];F[g+124|0]=i;F[m|0]=d;d=$;f=r;if(d>>>0>=f>>>0){break u}while(1){h=I[d|0];F[d|0]=I[f|0];F[f|0]=h;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}}if((l|0)==(z|0)){break t}n=n+1|0;z=z+1|0;continue}}if(M){f=o;d=H[g+20>>2];i=d;h=d+H[f>>2]|0;d=H[f+4>>2]+(d>>31)|0;H[f>>2]=h;H[f+4>>2]=h>>>0>>0?d+1|0:d}d=H[Q>>2];C:{if(w){break C}h=H[g+36>>2];f=0;i=y;if(D){while(1){k=f<<2;j=H[k+h>>2];H[d+k>>2]=(j|0)>-1?j<<1:(j^-1)<<1|1;k=k|4;j=H[k+h>>2];H[d+k>>2]=(j|0)>-1?j<<1:(j^-1)<<1|1;f=f+2|0;i=i-2|0;if(i){continue}break}}if(!K){break C}j=h;h=f<<2;f=H[j+h>>2];H[d+h>>2]=(f|0)>-1?f<<1:(f^-1)<<1|1}yc(g+200|0,G,d,e);d=0;D:{if((l|0)<=0){break D}i=N(E,12)+a|0;j=i;k=i- -64|0;E:{while(1){F:{m=H[j+68>>2];h=m<<5;f=H[k>>2];G:{if(!(I[g+16|0]>>>d&1)){H:{if((f|0)!=(h|0)){break H}if((f+1|0)<=-1){break F}h=2147483647;if(f>>>0<=1073741822){h=f+32&-32;m=m<<6;h=h>>>0>m>>>0?h:m}if(f>>>0>=h>>>0){break H}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((h|0)<=-1){break i}n=(h-1>>>5|0)+1|0;h=ra(n<<2);H[g+208>>2]=n;H[g+200>>2]=h;m=H[i+60>>2];H[g+204>>2]=f;I:{J:{K:{if(f>>>0>=33){H[h+(f-1>>>3&536870908)>>2]=0;break K}H[h>>2]=0;if(!f){break J}}r=f>>>5|0;o=r<<2;q=Ha(h,m,o);r=f-(r<<5)|0;if((r|0)<1){break J}f=o+q|0;h=f;p=H[f>>2];f=-1>>>32-r|0;H[h>>2]=p&(f^-1)|f&H[m+o>>2];H[i+60>>2]=q;H[j+68>>2]=n;break I}H[i+60>>2]=h;H[j+68>>2]=n;if(!m){break H}}qa(m);f=H[k>>2]}H[k>>2]=f+1;h=H[i+60>>2]+(f>>>3&536870908)|0;H[h>>2]=H[h>>2]|1<>>0<=1073741822){h=f+32&-32;m=m<<6;h=h>>>0>m>>>0?h:m}if(f>>>0>=h>>>0){break L}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((h|0)<=-1){break E}n=(h-1>>>5|0)+1|0;h=ra(n<<2);H[g+208>>2]=n;H[g+200>>2]=h;m=H[i+60>>2];H[g+204>>2]=f;M:{N:{O:{if(f>>>0>=33){H[h+(f-1>>>3&536870908)>>2]=0;break O}H[h>>2]=0;if(!f){break N}}r=f>>>5|0;o=r<<2;q=Ha(h,m,o);r=f-(r<<5)|0;if((r|0)<1){break N}f=o+q|0;h=f;p=H[f>>2];f=-1>>>32-r|0;H[h>>2]=p&(f^-1)|f&H[m+o>>2];H[i+60>>2]=q;H[j+68>>2]=n;break M}H[i+60>>2]=h;H[j+68>>2]=n;if(!m){break L}}qa(m);f=H[k>>2]}H[k>>2]=f+1;h=H[i+60>>2]+(f>>>3&536870908)|0;m=H[h>>2];ha=h,ia=il(-2,f)&m,H[ha>>2]=ia}d=d+1|0;if((l|0)!=(d|0)){continue}break D}break}break i}break i}n=H[g+24>>2];d=H[a+8>>2];if((d|0)>=1){k=c+W|0;i=n;h=0;while(1){f=0;P:{if((d|0)<=0){j=H[a+32>>2];break P}while(1){d=f<<2;l=H[d+i>>2];m=H[a+16>>2];Q:{if((l|0)>(m|0)){j=H[a+32>>2];H[d+j>>2]=m;break Q}j=H[a+32>>2];d=d+j|0;m=H[a+12>>2];if((m|0)>(l|0)){H[d>>2]=m;break Q}H[d>>2]=l}f=f+1|0;if((f|0)>2]){continue}break}}f=h<<2;d=f+k|0;f=H[f+L>>2]-H[f+j>>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}i=j;d=H[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}}d=H[g+36>>2];if(d){H[g+40>>2]=d;qa(d);n=H[g+24>>2]}if(n){H[g+28>>2]=n;qa(n)}if((C|0)<3){break k}C=v;f=H[a+56>>2];d=H[f>>2];k=v-1|0;if(k>>>0>2]-d>>2>>>0){continue}break}}xa();X()}i=H[g+144>>2];if((e|0)>=1){ta(i,0,e<<2);i=H[g+144>>2]}d=H[a+8>>2];if((d|0)>=1){h=0;while(1){f=0;S:{if((d|0)<=0){j=H[a+32>>2];break S}while(1){d=f<<2;e=H[d+i>>2];l=H[a+16>>2];T:{if((e|0)>(l|0)){j=H[a+32>>2];H[d+j>>2]=l;break T}j=H[a+32>>2];d=d+j|0;l=H[a+12>>2];if((l|0)>(e|0)){H[d>>2]=l;break T}H[d>>2]=e}f=f+1|0;if((f|0)>2]){continue}break}}e=h<<2;d=e+c|0;e=H[b+e>>2]-H[e+j>>2]|0;H[d>>2]=e;U:{if((e|0)>2]){e=e+H[a+20>>2]|0}else{if((e|0)<=H[a+24>>2]){break U}e=e-H[a+20>>2]|0}H[d>>2]=e}i=j;d=H[a+8>>2];h=h+1|0;if((d|0)>(h|0)){continue}break}}if(s){qa(s)}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+224|0;return 1}ua();X()}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=O(0),p=0,q=0,r=0,s=0,t=0,u=0;d=da-80|0;da=d;g=H[a+28>>2];f=H[g+4>>2];k=H[a+8>>2];b=H[a+4>>2];c=k-b|0;a:{if(!c){break a}e=c>>31;e=(e+c^e)>>>2|0;c=(c|0)>-1?c:-1;c=N(e,(c|0)<1?c:1);c=c>>>0>1?c:1;j=c&3;e=H[f+8>>2];b:{if(c-1>>>0<3){c=0;break b}i=c&-4;c=0;while(1){l=h;h=c<<2;h=(((l+F[H[e+(H[h+b>>2]<<2)>>2]+24|0]|0)+F[H[e+(H[(h|4)+b>>2]<<2)>>2]+24|0]|0)+F[H[e+(H[(h|8)+b>>2]<<2)>>2]+24|0]|0)+F[H[e+(H[(h|12)+b>>2]<<2)>>2]+24|0]|0;c=c+4|0;i=i-4|0;if(i){continue}break}}if(!j){break a}while(1){h=F[H[e+(H[(c<<2)+b>>2]<<2)>>2]+24|0]+h|0;c=c+1|0;j=j-1|0;if(j){continue}break}}q=H[f+80>>2];H[a+72>>2]=h;c:{d:{if((b|0)==(k|0)){c=1;break d}while(1){e=H[(p<<2)+b>>2];H[d+56>>2]=e;e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{j=H[H[f+8>>2]+(e<<2)>>2];switch(H[j+28>>2]-1|0){case 0:case 2:case 4:break n;case 8:break o;default:break e}}H[d+36>>2]=-1;H[d+32>>2]=1140;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;g=H[g+48>>2];f=ra(32);H[d+64>>2]=f;H[d+68>>2]=17;H[d+72>>2]=-2147483616;F[f+17|0]=0;F[f+16|0]=I[1664];b=I[1660]|I[1661]<<8|(I[1662]<<16|I[1663]<<24);c=I[1656]|I[1657]<<8|(I[1658]<<16|I[1659]<<24);F[f+8|0]=c;F[f+9|0]=c>>>8;F[f+10|0]=c>>>16;F[f+11|0]=c>>>24;F[f+12|0]=b;F[f+13|0]=b>>>8;F[f+14|0]=b>>>16;F[f+15|0]=b>>>24;b=I[1652]|I[1653]<<8|(I[1654]<<16|I[1655]<<24);c=I[1648]|I[1649]<<8|(I[1650]<<16|I[1651]<<24);F[f|0]=c;F[f+1|0]=c>>>8;F[f+2|0]=c>>>16;F[f+3|0]=c>>>24;F[f+4|0]=b;F[f+5|0]=b>>>8;F[f+6|0]=b>>>16;F[f+7|0]=b>>>24;h=g+16|0;c=h;b=H[c>>2];p:{if(!b){break p}while(1){i=(e|0)>H[b+16>>2];c=i?c:b;b=H[(i<<2)+b>>2];if(b){continue}break}if((c|0)==(h|0)|(e|0)>2]){break p}b=H[c+24>>2];if(!b){break p}c=c+20|0;while(1){e=I[b+27|0];h=e<<24>>24<0;e=h?H[b+20>>2]:e;i=e>>>0<17;q:{r:{k=i?e:17;s:{if(k){l=b+16|0;h=h?H[l>>2]:l;l=Ca(f,h,k);t:{if(!l){if(e>>>0<=17){break t}break q}if((l|0)<=-1){break q}}e=Ca(h,f,k);if(!e){break s}if((e|0)<=-1){break r}g=c;break p}if(e>>>0>17){break q}}if(i){break r}g=c;break p}b=b+4|0}b=H[b>>2];if(b){continue}break}}i=hb(g,d- -64|0,-1);if(F[d+75|0]<=-1){qa(H[d+64>>2])}if((i|0)<1){break l}e=H[H[a+28>>2]+48>>2];b=ra(32);H[d+64>>2]=b;H[d+68>>2]=19;H[d+72>>2]=-2147483616;c=0;F[b+19|0]=0;f=I[1681]|I[1682]<<8|(I[1683]<<16|I[1684]<<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=I[1678]|I[1679]<<8|(I[1680]<<16|I[1681]<<24);g=I[1674]|I[1675]<<8|(I[1676]<<16|I[1677]<<24);F[b+8|0]=g;F[b+9|0]=g>>>8;F[b+10|0]=g>>>16;F[b+11|0]=g>>>24;F[b+12|0]=f;F[b+13|0]=f>>>8;F[b+14|0]=f>>>16;F[b+15|0]=f>>>24;f=I[1670]|I[1671]<<8|(I[1672]<<16|I[1673]<<24);g=I[1666]|I[1667]<<8|(I[1668]<<16|I[1669]<<24);F[b|0]=g;F[b+1|0]=g>>>8;F[b+2|0]=g>>>16;F[b+3|0]=g>>>24;F[b+4|0]=f;F[b+5|0]=f>>>8;F[b+6|0]=f>>>16;F[b+7|0]=f>>>24;u:{if(!jc(e,d+56|0,d- -64|0)){break u}g=H[H[a+28>>2]+48>>2];b=ra(32);H[d+16>>2]=b;H[d+20>>2]=18;H[d+24>>2]=-2147483616;F[b+18|0]=0;c=I[1702]|I[1703]<<8;F[b+16|0]=c;F[b+17|0]=c>>>8;c=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);f=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<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[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);f=I[1686]|I[1687]<<8|(I[1688]<<16|I[1689]<<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;c=jc(g,d+56|0,d+16|0);if(F[d+27|0]>-1){break u}qa(H[d+16>>2])}if(F[d+75|0]<=-1){qa(H[d+64>>2])}if(!c){break m}b=F[j+24|0];f=0;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;v:{if(b){if((b|0)<=-1){break v}b=b<<2;f=ra(b);H[d+16>>2]=f;c=b+f|0;H[d+24>>2]=c;ta(f,0,b);H[d+20>>2]=c}k=H[H[a+28>>2]+48>>2];e=ra(32);H[d>>2]=e;H[d+4>>2]=19;H[d+8>>2]=-2147483616;F[e+19|0]=0;b=I[1681]|I[1682]<<8|(I[1683]<<16|I[1684]<<24);F[e+15|0]=b;F[e+16|0]=b>>>8;F[e+17|0]=b>>>16;F[e+18|0]=b>>>24;b=I[1678]|I[1679]<<8|(I[1680]<<16|I[1681]<<24);c=I[1674]|I[1675]<<8|(I[1676]<<16|I[1677]<<24);F[e+8|0]=c;F[e+9|0]=c>>>8;F[e+10|0]=c>>>16;F[e+11|0]=c>>>24;F[e+12|0]=b;F[e+13|0]=b>>>8;F[e+14|0]=b>>>16;F[e+15|0]=b>>>24;b=I[1670]|I[1671]<<8|(I[1672]<<16|I[1673]<<24);c=I[1666]|I[1667]<<8|(I[1668]<<16|I[1669]<<24);F[e|0]=c;F[e+1|0]=c>>>8;F[e+2|0]=c>>>16;F[e+3|0]=c>>>24;F[e+4|0]=b;F[e+5|0]=b>>>8;F[e+6|0]=b>>>16;F[e+7|0]=b>>>24;h=F[j+24|0];w:{x:{g=k+16|0;b=H[g>>2];y:{if(!b){break y}l=H[d+56>>2];c=g;while(1){m=(l|0)>H[b+16>>2];c=m?c:b;b=H[(m<<2)+b>>2];if(b){continue}break}if((c|0)==(g|0)|(l|0)>2]){break y}b=H[c+24>>2];if(!b){break y}r=c+24|0;s=c+20|0;while(1){c=I[b+27|0];g=c<<24>>24<0;c=g?H[b+20>>2]:c;l=c>>>0<19;z:{A:{m=l?c:19;B:{C:{if(m){n=b+16|0;g=g?H[n>>2]:n;n=Ca(e,g,m);D:{if(!n){if(c>>>0<=19){break D}break z}if((n|0)<=-1){break z}}c=Ca(g,e,m);if(!c){break C}if((c|0)>-1){break B}break A}if(c>>>0>19){break z}}if(l){break A}}b=gb(s,d);if((b|0)==(r|0)){break g}Ja(d- -64|0,b+28|0);g=F[d+75|0];if((g|0)>-1){break x}if(!H[d+68>>2]){break h}b=H[d+64>>2];break i}b=b+4|0}b=H[b>>2];if(b){continue}break}}b=gb(k,d);if((b|0)==(k+4|0)){break g}Ja(d- -64|0,b+28|0);g=F[d+75|0];if((g|0)>-1){break w}if(!H[d+68>>2]){break j}b=H[d+64>>2];break k}b=d- -64|0;if(g){break i}break g}b=d- -64|0;if(g){break k}break g}break c}b=F[j+24|0];h=0;H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;E:{if(!b){e=0;b=0;break E}if((b|0)<=-1){break c}c=b<<2;e=ra(c);H[d+32>>2]=e;f=c+e|0;H[d+40>>2]=f;b=e;g=c-4|0;c=(g>>>2|0)+1&7;if(c){while(1){H[b>>2]=2147483647;b=b+4|0;c=c-1|0;if(c){continue}break}}if(g>>>0>=28){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((f|0)!=(b|0)){continue}break}}H[d+36>>2]=f;b=I[j+24|0]}H[d+72>>2]=0;H[d+64>>2]=0;H[d+68>>2]=0;if(b&255){b=b<<24>>24;if((b|0)<=-1){break c}b=b<<2;h=ra(b);H[d+64>>2]=h;c=b+h|0;H[d+72>>2]=c;ta(h,0,b);H[d+68>>2]=c}g=I[j+24|0];f=0;if(H[j+80>>2]){while(1){Mc(j,f,g<<24>>24,h);h=H[d+64>>2];e=H[d+32>>2];g=F[j+24|0];F:{if((g|0)<1){break F}b=0;if((g|0)!=1){c=g&-2;while(1){i=b<<2;k=i+e|0;l=H[h+i>>2];if(H[k>>2]>(l|0)){H[k>>2]=l}i=i|4;k=i+e|0;i=H[h+i>>2];if(H[k>>2]>(i|0)){H[k>>2]=i}b=b+2|0;c=c-2|0;if(c){continue}break}}if(!(g&1)){break F}b=b<<2;c=b+e|0;b=H[b+h>>2];if(H[c>>2]<=(b|0)){break F}H[c>>2]=b}f=f+1|0;if(f>>>0>2]){continue}break}}b=0;if(g<<24>>24>0){G:{H:{while(1){I:{h=(b<<2)+e|0;c=H[a+52>>2];J:{if((c|0)!=H[a+56>>2]){H[c>>2]=H[h>>2];H[a+52>>2]=c+4;break J}f=H[a+48>>2];g=c-f|0;i=g>>2;e=i+1|0;if(e>>>0>=1073741824){break I}k=g>>1;e=i>>>0<536870911?e>>>0>k>>>0?e:k:1073741823;c=0;K:{if(!e){break K}if(e>>>0>=1073741824){break H}c=ra(e<<2)}i=c+(i<<2)|0;H[i>>2]=H[h>>2];if((g|0)>=1){sa(c,f,g)}H[a+56>>2]=c+(e<<2);H[a+52>>2]=i+4;H[a+48>>2]=c;if(!f){break J}qa(f)}b=b+1|0;if((b|0)>=F[j+24|0]){break G}e=H[d+32>>2];continue}break}break c}wa(1752);X()}h=H[d+64>>2]}if(h){H[d+68>>2]=h;qa(h)}b=H[d+32>>2];if(!b){break e}H[d+36>>2]=b;qa(b);break e}if(xg(d+32|0,j,i)){break f}}H[d+32>>2]=1140;a=H[d+40>>2];if(a){H[d+44>>2]=a;qa(a)}c=0;break d}c=0;if((h|0)>=1){while(1){L:{o=mc(b,d+60|0);g=b;b=H[d+60>>2];if((g|0)==(b|0)){break L}L[(c<<2)+f>>2]=o;c=c+1|0;if((h|0)!=(c|0)){continue}}break}g=I[d+75|0]}if(g<<24>>24>-1){break g}}qa(H[d+64>>2]);break g}c=0;if((h|0)>=1){while(1){M:{o=mc(b,d+60|0);g=b;b=H[d+60>>2];if((g|0)==(b|0)){break M}L[(c<<2)+f>>2]=o;c=c+1|0;if((h|0)!=(c|0)){continue}}break}g=I[d+75|0]}if(g<<24>>24>-1){break g}}qa(H[d+64>>2])}if(F[d+11|0]<=-1){qa(H[d>>2])}f=H[H[a+28>>2]+48>>2];e=ra(32);H[d+64>>2]=e;H[d+68>>2]=18;H[d+72>>2]=-2147483616;F[e+18|0]=0;b=I[1702]|I[1703]<<8;F[e+16|0]=b;F[e+17|0]=b>>>8;b=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);c=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);F[e+8|0]=c;F[e+9|0]=c>>>8;F[e+10|0]=c>>>16;F[e+11|0]=c>>>24;F[e+12|0]=b;F[e+13|0]=b>>>8;F[e+14|0]=b>>>16;F[e+15|0]=b>>>24;b=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);c=I[1686]|I[1687]<<8|(I[1688]<<16|I[1689]<<24);F[e|0]=c;F[e+1|0]=c>>>8;F[e+2|0]=c>>>16;F[e+3|0]=c>>>24;F[e+4|0]=b;F[e+5|0]=b>>>8;F[e+6|0]=b>>>16;F[e+7|0]=b>>>24;g=f+16|0;b=H[g>>2];N:{if(!b){break N}h=H[d+56>>2];c=g;while(1){k=(h|0)>H[b+16>>2];c=k?c:b;b=H[(k<<2)+b>>2];if(b){continue}break}if((c|0)==(g|0)|(h|0)>2]){break N}b=H[c+24>>2];if(!b){break N}c=c+20|0;while(1){g=I[b+27|0];h=g<<24>>24<0;g=h?H[b+20>>2]:g;k=g>>>0<18;O:{P:{l=k?g:18;Q:{if(l){m=b+16|0;h=h?H[m>>2]:m;m=Ca(e,h,l);R:{if(!m){if(g>>>0<=18){break R}break O}if((m|0)<=-1){break O}}g=Ca(h,e,l);if(!g){break Q}if((g|0)<=-1){break P}f=c;break N}if(g>>>0>18){break O}}if(k){break P}f=c;break N}b=b+4|0}b=H[b>>2];if(b){continue}break}}o=xf(f,d- -64|0);if(F[d+75|0]<=-1){qa(H[d+64>>2])}Fg(d+32|0,i,H[d+16>>2],F[j+24|0],o);b=H[d+16>>2];if(!b){break f}H[d+20>>2]=b;qa(b)}b=H[a+40>>2];S:{if((b|0)!=H[a+44>>2]){H[b>>2]=1140;c=H[d+36>>2];H[b+16>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+4>>2]=c;f=H[d+44>>2]-H[d+40>>2]|0;if(f){if((f|0)<=-1){break c}c=ra(f);H[b+8>>2]=c;H[b+12>>2]=c;H[b+16>>2]=c+(f>>2<<2);f=b;e=H[d+40>>2];g=H[d+44>>2]-e|0;if((g|0)>=1){c=sa(c,e,g)+g|0}H[f+12>>2]=c}L[b+20>>2]=L[d+52>>2];H[a+40>>2]=b+24;break S}e=0;T:{U:{V:{f=H[a+40>>2];g=H[a+36>>2];c=(f-g|0)/24|0;b=c+1|0;if(b>>>0<178956971){h=(H[a+44>>2]-g|0)/24|0;i=h<<1;h=h>>>0<89478485?b>>>0>i>>>0?b:i:178956970;if(h){if(h>>>0>=178956971){break V}e=ra(N(h,24))}b=N(c,24)+e|0;H[b>>2]=1140;c=H[d+36>>2];H[b+16>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+4>>2]=c;k=H[d+40>>2];c=H[d+44>>2]-k|0;if(c){if((c|0)<=-1){break c}i=ra(c);H[b+12>>2]=i;H[b+8>>2]=i;H[b+16>>2]=i+(c>>2<<2);t=b,u=sa(i,k,c)+c|0,H[t+12>>2]=u}c=N(h,24)+e|0;L[b+20>>2]=L[d+52>>2];e=b+24|0;if((f|0)==(g|0)){break U}while(1){b=b-24|0;H[b>>2]=1140;h=H[f-20>>2];H[b+16>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+4>>2]=h;h=f-16|0;H[b+8>>2]=H[h>>2];H[b+12>>2]=H[f-12>>2];i=f-8|0;H[b+16>>2]=H[i>>2];H[i>>2]=0;H[h>>2]=0;H[h+4>>2]=0;L[b+20>>2]=L[f-4>>2];f=f-24|0;if((g|0)!=(f|0)){continue}break}H[a+44>>2]=c;c=H[a+40>>2];H[a+40>>2]=e;f=H[a+36>>2];H[a+36>>2]=b;if((c|0)==(f|0)){break T}while(1){c=c-24|0;fa[H[H[c>>2]>>2]](c)|0;if((c|0)!=(f|0)){continue}break}break T}break c}wa(1752);X()}H[a+44>>2]=c;H[a+40>>2]=e;H[a+36>>2]=b}if(f){qa(f)}}xc(d+16|0,d+32|0,j,q);H[d+72>>2]=0;H[d+64>>2]=0;H[d+68>>2]=0;Kd(d+32|0,j,d- -64|0,H[d+16>>2]);b=H[d+64>>2];if(b){H[d+68>>2]=b;qa(b)}b=H[a+64>>2];W:{if(b>>>0>2]){c=H[d+16>>2];H[d+16>>2]=0;H[b>>2]=c;H[a+64>>2]=b+4;break W}j=0;X:{Y:{Z:{c=H[a+60>>2];f=H[a+64>>2]-c>>2;b=f+1|0;if(b>>>0<1073741824){c=H[a+68>>2]-c|0;g=c>>1;b=c>>2>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;if(b){if(b>>>0>=1073741824){break Z}j=ra(b<<2)}c=H[d+16>>2];H[d+16>>2]=0;f=(f<<2)+j|0;H[f>>2]=c;b=(b<<2)+j|0;c=f+4|0;e=H[a+60>>2];j=H[a+64>>2];if((e|0)==(j|0)){break Y}while(1){j=j-4|0;g=H[j>>2];H[j>>2]=0;f=f-4|0;H[f>>2]=g;if((e|0)!=(j|0)){continue}break}H[a+68>>2]=b;j=H[a+64>>2];H[a+64>>2]=c;e=H[a+60>>2];H[a+60>>2]=f;if((e|0)==(j|0)){break X}while(1){j=j-4|0;b=H[j>>2];H[j>>2]=0;if(b){Ma(b)}if((e|0)!=(j|0)){continue}break}break X}break c}wa(1752);X()}H[a+68>>2]=b;H[a+64>>2]=c;H[a+60>>2]=f}if(e){qa(e)}}b=H[d+16>>2];H[d+16>>2]=0;if(b){Ma(b)}H[d+32>>2]=1140;b=H[d+40>>2];if(!b){break e}H[d+44>>2]=b;qa(b)}c=1;p=p+1|0;b=H[a+4>>2];if(p>>>0>=H[a+8>>2]-b>>2>>>0){break d}g=H[a+28>>2];f=H[g+4>>2];continue}}da=d+80|0;return c|0}ua();X()}function hj(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=da-48|0;da=f;a:{if(I[b+288|0]){Se(f+32|0,H[b+8>>2]);d=H[f+32>>2];H[f+32>>2]=0;c=H[b+12>>2];H[b+12>>2]=d;if(!c){break a}sb(c);c=H[f+32>>2];H[f+32>>2]=0;if(!c){break a}sb(c);break a}Te(f+32|0,H[b+8>>2]);d=H[f+32>>2];H[f+32>>2]=0;c=H[b+12>>2];H[b+12>>2]=d;if(!c){break a}sb(c);c=H[f+32>>2];H[f+32>>2]=0;if(!c){break a}sb(c)}b:{c:{d:{c=H[b+12>>2];e:{if(!(H[c+40>>2]!=((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)?c:0)){b=ra(32);H[f+32>>2]=b;H[f+36>>2]=29;H[f+40>>2]=-2147483616;F[b+29|0]=0;c=I[11285]|I[11286]<<8|(I[11287]<<16|I[11288]<<24);d=I[11281]|I[11282]<<8|(I[11283]<<16|I[11284]<<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[11280]|I[11281]<<8|(I[11282]<<16|I[11283]<<24);d=I[11276]|I[11277]<<8|(I[11278]<<16|I[11279]<<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[11272]|I[11273]<<8|(I[11274]<<16|I[11275]<<24);d=I[11268]|I[11269]<<8|(I[11270]<<16|I[11271]<<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[11264]|I[11265]<<8|(I[11266]<<16|I[11267]<<24);d=I[11260]|I[11261]<<8|(I[11262]<<16|I[11263]<<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[a>>2]=-1;Ja(a+4|0,f+32|0);if(F[f+43|0]>-1){break e}qa(H[f+32>>2]);break e}H[b+264>>2]=b;Ga((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];Ga(((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[f+32|0]=0;o=b+28|0;Sa(o,(d-c|0)/12|0,f+32|0);c=H[b+12>>2];d=H[c+28>>2];c=H[c+24>>2];H[f+32>>2]=-1;Cb(b+52|0,d-c>>2,f+32|0);c=H[b+40>>2];H[b+44>>2]=c;d=H[b+12>>2];e=H[d+4>>2]-H[d>>2]>>2;e=e-((e>>>0)%3|0)|0;f:{if(e>>>0<=H[b+48>>2]-c>>2>>>0){break f}if(e>>>0>=1073741824){break b}h=e<<2;e=ra(h);H[b+44>>2]=e;H[b+40>>2]=e;H[b+48>>2]=e+h;if(!c){break f}qa(c);d=H[b+12>>2]}c=H[d+28>>2];d=H[d+24>>2];F[f+32|0]=0;Sa(b+84|0,c-d>>2,f+32|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];g:{if(!c){break g}e=c&3;if(c-1>>>0>=3){g=c&-4;while(1){c=d<<2;H[c+H[b+120>>2]>>2]=0;H[H[b+120>>2]+(c|4)>>2]=0;H[H[b+120>>2]+(c|8)>>2]=0;H[H[b+120>>2]+(c|12)>>2]=0;d=d+4|0;g=g-4|0;if(g){continue}break}}if(!e){break g}while(1){H[H[b+120>>2]+(d<<2)>>2]=0;d=d+1|0;e=e-1|0;if(e){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[f+32>>2]=-1;Cb(b+152|0,d-c>>2,f+32|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;e=(d>>2>>>0)/3|0;h:{if(e>>>0<=H[b+80>>2]-c>>2>>>0){break h}if((d|0)<=-1){break b}e=e<<2;d=ra(e);H[b+76>>2]=d;H[b+72>>2]=d;H[b+80>>2]=d+e;if(!c){break h}qa(c)}H[b- -64>>2]=0;if(!Yf(b)){b=ra(32);H[f+32>>2]=b;H[f+36>>2]=29;H[f+40>>2]=-2147483616;F[b+29|0]=0;c=I[11315]|I[11316]<<8|(I[11317]<<16|I[11318]<<24);d=I[11311]|I[11312]<<8|(I[11313]<<16|I[11314]<<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[11310]|I[11311]<<8|(I[11312]<<16|I[11313]<<24);d=I[11306]|I[11307]<<8|(I[11308]<<16|I[11309]<<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[11302]|I[11303]<<8|(I[11304]<<16|I[11305]<<24);d=I[11298]|I[11299]<<8|(I[11300]<<16|I[11301]<<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[11294]|I[11295]<<8|(I[11296]<<16|I[11297]<<24);d=I[11290]|I[11291]<<8|(I[11292]<<16|I[11293]<<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[a>>2]=-1;Ja(a+4|0,f+32|0);if(F[f+43|0]>-1){break e}qa(H[f+32>>2]);break e}c=b;i:{if(I[b+288|0]){break i}b=H[c+8>>2];e=H[b+12>>2]-H[b+8>>2]|0;h=e>>2;d=h-1|0;b=H[c+176>>2];k=H[c+172>>2];g=(b-k|0)/136|0;j:{if(d>>>0>g>>>0){Rf(c+172|0,d-g|0);break j}if(d>>>0>=g>>>0){break j}d=k+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)}ac(b-132|0);b=b-136|0;if((d|0)!=(b|0)){continue}break}}H[c+176>>2]=d}if((e|0)==4|(e|0)<1){break i}k=(h|0)>1?h:1;b=0;e=0;k:{while(1){i=H[H[H[c+8>>2]+8>>2]+(b<<2)>>2];if(H[i+56>>2]){m=N(e,136);d=m+H[c+172>>2]|0;H[d>>2]=b;h=H[d+104>>2];H[d+108>>2]=h;g=H[c+12>>2];g=H[g+4>>2]-H[g>>2]|0;n=g>>2;l:{if(n>>>0<=H[d+112>>2]-h>>2>>>0){break l}if((g|0)<=-1){break k}g=ra(g);H[d+104>>2]=g;H[d+108>>2]=g;H[d+112>>2]=g+(n<<2);if(!h){break l}qa(h)}d=m+H[c+172>>2]|0;H[d+128>>2]=0;Ue(d+4|0,H[c+8>>2],H[c+12>>2],i);e=e+1|0}b=b+1|0;if((k|0)!=(b|0)){continue}break}break i}wa(11712);X()}b=(H[c+176>>2]-H[c+172>>2]|0)/136|0;F[f+31|0]=b;d=c;e=H[H[c+4>>2]+44>>2];h=H[e+20>>2];if((h|0)<0?1:(h|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],f+31|0,f+32|0);b=I[f+31|0]}H[d+284>>2]=b&255;b=H[c+12>>2];d=H[b>>2];b=H[b+4>>2];k=c+200|0;Xf(k);H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;b=b-d|0;d=(b|0)<1;m:{if(!d){b=N(b>>>2|0,d?b:1);n=(b|0)>1?b:1;d=0;while(1){n:{b=(d>>>0)/3|0;m=b>>>5<<2;l=1<>2]>>2]&l){break n}if(rc(H[c+12>>2],b)){break n}H[f+24>>2]=0;b=Wf(c,b,f+24|0);Ea(k,b);h=H[f+24>>2];if(b){b=-1;e=-1;g=-1;o:{if((h|0)==-1){break o}i=H[H[c+12>>2]>>2];b=i+(h<<2)|0;j=h+1|0;j=(j>>>0)%3|0?j:h-2|0;if((j|0)!=-1){e=H[i+(j<<2)>>2]}b=H[b>>2];j=h+((h>>>0)%3|0?-1:2)|0;if((j|0)==-1){break o}g=H[i+(j<<2)>>2]}i=H[c+84>>2];j=i+(b>>>3&536870908)|0;H[j>>2]=H[j>>2]|1<>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2];j=H[c+104>>2];p:{if(b>>>0>>0){H[b>>2]=1;H[c+100>>2]=b+4;break p}e=H[c+96>>2];i=b-e|0;b=i>>2;g=b+1|0;if(g>>>0>=1073741824){break d}p=b<<2;j=j-e|0;b=j>>1;g=j>>2>>>0<536870911?b>>>0>>0?g:b:1073741823;b=0;q:{if(!g){break q}if(g>>>0>=1073741824){break b}b=ra(g<<2)}j=p+b|0;H[j>>2]=1;if((i|0)>=1){sa(b,e,i)}H[c+104>>2]=b+(g<<2);H[c+100>>2]=j+4;H[c+96>>2]=b;if(!e){break p}qa(e)}b=m+H[o>>2]|0;H[b>>2]=l|H[b>>2];e=-1;if((h|0)!=-1){b=h+1|0;e=(b>>>0)%3|0?b:h-2|0}b=H[f+36>>2];l=H[f+40>>2];r:{if(b>>>0>>0){H[b>>2]=e;H[f+36>>2]=b+4;break r}g=H[f+32>>2];m=b-g|0;j=m>>2;i=j+1|0;if(i>>>0>=1073741824){break c}l=l-g|0;b=l>>1;i=l>>2>>>0<536870911?b>>>0>>0?i:b:1073741823;b=0;s:{if(!i){break s}if(i>>>0>=1073741824){break b}b=ra(i<<2)}l=b+(j<<2)|0;H[l>>2]=e;if((m|0)>=1){sa(b,g,m)}H[f+40>>2]=b+(i<<2);H[f+36>>2]=l+4;H[f+32>>2]=b;if(!g){break r}qa(g)}if((h|0)==-1){break n}b=h+1|0;b=(b>>>0)%3|0?b:h-2|0;if((b|0)==-1){break n}b=H[H[H[c+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break n}e=(b>>>0)/3|0;if(H[H[o>>2]+(e>>>3&268435452)>>2]>>>e&1){break n}if(Vf(c,b)){break n}b=ra(48);H[f+8>>2]=b;H[f+12>>2]=32;H[f+16>>2]=-2147483600;F[b+32|0]=0;c=I[11385]|I[11386]<<8|(I[11387]<<16|I[11388]<<24);d=I[11381]|I[11382]<<8|(I[11383]<<16|I[11384]<<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[11377]|I[11378]<<8|(I[11379]<<16|I[11380]<<24);d=I[11373]|I[11374]<<8|(I[11375]<<16|I[11376]<<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[11369]|I[11370]<<8|(I[11371]<<16|I[11372]<<24);d=I[11365]|I[11366]<<8|(I[11367]<<16|I[11368]<<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[11361]|I[11362]<<8|(I[11363]<<16|I[11364]<<24);d=I[11357]|I[11358]<<8|(I[11359]<<16|I[11360]<<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[a>>2]=-1;Ja(a+4|0,f+8|0);if(F[f+19|0]>-1){break m}qa(H[f+8>>2]);break m}b=c;if((h|0)!=-1){e=h+1|0;e=(e>>>0)%3|0?e:h-2|0}else{e=-1}tc(b,e,1);if(Vf(c,H[f+24>>2])){break n}b=ra(48);H[f+8>>2]=b;H[f+12>>2]=32;H[f+16>>2]=-2147483600;F[b+32|0]=0;c=I[11385]|I[11386]<<8|(I[11387]<<16|I[11388]<<24);d=I[11381]|I[11382]<<8|(I[11383]<<16|I[11384]<<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[11377]|I[11378]<<8|(I[11379]<<16|I[11380]<<24);d=I[11373]|I[11374]<<8|(I[11375]<<16|I[11376]<<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[11369]|I[11370]<<8|(I[11371]<<16|I[11372]<<24);d=I[11365]|I[11366]<<8|(I[11367]<<16|I[11368]<<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[11361]|I[11362]<<8|(I[11363]<<16|I[11364]<<24);d=I[11357]|I[11358]<<8|(I[11359]<<16|I[11360]<<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[a>>2]=-1;Ja(a+4|0,f+8|0);if(F[f+19|0]>-1){break m}qa(H[f+8>>2]);break m}d=d+1|0;if((n|0)!=(d|0)){continue}break}}h=c+72|0;d=H[c+72>>2];e=H[c+76>>2];t:{if((d|0)==(e|0)){break t}b=e-4|0;if(d>>>0>=b>>>0){break t}while(1){g=H[d>>2];H[d>>2]=H[b>>2];H[b>>2]=g;b=b-4|0;d=d+4|0;if(b>>>0>d>>>0){continue}break}}Uf(h,e,H[f+32>>2],H[f+36>>2]);u:{if(H[c+172>>2]==H[c+176>>2]){break u}b=H[c+8>>2];d=H[b+100>>2];b=H[b+96>>2];F[f+8|0]=0;Sa(o,(d-b|0)/12|0,f+8|0);d=H[c+72>>2];b=H[c+76>>2];if((d|0)==(b|0)){break u}while(1){Tf(c,H[d>>2]);d=d+4|0;if((b|0)!=(d|0)){continue}break}}i=k+32|0;b=H[k+64>>2];b=H[(fa[H[H[b>>2]+40>>2]](b)|0)+56>>2];gd(i,N((H[b+100>>2]-H[b+96>>2]|0)/12|0,3),0,1);v:{e=H[k+68>>2];b=H[k+72>>2]-e|0;if((b|0)<1){break v}b=b>>>2|0;while(1){d=b-1|0;h=H[k+52>>2];w:{if((h|0)<0?1:(h|0)<=0?K[k+48>>2]<1:0){break w}o=H[(d<<2)+e>>2];if(!(171>>>o&1)){break w}m=H[(o<<2)+12064>>2];e=H[k+44>>2];g=H[e+4>>2];h=0;while(1){n=g>>>3|0;l=n+H[e>>2]|0;j=I[l|0];g=g&7;q=l,r=il(-2,g)&j,F[q|0]=r;n=n+H[e>>2]|0;F[n|0]=I[n|0]|(o>>>h&1)<>2]+1|0;H[e+4>>2]=g;h=h+1|0;if((m|0)!=(h|0)){continue}break}}if((b|0)<2){break v}e=H[k+68>>2];b=d;continue}}fd(i);b=c+232|0;Aa(k,b);e=H[c+280>>2];x:{if(!e){break x}d=1;if(H[c+284>>2]<1){break x}Aa(e,b);if(H[c+284>>2]<2){break x}while(1){Aa(H[c+280>>2]+(d<<5)|0,b);d=d+1|0;if((d|0)>2]){continue}break}}Ga(H[c+272>>2]-H[c+268>>2]>>2,H[H[c+4>>2]+44>>2]);Ga(H[c+168>>2],H[H[c+4>>2]+44>>2]);if(!Sf(c)){b=ec(f+8|0,11390);H[a>>2]=-1;Ja(a+4|0,b);if(F[b+11|0]>-1){break m}qa(H[b>>2]);break m}b=H[H[c+4>>2]+44>>2];d=H[b+20>>2];if((d|0)<0?1:(d|0)<=0?!H[b+16>>2]: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}a=H[f+32>>2];if(!a){break e}H[f+36>>2]=a;qa(a)}da=f+48|0;return}ua();X()}ua();X()}wa(11712);X()}function _j(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];v=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;d=e;f=d;if(d){La(g+144|0,e);i=H[g+156>>2];d=H[g+160>>2]}else{d=0}d=d-i>>2;a:{if(f>>>0<=d>>>0){if(d>>>0<=e>>>0){break a}H[g+160>>2]=(e<<2)+i;break a}La(g+144|12,e-d|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}La(g+168|0,e-d|0)}f=H[g+180>>2];d=H[g+184>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}H[g+184>>2]=f+(e<<2);break c}La(g+180|0,e-d|0)}H[g+136>>2]=0;H[g+128>>2]=0;H[g+132>>2]=0;d:{if(e){if(e>>>0>=1073741824){break d}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}Q=a+136|0;f=H[a+136>>2];d=H[a+140>>2]-f>>2;e:{if(d>>>0>>0){La(Q,e-d|0);break e}if(d>>>0<=e>>>0){break e}H[a+140>>2]=f+(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;d=g- -64|0;H[d>>2]=0;H[d+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;if(e){d=e<<2;s=ra(d);w=ta(s,0,d)+d|0}else{w=0}S=a+8|0;d=H[a+40>>2];h=H[d>>2];f:{d=H[d+4>>2]-h|0;if((d|0)<5){break f}C=d>>>2|0;l=C-1|0;if(l>>>0>2>>>0){J=a+96|0;aa=g+125|0;ba=g+36|0;ca=g+24|0;V=e<<2;K=w-s|0;W=K&-4;A=K>>2;L=e&-2;M=e&1;fa=e&-4;ga=e&3;D=e-1|0;while(1){y=l;l=H[(l<<2)+h>>2];d=(l>>>0)%3|0;f=0;g:{if((l|0)==-1){break g}k=l+(d?-1:2)|0;p=k>>>5|0;z=1<>2];j=1;d=0;h=l;while(1){h:{if(H[x+(h>>>3&536870908)>>2]>>>h&1){break h}f=H[H[H[v+64>>2]+12>>2]+(h<<2)>>2];if((f|0)==-1){break h}m=H[$>>2];i=H[v+28>>2];n=H[m+(H[i+(f<<2)>>2]<<2)>>2];if((n|0)>=(y|0)){break h}o=f+1|0;o=H[m+(H[i+(((o>>>0)%3|0?o:f-2|0)<<2)>>2]<<2)>>2];if((o|0)>=(y|0)){break h}i=H[m+(H[i+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((i|0)>=(y|0)){break h}i:{if((e|0)<1){break i}f=H[(g+144|0)+N(d,12)>>2];m=N(e,i);o=N(e,o);q=N(e,n);i=0;n=L;if(D){while(1){H[f+(i<<2)>>2]=(H[(i+m<<2)+b>>2]+H[(i+o<<2)+b>>2]|0)-H[(i+q<<2)+b>>2];t=i|1;H[f+(t<<2)>>2]=(H[(m+t<<2)+b>>2]+H[(o+t<<2)+b>>2]|0)-H[(q+t<<2)+b>>2];i=i+2|0;n=n-2|0;if(n){continue}break}}if(!M){break i}H[f+(i<<2)>>2]=(H[(i+m<<2)+b>>2]+H[(i+o<<2)+b>>2]|0)-H[(i+q<<2)+b>>2]}f=4;d=d+1|0;if((d|0)==4){break g}}j:{if(j&1){i=-1;f=h+1|0;f=(f>>>0)%3|0?f:h-2|0;if((f|0)==-1|H[H[v>>2]+(f>>>3&536870908)>>2]>>>f&1){break j}f=H[H[H[v+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break j}h=f+1|0;i=(h>>>0)%3|0?h:f-2|0;break j}i=-1;f=((h>>>0)%3|0?-1:2)+h|0;if((f|0)==-1|H[H[v>>2]+(f>>>3&536870908)>>2]>>>f&1){break j}f=H[H[H[v+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break j}if((f>>>0)%3|0){i=f-1|0;break j}i=f+2|0}if((i|0)==(l|0)){f=d;break g}f=(i|0)==-1&j;h=f?-1:i;j=f^j;if(!(!f|(k|0)==-1)){if(z&H[H[v>>2]+(p<<2)>>2]){f=d;break g}f=H[H[H[v+64>>2]+12>>2]+(k<<2)>>2];if((f|0)==-1){f=d;break g}j=0;h=(f>>>0)%3|0?f-1|0:f+2|0}f=d;if((h|0)!=-1){continue}break}}j=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;Y=N(e,y)<<2;z=Y+b|0;i=(N(C-2|0,e)<<2)+b|0;k=H[a+136>>2];l=0;x=(e|0)<1;if(!x){while(1){h=l<<2;d=H[h+i>>2]-H[h+z>>2]|0;H[h+s>>2]=d;H[h+k>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;h=d;d=d>>31;j=(h+d^d)+j|0;l=l+1|0;if((l|0)!=(e|0)){continue}break}}Ib(g+200|0,J,k,e);d=Hb(g+200|0);k=ea;o=d;d=H[g+216>>2];l=(((H[g+212>>2]-d|0)+1|0)/64|0)+d<<3;d=d<<3;m=d;h=l+d|0;d=(l>>31)+(d>>31)|0;d=h>>>0>>0?d+1|0:d;m=h;l=o+h|0;h=d+k|0;h=l>>>0>>0?h+1|0:h;d=h;O=(f|0)>0;k:{if(!O){E=f-1|0;break k}E=f-1|0;n=E<<3;h=n+(g+48|0)|0;o=h;m=f+H[h>>2]|0;h=H[h+4>>2];k=m;H[o>>2]=k;h=f>>>0>k>>>0?h+1|0:h;H[o+4>>2]=h;u=U(Jb(k,H[n+(g+80|0)>>2])*(+(k>>>0)+ +(h|0)*4294967296));l:{if(P(u)<0x8000000000000000){k=P(u)>=1?u>0?~~R(T(u*2.3283064365386963e-10),4294967295)>>>0:~~U((u-+(~~u>>>0>>>0))*2.3283064365386963e-10)>>>0:0;h=~~u>>>0;break l}k=-2147483648;h=0}h=h+l|0;l=h}H[g+20>>2]=0;F[g+16|0]=0;H[g+8>>2]=l;H[g+12>>2]=j;eb(ca,i,i+V|0);Gc(ba,s,w);d=E<<3;o=d+(g+80|0)|0;m:{Z=(f|0)<1;if(Z){break m}q=(g+124|0)+f|0;t=q-2|0;m=q-1|0;ha=!f|(m|0)==(g+124|0);_=d+(g+48|0)|0;G=1;n=1;while(1){if(!Z){ta(g+124|0,1,f)}ta(g+124|0,0,G);n:{o:while(1){if(!x){ta(H[g+128>>2],0,V)}d=0;h=0;if((f|0)>0){while(1){if(!I[(g+124|0)+h|0]){p:{if(x){break p}l=H[g+128>>2];p=H[(g+144|0)+N(h,12)>>2];i=0;k=fa;if(D>>>0>2){while(1){j=i<<2;r=j+l|0;H[r>>2]=H[r>>2]+H[j+p>>2];r=j|4;B=r+l|0;H[B>>2]=H[B>>2]+H[p+r>>2];r=j|8;B=r+l|0;H[B>>2]=H[B>>2]+H[p+r>>2];j=j|12;r=j+l|0;H[r>>2]=H[r>>2]+H[j+p>>2];i=i+4|0;k=k-4|0;if(k){continue}break}}j=ga;if(!j){break p}while(1){k=i<<2;r=k+l|0;H[r>>2]=H[r>>2]+H[k+p>>2];i=i+1|0;j=j-1|0;if(j){continue}break}}d=1<>2];i=0;l=L;if(D){while(1){j=i<<2;k=j+h|0;H[k>>2]=H[k>>2]/(n|0);j=h+(j|4)|0;H[j>>2]=H[j>>2]/(n|0);i=i+2|0;l=l-2|0;if(l){continue}break}}if(M){h=h+(i<<2)|0;H[h>>2]=H[h>>2]/(n|0)}if((e|0)>0){break r}}k=H[a+136>>2];j=0;break q}p=H[g+128>>2];k=H[a+136>>2];j=0;l=0;while(1){i=l<<2;h=H[i+p>>2]-H[i+z>>2]|0;H[i+s>>2]=h;H[i+k>>2]=(h|0)>-1?h<<1:(h^-1)<<1|1;i=h;h=h>>31;j=(i+h^h)+j|0;l=l+1|0;if((l|0)!=(e|0)){continue}break}}Ib(g+200|0,J,k,e);h=Hb(g+200|0);p=h;h=H[g+216>>2];k=(((H[g+212>>2]-h|0)+1|0)/64|0)+h<<3;h=h<<3;i=h;l=k+i|0;h=p+l|0;i=h;if(O){h=H[_+4>>2];l=H[_>>2];u=U(Jb(l,H[o>>2]+n|0)*(+(l>>>0)+ +(h|0)*4294967296));s:{if(P(u)<0x8000000000000000){h=~~u>>>0;break s}h=0}i=h+i|0}h=H[g+8>>2];if(!(H[g+12>>2]<=(j|0)|(i|0)>(h|0)?(h|0)<=(i|0):0)){H[g+20>>2]=n;F[g+16|0]=d;H[g+8>>2]=i;H[g+12>>2]=j;l=H[g+132>>2];j=H[g+128>>2];p=l-j|0;k=p>>2;h=H[g+32>>2];d=H[g+24>>2];t:{if(k>>>0<=h-d>>2>>>0){i=H[g+28>>2]-d|0;h=i+j|0;p=i>>2;r=p>>>0>>0?h:l;i=r-j|0;if(i){Ha(d,j,i)}if(k>>>0>p>>>0){i=H[g+28>>2];if((l|0)==(r|0)){break t}while(1){H[i>>2]=H[h>>2];i=i+4|0;h=h+4|0;if((l|0)!=(h|0)){continue}break}break t}i=d+i|0;break t}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((p|0)<=-1){break d}d=h>>1;d=h>>2>>>0<536870911?d>>>0>>0?k:d:1073741823;if(d>>>0>=1073741824){break d}d=d<<2;i=ra(d);H[g+24>>2]=i;H[g+28>>2]=i;H[g+32>>2]=d+i;if((j|0)==(l|0)){break t}d=p&-4;i=sa(i,j,d)+d|0}H[g+28>>2]=i;h=H[g+44>>2];d=H[g+36>>2];u:{if(h-d>>2>>>0>=A>>>0){j=H[g+40>>2]-d|0;h=j+s|0;l=j>>2;k=l>>>0>>0?h:w;j=k-s|0;if(j){Ha(d,s,j)}if(l>>>0>>0){i=H[g+40>>2];if((k|0)==(w|0)){break u}while(1){H[i>>2]=H[h>>2];i=i+4|0;h=h+4|0;if((w|0)!=(h|0)){continue}break}break u}i=d+j|0;break u}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)<=-1){break d}d=h>>1;d=h>>2>>>0<536870911?d>>>0>>0?A:d:1073741823;if(d>>>0>=1073741824){break d}d=d<<2;i=ra(d);H[g+36>>2]=i;H[g+44>>2]=d+i;if((s|0)==(w|0)){break u}i=sa(i,s,W)+W|0}H[g+40>>2]=i}if(ha){break n}l=-1;j=I[m|0];i=j;while(1){h=i&255;d=l-1|0;p=d+q|0;i=I[p|0];if(h>>>0>i>>>0){k=m;h=q;if((j&255)>>>0<=i>>>0){while(1){d=k;k=d-1|0;j=h-2|0;h=d;if(I[j|0]<=i>>>0){continue}break}j=1}h=l+q|0;F[p|0]=j;F[k|0]=i;i=m;if((l|0)==-1){continue o}while(1){d=I[h|0];F[h|0]=I[i|0];F[i|0]=d;i=i-1|0;h=h+1|0;if(i>>>0>h>>>0){continue}break}continue o}l=d;if((p|0)!=(g+124|0)){continue}break}break}if(m>>>0<=g+124>>>0){break n}d=I[g+124|0];F[g+124|0]=j;F[m|0]=d;i=t;h=aa;if(i>>>0<=h>>>0){break n}while(1){d=I[h|0];F[h|0]=I[i|0];F[i|0]=d;i=i-1|0;h=h+1|0;if(i>>>0>h>>>0){continue}break}}if((f|0)==(G|0)){break m}n=n+1|0;G=G+1|0;continue}}if(O){h=o;d=H[g+20>>2];l=d;j=d+H[h>>2]|0;d=H[h+4>>2]+(d>>31)|0;H[h>>2]=j;H[h+4>>2]=j>>>0>>0?d+1|0:d}d=H[Q>>2];v:{if(x){break v}h=H[g+36>>2];i=0;j=L;if(D){while(1){k=i<<2;l=H[k+h>>2];H[d+k>>2]=(l|0)>-1?l<<1:(l^-1)<<1|1;k=k|4;l=H[k+h>>2];H[d+k>>2]=(l|0)>-1?l<<1:(l^-1)<<1|1;i=i+2|0;j=j-2|0;if(j){continue}break}}if(!M){break v}j=i<<2;h=H[j+h>>2];H[d+j>>2]=(h|0)>-1?h<<1:(h^-1)<<1|1}yc(g+200|0,J,d,e);h=0;w:{if((f|0)<=0){break w}d=N(E,12)+a|0;l=d;x:{while(1){y:{k=H[l+52>>2];j=k<<5;i=H[d+48>>2];z:{if(!(I[g+16|0]>>>h&1)){A:{if((i|0)!=(j|0)){break A}if((i+1|0)<=-1){break y}j=2147483647;if(i>>>0<=1073741822){j=i+32&-32;k=k<<6;j=j>>>0>k>>>0?j:k}if(i>>>0>=j>>>0){break A}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((j|0)<=-1){break d}m=(j-1>>>5|0)+1|0;j=ra(m<<2);H[g+208>>2]=m;H[g+200>>2]=j;k=H[d+44>>2];H[g+204>>2]=i;B:{C:{D:{if(i>>>0>=33){H[j+(i-1>>>3&536870908)>>2]=0;break D}H[j>>2]=0;if(!i){break C}}q=i>>>5|0;n=q<<2;o=Ha(j,k,n);q=i-(q<<5)|0;if((q|0)<1){break C}j=n+o|0;i=j;t=H[j>>2];j=-1>>>32-q|0;H[i>>2]=t&(j^-1)|j&H[k+n>>2];H[d+44>>2]=o;H[l+52>>2]=m;break B}H[d+44>>2]=j;H[l+52>>2]=m;if(!k){break A}}qa(k);i=H[d+48>>2]}H[d+48>>2]=i+1;j=H[d+44>>2]+(i>>>3&536870908)|0;H[j>>2]=H[j>>2]|1<>>0<=1073741822){j=i+32&-32;k=k<<6;j=j>>>0>k>>>0?j:k}if(i>>>0>=j>>>0){break E}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((j|0)<=-1){break x}m=(j-1>>>5|0)+1|0;j=ra(m<<2);H[g+208>>2]=m;H[g+200>>2]=j;k=H[d+44>>2];H[g+204>>2]=i;F:{G:{H:{if(i>>>0>=33){H[j+(i-1>>>3&536870908)>>2]=0;break H}H[j>>2]=0;if(!i){break G}}q=i>>>5|0;n=q<<2;o=Ha(j,k,n);q=i-(q<<5)|0;if((q|0)<1){break G}j=n+o|0;i=j;t=H[j>>2];j=-1>>>32-q|0;H[i>>2]=t&(j^-1)|j&H[k+n>>2];H[d+44>>2]=o;H[l+52>>2]=m;break F}H[d+44>>2]=j;H[l+52>>2]=m;if(!k){break E}}qa(k);i=H[d+48>>2]}H[d+48>>2]=i+1;j=H[d+44>>2]+(i>>>3&536870908)|0;k=H[j>>2];ia=j,ja=il(-2,i)&k,H[ia>>2]=ja}h=h+1|0;if((h|0)!=(f|0)){continue}break w}break}break d}break d}d=H[g+24>>2];f=H[d>>2];d=H[d+4>>2];h=H[z+4>>2];H[g+232>>2]=H[z>>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+Y|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 f}C=y;d=H[a+40>>2];h=H[d>>2];l=y-1|0;if(l>>>0>2]-h>>2>>>0){continue}break}}xa();X()}a=H[g+144>>2];if((e|0)>=1){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(s){qa(s)}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 ge(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;m=da-16|0;da=m;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{if(a>>>0<=244){f=H[4826];i=a>>>0<11?16:a+11&-8;c=i>>>3|0;b=f>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;e=H[b+19352>>2];a=e+8|0;c=H[e+8>>2];b=b+19344|0;m:{if((c|0)==(b|0)){n=19304,o=il(-2,d)&f,H[n>>2]=o;break m}H[c+12>>2]=b;H[b+8>>2]=c}b=d<<3;H[e+4>>2]=b|3;b=b+e|0;H[b+4>>2]=H[b+4>>2]|1;break a}k=H[4828];if(k>>>0>=i>>>0){break l}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+19352>>2];b=H[g+8>>2];a=a+19344|0;n:{if((b|0)==(a|0)){f=il(-2,c)&f;H[4826]=f;break n}H[b+12>>2]=a;H[a+8>>2]=b}a=g+8|0;H[g+4>>2]=i|3;d=g+i|0;b=c<<3;e=b-i|0;H[d+4>>2]=e|1;H[b+g>>2]=e;if(k){b=k>>>3|0;c=(b<<3)+19344|0;g=H[4831];b=1<>2]}H[c+8>>2]=g;H[b+12>>2]=g;H[g+12>>2]=c;H[g+8>>2]=b}H[4831]=d;H[4828]=e;break a}h=H[4827];if(!h){break l}b=(h&0-h)-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)+19608>>2];d=(H[b+4>>2]&-8)-i|0;c=b;while(1){p:{a=H[c+16>>2];if(!a){a=H[c+20>>2];if(!a){break p}}c=(H[a+4>>2]&-8)-i|0;e=c>>>0>>0;d=e?c:d;b=e?a:b;c=a;continue}break}j=b+i|0;if(j>>>0<=b>>>0){break k}l=H[b+24>>2];e=H[b+12>>2];if((e|0)!=(b|0)){a=H[b+8>>2];H[a+12>>2]=e;H[e+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;e=a;c=a+20|0;a=H[c>>2];if(a){continue}c=e+16|0;a=H[e+16>>2];if(a){continue}break}H[g>>2]=0;break b}i=-1;if(a>>>0>4294967231){break l}a=a+11|0;i=a&-8;j=H[4827];if(!j){break l}f=31;d=0-i|0;if(i>>>0<=16777215){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;f=(a<<1|i>>>a+21&1)+28|0}c=H[(f<<2)+19608>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=i<<((f|0)==31?0:25-(f>>>1|0)|0);while(1){t:{g=(H[c+4>>2]&-8)-i|0;if(g>>>0>=d>>>0){break t}e=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|e)){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)+19608>>2]}if(!a){break q}}while(1){b=(H[a+4>>2]&-8)-i|0;c=b>>>0>>0;d=c?b:d;e=c?a:e;b=H[a+16>>2];if(b){a=b}else{a=H[a+20>>2]}if(a){continue}break}}if(!e|H[4828]-i>>>0<=d>>>0){break l}h=e+i|0;if(h>>>0<=e>>>0){break k}f=H[e+24>>2];b=H[e+12>>2];if((e|0)!=(b|0)){a=H[e+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break c}c=e+20|0;a=H[c>>2];if(!a){a=H[e+16>>2];if(!a){break i}c=e+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[4828];if(c>>>0>=i>>>0){d=H[4831];b=c-i|0;u:{if(b>>>0>=16){H[4828]=b;a=d+i|0;H[4831]=a;H[a+4>>2]=b|1;H[c+d>>2]=b;H[d+4>>2]=i|3;break u}H[4831]=0;H[4828]=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}h=H[4829];if(h>>>0>i>>>0){b=h-i|0;H[4829]=b;c=H[4832];a=c+i|0;H[4832]=a;H[a+4>>2]=b|1;H[c+4>>2]=i|3;a=c+8|0;break a}a=0;j=i+47|0;b=j;if(H[4944]){c=H[4946]}else{H[4947]=-1;H[4948]=-1;H[4945]=4096;H[4946]=4096;H[4944]=m+12&-16^1431655768;H[4949]=0;H[4937]=0;c=4096}g=b+c|0;e=0-c|0;c=g&e;if(c>>>0<=i>>>0){break a}d=H[4936];if(d){b=H[4934];f=b+c|0;if(d>>>0>>0|b>>>0>=f>>>0){break a}}if(I[19748]&4){break f}v:{w:{d=H[4832];if(d){a=19752;while(1){b=H[a>>2];if(d>>>0>2]>>>0?b>>>0<=d>>>0:0){break w}a=H[a+8>>2];if(a){continue}break}}b=Lb(0);if((b|0)==-1){break g}f=c;d=H[4945];a=d-1|0;if(a&b){f=(c-b|0)+(a+b&0-d)|0}if(f>>>0<=i>>>0|f>>>0>2147483646){break g}d=H[4936];if(d){a=H[4934];e=a+f|0;if(d>>>0>>0|a>>>0>=e>>>0){break g}}a=Lb(f);if((b|0)!=(a|0)){break v}break e}f=e&g-h;if(f>>>0>2147483646){break g}b=Lb(f);if((b|0)==(H[a>>2]+H[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|i+48>>>0<=f>>>0)){b=H[4946];b=b+(j-f|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((Lb(b)|0)!=-1){f=b+f|0;b=a;break e}Lb(0-f|0);break g}b=a;if((a|0)!=-1){break e}break g}X()}e=0;break b}b=0;break c}if((b|0)!=-1){break e}}H[4937]=H[4937]|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}f=a-b|0;if(f>>>0<=i+40>>>0){break d}}a=H[4934]+f|0;H[4934]=a;if(a>>>0>K[4935]){H[4935]=a}x:{y:{z:{g=H[4832];if(g){a=19752;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[4830];if(!(a>>>0<=b>>>0?a:0)){H[4830]=b}a=0;H[4939]=f;H[4938]=b;H[4834]=-1;H[4835]=H[4944];H[4941]=0;while(1){d=a<<3;c=d+19344|0;H[d+19352>>2]=c;H[d+19356>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=f-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[4829]=c;a=a+b|0;H[4832]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[4833]=H[4948];break x}if(H[a+12>>2]&8|b>>>0<=g>>>0|d>>>0>g>>>0){break y}H[a+4>>2]=c+f;a=g+8&7?-8-g&7:0;c=a+g|0;H[4832]=c;b=H[4829]+f|0;a=b-a|0;H[4829]=a;H[c+4>>2]=a|1;H[(b+g|0)+4>>2]=40;H[4833]=H[4948];break x}if(K[4830]>b>>>0){H[4830]=b}c=b+f|0;a=19752;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=19752;while(1){c=H[a>>2];if(c>>>0<=g>>>0){e=c+H[a+4>>2]|0;if(e>>>0>g>>>0){break D}}a=H[a+8>>2];continue}}H[a>>2]=b;H[a+4>>2]=H[a+4>>2]+f;j=(b+8&7?-8-b&7:0)+b|0;H[j+4>>2]=i|3;f=c+(c+8&7?-8-c&7:0)|0;h=i+j|0;c=f-h|0;if((f|0)==(g|0)){H[4832]=h;a=H[4829]+c|0;H[4829]=a;H[h+4>>2]=a|1;break B}if(H[4831]==(f|0)){H[4831]=h;a=H[4828]+c|0;H[4828]=a;H[h+4>>2]=a|1;H[a+h>>2]=a;break B}a=H[f+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=H[f+8>>2];a=a>>>3|0;b=H[f+12>>2];if((b|0)==(d|0)){n=19304,o=H[4826]&il(-2,a),H[n>>2]=o;break G}H[d+12>>2]=b;H[b+8>>2]=d;break G}i=H[f+24>>2];b=H[f+12>>2];H:{if((f|0)!=(b|0)){a=H[f+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break H}I:{a=f+20|0;d=H[a>>2];if(d){break I}a=f+16|0;d=H[a>>2];if(d){break I}b=0;break H}while(1){e=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[e>>2]=0}if(!i){break G}d=H[f+28>>2];a=(d<<2)+19608|0;J:{if(H[a>>2]==(f|0)){H[a>>2]=b;if(b){break J}n=19308,o=H[4827]&il(-2,d),H[n>>2]=o;break G}H[i+(H[i+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break G}}H[b+24>>2]=i;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 G}H[b+20>>2]=a;H[a+24>>2]=b}f=f+g|0;c=c+g|0}H[f+4>>2]=H[f+4>>2]&-2;H[h+4>>2]=c|1;H[c+h>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+19344|0;c=H[4826];a=1<>2]}H[b+8>>2]=h;H[a+12>>2]=h;H[h+12>>2]=b;H[h+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;e=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|e))|0;a=(a<<1|c>>>a+21&1)+28|0}H[h+28>>2]=a;H[h+16>>2]=0;H[h+20>>2]=0;e=(a<<2)+19608|0;d=H[4827];b=1<>2]=h;H[h+24>>2]=e;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[e>>2];while(1){d=b;if((H[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;e=d+(b&4)|0;b=H[e+16>>2];if(b){continue}break}H[e+16>>2]=h;H[h+24>>2]=d}H[h+12>>2]=h;H[h+8>>2]=h;break B}d=f-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[4829]=c;a=a+b|0;H[4832]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[4833]=H[4948];a=(e+(e-39&7?39-e&7:0)|0)-47|0;c=a>>>0>>0?g:a;H[c+4>>2]=27;a=H[4941];H[c+16>>2]=H[4940];H[c+20>>2]=a;a=H[4939];H[c+8>>2]=H[4938];H[c+12>>2]=a;H[4940]=c+8;H[4939]=f;H[4938]=b;H[4941]=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;e=c-g|0;H[g+4>>2]=e|1;H[c>>2]=e;if(e>>>0<=255){a=e>>>3|0;b=(a<<3)+19344|0;c=H[4826];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(e>>>0<=16777215){a=e>>>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|e>>>a+21&1)+28|0}H[g+28>>2]=a;d=(a<<2)+19608|0;c=H[4827];b=1<>2]=g;H[g+24>>2]=d;break N}a=e<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[d>>2];while(1){c=b;if((e|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]=h;H[d+8>>2]=h;H[h+24>>2]=0;H[h+12>>2]=d;H[h+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[4829];if(a>>>0<=i>>>0){break d}b=a-i|0;H[4829]=b;c=H[4832];a=c+i|0;H[4832]=a;H[a+4>>2]=b|1;H[c+4>>2]=i|3;a=c+8|0;break a}H[4808]=48;a=0;break a}O:{if(!f){break O}c=H[e+28>>2];a=(c<<2)+19608|0;P:{if(H[a>>2]==(e|0)){H[a>>2]=b;if(b){break P}j=il(-2,c)&j;H[4827]=j;break O}H[f+(H[f+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break O}}H[b+24>>2]=f;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 O}H[b+20>>2]=a;H[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+i|0;H[e+4>>2]=a|3;a=a+e|0;H[a+4>>2]=H[a+4>>2]|1;break Q}H[e+4>>2]=i|3;H[h+4>>2]=d|1;H[d+h>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+19344|0;c=H[4826];a=1<>2]}H[b+8>>2]=h;H[a+12>>2]=h;H[h+12>>2]=b;H[h+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[h+28>>2]=a;H[h+16>>2]=0;H[h+20>>2]=0;c=(a<<2)+19608|0;S:{b=1<>2]=h;H[h+24>>2]=c;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);i=H[c>>2];while(1){b=i;if((H[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=b+(c&4)|0;i=H[c+16>>2];if(i){continue}break}H[c+16>>2]=h;H[h+24>>2]=b}H[h+12>>2]=h;H[h+8>>2]=h;break Q}a=H[b+8>>2];H[a+12>>2]=h;H[b+8>>2]=h;H[h+24>>2]=0;H[h+12>>2]=b;H[h+8>>2]=a}a=e+8|0;break a}U:{if(!l){break U}c=H[b+28>>2];a=(c<<2)+19608|0;V:{if(H[a>>2]==(b|0)){H[a>>2]=e;if(e){break V}n=19308,o=il(-2,c)&h,H[n>>2]=o;break U}H[(H[l+16>>2]==(b|0)?16:20)+l>>2]=e;if(!e){break U}}H[e+24>>2]=l;a=H[b+16>>2];if(a){H[e+16>>2]=a;H[a+24>>2]=e}a=H[b+20>>2];if(!a){break U}H[e+20>>2]=a;H[a+24>>2]=e}W:{if(d>>>0<=15){a=d+i|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]=i|3;H[j+4>>2]=d|1;H[d+j>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+19344|0;e=H[4831];a=1<>2]}H[c+8>>2]=e;H[a+12>>2]=e;H[e+12>>2]=c;H[e+8>>2]=a}H[4831]=j;H[4828]=d}a=b+8|0}da=m+16|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,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];O=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;d=e;f=d;if(d){La(g+144|0,e);h=H[g+156>>2];d=H[g+160>>2]}else{d=0}d=d-h>>2;a:{if(f>>>0<=d>>>0){if(d>>>0<=e>>>0){break a}H[g+160>>2]=(e<<2)+h;break a}La(g+144|12,e-d|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}La(g+168|0,e-d|0)}f=H[g+180>>2];d=H[g+184>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}H[g+184>>2]=f+(e<<2);break c}La(g+180|0,e-d|0)}H[g+136>>2]=0;H[g+128>>2]=0;H[g+132>>2]=0;d:{if(e){if(e>>>0>=1073741824){break d}d=e<<2;f=ra(d);H[g+128>>2]=f;k=d+f|0;H[g+136>>2]=k;ta(f,0,d);H[g+132>>2]=k}Q=a+136|0;f=H[a+136>>2];d=H[a+140>>2]-f>>2;e:{if(d>>>0>>0){La(Q,e-d|0);break e}if(d>>>0<=e>>>0){break e}H[a+140>>2]=f+(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;d=g- -64|0;H[d>>2]=0;H[d+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;if(e){d=e<<2;s=ra(d);v=ta(s,0,d)+d|0}else{v=0}S=a+8|0;f=H[a+40>>2];d=H[f>>2];f:{k=H[f+4>>2]-d|0;if((k|0)<5){break f}B=k>>>2|0;f=B-1|0;if(f>>>0>2>>>0){G=a+96|0;aa=g+125|0;ba=g+36|0;ca=g+24|0;V=e<<2;J=v-s|0;W=J&-4;z=J>>2;K=e&-2;L=e&1;fa=e&-4;ga=e&3;C=e-1|0;while(1){y=f;i=H[(f<<2)+d>>2];d=(i>>>0)%3|0;k=0;g:{if((i|0)==-1){break g}l=H[O+12>>2];w=i+(d?-1:2)|0;x=l+(w<<2)|0;o=1;d=0;f=i;while(1){k=H[l+(f<<2)>>2];h:{if((k|0)==-1){break h}j=H[$>>2];h=H[O>>2];q=H[j+(H[h+(k<<2)>>2]<<2)>>2];n=k+1|0;n=(n>>>0)%3|0?n:k-2|0;p=j-4|0;i:{if((n|0)==-1){break i}p=j+(H[h+(n<<2)>>2]<<2)|0}k=k+((k>>>0)%3|0?-1:2)|0;n=j-4|0;j:{if((k|0)==-1){break j}n=j+(H[h+(k<<2)>>2]<<2)|0}if((q|0)>=(y|0)){break h}k=H[p>>2];if((k|0)>=(y|0)){break h}h=H[n>>2];if((h|0)>=(y|0)){break h}j=H[(g+144|0)+N(d,12)>>2];k:{if((e|0)<1){break k}p=N(e,h);n=N(e,k);q=N(e,q);h=0;k=K;if(C){while(1){H[j+(h<<2)>>2]=(H[(h+p<<2)+b>>2]+H[(h+n<<2)+b>>2]|0)-H[(h+q<<2)+b>>2];m=h|1;H[j+(m<<2)>>2]=(H[(m+p<<2)+b>>2]+H[(m+n<<2)+b>>2]|0)-H[(m+q<<2)+b>>2];h=h+2|0;k=k-2|0;if(k){continue}break}}if(!L){break k}H[j+(h<<2)>>2]=(H[(h+p<<2)+b>>2]+H[(h+n<<2)+b>>2]|0)-H[(h+q<<2)+b>>2]}k=4;d=d+1|0;if((d|0)==4){break g}}l:{if(o&1){h=f+1|0;f=(h>>>0)%3|0?h:f-2|0;k=-1;if((f|0)==-1){break l}f=H[l+(f<<2)>>2];k=-1;if((f|0)==-1){break l}k=f+1|0;k=(k>>>0)%3|0?k:f-2|0;break l}f=((f>>>0)%3|0?-1:2)+f|0;k=-1;if((f|0)==-1){break l}f=H[l+(f<<2)>>2];k=-1;if((f|0)==-1){break l}k=f-1|0;if((f>>>0)%3|0){break l}k=f+2|0}if((k|0)==(i|0)){k=d;break g}f=k;k=(k|0)==-1&o;f=k?-1:f;o=k^o;if(!(!k|(w|0)==-1)){f=H[x>>2];if((f|0)==-1){k=d;break g}o=0;f=(f>>>0)%3|0?f-1|0:f+2|0}k=d;if((f|0)!=-1){continue}break}}i=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;Y=N(e,y)<<2;w=Y+b|0;l=(N(B-2|0,e)<<2)+b|0;h=H[a+136>>2];f=0;x=(e|0)<1;if(!x){while(1){j=f<<2;d=H[j+l>>2]-H[j+w>>2]|0;H[j+s>>2]=d;H[h+j>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;j=d;d=d>>31;i=(j+d^d)+i|0;f=f+1|0;if((f|0)!=(e|0)){continue}break}}Ib(g+200|0,G,h,e);d=Hb(g+200|0);j=ea;n=d;d=H[g+216>>2];h=(((H[g+212>>2]-d|0)+1|0)/64|0)+d<<3;d=d<<3;p=d;f=h+d|0;d=(h>>31)+(d>>31)|0;d=f>>>0

>>0?d+1|0:d;h=f;f=n+f|0;d=d+j|0;d=f>>>0>>0?d+1|0:d;j=f;M=(k|0)>0;m:{if(!M){D=k-1|0;break m}D=k-1|0;n=D<<3;f=n+(g+48|0)|0;q=f;h=k;p=h+H[f>>2]|0;f=H[f+4>>2];f=h>>>0>p>>>0?f+1|0:f;h=p;H[q>>2]=h;H[q+4>>2]=f;t=U(Jb(h,H[n+(g+80|0)>>2])*(+(h>>>0)+ +(f|0)*4294967296));n:{if(P(t)<0x8000000000000000){h=P(t)>=1?t>0?~~R(T(t*2.3283064365386963e-10),4294967295)>>>0:~~U((t-+(~~t>>>0>>>0))*2.3283064365386963e-10)>>>0:0;f=~~t>>>0;break n}h=-2147483648;f=0}f=f+j|0;j=f}H[g+20>>2]=0;F[g+16|0]=0;H[g+8>>2]=j;H[g+12>>2]=i;eb(ca,l,l+V|0);Gc(ba,s,v);d=D<<3;p=d+(g+80|0)|0;o:{Z=(k|0)<1;if(Z){break o}n=(g+124|0)+k|0;q=n-2|0;l=n-1|0;ha=!k|(l|0)==(g+124|0);_=d+(g+48|0)|0;E=1;o=1;while(1){if(!Z){ta(g+124|0,1,k)}ta(g+124|0,0,E);p:{q:while(1){if(!x){ta(H[g+128>>2],0,V)}u=0;f=0;if((k|0)>0){while(1){if(!I[(g+124|0)+f|0]){r:{if(x){break r}d=H[g+128>>2];m=H[(g+144|0)+N(f,12)>>2];h=0;j=fa;if(C>>>0>2){while(1){i=h<<2;r=i+d|0;H[r>>2]=H[r>>2]+H[i+m>>2];r=i|4;A=r+d|0;H[A>>2]=H[A>>2]+H[m+r>>2];r=i|8;A=r+d|0;H[A>>2]=H[A>>2]+H[m+r>>2];i=i|12;r=i+d|0;H[r>>2]=H[r>>2]+H[i+m>>2];h=h+4|0;j=j-4|0;if(j){continue}break}}i=ga;if(!i){break r}while(1){j=h<<2;r=j+d|0;H[r>>2]=H[r>>2]+H[j+m>>2];h=h+1|0;i=i-1|0;if(i){continue}break}}u=1<>2];h=0;f=K;if(C){while(1){i=h<<2;j=i+d|0;H[j>>2]=H[j>>2]/(o|0);i=d+(i|4)|0;H[i>>2]=H[i>>2]/(o|0);h=h+2|0;f=f-2|0;if(f){continue}break}}if(L){d=d+(h<<2)|0;H[d>>2]=H[d>>2]/(o|0)}if((e|0)>0){break t}}j=H[a+136>>2];i=0;break s}m=H[g+128>>2];j=H[a+136>>2];i=0;f=0;while(1){h=f<<2;d=H[h+m>>2]-H[h+w>>2]|0;H[h+s>>2]=d;H[h+j>>2]=(d|0)>-1?d<<1:(d^-1)<<1|1;h=d;d=d>>31;i=(h+d^d)+i|0;f=f+1|0;if((f|0)!=(e|0)){continue}break}}Ib(g+200|0,G,j,e);d=Hb(g+200|0);h=d;d=H[g+216>>2];j=(((H[g+212>>2]-d|0)+1|0)/64|0)+d<<3;d=d<<3;f=j+d|0;d=h+f|0;h=d;if(M){d=H[_+4>>2];f=H[_>>2];t=U(Jb(f,H[p>>2]+o|0)*(+(f>>>0)+ +(d|0)*4294967296));u:{if(P(t)<0x8000000000000000){d=~~t>>>0;break u}d=0}h=d+h|0}d=H[g+8>>2];if(!((d|0)<(h|0)|H[g+12>>2]<=(i|0)?(d|0)<=(h|0):0)){H[g+20>>2]=o;F[g+16|0]=u;H[g+8>>2]=h;H[g+12>>2]=i;j=H[g+132>>2];i=H[g+128>>2];m=j-i|0;h=m>>2;d=H[g+32>>2];f=H[g+24>>2];v:{if(h>>>0<=d-f>>2>>>0){m=H[g+28>>2]-f|0;d=m+i|0;u=m>>2;r=u>>>0>>0?d:j;m=r-i|0;if(m){Ha(f,i,m)}if(h>>>0>u>>>0){h=H[g+28>>2];if((j|0)==(r|0)){break v}while(1){H[h>>2]=H[d>>2];h=h+4|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}break v}h=f+m|0;break v}if(f){H[g+28>>2]=f;qa(f);H[g+32>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;d=0}if((m|0)<=-1){break d}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?h:f:1073741823;if(d>>>0>=1073741824){break d}d=d<<2;h=ra(d);H[g+24>>2]=h;H[g+28>>2]=h;H[g+32>>2]=d+h;if((i|0)==(j|0)){break v}d=m&-4;h=sa(h,i,d)+d|0}H[g+28>>2]=h;d=H[g+44>>2];f=H[g+36>>2];w:{if(d-f>>2>>>0>=z>>>0){i=H[g+40>>2]-f|0;d=i+s|0;j=i>>2;m=j>>>0>>0?d:v;i=m-s|0;if(i){Ha(f,s,i)}if(j>>>0>>0){h=H[g+40>>2];if((m|0)==(v|0)){break w}while(1){H[h>>2]=H[d>>2];h=h+4|0;d=d+4|0;if((v|0)!=(d|0)){continue}break}break w}h=f+i|0;break w}if(f){H[g+40>>2]=f;qa(f);H[g+44>>2]=0;H[g+36>>2]=0;H[g+40>>2]=0;d=0}if((J|0)<=-1){break d}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?z:f:1073741823;if(d>>>0>=1073741824){break d}d=d<<2;h=ra(d);H[g+36>>2]=h;H[g+44>>2]=d+h;if((s|0)==(v|0)){break w}h=sa(h,s,W)+W|0}H[g+40>>2]=h}if(ha){break p}f=-1;i=I[l|0];h=i;while(1){j=h&255;d=f-1|0;m=d+n|0;h=I[m|0];if(j>>>0>h>>>0){j=l;d=n;if((i&255)>>>0<=h>>>0){while(1){i=j;j=i-1|0;u=d-2|0;d=i;if(I[u|0]<=h>>>0){continue}break}i=1}d=f+n|0;F[m|0]=i;F[j|0]=h;h=l;if((f|0)==-1){continue q}while(1){f=I[d|0];F[d|0]=I[h|0];F[h|0]=f;d=d+1|0;h=h-1|0;if(d>>>0>>0){continue}break}continue q}f=d;if((m|0)!=(g+124|0)){continue}break}break}if(l>>>0<=g+124>>>0){break p}d=I[g+124|0];F[g+124|0]=i;F[l|0]=d;d=aa;h=q;if(d>>>0>=h>>>0){break p}while(1){f=I[d|0];F[d|0]=I[h|0];F[h|0]=f;d=d+1|0;h=h-1|0;if(d>>>0>>0){continue}break}}if((k|0)==(E|0)){break o}o=o+1|0;E=E+1|0;continue}}if(M){f=p;d=H[g+20>>2];j=d;i=d+H[f>>2]|0;d=H[f+4>>2]+(d>>31)|0;H[f>>2]=i;H[f+4>>2]=i>>>0>>0?d+1|0:d}d=H[Q>>2];x:{if(x){break x}f=H[g+36>>2];h=0;i=K;if(C){while(1){l=h<<2;j=H[l+f>>2];H[d+l>>2]=(j|0)>-1?j<<1:(j^-1)<<1|1;l=l|4;j=H[l+f>>2];H[d+l>>2]=(j|0)>-1?j<<1:(j^-1)<<1|1;h=h+2|0;i=i-2|0;if(i){continue}break}}if(!L){break x}i=h<<2;f=H[i+f>>2];H[d+i>>2]=(f|0)>-1?f<<1:(f^-1)<<1|1}yc(g+200|0,G,d,e);d=0;y:{if((k|0)<=0){break y}f=N(D,12)+a|0;j=f;z:{while(1){A:{l=H[j+52>>2];i=l<<5;h=H[f+48>>2];B:{if(!(I[g+16|0]>>>d&1)){C:{if((h|0)!=(i|0)){break C}if((h+1|0)<=-1){break A}i=2147483647;if(h>>>0<=1073741822){i=h+32&-32;l=l<<6;i=i>>>0>l>>>0?i:l}if(h>>>0>=i>>>0){break C}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((i|0)<=-1){break d}p=(i-1>>>5|0)+1|0;i=ra(p<<2);H[g+208>>2]=p;H[g+200>>2]=i;l=H[f+44>>2];H[g+204>>2]=h;D:{E:{F:{if(h>>>0>=33){H[i+(h-1>>>3&536870908)>>2]=0;break F}H[i>>2]=0;if(!h){break E}}o=h>>>5|0;n=o<<2;q=Ha(i,l,n);o=h-(o<<5)|0;if((o|0)<1){break E}i=n+q|0;h=i;m=H[i>>2];i=-1>>>32-o|0;H[h>>2]=m&(i^-1)|i&H[l+n>>2];H[f+44>>2]=q;H[j+52>>2]=p;break D}H[f+44>>2]=i;H[j+52>>2]=p;if(!l){break C}}qa(l);h=H[f+48>>2]}H[f+48>>2]=h+1;i=H[f+44>>2]+(h>>>3&536870908)|0;H[i>>2]=H[i>>2]|1<>>0<=1073741822){i=h+32&-32;l=l<<6;i=i>>>0>l>>>0?i:l}if(h>>>0>=i>>>0){break G}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((i|0)<=-1){break z}p=(i-1>>>5|0)+1|0;i=ra(p<<2);H[g+208>>2]=p;H[g+200>>2]=i;l=H[f+44>>2];H[g+204>>2]=h;H:{I:{J:{if(h>>>0>=33){H[i+(h-1>>>3&536870908)>>2]=0;break J}H[i>>2]=0;if(!h){break I}}o=h>>>5|0;n=o<<2;q=Ha(i,l,n);o=h-(o<<5)|0;if((o|0)<1){break I}i=n+q|0;h=i;m=H[i>>2];i=-1>>>32-o|0;H[h>>2]=m&(i^-1)|i&H[l+n>>2];H[f+44>>2]=q;H[j+52>>2]=p;break H}H[f+44>>2]=i;H[j+52>>2]=p;if(!l){break G}}qa(l);h=H[f+48>>2]}H[f+48>>2]=h+1;i=H[f+44>>2]+(h>>>3&536870908)|0;l=H[i>>2];ia=i,ja=il(-2,h)&l,H[ia>>2]=ja}d=d+1|0;if((k|0)!=(d|0)){continue}break y}break}break d}break d}d=H[g+24>>2];f=H[d>>2];d=H[d+4>>2];k=H[w+4>>2];H[g+232>>2]=H[w>>2];H[g+236>>2]=k;H[g+224>>2]=f;H[g+228>>2]=d;ab(g+200|0,S,g+232|0,g+224|0);d=c+Y|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((B|0)<3){break f}B=y;k=H[a+40>>2];d=H[k>>2];f=y-1|0;if(f>>>0>2]-d>>2>>>0){continue}break}}xa();X()}a=H[g+144>>2];if((e|0)>=1){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(s){qa(s)}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 Ue(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;i=H[a+84>>2];H[a+84>>2]=0;if(i){qa(i)}H[a+76>>2]=0;H[a+80>>2]=0;i=H[a+72>>2];H[a+72>>2]=0;if(i){qa(i)}i=H[c>>2];g=H[c+4>>2];F[e+15|0]=0;Sa(a,g-i>>2,e+15|0);i=H[c+28>>2];g=H[c+24>>2];F[e+14|0]=0;Sa(a+12|0,i-g>>2,e+14|0);Cb(a+28|0,H[c+4>>2]-H[c>>2]>>2,16636);g=H[c+28>>2]-H[c+24>>2]|0;f=g>>2;i=H[a+52>>2];c:{if(f>>>0<=H[a+60>>2]-i>>2>>>0){break c}if((g|0)<=-1){break a}j=H[a+56>>2];g=ra(g);h=g+(f<<2)|0;f=j-i|0;j=f+g|0;if((f|0)>=1){sa(g,i,f)}H[a+60>>2]=h;H[a+56>>2]=j;H[a+52>>2]=g;if(!i){break c}qa(i)}g=H[c+28>>2]-H[c+24>>2]|0;f=g>>2;i=H[a+40>>2];d:{if(f>>>0<=H[a+48>>2]-i>>2>>>0){break d}if((g|0)<=-1){break a}j=H[a+44>>2];g=ra(g);h=g+(f<<2)|0;f=j-i|0;j=f+g|0;if((f|0)>=1){sa(g,i,f)}H[a+48>>2]=h;H[a+44>>2]=j;H[a+40>>2]=g;if(!i){break d}qa(i)}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)}i=H[a+64>>2];if(H[i+4>>2]!=H[i>>2]){c=0;while(1){m=(c>>>0)/3|0;e=rc(i,m);i=H[a+64>>2];e:{if(e){break e}j=H[H[i+12>>2]+(c<<2)>>2];if((j|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){g=H[H[i>>2]+(f<<2)>>2]}f=H[a+12>>2];j=f+(g>>>3&536870908)|0;H[j>>2]=H[j>>2]|1<>>0)%3|0?-1:2)+c|0;if((g|0)!=-1){e=H[H[i>>2]+(g<<2)>>2]}g=f+(e>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>>0>j>>>0){break e}e=-1;l=I[d+84|0];g=-1;k=c+1|0;n=c-2|0;h=(k>>>0)%3|0?k:n;if((h|0)>=0){g=(h>>>0)/3|0;g=H[(H[b+96>>2]+N(g,12)|0)+(h-N(g,3)<<2)>>2]}f=j+((j>>>0)%3|0?-1:2)|0;if((f|0)>=0){e=H[(H[b+96>>2]+N((f>>>0)/3|0,12)|0)+((f>>>0)%3<<2)>>2]}if(!l){o=H[d+68>>2];e=H[o+(e<<2)>>2];g=H[(g<<2)+o>>2]}if((e|0)==(g|0)){e=-1;g=-1;if((h|0)!=-1){g=h+1|0;g=(g>>>0)%3|0?g:h-2|0}f:{if((f|0)==-1){break f}if((f>>>0)%3|0){e=f-1|0;break f}e=f+2|0}h=-1;f=-1;if((g|0)>=0){f=(g>>>0)/3|0;f=H[(H[b+96>>2]+N(f,12)|0)+(g-N(f,3)<<2)>>2]}if((e|0)>=0){g=(e>>>0)/3|0;h=H[(H[b+96>>2]+N(g,12)|0)+(e-N(g,3)<<2)>>2]}if(!l){e=H[d+68>>2];h=H[e+(h<<2)>>2];f=H[e+(f<<2)>>2]}if((f|0)==(h|0)){break e}}F[a+24|0]=0;e=H[a>>2];g=e+(c>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?k:n;if((f|0)!=-1){g=H[H[i>>2]+(f<<2)>>2]}f=H[a+12>>2];h=f+(g>>>3&536870908)|0;H[h>>2]=H[h>>2]|1<>2]+(g<<2)>>2]}g=f+(e>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>>0)%3|0?h:j-2|0;if((h|0)!=-1){e=H[H[i>>2]+(h<<2)>>2]}h=f+(e>>>3&536870908)|0;H[h>>2]=H[h>>2]|1<>>0)%3|0?-1:2)|0;if((e|0)!=-1){g=H[H[i>>2]+(e<<2)>>2]}e=f+(g>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0>2]-H[i>>2]>>2>>>0){continue}break}}if(!(!b|!d)){j=b;g=0;c=a;H[a+56>>2]=H[a+52>>2];H[a+44>>2]=H[a+40>>2];g:{h:{i:{a=H[a+64>>2];e=H[a+24>>2];if((e|0)!=H[a+28>>2]){a=0;while(1){b=a;i=H[(g<<2)+e>>2];j:{if((i|0)==-1){break j}if((i|0)<0){e=-1}else{a=(i>>>0)/3|0;e=H[(H[j+96>>2]+N(a,12)|0)+(i-N(a,3)<<2)>>2]}e=I[d+84|0]?e:H[H[d+68>>2]+(e<<2)>>2];a=H[c+56>>2];l=H[c+60>>2];k:{if(a>>>0>>0){H[a>>2]=e;H[c+56>>2]=a+4;break k}f=H[c+52>>2];k=a-f|0;m=k>>2;h=m+1|0;if(h>>>0>=1073741824){break i}l=l-f|0;n=l>>1;h=l>>2>>>0<536870911?h>>>0>n>>>0?h:n:1073741823;a=0;l:{if(!h){break l}if(h>>>0>=1073741824){break a}a=ra(h<<2)}l=a+(m<<2)|0;H[l>>2]=e;if((k|0)>=1){sa(a,f,k)}H[c+60>>2]=a+(h<<2);H[c+56>>2]=l+4;H[c+52>>2]=a;if(!f){break k}qa(f)}m:{if(!(H[H[c+12>>2]+(g>>>3&536870908)>>2]>>>g&1)){break m}a=i+1|0;a=(a>>>0)%3|0?a:i-2|0;if((a|0)==-1|H[H[c>>2]+(a>>>3&536870908)>>2]>>>a&1){break m}a=H[H[H[c+64>>2]+12>>2]+(a<<2)>>2];if((a|0)==-1){break m}e=a+1|0;e=(e>>>0)%3|0?e:a-2|0;if((e|0)==-1){break m}while(1){i=e;a=e+1|0;a=(a>>>0)%3|0?a:e-2|0;if((a|0)==-1|H[H[c>>2]+(a>>>3&536870908)>>2]>>>a&1){break m}a=H[H[H[c+64>>2]+12>>2]+(a<<2)>>2];if((a|0)==-1){break m}e=a+1|0;e=(e>>>0)%3|0?e:a-2|0;if((e|0)!=-1){continue}break}}H[H[c+28>>2]+(i<<2)>>2]=b;a=H[c+44>>2];n:{if((a|0)!=H[c+48>>2]){H[a>>2]=i;H[c+44>>2]=a+4;break n}e=H[c+40>>2];f=a-e|0;k=f>>2;h=k+1|0;if(h>>>0>=1073741824){break h}l=f>>1;h=k>>>0<536870911?h>>>0>l>>>0?h:l:1073741823;a=0;o:{if(!h){break o}if(h>>>0>=1073741824){break a}a=ra(h<<2)}k=a+(k<<2)|0;H[k>>2]=i;if((f|0)>=1){sa(a,e,f)}H[c+48>>2]=a+(h<<2);H[c+44>>2]=k+4;H[c+40>>2]=a;if(!e){break n}qa(e)}a=b+1|0;e=((i>>>0)%3|0?-1:2)+i|0;if((e|0)==-1){break j}e=H[H[H[c+64>>2]+12>>2]+(e<<2)>>2];if((e|0)==-1){break j}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1|(e|0)==(i|0)){break j}while(1){f=e+1|0;f=(f>>>0)%3|0?f:e-2|0;if(H[H[c>>2]+(f>>>3&536870908)>>2]>>>f&1){b=(e|0)<0?-1:H[(H[j+96>>2]+N((e>>>0)/3|0,12)|0)+((e>>>0)%3<<2)>>2];b=I[d+84|0]?b:H[H[d+68>>2]+(b<<2)>>2];f=H[c+56>>2];m=H[c+60>>2];p:{if(f>>>0>>0){H[f>>2]=b;H[c+56>>2]=f+4;break p}h=H[c+52>>2];l=f-h|0;n=l>>2;k=n+1|0;if(k>>>0>=1073741824){break i}m=m-h|0;o=m>>1;k=m>>2>>>0<536870911?k>>>0>o>>>0?k:o:1073741823;f=0;q:{if(!k){break q}if(k>>>0>=1073741824){break a}f=ra(k<<2)}m=f+(n<<2)|0;H[m>>2]=b;if((l|0)>=1){sa(f,h,l)}H[c+60>>2]=f+(k<<2);H[c+56>>2]=m+4;H[c+52>>2]=f;if(!h){break p}qa(h)}f=a+1|0;b=H[c+44>>2];r:{if((b|0)!=H[c+48>>2]){H[b>>2]=e;H[c+44>>2]=b+4;break r}h=H[c+40>>2];k=b-h|0;m=k>>2;l=m+1|0;if(l>>>0>=1073741824){break h}n=k>>1;l=m>>>0<536870911?l>>>0>n>>>0?l:n:1073741823;b=0;s:{if(!l){break s}if(l>>>0>=1073741824){break a}b=ra(l<<2)}m=b+(m<<2)|0;H[m>>2]=e;if((k|0)>=1){sa(b,h,k)}H[c+48>>2]=b+(l<<2);H[c+44>>2]=m+4;H[c+40>>2]=b;if(!h){break r}qa(h)}b=a;a=f}H[H[c+28>>2]+(e<<2)>>2]=b;e=((e>>>0)%3|0?-1:2)+e|0;if((e|0)==-1){break j}e=H[H[H[c+64>>2]+12>>2]+(e<<2)>>2];if((e|0)==-1){break j}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1){break j}if((e|0)!=(i|0)){continue}break}}b=H[c+64>>2];e=H[b+24>>2];g=g+1|0;if(g>>>0>2]-e>>2>>>0){continue}break}}break g}ua();X()}ua();X()}return}g=0;c=a;H[a+56>>2]=H[a+52>>2];H[a+44>>2]=H[a+40>>2];t:{u:{v:{a=H[a+64>>2];e=H[a+24>>2];if((e|0)!=H[a+28>>2]){a=0;while(1){b=a;d=H[(g<<2)+e>>2];w:{if((d|0)==-1){break w}a=H[c+56>>2];x:{if((a|0)!=H[c+60>>2]){H[a>>2]=b;H[c+56>>2]=a+4;break x}e=H[c+52>>2];i=a-e|0;j=i>>2;f=j+1|0;if(f>>>0>=1073741824){break v}h=i>>1;f=j>>>0<536870911?f>>>0>h>>>0?f:h:1073741823;a=0;y:{if(!f){break y}if(f>>>0>=1073741824){break a}a=ra(f<<2)}j=a+(j<<2)|0;H[j>>2]=b;if((i|0)>=1){sa(a,e,i)}H[c+60>>2]=a+(f<<2);H[c+56>>2]=j+4;H[c+52>>2]=a;if(!e){break x}qa(e)}z:{if(!(H[H[c+12>>2]+(g>>>3&536870908)>>2]>>>g&1)){break z}a=d+1|0;a=(a>>>0)%3|0?a:d-2|0;if((a|0)==-1|H[H[c>>2]+(a>>>3&536870908)>>2]>>>a&1){break z}a=H[H[H[c+64>>2]+12>>2]+(a<<2)>>2];if((a|0)==-1){break z}e=a+1|0;e=(e>>>0)%3|0?e:a-2|0;if((e|0)==-1){break z}while(1){d=e;a=e+1|0;a=(a>>>0)%3|0?a:e-2|0;if((a|0)==-1|H[H[c>>2]+(a>>>3&536870908)>>2]>>>a&1){break z}a=H[H[H[c+64>>2]+12>>2]+(a<<2)>>2];if((a|0)==-1){break z}e=a+1|0;e=(e>>>0)%3|0?e:a-2|0;if((e|0)!=-1){continue}break}}H[H[c+28>>2]+(d<<2)>>2]=b;a=H[c+44>>2];A:{if((a|0)!=H[c+48>>2]){H[a>>2]=d;H[c+44>>2]=a+4;break A}e=H[c+40>>2];i=a-e|0;j=i>>2;f=j+1|0;if(f>>>0>=1073741824){break u}h=i>>1;f=j>>>0<536870911?f>>>0>h>>>0?f:h:1073741823;a=0;B:{if(!f){break B}if(f>>>0>=1073741824){break a}a=ra(f<<2)}j=a+(j<<2)|0;H[j>>2]=d;if((i|0)>=1){sa(a,e,i)}H[c+48>>2]=a+(f<<2);H[c+44>>2]=j+4;H[c+40>>2]=a;if(!e){break A}qa(e)}a=b+1|0;e=((d>>>0)%3|0?-1:2)+d|0;if((e|0)==-1){break w}e=H[H[H[c+64>>2]+12>>2]+(e<<2)>>2];if((e|0)==-1){break w}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1|(d|0)==(e|0)){break w}while(1){i=e+1|0;i=(i>>>0)%3|0?i:e-2|0;if(H[H[c>>2]+(i>>>3&536870908)>>2]>>>i&1){b=H[c+56>>2];C:{if((b|0)!=H[c+60>>2]){H[b>>2]=a;H[c+56>>2]=b+4;break C}i=H[c+52>>2];f=b-i|0;h=f>>2;j=h+1|0;if(j>>>0>=1073741824){break v}k=f>>1;j=h>>>0<536870911?j>>>0>k>>>0?j:k:1073741823;b=0;D:{if(!j){break D}if(j>>>0>=1073741824){break a}b=ra(j<<2)}h=b+(h<<2)|0;H[h>>2]=a;if((f|0)>=1){sa(b,i,f)}H[c+60>>2]=b+(j<<2);H[c+56>>2]=h+4;H[c+52>>2]=b;if(!i){break C}qa(i)}i=a+1|0;b=H[c+44>>2];E:{if((b|0)!=H[c+48>>2]){H[b>>2]=e;H[c+44>>2]=b+4;break E}f=H[c+40>>2];j=b-f|0;k=j>>2;h=k+1|0;if(h>>>0>=1073741824){break u}l=j>>1;h=k>>>0<536870911?h>>>0>l>>>0?h:l:1073741823;b=0;F:{if(!h){break F}if(h>>>0>=1073741824){break a}b=ra(h<<2)}k=b+(k<<2)|0;H[k>>2]=e;if((j|0)>=1){sa(b,f,j)}H[c+48>>2]=b+(h<<2);H[c+44>>2]=k+4;H[c+40>>2]=b;if(!f){break E}qa(f)}b=a;a=i}H[H[c+28>>2]+(e<<2)>>2]=b;e=((e>>>0)%3|0?-1:2)+e|0;if((e|0)==-1){break w}e=H[H[H[c+64>>2]+12>>2]+(e<<2)>>2];if((e|0)==-1){break w}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1){break w}if((d|0)!=(e|0)){continue}break}}b=H[c+64>>2];e=H[b+24>>2];g=g+1|0;if(g>>>0>2]-e>>2>>>0){continue}break}}break t}ua();X()}ua();X()}}return}wa(16640);X()}function we(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;m=da-192|0;da=m;x=h;E=i&65535;r=d;n=e&65535;D=(e^i)&-2147483648;l=i>>>16&32767;a:{t=e>>>16&32767;b:{c:{if(l-1>>>0<32766?t-1>>>0<=32765:0){break c}G=e&2147483647;k=G;j=d;if(!(!j&(k|0)==2147418112?!(b|c):k>>>0<2147418112)){K=d;D=e|32768;break b}G=i&2147483647;e=G;d=h;if(!(!d&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){K=h;D=i|32768;b=f;c=g;break b}if(!(b|j|(k^2147418112|c))){if(!(d|f|(e^2147418112|g))){b=0;c=0;D=2147450880;break b}D=D|2147418112;b=0;c=0;break b}if(!(d|f|(e^2147418112|g))){b=0;c=0;break b}if(!(b|j|(c|k))){break a}if(!(d|f|(e|g))){D=D|2147418112;b=0;c=0;break b}if((k|0)==65535|k>>>0<65535){i=b;d=!(n|r);h=d<<6;j=Q(d?b:r)+32|0;b=Q(d?c:n);b=h+((b|0)==32?j:b)|0;Za(m+176|0,i,c,r,n,b-15|0);J=16-b|0;r=H[m+184>>2];n=H[m+188>>2];c=H[m+180>>2];b=H[m+176>>2]}if(e>>>0>65535){break c}d=!(x|E);e=d<<6;h=Q(d?f:x)+32|0;d=Q(d?g:E);d=e+((d|0)==32?h:d)|0;Za(m+160|0,f,g,x,E,d-15|0);J=(d+J|0)-16|0;x=H[m+168>>2];E=H[m+172>>2];f=H[m+160>>2];g=H[m+164>>2]}e=E|65536;G=e;L=x;d=x;j=e<<15|d>>>17;d=d<<15|g>>>17;h=-102865788-d|0;e=j;i=1963258675-(j+(d>>>0>4192101508)|0)|0;wb(m+144|0,d,j,h,i);j=H[m+152>>2];wb(m+128|0,0-j|0,0-(H[m+156>>2]+((j|0)!=0)|0)|0,h,i);h=H[m+136>>2];i=h<<1|H[m+132>>2]>>>31;h=H[m+140>>2]<<1|h>>>31;wb(m+112|0,i,h,d,e);j=h;h=H[m+120>>2];wb(m+96|0,i,j,0-h|0,0-(H[m+124>>2]+((h|0)!=0)|0)|0);h=H[m+104>>2];i=h<<1|H[m+100>>2]>>>31;h=H[m+108>>2]<<1|h>>>31;wb(m+80|0,i,h,d,e);j=h;h=H[m+88>>2];wb(m- -64|0,i,j,0-h|0,0-(H[m+92>>2]+((h|0)!=0)|0)|0);h=H[m+72>>2];i=h<<1|H[m+68>>2]>>>31;h=H[m+76>>2]<<1|h>>>31;wb(m+48|0,i,h,d,e);j=h;h=H[m+56>>2];wb(m+32|0,i,j,0-h|0,0-(H[m+60>>2]+((h|0)!=0)|0)|0);h=H[m+40>>2];i=h<<1|H[m+36>>2]>>>31;h=H[m+44>>2]<<1|h>>>31;wb(m+16|0,i,h,d,e);j=h;h=H[m+24>>2];wb(m,i,j,0-h|0,0-(H[m+28>>2]+((h|0)!=0)|0)|0);J=(t-l|0)+J|0;h=H[m+8>>2];j=H[m+12>>2]<<1|h>>>31;k=h<<1|H[m+4>>2]>>>31;h=k-1|0;k=j-(k>>>0<1)|0;j=0;C=j;i=h;p=e;t=0;q=el(h,j,e,t);e=ea;v=e;w=k;l=0;h=d;j=el(k,l,d,0);d=j+q|0;k=ea+e|0;e=d;k=d>>>0>>0?k+1|0:k;d=k;k=0;j=(d|0)==(v|0)&e>>>0>>0|d>>>0>>0;q=el(w,l,p,t);t=q+d|0;j=ea+(j|k)|0;y=t;v=q>>>0>t>>>0?j+1|0:j;h=el(i,C,h,o);d=0+h|0;j=ea+e|0;j=d>>>0>>0?j+1|0:j;z=(e|0)==(j|0)&d>>>0>>0|e>>>0>j>>>0;p=d;h=j;d=g;A=(d&131071)<<15|f>>>17;o=el(i,C,A,0);d=ea;u=d;j=f;s=j<<15&-32768;j=el(w,l,s,0);e=j+o|0;k=ea+d|0;k=e>>>0>>0?k+1|0:k;d=k;B=el(i,C,s,B);s=0+B|0;j=e;k=j+ea|0;k=s>>>0>>0?k+1|0:k;k=(j|0)==(k|0)&s>>>0>>0|j>>>0>k>>>0;j=(d|0)==(u|0)&j>>>0>>0|d>>>0>>0;e=d;d=el(w,l,A,F)+d|0;j=j+ea|0;j=d>>>0>>0?j+1|0:j;e=d;d=k+d|0;j=d>>>0>>0?j+1|0:j;e=d;d=d+p|0;j=j+h|0;j=d>>>0>>0?j+1|0:j;t=d;q=j;e=(j|0)==(h|0)&d>>>0

>>0|h>>>0>j>>>0;d=e+z|0;k=0;k=d>>>0>>0?1:k;e=d;d=d+y|0;j=k+v|0;j=d>>>0>>0?j+1|0:j;e=(t|0)!=0|(q|0)!=0;d=e+d|0;j=d>>>0>>0?j+1|0:j;h=d;o=0-d|0;s=0;v=el(o,s,i,C);d=ea;u=d;e=v;p=d;s=el(w,l,o,s);d=ea;y=d;z=0-(((h|0)!=0)+j|0)|0;o=0;k=el(i,C,z,o);h=k+s|0;j=ea+d|0;j=h>>>0>>0?j+1|0:j;d=j;j=h+p|0;A=0;e=A+e|0;p=e;k=e;j=k>>>0>>0?j+1|0:j;e=j;j=(u|0)==(j|0)&k>>>0>>0|j>>>0>>0;k=(d|0)==(y|0)&h>>>0>>0|d>>>0>>0;h=d;d=el(w,l,z,o)+d|0;k=k+ea|0;k=d>>>0>>0?k+1|0:k;h=d;d=j+d|0;j=k;z=d;h=d>>>0>>0?j+1|0:j;A=0-(((t|0)!=0)+q|0)|0;q=0;y=el(A,q,i,C);s=ea;u=0-t|0;k=el(u,0,w,l);d=k+y|0;j=ea+s|0;t=d;d=d>>>0>>0?j+1|0:j;B=0;u=el(i,C,u,F);i=B+u|0;k=t;j=k+ea|0;j=i>>>0>>0?j+1|0:j;j=(j|0)==(k|0)&i>>>0>>0|j>>>0>>0;k=(d|0)==(s|0)&k>>>0>>0|d>>>0>>0;i=d;d=el(w,l,A,q)+d|0;k=k+ea|0;k=d>>>0>>0?k+1|0:k;i=d;d=j+d|0;j=k;j=d>>>0>>0?j+1|0:j;i=d;d=d+p|0;k=j+e|0;k=d>>>0>>0?k+1|0:k;i=d;j=d;d=k;k=(e|0)==(k|0)&j>>>0

>>0|e>>>0>k>>>0;e=k+z|0;j=h;j=e>>>0>>0?j+1|0:j;k=e;e=i;v=e-2|0;h=v;q=d-(e>>>0<2)|0;e=q;e=(d|0)==(e|0)&h>>>0>>0|d>>>0>e>>>0;d=k+e|0;k=d>>>0>>0?j+1|0:j;e=d;d=d-1|0;h=k-(e>>>0<1)|0;e=0;w=e;l=d;i=r;y=i<<2|c>>>30;z=0;p=el(d,e,y,z);e=ea;o=e;j=e;e=c;A=(e&1073741823)<<2|b>>>30;t=0;F=h;i=0;e=el(A,t,h,i);d=e+p|0;j=ea+j|0;j=d>>>0>>0?j+1|0:j;k=(j|0)==(o|0)&d>>>0

>>0|j>>>0>>0;p=d;h=j;e=j;s=q;j=0;q=j;c=k;B=((n&1073741823)<<2|r>>>30)&-262145|262144;j=el(s,j,B,0);d=j+d|0;k=ea+e|0;k=d>>>0>>0?k+1|0:k;n=d;e=k;h=(k|0)==(h|0)&d>>>0

>>0|h>>>0>k>>>0;d=c+h|0;j=0;j=d>>>0>>0?1:j;h=el(F,i,B,I);d=h+d|0;j=ea+j|0;j=d>>>0>>0?j+1|0:j;r=el(l,w,B,I);h=ea;c=d;o=el(y,z,F,i);d=o+r|0;k=ea+h|0;k=d>>>0>>0?k+1|0:k;o=d;d=k;k=(h|0)==(d|0)&r>>>0>o>>>0|h>>>0>d>>>0;r=c+d|0;j=j+k|0;k=r;h=k>>>0>>0?j+1|0:j;p=n;n=0;d=p+n|0;r=e;j=o+e|0;j=d>>>0>>0?j+1|0:j;e=j;n=(j|0)==(r|0)&d>>>0

>>0|j>>>0>>0;j=k+n|0;k=h;u=j;h=j>>>0>>0?k+1|0:k;r=d;n=e;p=el(A,t,s,q);e=ea;o=el(v,0,y,z);d=o+p|0;j=ea+e|0;j=d>>>0>>0?j+1|0:j;o=d;p=(e|0)==(j|0)&p>>>0>d>>>0|e>>>0>j>>>0;e=j;C=p;k=b;c=k<<2&-4;k=el(l,w,c,0);d=k+d|0;j=ea+j|0;j=d>>>0>>0?j+1|0:j;p=d;k=d;d=j;j=(j|0)==(e|0)&k>>>0>>0|e>>>0>j>>>0;e=C+j|0;k=0;k=e>>>0>>0?1:k;o=e;e=r+e|0;j=k+n|0;j=e>>>0>>0?j+1|0:j;o=e;k=e;e=j;n=(j|0)==(n|0)&k>>>0>>0|j>>>0>>0;k=n+u|0;j=h;u=k;n=k>>>0>>0?j+1|0:j;M=el(F,i,c,N);F=ea;i=el(B,I,v,O);h=i+M|0;k=ea+F|0;k=h>>>0>>0?k+1|0:k;B=h;r=el(y,z,s,q);h=h+r|0;i=k;j=k+ea|0;j=h>>>0>>0?j+1|0:j;y=h;k=el(l,w,A,t);h=h+k|0;l=j;j=j+ea|0;r=h;j=h>>>0>>0?j+1|0:j;h=j;w=0;C=(j|0)==(l|0)&r>>>0>>0|j>>>0>>0;j=(i|0)==(l|0)&y>>>0>>0|i>>>0>l>>>0;i=j+((i|0)==(F|0)&B>>>0>>0|i>>>0>>0)|0;k=0;i=C+i|0;j=i;k=h|0;i=k+o|0;j=(j|w)+e|0;j=i>>>0>>0?j+1|0:j;k=i;l=j;j=(e|0)==(j|0)&k>>>0>>0|e>>>0>j>>>0;e=j+u|0;k=n;y=e;e=e>>>0>>0?k+1|0:k;o=i;s=el(s,q,c,N);q=ea;k=el(A,t,v,O);i=k+s|0;j=ea+q|0;j=i>>>0>>0?j+1|0:j;n=j;j=0;k=(n|0)==(q|0)&i>>>0>>0|n>>>0>>0;i=n+p|0;j=(j|k)+d|0;j=i>>>0>>0?j+1|0:j;k=i;i=j;c=(d|0)==(j|0)&k>>>0

>>0|d>>>0>j>>>0;j=j+r|0;n=0;h=n+k|0;d=h;j=d>>>0>>0?j+1|0:j;h=(i|0)==(j|0)&d>>>0>>0|i>>>0>j>>>0;d=c+h|0;j=0;j=d>>>0>>0?1:j;h=d;d=d+o|0;k=j+l|0;k=d>>>0>>0?k+1|0:k;h=d;i=k;k=(k|0)==(l|0)&d>>>0>>0|k>>>0>>0;d=k+y|0;j=e;j=d>>>0>>0?j+1|0:j;e=j;d:{if((j|0)==131071|j>>>0<131071){q=0;v=b<<17;l=f;w=0;s=el(i,0,l,w);b=ea;y=b;c=0;z=c;t=0;j=el(h,c,g,t);c=j+s|0;k=ea+b|0;k=c>>>0>>0?k+1|0:k;b=k;p=q;u=0;o=el(l,w,h,z);q=u+o|0;j=c;k=j+ea|0;k=q>>>0>>0?k+1|0:k;o=k;j=(j|0)==(k|0)&u>>>0>q>>>0|j>>>0>k>>>0;F=p-j|0;k=(q|0)!=0|(k|0)!=0;u=F-k|0;v=(v-(j>>>0>p>>>0)|0)-(k>>>0>F>>>0)|0;j=el(d,0,l,w);k=ea;l=el(h,z,x,0);j=l+j|0;k=ea+k|0;k=j>>>0>>0?k+1|0:k;r=el(i,n,g,t);l=r+j|0;j=ea+k|0;j=l>>>0>>0?j+1|0:j;j=((b|0)==(y|0)&c>>>0>>0|b>>>0>>0)+j|0;c=b;b=b+l|0;k=b;b=k>>>0>>0?j+1|0:j;c=el(h,i,G,0);j=ea;p=k;l=el(f,g,e,0);c=l+c|0;k=ea+j|0;k=c>>>0>>0?k+1|0:k;l=el(d,e,g,t);c=l+c|0;j=ea+k|0;k=el(i,n,x,E);c=k+c|0;k=c;x=0;c=p+x|0;j=b+k|0;j=c>>>0>>0?j+1|0:j;b=c;x=u-b|0;E=v-((b>>>0>u>>>0)+j|0)|0;J=J-1|0;n=0-q|0;b=0-(((q|0)!=0)+o|0)|0;break d}q=i>>>1|0;v=0;p=b<<16;h=(i&1)<<31|h>>>1;i=d<<31|i>>>1;b=0;s=b;r=0;t=el(h,b,g,r);b=ea;z=b;j=n;k=e<<31|d>>>1;n=d<<31|q;F=j|k;o=n;B=0;A=0;k=el(n,B,f,A);c=k+t|0;j=ea+b|0;j=c>>>0>>0?j+1|0:j;b=j;u=v;w=0;C=el(h,s,f,A);v=w+C|0;j=c;k=j+ea|0;k=v>>>0>>0?k+1|0:k;C=k;j=(j|0)==(k|0)&w>>>0>v>>>0|j>>>0>k>>>0;I=u-j|0;k=(v|0)!=0|(k|0)!=0;w=I-k|0;u=(p-(j>>>0>u>>>0)|0)-(k>>>0>I>>>0)|0;j=el(h,i,G,0);p=ea;I=el(f,g,e>>>1|0,0);j=I+j|0;k=ea+p|0;k=j>>>0>>0?k+1|0:k;d=(e&1)<<31|d>>>1;e=e>>>1|0;I=el(d,e,g,r);p=I+j|0;n=el(n,F,x,E);E=n+p|0;n=0;j=el(g,r,o,B);r=ea;q=el(d,0,f,A);k=q+j|0;j=ea+r|0;l=el(h,s,x,0);x=l+k|0;k=ea+(k>>>0>>0?j+1|0:j)|0;j=x;x=l>>>0>j>>>0?k+1|0:k;k=(b|0)==(z|0)&c>>>0>>0|b>>>0>>0;c=b;b=b+j|0;k=k+x|0;k=b>>>0>>0?k+1|0:k;c=b;b=b+n|0;j=k+E|0;j=b>>>0>>0?j+1|0:j;x=w-b|0;E=u-((b>>>0>w>>>0)+j|0)|0;n=0-v|0;b=0-(((v|0)!=0)+C|0)|0}if((J|0)>=16384){D=D|2147418112;b=0;c=0;break b}l=J+16383|0;if((J|0)<=-16383){e:{if(l){break e}l=n;k=b<<1|l>>>31;l=l<<1;c=(g|0)==(k|0)&f>>>0>>0|g>>>0>>0;f=x;k=E<<1|f>>>31;f=f<<1|b>>>31;f=(f|0)==(L|0)&(k|0)==(G|0)?c:(G|0)==(k|0)&f>>>0>L>>>0|k>>>0>G>>>0;b=f+h|0;j=i;j=b>>>0>>0?j+1|0:j;c=j;f=d+((i|0)==(j|0)&b>>>0>>0|i>>>0>j>>>0)|0;k=e&65535;e=f;k=d>>>0>e>>>0?k+1|0:k;d=k;if(!(d&65536)){break e}K=e|K;D=d|D;break b}b=0;c=0;break b}j=i;k=b<<1|n>>>31;r=n<<1;g=(g|0)==(k|0)&f>>>0<=r>>>0|g>>>0>>0;f=x;k=E<<1|f>>>31;c=f<<1|b>>>31;c=(c|0)==(L|0)&(k|0)==(G|0)?g:(G|0)==(k|0)&c>>>0>=L>>>0|k>>>0>G>>>0;b=c+h|0;j=b>>>0>>0?j+1|0:j;c=j;f=d+((i|0)==(j|0)&b>>>0>>0|i>>>0>j>>>0)|0;j=e&65535;e=f;k=(l<<16)+(d>>>0>e>>>0?j+1|0:j)|0;f=0;e=f+e|0;K=K|e;D=D|(e>>>0>>0?k+1|0:k)}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=K;H[a+12>>2]=D;da=m+192|0;return}H[a>>2]=0;H[a+4>>2]=0;b=!(d|f|(e|g));H[a+8>>2]=b?0:K;H[a+12>>2]=b?2147450880:D;da=m+192|0}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=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;w=da-16|0;da=w;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;c=d- -64|0;H[c>>2]=0;H[c+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;v=da-16|0;da=v;H[d+80>>2]=0;H[d+84>>2]=0;c=H[d+76>>2];H[d+76>>2]=0;if(c){qa(c)}H[d+68>>2]=0;H[d+72>>2]=0;e=d- -64|0;c=H[e>>2];H[e>>2]=0;if(c){qa(c)}h=H[b>>2];j=H[b+4>>2]-h|0;e=(j|0)/12|0;c=N(e,3);g=H[d>>2];f=H[d+4>>2]-g>>2;a:{if(c>>>0>f>>>0){Lf(d,c-f|0);h=H[b>>2];j=H[b+4>>2]-h|0;e=(j|0)/12|0;break a}if(c>>>0>=f>>>0){break a}H[d+4>>2]=g+(c<<2)}if(j){f=e>>>0>1?e:1;g=H[d>>2];b=0;while(1){e=N(b,12);c=e+g|0;e=e+h|0;H[c>>2]=H[e>>2];H[c+4>>2]=H[e+4>>2];H[c+8>>2]=H[e+8>>2];b=b+1|0;if((f|0)!=(b|0)){continue}break}}H[v+12>>2]=-1;j=0;i=da-48|0;da=i;b:{c:{r=v+12|0;d:{if(!r){break d}q=d+12|0;g=H[d+4>>2];m=H[d>>2];b=g-m|0;f=b>>2;e=H[d+12>>2];c=H[d+16>>2]-e>>2;e:{if(f>>>0>c>>>0){Xe(q,f-c|0);g=H[d+4>>2];m=H[d>>2];b=g-m|0;f=b>>2;break e}if(c>>>0<=f>>>0){break e}H[d+16>>2]=e+(f<<2)}H[i+40>>2]=0;H[i+32>>2]=0;H[i+36>>2]=0;f:{if(!b){e=0;break f}if((b|0)>-1){e=ra(b);H[i+36>>2]=e;H[i+32>>2]=e;H[i+40>>2]=(f<<2)+e;c=e;b=0;while(1){h=H[(b<<2)+m>>2];c=c-e>>2;g:{if(h>>>0>>0){break g}H[i+16>>2]=0;f=h+1|0;if(f>>>0>c>>>0){Bb(i+32|0,f-c|0,i+16|0);m=H[d>>2];g=H[d+4>>2];e=H[i+32>>2];break g}if(c>>>0<=f>>>0){break g}H[i+36>>2]=(f<<2)+e}c=(h<<2)+e|0;H[c>>2]=H[c>>2]+1;b=b+1|0;j=g-m|0;f=j>>2;if(b>>>0>=f>>>0){break f}c=H[i+36>>2];continue}}break c}H[i+24>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;if(j){if(f>>>0>=536870912){break b}b=ra(j<<1);H[i+16>>2]=b;c=f<<3;g=c+b|0;H[i+24>>2]=g;ta(b,255,c);H[i+20>>2]=g}g=0;H[i+8>>2]=0;H[i>>2]=0;H[i+4>>2]=0;c=H[i+36>>2]-e|0;t=c>>2;h:{i:{if(!c){break i}if((c|0)<=-1){break b}n=ra(c);H[i>>2]=n;H[i+8>>2]=(t<<2)+n;b=0;h=ta(n,0,c);H[i+4>>2]=h+c;c=N(c>>>2|0,(c|0)<1?c:1);c=c>>>0>1?c:1;k=c&3;j=0;if(c-1>>>0>=3){o=c&-4;while(1){c=j<<2;H[c+h>>2]=b;l=c|4;b=H[c+e>>2]+b|0;H[l+h>>2]=b;p=c|8;b=b+H[e+l>>2]|0;H[p+h>>2]=b;c=c|12;b=b+H[e+p>>2]|0;H[c+h>>2]=b;b=b+H[c+e>>2]|0;j=j+4|0;o=o-4|0;if(o){continue}break}}if(!k){break i}while(1){c=j<<2;H[c+h>>2]=b;j=j+1|0;b=H[c+e>>2]+b|0;k=k-1|0;if(k){continue}break}}if(!f){break h}while(1){x=g<<2;b=x+m|0;o=-1;h=g+1|0;c=(h>>>0)%3|0?h:g-2|0;if((c|0)!=-1){o=H[(c<<2)+m>>2]}c=H[b>>2];k=-1;b=(g>>>0)%3|0;j=(b?-1:2)+g|0;if((j|0)!=-1){k=H[(j<<2)+m>>2]}j:{if(!(((c|0)!=(k|0)?!((k|0)==(o|0)|(c|0)==(o|0)):0)|b)){H[d+40>>2]=H[d+40>>2]+1;g=g+3|0;break j}b=k<<2;u=H[b+e>>2];k:{l:{if((u|0)<1){break l}l=H[i+16>>2];b=H[b+n>>2];j=0;while(1){p=l+(b<<3)|0;s=H[p>>2];if((s|0)==-1){break l}m:{if((o|0)!=(s|0)){break m}p=H[p+4>>2];y=(p|0)!=-1;s=(c|0)==-1;n:{if(!y){break n}s=(c|0)==H[(p<<2)+m>>2]}if(s){break m}while(1){o:{c=b;j=j+1|0;if((u|0)<=(j|0)){break o}s=l+(c<<3)|0;b=c+1|0;z=l+(b<<3)|0;A=H[z>>2];H[s>>2]=A;H[s+4>>2]=H[z+4>>2];if((A|0)!=-1){continue}}break}H[l+(c<<3)>>2]=-1;if(!y){break l}b=H[q>>2];H[b+x>>2]=p;H[b+(p<<2)>>2]=g;break k}b=b+1|0;j=j+1|0;if((u|0)!=(j|0)){continue}break}}b=o<<2;o=H[b+e>>2];if((o|0)<1){break k}l=H[i+16>>2];b=H[b+n>>2];j=0;while(1){c=l+(b<<3)|0;if(H[c>>2]==-1){H[c>>2]=k;H[c+4>>2]=g;break k}b=b+1|0;j=j+1|0;if((o|0)!=(j|0)){continue}break}}g=h}if(g>>>0>>0){continue}break}break h}H[r>>2]=t;if(n){H[i+4>>2]=n;qa(n)}b=H[i+16>>2];if(b){H[i+20>>2]=b;qa(b)}b=H[i+32>>2];if(!b){break d}H[i+36>>2]=b;qa(b)}da=i+48|0;u=(r|0)!=0;if(u){n=da-32|0;da=n;j=d;b=H[d>>2];c=H[d+4>>2];F[n|0]=0;r=Zb(n+16|0,c-b>>2,n);H[n+8>>2]=0;H[n>>2]=0;m=H[d>>2];b=H[d+4>>2];while(1){p:{p=0;k=0;if((b|0)==(m|0)){break p}while(1){g=H[r>>2];q:{if(H[g+(k>>>3&536870908)>>2]>>>k&1){break q}f=H[n>>2];H[n+4>>2]=f;b=k;while(1){r:{c=b+1|0;i=b;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break r}b=H[H[j+12>>2]+(b<<2)>>2];if((b|0)==-1){break r}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((k|0)==(b|0)|(b|0)==-1){break r}if(!(H[(b>>>3&536870908)+g>>2]>>>b&1)){continue}}break}c=f;b=i;s:{t:{while(1){e=(b>>>3&536870908)+g|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?e:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;u:{if((c|0)==(f|0)){break u}q=H[(e<<2)+m>>2];g=c;b=c;if((h|0)==-1){while(1){if((q|0)==H[g>>2]){l=-1;b=-1;o=H[g+4>>2];if((o|0)!=-1){break t}}g=g+8|0;if((g|0)!=(f|0)){continue}break u}}while(1){v:{if((q|0)!=H[b>>2]){break v}o=H[b+4>>2];l=H[H[j+12>>2]+(h<<2)>>2];if((o|0)==(l|0)){break v}b=h;g=-1;c=-1;if((o|0)==-1){break s}break t}b=b+8|0;if((f|0)!=(b|0)){continue}break}}l=h<<2;o=H[l+m>>2];w:{if(H[n+8>>2]!=(f|0)){b=f;H[b>>2]=o;H[b+4>>2]=e;H[n+4>>2]=b+8;break w}f=f-c|0;m=f>>3;g=m+1|0;if(g>>>0>=536870912){break b}q=f>>2;g=m>>>0<268435455?g>>>0>q>>>0?g:q:536870911;b=0;x:{if(!g){break x}if(g>>>0>=536870912){break c}b=ra(g<<3)}m=b+(m<<3)|0;H[m>>2]=o;H[m+4>>2]=e;if((f|0)>=1){sa(b,c,f)}H[n+8>>2]=b+(g<<3);H[n+4>>2]=m+8;H[n>>2]=b;if(!c){break w}qa(c)}y:{if((h|0)==-1){break y}b=H[l+H[j+12>>2]>>2];if((b|0)==-1){break y}b=b+((b>>>0)%3|0?-1:2)|0;if((i|0)==(b|0)|(b|0)==-1){break y}m=H[j>>2];g=H[r>>2];f=H[n+4>>2];c=H[n>>2];continue}break}m=H[j>>2];break q}g=H[H[j+12>>2]+(o<<2)>>2];h=b;c=o}if((l|0)!=-1){H[H[j+12>>2]+(l<<2)>>2]=-1}b=H[j+12>>2];if((g|0)!=-1){H[b+(g<<2)>>2]=-1}H[b+(h<<2)>>2]=-1;H[b+(c<<2)>>2]=-1;p=1}k=k+1|0;b=H[j+4>>2];if(k>>>0>2>>>0){continue}break}if(p){continue}}break}b=H[n>>2];if(b){H[n+4>>2]=b;qa(b)}b=H[r>>2];if(b){qa(b)}da=n+32|0;m=0;o=da-48|0;da=o;b=H[v+12>>2];H[j+36>>2]=b;n=d+24|0;e=H[d+24>>2];c=H[d+28>>2]-e>>2;z:{if(c>>>0>>0){Xe(n,b-c|0);break z}if(b>>>0>=c>>>0){break z}H[d+28>>2]=e+(b<<2)}F[o+16|0]=0;i=Zb(o+32|0,b,o+16|0);c=H[d>>2];e=H[d+4>>2];F[o+15|0]=0;j=Zb(o+16|0,e-c>>2,o+15|0);h=H[d+4>>2];c=H[d>>2];if(h-c>>2>>>0>2){while(1){r=N(m,3);e=r+1|0;A:{B:{if((e|0)==-1){e=-1;g=c;break B}e=H[(e<<2)+c>>2];g=r+2|0;f=-1;if((g|0)==-1){break A}g=(g<<2)+c|0}f=H[g>>2]}C:{if((e|0)==(f|0)){break C}g=e;e=H[(r<<2)+c>>2];if((g|0)==(e|0)|(e|0)==(f|0)){break C}f=H[j>>2];q=0;while(1){g=q+r|0;if(!(H[(g>>>3&536870908)+f>>2]>>>g&1)){e=H[H[d>>2]+(g<<2)>>2];c=1<>2];f=e>>>5|0;p=H[l+(f<<2)>>2];t=c&p;h=b;D:{if(!t){break D}c=H[d+28>>2];E:{if((c|0)!=H[d+32>>2]){H[c>>2]=-1;H[d+28>>2]=c+4;break E}f=H[n>>2];h=c-f|0;l=h>>2;k=l+1|0;if(k>>>0>=1073741824){break b}p=h>>1;k=l>>>0<536870911?k>>>0>p>>>0?k:p:1073741823;c=0;F:{if(!k){break F}if(k>>>0>=1073741824){break c}c=ra(k<<2)}l=c+(l<<2)|0;H[l>>2]=-1;if((h|0)>=1){sa(c,f,h)}H[d+32>>2]=c+(k<<2);H[d+28>>2]=l+4;H[d+24>>2]=c;if(!f){break E}qa(f)}c=H[d+52>>2];G:{if((c|0)!=H[d+56>>2]){H[c>>2]=e;H[d+52>>2]=c+4;break G}f=H[d+48>>2];h=c-f|0;l=h>>2;k=l+1|0;if(k>>>0>=1073741824){break b}p=h>>1;k=l>>>0<536870911?k>>>0>p>>>0?k:p:1073741823;c=0;H:{if(!k){break H}if(k>>>0>=1073741824){break c}c=ra(k<<2)}l=c+(l<<2)|0;H[l>>2]=e;if((h|0)>=1){sa(c,f,h)}H[d+56>>2]=c+(k<<2);H[d+52>>2]=l+4;H[d+48>>2]=c;if(!f){break G}qa(f)}c=H[i+4>>2];f=H[i+8>>2];if((c|0)==f<<5){if((c+1|0)<=-1){break b}h=i;if(c>>>0<=1073741822){c=c+32&-32;f=f<<6;c=c>>>0>f>>>0?c:f}else{c=2147483647}Kb(h,c);c=H[i+4>>2]}H[i+4>>2]=c+1;l=H[i>>2];e=l+(c>>>3&536870908)|0;f=H[e>>2];B=e,C=il(-2,c)&f,H[B>>2]=C;c=1<>>5|0;p=H[(f<<2)+l>>2];e=b;h=b+1|0}H[(f<<2)+l>>2]=c|p;f=H[j>>2];b=g;I:{J:{while(1){if((b|0)==-1){break J}c=(b>>>3&536870908)+f|0;H[c>>2]=H[c>>2]|1<>2]+(e<<2)>>2]=b;if(t){H[H[d>>2]+(b<<2)>>2]=e}k=g;l=b+1|0;b=(l>>>0)%3|0?l:b-2|0;c=-1;K:{if((b|0)==-1){break K}b=H[H[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break K}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0}b=c;if((k|0)!=(b|0)){continue}break}if((g|0)!=-1){break I}}L:{b=g+((g>>>0)%3|0?-1:2)|0;if((b|0)==-1){break L}b=H[H[d+12>>2]+(b<<2)>>2];if((b|0)==-1){break L}f=H[j>>2];b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)==-1){break I}while(1){c=(b>>>3&536870908)+f|0;H[c>>2]=H[c>>2]|1<>2]+(b<<2)>>2]=e}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)==-1){break I}b=H[H[d+12>>2]+(b<<2)>>2];if((b|0)==-1){break I}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)!=-1){continue}break}break I}f=H[j>>2]}b=h}q=q+1|0;if((q|0)!=3){continue}break}c=H[d>>2];h=H[d+4>>2]}m=m+1|0;if(m>>>0<(h-c>>2>>>0)/3>>>0){continue}break}}h=0;H[d+44>>2]=0;e=H[i>>2];b=H[i+4>>2];c=b>>>5|0;f=b&31;if(c|f){g=(c<<2)+e|0;b=0;c=e;while(1){if(!(H[c>>2]>>>b&1)){h=h+1|0;H[d+44>>2]=h}k=(b|0)==31;b=k?0:b+1|0;c=k?c+4|0:c;if((g|0)!=(c|0)|(b|0)!=(f|0)){continue}break}}b=H[j>>2];if(b){qa(b);e=H[i>>2]}if(e){qa(e)}da=o+48|0}da=v+16|0;M:{if(u){H[a>>2]=d;break M}H[a>>2]=0;H[w+8>>2]=0;sb(d)}da=w+16|0;return}wa(16436);X()}ua();X()}function Ik(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;h=da-48|0;da=h;f=H[b+4>>2];b=H[b+12>>2];H[h+40>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;H[h+8>>2]=0;H[h+12>>2]=0;e=h+8|0;m=H[H[H[f+4>>2]+8>>2]+(b<<2)>>2];a:{b:{if((c|0)==-1){c=ug(b,f)}if((c|0)!=-2){if((fa[H[H[f>>2]+8>>2]](f)|0)==1){l=da-32|0;da=l;g=H[H[H[f+4>>2]+8>>2]+(b<<2)>>2];c:{d:{e:{f:{if((fa[H[H[f>>2]+8>>2]](f)|0)!=1|c-1>>>0>5){break f}i=fa[H[H[f>>2]+52>>2]](f)|0;d=fa[H[H[f>>2]+60>>2]](f,b)|0;if(!(d?i:0)){H[h>>2]=0;break e}b=fa[H[H[f>>2]+56>>2]](f,b)|0;if(b){f=H[f+56>>2];H[l+20>>2]=b;H[l+16>>2]=f;H[l+28>>2]=d;H[l+24>>2]=d+12;f=l+16|0;d=0;g:{h:{switch(c-1|0){case 0:d=ra(60);H[d+4>>2]=g;H[d>>2]=3184;b=H[e+8>>2];c=H[e+12>>2];g=H[e+16>>2];i=H[e+20>>2];j=H[e>>2];k=H[e+4>>2];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=g;H[d+28>>2]=i;H[d+16>>2]=b;H[d+20>>2]=c;H[d+8>>2]=j;H[d+12>>2]=k;g=H[e+24>>2];b=H[e+28>>2]-g|0;if(b){if((b|0)<=-1){break d}c=ra(b);H[d+32>>2]=c;H[d+36>>2]=c;H[d+40>>2]=c+(b>>2<<2);n=d,o=sa(c,g,b)+b|0,H[n+36>>2]=o}b=H[f+4>>2];H[d+44>>2]=H[f>>2];H[d+48>>2]=b;b=H[f+12>>2];H[d+52>>2]=H[f+8>>2];H[d+56>>2]=b;H[d>>2]=2476;break g;case 3:d=ra(168);H[d+4>>2]=g;H[d>>2]=3184;b=H[e+8>>2];c=H[e+12>>2];g=H[e+16>>2];i=H[e+20>>2];j=H[e>>2];k=H[e+4>>2];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=g;H[d+28>>2]=i;H[d+16>>2]=b;H[d+20>>2]=c;H[d+8>>2]=j;H[d+12>>2]=k;g=H[e+24>>2];b=H[e+28>>2]-g|0;if(b){if((b|0)<=-1){break d}c=ra(b);H[d+32>>2]=c;H[d+36>>2]=c;H[d+40>>2]=c+(b>>2<<2);n=d,o=sa(c,g,b)+b|0,H[n+36>>2]=o}b=H[f+4>>2];H[d+44>>2]=H[f>>2];H[d+48>>2]=b;b=H[f+12>>2];H[d+52>>2]=H[f+8>>2];H[d+56>>2]=b;H[d+60>>2]=0;H[d+64>>2]=0;H[d>>2]=3240;H[d+68>>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+92>>2]=0;H[d+96>>2]=0;H[d+100>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;H[d+128>>2]=0;H[d+132>>2]=0;H[d+120>>2]=0;H[d+112>>2]=0;H[d+116>>2]=0;H[d+136>>2]=0;H[d+140>>2]=0;H[d+144>>2]=0;H[d+160>>2]=0;H[d+152>>2]=0;H[d+156>>2]=0;break g;case 4:d=ra(104);H[d+4>>2]=g;H[d>>2]=3184;b=H[e+8>>2];c=H[e+12>>2];g=H[e+16>>2];i=H[e+20>>2];j=H[e>>2];k=H[e+4>>2];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=g;H[d+28>>2]=i;H[d+16>>2]=b;H[d+20>>2]=c;H[d+8>>2]=j;H[d+12>>2]=k;g=H[e+24>>2];b=H[e+28>>2]-g|0;if(b){if((b|0)<=-1){break d}c=ra(b);H[d+32>>2]=c;H[d+36>>2]=c;H[d+40>>2]=c+(b>>2<<2);n=d,o=sa(c,g,b)+b|0,H[n+36>>2]=o}b=H[f+4>>2];H[d+44>>2]=H[f>>2];H[d+48>>2]=b;b=H[f+8>>2];c=H[f+12>>2];H[d+84>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+60>>2]=0;H[d+64>>2]=0;H[d>>2]=3488;H[d+52>>2]=b;H[d+56>>2]=c;b=H[f+4>>2];H[d+88>>2]=H[f>>2];H[d+92>>2]=b;b=H[f+12>>2];H[d+96>>2]=H[f+8>>2];H[d+100>>2]=b;break g;case 5:break h;default:break g}}b=ra(144);H[b+4>>2]=g;H[b>>2]=3184;c=H[e+8>>2];d=H[e+12>>2];g=H[e+16>>2];i=H[e+20>>2];j=H[e>>2];k=H[e+4>>2];H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=g;H[b+28>>2]=i;H[b+16>>2]=c;H[b+20>>2]=d;H[b+8>>2]=j;H[b+12>>2]=k;i:{j:{d=H[e+28>>2]-H[e+24>>2]|0;if(d){if((d|0)<=-1){break j}c=ra(d);H[b+32>>2]=c;H[b+36>>2]=c;H[b+40>>2]=c+(d>>2<<2);d=b;i=H[e+24>>2];g=H[e+28>>2]-i|0;if((g|0)>=1){c=sa(c,i,g)+g|0}H[d+36>>2]=c}H[b>>2]=3128;c=H[f+4>>2];H[b+44>>2]=H[f>>2];H[b+48>>2]=c;c=H[f+12>>2];H[b+52>>2]=H[f+8>>2];H[b+56>>2]=c;c=b- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[b+60>>2]=4352;H[b>>2]=3724;c=H[f+4>>2];H[b+72>>2]=H[f>>2];H[b+76>>2]=c;c=H[f+12>>2];H[b+80>>2]=H[f+8>>2];H[b+84>>2]=c;H[b+104>>2]=1065353216;H[b+108>>2]=-1;H[b+96>>2]=-1;H[b+100>>2]=-1;H[b+88>>2]=1;H[b+92>>2]=-1;H[b+60>>2]=3960;H[b+112>>2]=0;H[b+116>>2]=0;H[b+136>>2]=0;H[b+140>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;break i}ua();X()}d=b}H[h>>2]=d;if(!H[h>>2]){break f}break e}b=H[f+56>>2];H[l+20>>2]=i;H[l+16>>2]=b;H[l+28>>2]=d;H[l+24>>2]=d+12;f=l+16|0;d=0;k:{l:{switch(c-1|0){case 0:d=ra(60);H[d+4>>2]=g;H[d>>2]=3184;b=H[e+8>>2];c=H[e+12>>2];g=H[e+16>>2];i=H[e+20>>2];j=H[e>>2];k=H[e+4>>2];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=g;H[d+28>>2]=i;H[d+16>>2]=b;H[d+20>>2]=c;H[d+8>>2]=j;H[d+12>>2]=k;g=H[e+24>>2];b=H[e+28>>2]-g|0;if(b){if((b|0)<=-1){break d}c=ra(b);H[d+32>>2]=c;H[d+36>>2]=c;H[d+40>>2]=c+(b>>2<<2);n=d,o=sa(c,g,b)+b|0,H[n+36>>2]=o}b=H[f+4>>2];H[d+44>>2]=H[f>>2];H[d+48>>2]=b;b=H[f+12>>2];H[d+52>>2]=H[f+8>>2];H[d+56>>2]=b;H[d>>2]=4380;break k;case 3:d=ra(168);H[d+4>>2]=g;H[d>>2]=3184;b=H[e+8>>2];c=H[e+12>>2];g=H[e+16>>2];i=H[e+20>>2];j=H[e>>2];k=H[e+4>>2];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=g;H[d+28>>2]=i;H[d+16>>2]=b;H[d+20>>2]=c;H[d+8>>2]=j;H[d+12>>2]=k;g=H[e+24>>2];b=H[e+28>>2]-g|0;if(b){if((b|0)<=-1){break d}c=ra(b);H[d+32>>2]=c;H[d+36>>2]=c;H[d+40>>2]=c+(b>>2<<2);n=d,o=sa(c,g,b)+b|0,H[n+36>>2]=o}b=H[f+4>>2];H[d+44>>2]=H[f>>2];H[d+48>>2]=b;b=H[f+12>>2];H[d+52>>2]=H[f+8>>2];H[d+56>>2]=b;H[d+60>>2]=0;H[d+64>>2]=0;H[d>>2]=4804;H[d+68>>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+92>>2]=0;H[d+96>>2]=0;H[d+100>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;H[d+128>>2]=0;H[d+132>>2]=0;H[d+120>>2]=0;H[d+112>>2]=0;H[d+116>>2]=0;H[d+136>>2]=0;H[d+140>>2]=0;H[d+144>>2]=0;H[d+160>>2]=0;H[d+152>>2]=0;H[d+156>>2]=0;break k;case 4:d=ra(104);H[d+4>>2]=g;H[d>>2]=3184;b=H[e+8>>2];c=H[e+12>>2];g=H[e+16>>2];i=H[e+20>>2];j=H[e>>2];k=H[e+4>>2];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=g;H[d+28>>2]=i;H[d+16>>2]=b;H[d+20>>2]=c;H[d+8>>2]=j;H[d+12>>2]=k;g=H[e+24>>2];b=H[e+28>>2]-g|0;if(b){if((b|0)<=-1){break d}c=ra(b);H[d+32>>2]=c;H[d+36>>2]=c;H[d+40>>2]=c+(b>>2<<2);n=d,o=sa(c,g,b)+b|0,H[n+36>>2]=o}b=H[f+4>>2];H[d+44>>2]=H[f>>2];H[d+48>>2]=b;b=H[f+8>>2];c=H[f+12>>2];H[d+84>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+60>>2]=0;H[d+64>>2]=0;H[d>>2]=5040;H[d+52>>2]=b;H[d+56>>2]=c;b=H[f+4>>2];H[d+88>>2]=H[f>>2];H[d+92>>2]=b;b=H[f+12>>2];H[d+96>>2]=H[f+8>>2];H[d+100>>2]=b;break k;case 5:break l;default:break k}}b=ra(144);H[b+4>>2]=g;H[b>>2]=3184;c=H[e+8>>2];d=H[e+12>>2];g=H[e+16>>2];i=H[e+20>>2];j=H[e>>2];k=H[e+4>>2];H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=g;H[b+28>>2]=i;H[b+16>>2]=c;H[b+20>>2]=d;H[b+8>>2]=j;H[b+12>>2]=k;m:{n:{d=H[e+28>>2]-H[e+24>>2]|0;if(d){if((d|0)<=-1){break n}c=ra(d);H[b+32>>2]=c;H[b+36>>2]=c;H[b+40>>2]=c+(d>>2<<2);d=b;i=H[e+24>>2];g=H[e+28>>2]-i|0;if((g|0)>=1){c=sa(c,i,g)+g|0}H[d+36>>2]=c}H[b>>2]=4748;c=H[f+4>>2];H[b+44>>2]=H[f>>2];H[b+48>>2]=c;c=H[f+12>>2];H[b+52>>2]=H[f+8>>2];H[b+56>>2]=c;c=b- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[b+60>>2]=5848;H[b>>2]=5264;c=H[f+4>>2];H[b+72>>2]=H[f>>2];H[b+76>>2]=c;c=H[f+12>>2];H[b+80>>2]=H[f+8>>2];H[b+84>>2]=c;H[b+104>>2]=1065353216;H[b+108>>2]=-1;H[b+96>>2]=-1;H[b+100>>2]=-1;H[b+88>>2]=1;H[b+92>>2]=-1;H[b+60>>2]=5484;H[b+112>>2]=0;H[b+116>>2]=0;H[b+136>>2]=0;H[b+140>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;break m}ua();X()}d=b}H[h>>2]=d;if(H[h>>2]){break e}}H[h>>2]=0}da=l+32|0;break c}ua();X()}if(H[h>>2]){break a}H[h>>2]=0}d=ra(44);H[d+4>>2]=m;H[d>>2]=3184;b=H[e+8>>2];c=H[e+12>>2];f=H[e+16>>2];l=H[e+20>>2];g=H[e>>2];m=H[e+4>>2];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=f;H[d+28>>2]=l;H[d+16>>2]=b;H[d+20>>2]=c;H[d+8>>2]=g;H[d+12>>2]=m;b=H[e+28>>2];e=H[e+24>>2];b=b-e|0;if(b){if((b|0)<=-1){break b}c=ra(b);H[d+32>>2]=c;H[d+36>>2]=c;H[d+40>>2]=c+(b>>2<<2);n=d,o=sa(c,e,b)+b|0,H[n+36>>2]=o}H[d>>2]=5876}H[h>>2]=d;break a}ua();X()}b=H[h+32>>2];if(b){H[h+36>>2]=b;qa(b)}H[a>>2]=H[h>>2];da=h+48|0}function Xd(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,P=0,R=0,S=0,T=0;l=da-32|0;da=l;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;u=H[e+20>>2];if((u|0)<0?1:(u|0)<=0?!H[e+16>>2]:0){u=a+4|0;va(e,H[e+4>>2],a,u);d=H[e+20>>2];if((d|0)<0?1:(d|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],u,u+4|0)}d=H[u>>2]}if(d){E=a+12|0;Ba(E);F=a+44|0;d=F;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];G=a- -64|0;d=G;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];I=a+84|0;d=I;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[l+24>>2]=H[b+8>>2];d=H[b+4>>2];H[l+16>>2]=H[b>>2];H[l+20>>2]=d;H[l+8>>2]=H[c+8>>2];b=H[c+4>>2];H[l>>2]=H[c>>2];H[l+4>>2]=b;b=0;c=0;g=da-32|0;da=g;m=a;i=H[a+8>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a:{b:{if(i){if(i>>>0>=1073741824){break b}a=i<<2;b=ra(a);H[g+8>>2]=b;c=a+b|0;H[g+16>>2]=c;ta(b,0,a);H[g+12>>2]=c}d=H[m+140>>2];a=H[d>>2];if(a){H[d+4>>2]=a;qa(a);H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;i=H[m+8>>2];c=H[g+12>>2];b=H[g+8>>2]}H[d+4>>2]=c;H[d>>2]=b;H[d+8>>2]=H[g+16>>2];b=0;H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a=0;c:{if(i){if(i>>>0>=1073741824){break c}c=i<<2;a=ra(c);H[g+8>>2]=a;b=a+c|0;H[g+16>>2]=b;ta(a,0,c);H[g+12>>2]=b}d=H[m+152>>2];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;b=H[g+12>>2];a=H[g+8>>2]}H[d+4>>2]=b;H[d>>2]=a;H[d+8>>2]=H[g+16>>2];B=H[l+4>>2];J=H[l+8>>2];C=H[l+20>>2];L=H[l+24>>2];d=H[l>>2];c=H[l+16>>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;kb(g+8|0);b=H[g+24>>2]+H[g+28>>2]|0;a=(b>>>0)/113|0;a=H[H[g+12>>2]+(a<<2)>>2]+N(b-N(a,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]=C;H[a+8>>2]=L;H[a>>2]=c;H[a+16>>2]=B;H[a+20>>2]=J;a=H[g+28>>2];i=a+1|0;H[g+28>>2]=i;if(a>>>0<=i>>>0){P=m+44|0;k=m+12|0;R=m+84|0;M=B;z=C;O=H[l+8>>2];w=H[l+24>>2];S=w&-4;u=w&3;T=w-1>>>0<3;while(1){a=H[g+12>>2];h=H[g+24>>2];f=i-1|0;c=h+f|0;b=(c>>>0)/113|0;b=H[a+(b<<2)>>2]+N(c-N(b,113)|0,36)|0;D=H[b+32>>2];c=H[b+24>>2];v=H[b+12>>2];d=H[b>>2];H[g+28>>2]=f;b=H[g+16>>2];a=b-a|0;if(((a?N(a>>2,113)-1|0:0)-(i+h|0)|0)+1>>>0>=226){qa(H[b-4>>2]);H[g+16>>2]=H[g+16>>2]-4}H[l+16>>2]=d;H[l>>2]=v;i=(c|0)==(H[m+8>>2]-1|0)?0:c+1|0;x=i<<2;A=N(D,12);h=A+H[m+152>>2]|0;b=H[m>>2]-H[x+H[h>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{t=v-d|0;if(t>>>0<=2){c=H[m+128>>2];H[c>>2]=i;b=1;a=H[m+8>>2];if(a>>>0>1){break g}break f}a=H[m+140>>2];c=a+A|0;f=a;a=A+12|0;eb(f+a|0,H[c>>2],H[c+4>>2]);a=H[a+H[m+140>>2]>>2]+x|0;r=H[a>>2]+(1<>2]=r;a=d;h:{if((v|0)==(a|0)){break h}o=H[z+24>>2];b=d;a=v;if(!w){if(r>>>0>K[o+x>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(r>>>0<=K[(H[M+24>>2]+x|0)+(N(a,O)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){p=o+(N(b,w)<<2)|0;if(r>>>0>K[p+x>>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}s=H[M+24>>2]+(N(a,O)<<2)|0;if(r>>>0<=K[s+x>>2]){continue}break}q=0;c=S;if(!T){while(1){n=q<<2;f=n+p|0;h=H[f>>2];j=f;f=n+s|0;H[j>>2]=H[f>>2];H[f>>2]=h;j=n|4;f=j+p|0;h=H[f>>2];y=f;f=j+s|0;H[y>>2]=H[f>>2];H[f>>2]=h;j=n|8;f=j+p|0;h=H[f>>2];y=f;f=j+s|0;H[y>>2]=H[f>>2];H[f>>2]=h;j=n|12;f=j+p|0;h=H[f>>2];y=f;f=j+s|0;H[y>>2]=H[f>>2];H[f>>2]=h;q=q+4|0;c=c-4|0;if(c){continue}break}}c=u;if(c){while(1){j=q<<2;f=j+p|0;h=H[f>>2];y=f;f=j+s|0;H[y>>2]=H[f>>2];H[f>>2]=h;q=q+1|0;c=c-1|0;if(c){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}q=a-d|0;r=v-a|0;if((q|0)!=(r|0)){ic(R,q>>>0>>0)}f=H[k>>2];b=f;c=H[b+12>>2];f=H[b+8>>2];h=(t>>>1|0)-(q>>>0>>0?q:r)|0;h=h>>>1&1431655765|h<<1&-1431655766;h=h>>>2&858993459|h<<2&-858993460;h=h>>>4&252645135|h<<4&-252645136;p=Q(t)^31;o=32-p|0;s=il(h>>>8&16711935|h<<8&-16711936,16)>>>o|0;j=hl(s);h=j;n=f+h|0;H[b+8>>2]=n;H[b+12>>2]=h>>>0>n>>>0?c+1|0:c;h=p-h|0;c=h;j=c+H[b>>2]|0;f=H[b+4>>2]+(c>>31)|0;H[b>>2]=j;H[b+4>>2]=c>>>0>j>>>0?f+1|0:f;i:{j:{k:{l:{m:{f=H[k+28>>2];n=32-f|0;n:{if((n|0)>=(p|0)){c=f+p|0;H[k+28>>2]=c;b=-1>>>o<>2]&(b^-1)|b&s<>2]=j;if((c|0)!=32){break i}b=H[k+16>>2];if((b|0)!=H[k+20>>2]){H[b>>2]=j;H[k+16>>2]=b+4;b=0;c=0;break n}n=H[k+12>>2];o=b-n|0;h=o>>2;f=h+1|0;if(f>>>0>=1073741824){break m}c=o>>1;f=h>>>0<536870911?c>>>0>>0?f:c:1073741823;b=0;o:{if(!f){break o}if(f>>>0>=1073741824){break l}b=ra(f<<2)}c=b+(h<<2)|0;H[c>>2]=j;if((o|0)>=1){sa(b,n,o)}H[k+20>>2]=b+(f<<2);H[k+16>>2]=c+4;H[k+12>>2]=b;b=0;if(!n){c=0;break n}qa(n);c=0;break n}j=H[k+24>>2]&(-1<>2]=j;b=H[k+16>>2];p:{if((b|0)!=H[k+20>>2]){H[b>>2]=j;H[k+16>>2]=b+4;break p}t=H[k+12>>2];o=b-t|0;h=o>>2;f=h+1|0;if(f>>>0>=1073741824){break k}c=o>>1;f=h>>>0<536870911?c>>>0>>0?f:c:1073741823;b=0;q:{if(!f){break q}if(f>>>0>=1073741824){break j}b=ra(f<<2)}c=b+(h<<2)|0;H[c>>2]=j;if((o|0)>=1){sa(b,t,o)}H[k+20>>2]=b+(f<<2);H[k+16>>2]=c+4;H[k+12>>2]=b;if(!t){break p}qa(t)}c=p-n|0;b=-1>>>32-c&s>>>n}H[k+28>>2]=c;H[k+24>>2]=b;break i}ua();X()}wa(10036);X()}ua();X()}wa(10036);X()}j=H[m+152>>2];f=j+A|0;c=H[f>>2];b=c+x|0;H[b>>2]=H[b>>2]+1;h=D+1|0;eb(j+N(h,12)|0,c,H[f+4>>2]);if((a|0)!=(d|0)){c=H[g+28>>2]+H[g+24>>2]|0;b=H[g+12>>2];f=H[g+16>>2]-b|0;if((c|0)==((f?N(f>>2,113)-1|0:0)|0)){kb(g+8|0);c=H[g+24>>2]+H[g+28>>2]|0;f=H[g+12>>2]}else{f=b}b=(c>>>0)/113|0;b=H[f+(b<<2)>>2]+N(c-N(b,113)|0,36)|0;H[b+32>>2]=D;H[b+28>>2]=q;H[b+24>>2]=i;H[b+12>>2]=a;H[b+4>>2]=C;H[b+8>>2]=L;H[b>>2]=d;H[b+20>>2]=w;H[b+16>>2]=z;H[g+28>>2]=H[g+28>>2]+1}if((a|0)==(v|0)){break e}b=H[g+28>>2]+H[g+24>>2]|0;c=H[g+12>>2];d=H[g+16>>2]-c|0;if((b|0)==((d?N(d>>2,113)-1|0:0)|0)){kb(g+8|0);c=H[g+12>>2];b=H[g+24>>2]+H[g+28>>2]|0}d=c;c=(b>>>0)/113|0;b=H[d+(c<<2)>>2]+N(b-N(c,113)|0,36)|0;H[b+32>>2]=h;H[b+28>>2]=r;H[b+24>>2]=i;H[b+12>>2]=v;H[b+8>>2]=w;H[b+4>>2]=z;H[b>>2]=a;H[b+16>>2]=B;H[b+20>>2]=J;i=H[g+28>>2]+1|0;H[g+28>>2]=i;break d}while(1){i=(a-1|0)==(i|0)?0:i+1|0;H[c+(b<<2)>>2]=i;a=H[m+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}c=0;b=a;if(!t){break e}while(1){r:{if(!b){b=0;break r}v=H[z+24>>2]+(N(H[z+4>>2],c+d|0)<<2)|0;i=0;while(1){f=H[H[m+128>>2]+(i<<2)>>2]<<2;b=H[m>>2]-H[f+H[h>>2]>>2]|0;if(b){Nb(P,b,H[f+v>>2]);a=H[m+8>>2]}b=a;i=i+1|0;if(b>>>0>i>>>0){continue}break}}c=c+1|0;if((t|0)!=(c|0)){continue}break}}i=H[g+28>>2]}if(i){continue}break}}H[g+28>>2]=0;a=H[g+16>>2];i=H[g+12>>2];c=a-i>>2;if(c>>>0>=3){while(1){qa(H[i>>2]);i=H[g+12>>2]+4|0;H[g+12>>2]=i;a=H[g+16>>2];c=a-i>>2;if(c>>>0>2){continue}break}}b=56;s:{switch(c-1|0){case 1:b=113;case 0:H[g+24>>2]=b;break;default:break s}}t:{if((a|0)==(i|0)){break t}while(1){qa(H[i>>2]);i=i+4|0;if((i|0)!=(a|0)){continue}break}b=H[g+16>>2];a=H[g+12>>2];if((b|0)==(a|0)){break t}H[g+16>>2]=b+(((b-a|0)-4>>>2^-1)<<2)}a=H[g+8>>2];if(a){qa(a)}da=g+32|0;break a}ua();X()}ua();X()}Aa(E,e);jb(F,e);jb(G,e);jb(I,e)}da=l+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,r=0;j=da-16|0;da=j;k=H[b+48>>2];a:{if(!k){b=ra(32);H[j>>2]=b;H[j+4>>2]=23;H[j+8>>2]=-2147483616;F[b+23|0]=0;c=I[10523]|I[10524]<<8|(I[10525]<<16|I[10526]<<24);d=I[10519]|I[10520]<<8|(I[10521]<<16|I[10522]<<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[10516]|I[10517]<<8|(I[10518]<<16|I[10519]<<24);d=I[10512]|I[10513]<<8|(I[10514]<<16|I[10515]<<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[10508]|I[10509]<<8|(I[10510]<<16|I[10511]<<24);d=I[10504]|I[10505]<<8|(I[10506]<<16|I[10507]<<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[a>>2]=-1;Ja(a+4|0,j);if(F[j+11|0]>-1){break a}qa(H[j>>2]);break a}l=H[b+52>>2];if(!l){h=da-16|0;da=h;d=ra(16);H[h>>2]=d;H[h+4>>2]=15;H[h+8>>2]=-2147483632;F[d+15|0]=0;g=I[10539]|I[10540]<<8|(I[10541]<<16|I[10542]<<24);f=I[10535]|I[10536]<<8|(I[10537]<<16|I[10538]<<24);F[d+7|0]=f;F[d+8|0]=f>>>8;F[d+9|0]=f>>>16;F[d+10|0]=f>>>24;F[d+11|0]=g;F[d+12|0]=g>>>8;F[d+13|0]=g>>>16;F[d+14|0]=g>>>24;g=I[10532]|I[10533]<<8|(I[10534]<<16|I[10535]<<24);f=I[10528]|I[10529]<<8|(I[10530]<<16|I[10531]<<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]=g;F[d+5|0]=g>>>8;F[d+6|0]=g>>>16;F[d+7|0]=g>>>24;f=b;d=b+4|0;q=hb(d,h,-1);if(F[h+11|0]<=-1){qa(H[h>>2])}l=c;b:{c:{d:{e:{switch(q+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=_b(b);H[b>>2]=14028;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=_b(b);H[b>>2]=14028;break c}f:{c=H[k+12>>2];e=H[k+8>>2];if((c-e|0)>=1){i=f+20|0;while(1){b=H[H[(m<<2)+e>>2]+28>>2];if(b-1>>>0>=6){if((b|0)!=9){break f}g=ra(32);H[h>>2]=g;H[h+4>>2]=17;H[h+8>>2]=-2147483616;F[g+17|0]=0;F[g+16|0]=I[10560];c=I[10556]|I[10557]<<8|(I[10558]<<16|I[10559]<<24);b=g;e=I[10552]|I[10553]<<8|(I[10554]<<16|I[10555]<<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[10548]|I[10549]<<8|(I[10550]<<16|I[10551]<<24);e=I[10544]|I[10545]<<8|(I[10546]<<16|I[10547]<<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;c=i;e=H[c>>2];g:{h:{if(!e){break h}while(1){b=H[e+16>>2]<(m|0);c=b?c:e;e=H[(b<<2)+e>>2];if(e){continue}break}if((c|0)==(i|0)){break h}b=d;if(H[c+16>>2]>(m|0)){break g}e=H[c+24>>2];if(!e){break h}b=c+20|0;while(1){c=I[e+27|0];n=c<<24>>24<0;c=n?H[e+20>>2]:c;r=c>>>0<17;p=r?c:17;i:{j:{k:{if(p){o=e+16|0;n=n?H[o>>2]:o;o=Ca(g,n,p);l:{if(!o){if(c>>>0<=17){break l}break i}if((o|0)<=-1){break i}}c=Ca(n,g,p);if(!c){break k}if((c|0)>-1){break g}break j}if(c>>>0>17){break i}}if(!r){break g}}e=e+4|0}e=H[e>>2];if(e){continue}break}}b=d}b=hb(b,h,-1);if(F[h+11|0]<=-1){qa(H[h>>2])}if((b|0)<1){break f}e=H[k+8>>2];c=H[k+12>>2]}m=m+1|0;if((m|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=_b(b);H[b>>2]=13852;break c}if((q|0)==1){b=ra(32);H[h>>2]=b;H[h+4>>2]=24;H[h+8>>2]=-2147483616;F[b+24|0]=0;c=I[10582]|I[10583]<<8|(I[10584]<<16|I[10585]<<24);d=I[10578]|I[10579]<<8|(I[10580]<<16|I[10581]<<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[10574]|I[10575]<<8|(I[10576]<<16|I[10577]<<24);d=I[10570]|I[10571]<<8|(I[10572]<<16|I[10573]<<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[10566]|I[10567]<<8|(I[10568]<<16|I[10569]<<24);d=I[10562]|I[10563]<<8|(I[10564]<<16|I[10565]<<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[a>>2]=-1;Ja(a+4|0,h);if(F[h+11|0]>-1){break b}qa(H[h>>2]);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=_b(b);H[b>>2]=14028}H[e+4>>2]=k;Df(a,e,d,l);if(!H[a>>2]){if(F[a+15|0]<=-1){qa(H[a+4>>2])}b=H[e+52>>2];H[f+44>>2]=0;H[f+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)}da=h+16|0;break a}g=da-16|0;da=g;d=ra(16);H[g>>2]=d;H[g+4>>2]=15;H[g+8>>2]=-2147483632;F[d+15|0]=0;f=I[10539]|I[10540]<<8|(I[10541]<<16|I[10542]<<24);i=I[10535]|I[10536]<<8|(I[10537]<<16|I[10538]<<24);F[d+7|0]=i;F[d+8|0]=i>>>8;F[d+9|0]=i>>>16;F[d+10|0]=i>>>24;F[d+11|0]=f;F[d+12|0]=f>>>8;F[d+13|0]=f>>>16;F[d+14|0]=f>>>24;f=I[10532]|I[10533]<<8|(I[10534]<<16|I[10535]<<24);i=I[10528]|I[10529]<<8|(I[10530]<<16|I[10531]<<24);F[d|0]=i;F[d+1|0]=i>>>8;F[d+2|0]=i>>>16;F[d+3|0]=i>>>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=b+4|0;d=hb(f,g,-1);if(F[g+11|0]<=-1){qa(H[g>>2])}m:{n:{o:{switch(d+1|0){case 0:if((fb(f)|0)==10){break n}break;case 2:break o;default:break n}}d=ra(68);Ef(d);H[d+64>>2]=0;H[d>>2]=10940;break m}d=ra(64);Ef(d);H[d>>2]=13220}H[d+56>>2]=l;H[d+4>>2]=l;Df(a,d,f,c);if(!H[a>>2]){if(F[a+15|0]<=-1){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=g+16|0}da=j+16|0}function Df(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=da-32|0;da=g;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);H[g+8>>2]=b;H[g+12>>2]=23;H[g+16>>2]=-2147483616;F[b+23|0]=0;c=I[13571]|I[13572]<<8|(I[13573]<<16|I[13574]<<24);d=I[13567]|I[13568]<<8|(I[13569]<<16|I[13570]<<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[13564]|I[13565]<<8|(I[13566]<<16|I[13567]<<24);d=I[13560]|I[13561]<<8|(I[13562]<<16|I[13563]<<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[13556]|I[13557]<<8|(I[13558]<<16|I[13559]<<24);d=I[13552]|I[13553]<<8|(I[13554]<<16|I[13555]<<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[a>>2]=-1;Ja(a+4|0,g+8|0);if(F[g+19|0]>-1){break a}qa(H[g+8>>2]);break a}d=a;a=da-16|0;da=a;e=H[b+44>>2];f=H[e+20>>2];if((f|0)<0?1:(f|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],13704,13709)}e=fa[H[H[b>>2]+8>>2]](b)|0;F[a+15|0]=e;F[a+14|0]=2;F[a+13|0]=e&255?2:3;e=H[b+44>>2];f=H[e+20>>2];b:{if((f|0)>0?1:(f|0)>=0?H[e+16>>2]:0){break b}va(e,H[e+4>>2],a+14|0,a+15|0);e=H[b+44>>2];f=H[e+20>>2];if((f|0)>0?1:(f|0)>=0?H[e+16>>2]:0){break b}va(e,H[e+4>>2],a+13|0,a+14|0);e=H[b+44>>2];f=H[e+20>>2];if((f|0)>0?1:(f|0)>=0?H[e+16>>2]:0){break b}va(e,H[e+4>>2],a+15|0,a+16|0);e=H[b+44>>2]}l=a,m=fa[H[H[b>>2]+12>>2]](b)|0,F[l+12|0]=m;f=H[e+20>>2];if((f|0)<0?1:(f|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],a+12|0,a+13|0)}G[a+10>>1]=(H[H[b+4>>2]+4>>2]!=0)<<15;e=H[b+44>>2];f=H[e+20>>2];if((f|0)<0?1:(f|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],a+10|0,a+12|0)}H[d>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;da=a+16|0;if(H[d>>2]){break a}e=d+4|0;if(F[d+15|0]<=-1){qa(H[e>>2])}a=H[H[b+4>>2]+4>>2];c:{if(!a){H[d>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;break c}j=g+24|0;f=H[b+44>>2];if(a){Ga(H[a+28>>2]-H[a+24>>2]>>2,f);h=H[a+24>>2];k=H[a+28>>2];if((h|0)!=(k|0)){while(1){i=H[h>>2];if(i){Ga(H[i+24>>2],f);Xc(j,f,i)}h=h+4|0;if((k|0)!=(h|0)){continue}break}}Xc(j,f,a)}if(!a){a=ra(32);H[g+8>>2]=a;H[g+12>>2]=26;H[g+16>>2]=-2147483616;F[a+26|0]=0;f=I[13734]|I[13735]<<8;F[a+24|0]=f;F[a+25|0]=f>>>8;f=I[13730]|I[13731]<<8|(I[13732]<<16|I[13733]<<24);h=I[13726]|I[13727]<<8|(I[13728]<<16|I[13729]<<24);F[a+16|0]=h;F[a+17|0]=h>>>8;F[a+18|0]=h>>>16;F[a+19|0]=h>>>24;F[a+20|0]=f;F[a+21|0]=f>>>8;F[a+22|0]=f>>>16;F[a+23|0]=f>>>24;f=I[13722]|I[13723]<<8|(I[13724]<<16|I[13725]<<24);h=I[13718]|I[13719]<<8|(I[13720]<<16|I[13721]<<24);F[a+8|0]=h;F[a+9|0]=h>>>8;F[a+10|0]=h>>>16;F[a+11|0]=h>>>24;F[a+12|0]=f;F[a+13|0]=f>>>8;F[a+14|0]=f>>>16;F[a+15|0]=f>>>24;f=I[13714]|I[13715]<<8|(I[13716]<<16|I[13717]<<24);h=I[13710]|I[13711]<<8|(I[13712]<<16|I[13713]<<24);F[a|0]=h;F[a+1|0]=h>>>8;F[a+2|0]=h>>>16;F[a+3|0]=h>>>24;F[a+4|0]=f;F[a+5|0]=f>>>8;F[a+6|0]=f>>>16;F[a+7|0]=f>>>24;H[d>>2]=-1;Ja(e,g+8|0);if(F[g+19|0]<=-1){qa(H[g+8>>2])}if(H[d>>2]){break a}break c}H[d>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0}if(F[e+11|0]<=-1){qa(H[e>>2])}if(!(fa[H[H[b>>2]+16>>2]](b)|0)){a=ra(32);H[g+8>>2]=a;H[g+12>>2]=29;H[g+16>>2]=-2147483616;F[a+29|0]=0;b=I[13601]|I[13602]<<8|(I[13603]<<16|I[13604]<<24);c=I[13597]|I[13598]<<8|(I[13599]<<16|I[13600]<<24);F[a+21|0]=c;F[a+22|0]=c>>>8;F[a+23|0]=c>>>16;F[a+24|0]=c>>>24;F[a+25|0]=b;F[a+26|0]=b>>>8;F[a+27|0]=b>>>16;F[a+28|0]=b>>>24;b=I[13596]|I[13597]<<8|(I[13598]<<16|I[13599]<<24);c=I[13592]|I[13593]<<8|(I[13594]<<16|I[13595]<<24);F[a+16|0]=c;F[a+17|0]=c>>>8;F[a+18|0]=c>>>16;F[a+19|0]=c>>>24;F[a+20|0]=b;F[a+21|0]=b>>>8;F[a+22|0]=b>>>16;F[a+23|0]=b>>>24;b=I[13588]|I[13589]<<8|(I[13590]<<16|I[13591]<<24);c=I[13584]|I[13585]<<8|(I[13586]<<16|I[13587]<<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[13580]|I[13581]<<8|(I[13582]<<16|I[13583]<<24);c=I[13576]|I[13577]<<8|(I[13578]<<16|I[13579]<<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;H[d>>2]=-1;Ja(e,g+8|0);if(F[g+19|0]>-1){break a}qa(H[g+8>>2]);break a}if(!(fa[H[H[b>>2]+20>>2]](b)|0)){a=ra(32);H[g+8>>2]=a;H[g+12>>2]=31;H[g+16>>2]=-2147483616;F[a+31|0]=0;b=I[13633]|I[13634]<<8|(I[13635]<<16|I[13636]<<24);c=I[13629]|I[13630]<<8|(I[13631]<<16|I[13632]<<24);F[a+23|0]=c;F[a+24|0]=c>>>8;F[a+25|0]=c>>>16;F[a+26|0]=c>>>24;F[a+27|0]=b;F[a+28|0]=b>>>8;F[a+29|0]=b>>>16;F[a+30|0]=b>>>24;b=I[13626]|I[13627]<<8|(I[13628]<<16|I[13629]<<24);c=I[13622]|I[13623]<<8|(I[13624]<<16|I[13625]<<24);F[a+16|0]=c;F[a+17|0]=c>>>8;F[a+18|0]=c>>>16;F[a+19|0]=c>>>24;F[a+20|0]=b;F[a+21|0]=b>>>8;F[a+22|0]=b>>>16;F[a+23|0]=b>>>24;b=I[13618]|I[13619]<<8|(I[13620]<<16|I[13621]<<24);c=I[13614]|I[13615]<<8|(I[13616]<<16|I[13617]<<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[13610]|I[13611]<<8|(I[13612]<<16|I[13613]<<24);c=I[13606]|I[13607]<<8|(I[13608]<<16|I[13609]<<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;H[d>>2]=-1;Ja(e,g+8|0);if(F[g+19|0]>-1){break a}qa(H[g+8>>2]);break a}fa[H[H[b>>2]+24>>2]](d,b);if(H[d>>2]){break a}if(F[e+11|0]<=-1){qa(H[e>>2])}if(!(fa[H[H[b>>2]+28>>2]](b)|0)){a=ec(g+8|0,13638);H[d>>2]=-1;Ja(e,a);if(F[a+11|0]>-1){break a}qa(H[a>>2]);break a}a=ec(g+8|0,13673);c=Tb(c,a,0);if(F[a+11|0]<=-1){qa(H[a>>2])}if(c){fa[H[H[b>>2]+48>>2]](b)}H[d>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0}da=g+32|0}function Zd(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,P=0,R=0;k=da-32|0;da=k;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((i|0)<0?1:(i|0)<=0?!H[e+16>>2]:0){d=a+4|0;va(e,H[e+4>>2],a,d);i=H[e+20>>2];if((i|0)<0?1:(i|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){A=a+12|0;Sd(A);B=a+1068|0;d=B;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];C=a+1088|0;d=C;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];D=a+1108|0;d=D;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[k+24>>2]=H[b+8>>2];d=H[b+4>>2];H[k+16>>2]=H[b>>2];H[k+20>>2]=d;H[k+8>>2]=H[c+8>>2];b=H[c+4>>2];H[k>>2]=H[c>>2];H[k+4>>2]=b;b=0;c=0;f=da-32|0;da=f;i=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;c=a+b|0;H[f+16>>2]=c;ta(b,0,a);H[f+12>>2]=c}a=H[i+1164>>2];d=H[a>>2];if(d){H[a+4>>2]=d;qa(d);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;g=H[i+8>>2];c=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=c;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[i+1176>>2];d=H[c>>2];if(d){H[c+4>>2]=d;qa(d);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];x=H[k+4>>2];E=H[k+8>>2];y=H[k+20>>2];F=H[k+24>>2];b=H[k>>2];c=H[k+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;d=(a>>>0)/113|0;a=H[H[f+12>>2]+(d<<2)>>2]+N(a-N(d,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]=y;H[a+8>>2]=F;H[a>>2]=c;H[a+16>>2]=x;H[a+20>>2]=E;a=H[f+28>>2];g=a+1|0;H[f+28>>2]=g;if(a>>>0<=g>>>0){L=i+1068|0;M=i+1108|0;G=x;u=y;I=H[k+8>>2];t=H[k+24>>2];O=t&-4;P=t&3;R=t-1>>>0<3;while(1){l=H[f+12>>2];c=H[f+24>>2];j=g-1|0;a=c+j|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];q=H[a+12>>2];d=H[a>>2];H[f+28>>2]=j;a=H[f+16>>2];j=a-l|0;if(((j?N(j>>2,113)-1|0:0)-(c+g|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}H[k+16>>2]=d;H[k>>2]=q;g=(b|0)==(H[i+8>>2]-1|0)?0:b+1|0;j=g<<2;w=N(z,12);l=w+H[i+1176>>2]|0;b=H[i>>2]-H[j+H[l>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{r=q-d|0;if(r>>>0<=2){c=H[i+1152>>2];H[c>>2]=g;b=1;a=H[i+8>>2];if(a>>>0>1){break g}break f}c=H[i+1164>>2];a=c+w|0;h=c;c=w+12|0;eb(h+c|0,H[a>>2],H[a+4>>2]);a=j+H[c+H[i+1164>>2]>>2]|0;o=H[a>>2]+(1<>2]=o;a=d;h:{if((q|0)==(a|0)){break h}J=H[u+24>>2];b=d;a=q;if(!t){if(o>>>0>K[j+J>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(o>>>0<=K[(j+H[G+24>>2]|0)+(N(a,I)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){n=(N(b,t)<<2)+J|0;if(o>>>0>K[n+j>>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}s=H[G+24>>2]+(N(a,I)<<2)|0;if(o>>>0<=K[s+j>>2]){continue}break}l=0;c=O;if(!R){while(1){m=l<<2;h=m+n|0;p=H[h>>2];v=h;h=m+s|0;H[v>>2]=H[h>>2];H[h>>2]=p;h=m|4;p=h+n|0;v=H[p>>2];h=h+s|0;H[p>>2]=H[h>>2];H[h>>2]=v;h=m|8;p=h+n|0;v=H[p>>2];h=h+s|0;H[p>>2]=H[h>>2];H[h>>2]=v;m=m|12;h=m+n|0;p=H[h>>2];m=m+s|0;H[h>>2]=H[m>>2];H[m>>2]=p;l=l+4|0;c=c-4|0;if(c){continue}break}}c=P;if(c){while(1){m=l<<2;h=m+n|0;p=H[h>>2];m=m+s|0;H[h>>2]=H[m>>2];H[m>>2]=p;l=l+1|0;c=c-1|0;if(c){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}l=a-d|0;o=q-a|0;if((l|0)!=(o|0)){ic(M,l>>>0>>0)}s=z+1|0;b=Q(r);n=b^31;c=r>>>1|0;i:{if(l>>>0>>0){if(!n){break i}r=c-l|0;b=1<<30-b;c=0;while(1){Ea(((c<<5)+i|0)+12|0,(b&r)!=0);b=b>>>1|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}break i}if(!n){break i}r=c-o|0;b=1<<30-b;c=0;while(1){Ea(((c<<5)+i|0)+12|0,(b&r)!=0);b=b>>>1|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}h=j;b=H[i+1176>>2];c=b+w|0;j=H[c>>2];n=h+j|0;H[n>>2]=H[n>>2]+1;eb(b+N(s,12)|0,j,H[c+4>>2]);if((a|0)!=(d|0)){b=H[f+28>>2]+H[f+24>>2]|0;c=H[f+12>>2];j=H[f+16>>2]-c|0;if((b|0)==((j?N(j>>2,113)-1|0:0)|0)){kb(f+8|0);c=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}h=c;c=(b>>>0)/113|0;b=H[h+(c<<2)>>2]+N(b-N(c,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]=y;H[b+8>>2]=F;H[b>>2]=d;H[b+20>>2]=t;H[b+16>>2]=u;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(q|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;c=H[f+12>>2];d=H[f+16>>2]-c|0;if((b|0)==((d?N(d>>2,113)-1|0:0)|0)){kb(f+8|0);c=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}d=c;c=(b>>>0)/113|0;b=H[d+(c<<2)>>2]+N(b-N(c,113)|0,36)|0;H[b+32>>2]=s;H[b+28>>2]=o;H[b+24>>2]=g;H[b+12>>2]=q;H[b+8>>2]=t;H[b+4>>2]=u;H[b>>2]=a;H[b+16>>2]=x;H[b+20>>2]=E;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[c+(b<<2)>>2]=g;a=H[i+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}c=0;b=a;if(!r){break e}while(1){j:{if(!b){b=0;break j}q=H[u+24>>2]+(N(H[u+4>>2],c+d|0)<<2)|0;g=0;while(1){b=H[H[i+1152>>2]+(g<<2)>>2]<<2;j=H[i>>2]-H[b+H[l>>2]>>2]|0;if(j){Nb(L,j,H[b+q>>2]);a=H[i+8>>2]}b=a;g=g+1|0;if(g>>>0>>0){continue}break}}c=c+1|0;if((r|0)!=(c|0)){continue}break}}g=H[f+28>>2]}if(g){continue}break}}H[f+28>>2]=0;c=H[f+16>>2];g=H[f+12>>2];a=c-g>>2;if(a>>>0>=3){while(1){qa(H[g>>2]);g=H[f+12>>2]+4|0;H[f+12>>2]=g;c=H[f+16>>2];a=c-g>>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)==(g|0)){break l}while(1){qa(H[g>>2]);g=g+4|0;if((g|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()}Rd(A,e);jb(B,e);jb(C,e);jb(D,e)}da=k+32|0;return 1}function Hj(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+-64|0;da=f;H[f+40>>2]=c;a:{if(!Md(a,b,c)){break a}m=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];if(H[m+28>>2]!=9){break a}i=H[b+48>>2];h=ra(32);H[f+48>>2]=h;H[f+52>>2]=17;H[f+56>>2]=-2147483616;F[h+17|0]=0;F[h+16|0]=I[9828];d=I[9824]|I[9825]<<8|(I[9826]<<16|I[9827]<<24);e=h;g=I[9820]|I[9821]<<8|(I[9822]<<16|I[9823]<<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[9816]|I[9817]<<8|(I[9818]<<16|I[9819]<<24);g=I[9812]|I[9813]<<8|(I[9814]<<16|I[9815]<<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=i+16|0;d=H[g>>2];b:{if(!d){break b}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 b}d=H[e+24>>2];if(!d){break b}c=e+20|0;while(1){e=I[d+27|0];g=e<<24>>24<0;e=g?H[d+20>>2]:e;k=e>>>0<17;c:{d:{l=k?e:17;e:{if(l){j=d+16|0;g=g?H[j>>2]:j;j=Ca(h,g,l);f:{if(!j){if(e>>>0<=17){break f}break c}if((j|0)<=-1){break c}}e=Ca(g,h,l);if(!e){break e}if((e|0)<=-1){break d}i=c;break b}if(e>>>0>17){break c}}if(k){break d}i=c;break b}d=d+4|0}d=H[d>>2];if(d){continue}break}}k=hb(i,f+48|0,-1);if(F[f+59|0]<=-1){qa(H[f+48>>2])}if((k|0)<1){d=0;break a}h=H[b+48>>2];c=ra(32);H[f+48>>2]=c;H[f+52>>2]=19;H[f+56>>2]=-2147483616;e=0;F[c+19|0]=0;d=I[9845]|I[9846]<<8|(I[9847]<<16|I[9848]<<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[9842]|I[9843]<<8|(I[9844]<<16|I[9845]<<24);i=I[9838]|I[9839]<<8|(I[9840]<<16|I[9841]<<24);F[c+8|0]=i;F[c+9|0]=i>>>8;F[c+10|0]=i>>>16;F[c+11|0]=i>>>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[9834]|I[9835]<<8|(I[9836]<<16|I[9837]<<24);i=I[9830]|I[9831]<<8|(I[9832]<<16|I[9833]<<24);F[c|0]=i;F[c+1|0]=i>>>8;F[c+2|0]=i>>>16;F[c+3|0]=i>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;g:{if(!jc(h,f+40|0,f+48|0)){break g}i=H[b+48>>2];c=ra(32);H[f+24>>2]=c;H[f+28>>2]=18;H[f+32>>2]=-2147483616;F[c+18|0]=0;e=I[9866]|I[9867]<<8;F[c+16|0]=e;F[c+17|0]=e>>>8;e=I[9862]|I[9863]<<8|(I[9864]<<16|I[9865]<<24);d=I[9858]|I[9859]<<8|(I[9860]<<16|I[9861]<<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[9854]|I[9855]<<8|(I[9856]<<16|I[9857]<<24);d=I[9850]|I[9851]<<8|(I[9852]<<16|I[9853]<<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=jc(i,f+40|0,f+24|0);if(F[f+35|0]>-1){break g}qa(H[f+24>>2])}if(F[f+59|0]<=-1){qa(H[f+48>>2])}h:{i:{j:{k:{l:{m:{if(e){c=F[m+24|0];H[f+32>>2]=0;H[f+24>>2]=0;H[f+28>>2]=0;i=0;if(c){if((c|0)<=-1){break m}c=c<<2;i=ra(c);H[f+24>>2]=i;e=c+i|0;H[f+32>>2]=e;ta(i,0,c);H[f+28>>2]=e}g=H[b+48>>2];c=ra(32);H[f+8>>2]=c;H[f+12>>2]=19;H[f+16>>2]=-2147483616;F[c+19|0]=0;e=I[9845]|I[9846]<<8|(I[9847]<<16|I[9848]<<24);F[c+15|0]=e;F[c+16|0]=e>>>8;F[c+17|0]=e>>>16;F[c+18|0]=e>>>24;e=I[9842]|I[9843]<<8|(I[9844]<<16|I[9845]<<24);d=I[9838]|I[9839]<<8|(I[9840]<<16|I[9841]<<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[9834]|I[9835]<<8|(I[9836]<<16|I[9837]<<24);d=I[9830]|I[9831]<<8|(I[9832]<<16|I[9833]<<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;c=F[m+24|0];n:{h=g+16|0;d=H[h>>2];if(!d){break n}l=H[f+40>>2];e=h;while(1){j=(l|0)>H[d+16>>2];e=j?e:d;d=H[(j<<2)+d>>2];if(d){continue}break}if((e|0)==(h|0)|(l|0)>2]){break n}d=e+20|0;if(!wg(d,f+8|0)){break n}e=c;h=da-32|0;da=h;c=gb(d,f+8|0);o:{if((c|0)==(d+4|0)){break o}g=Ja(h+16|0,c+28|0);d=F[g+11|0];p:{q:{if((d|0)<=-1){if(!H[g+4>>2]){break p}c=H[g>>2];break q}c=h+16|0;if(!d){break o}}if((e|0)>=1){d=0;while(1){r:{n=mc(c,h+12|0);j=c;c=H[h+12>>2];if((j|0)==(c|0)){break r}L[(d<<2)+i>>2]=n;d=d+1|0;if((e|0)!=(d|0)){continue}}break}d=I[g+11|0]}if(d<<24>>24>-1){break o}}qa(H[g>>2])}da=h+32|0;break i}e=gb(g,f+8|0);if((e|0)==(g+4|0)){break i}h=Ja(f+48|0,e+28|0);e=F[h+11|0];if((e|0)>-1){break l}if(!H[h+4>>2]){break j}d=H[h>>2];break k}d=0;if(!xg(a+40|0,m,k)){break a}break h}ua();X()}d=f+48|0;if(!e){break i}}if((c|0)>=1){e=0;while(1){s:{n=mc(d,f+44|0);g=d;d=H[f+44>>2];if((g|0)==(d|0)){break s}L[(e<<2)+i>>2]=n;e=e+1|0;if((c|0)!=(e|0)){continue}}break}e=I[h+11|0]}if(e<<24>>24>-1){break i}}qa(H[h>>2])}if(F[f+19|0]<=-1){qa(H[f+8>>2])}b=H[b+48>>2];c=ra(32);H[f+48>>2]=c;H[f+52>>2]=18;H[f+56>>2]=-2147483616;F[c+18|0]=0;e=I[9866]|I[9867]<<8;F[c+16|0]=e;F[c+17|0]=e>>>8;e=I[9862]|I[9863]<<8|(I[9864]<<16|I[9865]<<24);d=I[9858]|I[9859]<<8|(I[9860]<<16|I[9861]<<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[9854]|I[9855]<<8|(I[9856]<<16|I[9857]<<24);d=I[9850]|I[9851]<<8|(I[9852]<<16|I[9853]<<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;c=b+16|0;d=H[c>>2];t:{u:{if(!d){break u}i=H[f+40>>2];e=c;while(1){h=(i|0)>H[d+16>>2];e=h?e:d;d=H[(h<<2)+d>>2];if(d){continue}break}if((c|0)==(e|0)|(i|0)>2]){break u}d=e+20|0;if(wg(d,f+48|0)){break t}}d=b}n=xf(d,f+48|0);if(F[f+59|0]<=-1){qa(H[f+48>>2])}b=Fg(a+40|0,k,H[f+24>>2],F[m+24|0],n);a=H[f+24>>2];if(a){H[f+28>>2]=a;qa(a)}d=0;if(!b){break a}}d=1}da=f- -64|0;return d|0}function Ud(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,P=0,R=0,S=0;k=da-32|0;da=k;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((i|0)<0?1:(i|0)<=0?!H[e+16>>2]:0){d=a+4|0;va(e,H[e+4>>2],a,d);i=H[e+20>>2];if((i|0)<0?1:(i|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){A=a+12|0;d=A;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];B=a+32|0;d=B;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];C=a+52|0;d=C;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];D=a+72|0;d=D;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[k+24>>2]=H[b+8>>2];d=H[b+4>>2];H[k+16>>2]=H[b>>2];H[k+20>>2]=d;H[k+8>>2]=H[c+8>>2];b=H[c+4>>2];H[k>>2]=H[c>>2];H[k+4>>2]=b;b=0;c=0;f=da-32|0;da=f;i=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;c=a+b|0;H[f+16>>2]=c;ta(b,0,a);H[f+12>>2]=c}a=H[i+128>>2];d=H[a>>2];if(d){H[a+4>>2]=d;qa(d);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;g=H[i+8>>2];c=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=c;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[i+140>>2];d=H[c>>2];if(d){H[c+4>>2]=d;qa(d);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];x=H[k+4>>2];E=H[k+8>>2];y=H[k+20>>2];F=H[k+24>>2];b=H[k>>2];c=H[k+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;d=(a>>>0)/113|0;a=H[H[f+12>>2]+(d<<2)>>2]+N(a-N(d,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]=y;H[a+8>>2]=F;H[a>>2]=c;H[a+16>>2]=x;H[a+20>>2]=E;a=H[f+28>>2];g=a+1|0;H[f+28>>2]=g;if(a>>>0<=g>>>0){L=i+32|0;M=i+12|0;O=i+72|0;G=x;t=y;I=H[k+8>>2];r=H[k+24>>2];P=r&-4;R=r&3;S=r-1>>>0<3;while(1){l=H[f+12>>2];c=H[f+24>>2];j=g-1|0;a=c+j|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];q=H[a+12>>2];d=H[a>>2];H[f+28>>2]=j;a=H[f+16>>2];j=a-l|0;if(((j?N(j>>2,113)-1|0:0)-(c+g|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}H[k+16>>2]=d;H[k>>2]=q;g=(b|0)==(H[i+8>>2]-1|0)?0:b+1|0;j=g<<2;w=N(z,12);l=w+H[i+140>>2]|0;b=H[i>>2]-H[j+H[l>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{u=q-d|0;if(u>>>0<=2){c=H[i+116>>2];H[c>>2]=g;b=1;a=H[i+8>>2];if(a>>>0>1){break g}break f}c=H[i+128>>2];a=c+w|0;h=c;c=w+12|0;eb(h+c|0,H[a>>2],H[a+4>>2]);a=j+H[c+H[i+128>>2]>>2]|0;o=H[a>>2]+(1<>2]=o;a=d;h:{if((q|0)==(a|0)){break h}J=H[t+24>>2];b=d;a=q;if(!r){if(K[j+J>>2]>>0){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(K[(j+H[G+24>>2]|0)+(N(a,I)<<2)>>2]>=o>>>0){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){n=(N(b,r)<<2)+J|0;if(K[n+j>>2]>>0){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}s=H[G+24>>2]+(N(a,I)<<2)|0;if(K[s+j>>2]>=o>>>0){continue}break}l=0;c=P;if(!S){while(1){m=l<<2;h=m+n|0;p=H[h>>2];v=h;h=m+s|0;H[v>>2]=H[h>>2];H[h>>2]=p;h=m|4;p=h+n|0;v=H[p>>2];h=h+s|0;H[p>>2]=H[h>>2];H[h>>2]=v;h=m|8;p=h+n|0;v=H[p>>2];h=h+s|0;H[p>>2]=H[h>>2];H[h>>2]=v;m=m|12;h=m+n|0;p=H[h>>2];m=m+s|0;H[h>>2]=H[m>>2];H[m>>2]=p;l=l+4|0;c=c-4|0;if(c){continue}break}}c=R;if(c){while(1){m=l<<2;h=m+n|0;p=H[h>>2];m=m+s|0;H[h>>2]=H[m>>2];H[m>>2]=p;l=l+1|0;c=c-1|0;if(c){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}l=a-d|0;o=q-a|0;if((l|0)!=(o|0)){ic(O,l>>>0>>0)}Nb(M,Q(u)^31,(u>>>1|0)-(l>>>0>>0?l:o)|0);h=j;b=H[i+140>>2];c=b+w|0;j=H[c>>2];n=h+j|0;H[n>>2]=H[n>>2]+1;n=z+1|0;eb(b+N(n,12)|0,j,H[c+4>>2]);if((a|0)!=(d|0)){c=H[f+28>>2]+H[f+24>>2]|0;b=H[f+12>>2];j=H[f+16>>2]-b|0;if((c|0)==((j?N(j>>2,113)-1|0:0)|0)){kb(f+8|0);c=H[f+24>>2]+H[f+28>>2]|0;h=H[f+12>>2]}else{h=b}b=(c>>>0)/113|0;b=H[h+(b<<2)>>2]+N(c-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]=y;H[b+8>>2]=F;H[b>>2]=d;H[b+20>>2]=r;H[b+16>>2]=t;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(q|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;c=H[f+12>>2];d=H[f+16>>2]-c|0;if((b|0)==((d?N(d>>2,113)-1|0:0)|0)){kb(f+8|0);c=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}d=c;c=(b>>>0)/113|0;b=H[d+(c<<2)>>2]+N(b-N(c,113)|0,36)|0;H[b+32>>2]=n;H[b+28>>2]=o;H[b+24>>2]=g;H[b+12>>2]=q;H[b+8>>2]=r;H[b+4>>2]=t;H[b>>2]=a;H[b+16>>2]=x;H[b+20>>2]=E;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[c+(b<<2)>>2]=g;a=H[i+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}c=0;b=a;if(!u){break e}while(1){i:{if(!b){b=0;break i}q=H[t+24>>2]+(N(H[t+4>>2],c+d|0)<<2)|0;g=0;while(1){b=H[H[i+116>>2]+(g<<2)>>2]<<2;j=H[i>>2]-H[b+H[l>>2]>>2]|0;if(j){Nb(L,j,H[b+q>>2]);a=H[i+8>>2]}b=a;g=g+1|0;if(g>>>0>>0){continue}break}}c=c+1|0;if((u|0)!=(c|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()}jb(A,e);jb(B,e);jb(C,e);jb(D,e)}da=k+32|0;return 1}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,B=0,C=0;l=da-560|0;da=l;H[l+44>>2]=0;A(+b);n=v(1)|0;v(0)|0;a:{if((n|0)<-1?1:(n|0)<=-1){w=1;b=-b;A(+b);n=v(1)|0;v(0)|0;g=17424;break a}w=1;g=17427;if(e&2048){break a}g=17430;if(e&1){break a}w=0;u=1;g=17425}y=g;b:{if((n&2146435072)==2146435072){k=w+3|0;$a(a,32,c,k,e&-65537);Ua(a,y,w);d=f&32;Ua(a,b!=b?d?17451:17455:d?17443:17447,3);break b}q=l+16|0;c:{d:{e:{b=He(b,l+44|0);b=b+b;if(b!=0){g=H[l+44>>2];H[l+44>>2]=g-1;x=f|32;if((x|0)!=97){break e}break c}x=f|32;if((x|0)==97){break c}o=H[l+44>>2];m=(d|0)<0?6:d;break d}o=g-29|0;H[l+44>>2]=o;b=b*268435456;m=(d|0)<0?6:d}p=(o|0)<0?l+48|0:l+336|0;h=p;while(1){d=h;if(b<4294967296&b>=0){g=~~b>>>0}else{g=0}H[d>>2]=g;h=h+4|0;b=(b-+(g>>>0))*1e9;if(b!=0){continue}break}f:{if((o|0)<1){d=o;g=h;i=p;break f}i=p;d=o;while(1){B=(d|0)<29?d:29;g=h-4|0;g:{if(i>>>0>g>>>0){break g}j=B;d=0;n=0;while(1){t=g;C=H[g>>2];k=j&31;if((j&63)>>>0>=32){z=C<>>32-k;k=C<>>0>k>>>0?z+1|0:z,1e9,0);k=el(d,ea,1e9,0);H[t>>2]=n-k;g=g-4|0;if(i>>>0<=g>>>0){n=0;continue}break}if(!d){break g}i=i-4|0;H[i>>2]=d}while(1){g=h;if(i>>>0>>0){h=g-4|0;if(!H[h>>2]){continue}}break}d=H[l+44>>2]-B|0;H[l+44>>2]=d;h=g;if((d|0)>0){continue}break}}h=(m+25|0)/9|0;if((d|0)<=-1){r=h+1|0;k=(x|0)==102;while(1){t=(d|0)<-9?9:0-d|0;h:{if(g>>>0>i>>>0){n=1e9>>>t|0;j=-1<>2];H[h>>2]=B+(d>>>t|0);d=N(n,d&j);h=h+4|0;if(h>>>0>>0){continue}break}i=H[i>>2]?i:i+4|0;if(!d){break h}H[g>>2]=d;g=g+4|0;break h}i=H[i>>2]?i:i+4|0}d=H[l+44>>2]+t|0;H[l+44>>2]=d;h=k?p:i;g=g-h>>2>(r|0)?h+(r<<2)|0:g;if((d|0)<0){continue}break}}h=0;i:{if(g>>>0<=i>>>0){break i}h=N(p-i>>2,9);j=H[i>>2];if(j>>>0<10){break i}d=100;while(1){h=h+1|0;if(d>>>0>j>>>0){break i}d=N(d,10);continue}}d=(m-((x|0)==102?0:h)|0)-((x|0)==103&(m|0)!=0)|0;if((d|0)<(N(g-p>>2,9)-9|0)){n=d+9216|0;j=(n|0)/9|0;k=((j<<2)+((o|0)<0?l+48|4:l+340|0)|0)-4096|0;d=10;j:{j=n-N(j,9)|0;if((j|0)>7){break j}d=100;while(1){j=j+1|0;if((j|0)==8){break j}d=N(d,10);continue}}o=H[k>>2];r=(o>>>0)/(d>>>0)|0;k:{n=o-N(d,r)|0;j=k+4|0;if((j|0)==(g|0)?!n:0){break k}b=(g|0)==(j|0)?1:1.5;j=d>>>1|0;s=j>>>0>n>>>0?.5:(j|0)==(n|0)?b:1.5;b=r&1?9007199254740994:9007199254740992;if(!(I[y|0]!=45|u)){s=-s;b=-b}j=o-n|0;H[k>>2]=j;if(b+s==b){break k}d=d+j|0;H[k>>2]=d;if(d>>>0>=1e9){while(1){H[k>>2]=0;k=k-4|0;if(k>>>0>>0){i=i-4|0;H[i>>2]=0}d=H[k>>2]+1|0;H[k>>2]=d;if(d>>>0>999999999){continue}break}}h=N(p-i>>2,9);j=H[i>>2];if(j>>>0<10){break k}d=100;while(1){h=h+1|0;if(d>>>0>j>>>0){break k}d=N(d,10);continue}}d=k+4|0;g=d>>>0>>0?d:g}while(1){o=g;j=g>>>0<=i>>>0;if(!j){g=o-4|0;if(!H[g>>2]){continue}}break}l:{if((x|0)!=103){u=e&8;break l}g=m?m:1;d=(g|0)>(h|0)&(h|0)>-5;m=(d?h^-1:-1)+g|0;f=(d?-1:-2)+f|0;u=e&8;if(u){break l}g=-9;m:{if(j){break m}d=H[o-4>>2];if(!d){break m}g=0;if((d>>>0)%10|0){break m}j=0;g=100;while(1){if(!((d>>>0)%(g>>>0)|0)){j=j+1|0;g=N(g,10);continue}break}g=j^-1}d=N(o-p>>2,9);if((f&-33)==70){u=0;d=(d+g|0)-9|0;d=(d|0)>0?d:0;m=(d|0)>(m|0)?m:d;break l}u=0;d=((d+h|0)+g|0)-9|0;d=(d|0)>0?d:0;m=(d|0)>(m|0)?m:d}t=m|u;k=(t|0)!=0;d=a;j=c;n=f&-33;g=(h|0)>0?h:0;n:{if((n|0)==70){break n}g=h>>31;g=Sb(g+h^g,0,q);if((q-g|0)<=1){while(1){g=g-1|0;F[g|0]=48;if((q-g|0)<2){continue}break}}r=g-2|0;F[r|0]=f;F[g-1|0]=(h|0)<0?45:43;g=q-r|0}k=(g+(k+(m+w|0)|0)|0)+1|0;$a(d,32,j,k,e);Ua(a,y,w);$a(a,48,c,k,e^65536);o:{p:{q:{if((n|0)==70){d=l+16|8;h=l+16|9;f=i>>>0>p>>>0?p:i;i=f;while(1){g=Sb(H[i>>2],0,h);r:{if((f|0)!=(i|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)!=(h|0)){break r}F[l+24|0]=48;g=d}Ua(a,g,h-g|0);i=i+4|0;if(p>>>0>=i>>>0){continue}break}if(t){Ua(a,17459,1)}if((m|0)<1|i>>>0>=o>>>0){break q}while(1){g=Sb(H[i>>2],0,h);if(g>>>0>l+16>>>0){while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}}Ua(a,g,(m|0)<9?m:9);g=m-9|0;i=i+4|0;if(o>>>0<=i>>>0){break p}d=(m|0)>9;m=g;if(d){continue}break}break p}s:{if((m|0)<0){break s}f=i>>>0>>0?o:i+4|0;j=l+16|9;d=l+16|8;h=i;while(1){g=Sb(H[h>>2],0,j);if((j|0)==(g|0)){F[l+24|0]=48;g=d}t:{if((h|0)!=(i|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}Ua(a,g,1);g=g+1|0;if((m|0)<1?!u:0){break t}Ua(a,17459,1)}o=g;g=j-g|0;Ua(a,o,(g|0)<(m|0)?g:m);m=m-g|0;h=h+4|0;if(f>>>0<=h>>>0){break s}if((m|0)>-1){continue}break}}$a(a,48,m+18|0,18,0);Ua(a,r,q-r|0);break o}g=m}$a(a,48,g+9|0,9,0)}break b}j=f&32;o=j?y+9|0:y;u:{if(d>>>0>11){break u}g=12-d|0;if(!g){break u}s=8;while(1){s=s*16;g=g-1|0;if(g){continue}break}if(I[o|0]==45){b=-(s+(-b-s));break u}b=b+s-s}g=H[l+44>>2];h=g>>31;g=Sb(h^g+h,0,q);if((q|0)==(g|0)){F[l+15|0]=48;g=l+15|0}m=w|2;h=H[l+44>>2];n=g-2|0;F[n|0]=f+15;F[g-1|0]=(h|0)<0?45:43;g=e&8;i=l+16|0;while(1){f=i;p=j;if(P(b)<2147483648){h=~~b}else{h=-2147483648}F[i|0]=p|I[h+17408|0];b=(b-+(h|0))*16;i=f+1|0;if(!((i-(l+16|0)|0)!=1|(b==0?!((d|0)>0|g):0))){F[f+1|0]=46;i=f+2|0}if(b!=0){continue}break}f=a;g=c;if(!d|((i-l|0)-18|0)>=(d|0)){j=(q-(n+(l+16|0)|0)|0)+i|0}else{j=((d+q|0)-n|0)+2|0}k=j+m|0;$a(f,32,g,k,e);Ua(a,o,m);$a(a,48,c,k,e^65536);d=i-(l+16|0)|0;Ua(a,l+16|0,d);f=d;d=q-n|0;$a(a,48,j-(f+d|0)|0,0,0);Ua(a,n,d)}$a(a,32,c,k,e^8192);da=l+560|0;return((c|0)>(k|0)?c:k)|0}function Uc(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;g=da-80|0;da=g;H[g+76>>2]=18405;t=g+55|0;q=g+56|0;a:{b:while(1){c:{if((o|0)<0){break c}if((2147483647-o|0)<(e|0)){H[4808]=61;o=-1;break c}o=e+o|0}d:{e:{f:{l=H[g+76>>2];e=l;f=I[e|0];if(f){while(1){g:{f=f&255;h:{if(!f){f=e;break h}if((f|0)!=37){break g}f=e;while(1){if(I[e+1|0]!=37){break h}h=e+2|0;H[g+76>>2]=h;f=f+1|0;i=I[e+2|0];e=h;if((i|0)==37){continue}break}}e=f-l|0;if(a){Ua(a,l,e)}if(e){continue b}h=g;e=H[g+76>>2];i:{if(!(I[e+2|0]!=36|F[H[g+76>>2]+1|0]-48>>>0>=10)){p=F[e+1|0]-48|0;s=1;e=e+3|0;break i}p=-1;e=e+1|0}H[h+76>>2]=e;i=0;j=F[e|0];f=j-32|0;j:{if(f>>>0>31){break j}f=1<>2]=h;j=F[e+1|0];e=j-32|0;if(e>>>0>=32){break k}e=1<>>0>=10){break n}e=H[g+76>>2];if(I[e+2|0]!=36){break n}H[((F[e+1|0]<<2)+d|0)-192>>2]=10;m=H[((F[e+1|0]<<3)+c|0)-384>>2];s=1;e=e+3|0;break m}if(s){break f}s=0;m=0;if(a){e=H[b>>2];H[b>>2]=e+4;m=H[e>>2]}e=H[g+76>>2]+1|0}H[h+76>>2]=e;if((m|0)>-1){break l}m=0-m|0;i=i|8192;break l}m=Fe(g+76|0);if((m|0)<0){break f}e=H[g+76>>2]}k=-1;o:{if(I[e|0]!=46){break o}if(I[e+1|0]==42){p:{if(F[e+2|0]-48>>>0>=10){break p}e=H[g+76>>2];if(I[e+3|0]!=36){break p}H[((F[e+2|0]<<2)+d|0)-192>>2]=10;k=H[((F[e+2|0]<<3)+c|0)-384>>2];e=e+4|0;H[g+76>>2]=e;break o}if(s){break f}if(a){e=H[b>>2];H[b>>2]=e+4;k=H[e>>2]}else{k=0}e=H[g+76>>2]+2|0;H[g+76>>2]=e;break o}H[g+76>>2]=e+1;k=Fe(g+76|0);e=H[g+76>>2]}f=0;while(1){r=f;n=-1;if(F[e|0]-65>>>0>57){break a}j=e+1|0;H[g+76>>2]=j;f=F[e|0];e=j;f=I[(f+N(r,58)|0)+16879|0];if(f-1>>>0<8){continue}break}q:{r:{if((f|0)!=19){if(!f){break a}if((p|0)>=0){H[(p<<2)+d>>2]=f;e=(p<<3)+c|0;f=H[e+4>>2];H[g+64>>2]=H[e>>2];H[g+68>>2]=f;break r}if(!a){break d}Ee(g- -64|0,f,b);j=H[g+76>>2];break q}if((p|0)>-1){break a}}e=0;if(!a){continue b}}h=i&-65537;f=i&8192?h:i;n=0;p=16920;i=q;s:{t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{e=F[j-1|0];e=r?(e&15)==3?e&-33:e:e;switch(e-88|0){case 11:break s;case 9:case 13:case 14:case 15:break t;case 27:break y;case 12:case 17:break B;case 23:break C;case 0:case 32:break D;case 24:break E;case 22:break F;case 29:break G;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 e;default:break H}}I:{switch(e-65|0){case 0:case 4:case 5:case 6:break t;case 2:break w;case 1:case 3:break e;default:break I}}if((e|0)==83){break x}break e}j=H[g+64>>2];h=H[g+68>>2];p=16920;break A}e=0;J:{switch(r&255){case 0:H[H[g+64>>2]>>2]=o;continue b;case 1:H[H[g+64>>2]>>2]=o;continue b;case 2:f=H[g+64>>2];H[f>>2]=o;H[f+4>>2]=o>>31;continue b;case 3:G[H[g+64>>2]>>1]=o;continue b;case 4:F[H[g+64>>2]]=o;continue b;case 6:H[H[g+64>>2]>>2]=o;continue b;case 7:break J;default:continue b}}f=H[g+64>>2];H[f>>2]=o;H[f+4>>2]=o>>31;continue b}k=k>>>0>8?k:8;f=f|8;e=120}l=q;u=e&32;r=H[g+68>>2];h=r;j=H[g+64>>2];if(h|j){while(1){l=l-1|0;F[l|0]=u|I[(j&15)+17408|0];r=h;h=h>>>4|0;j=(r&15)<<28|j>>>4;if(j|h){continue}break}}if(!(f&8)|!(H[g+64>>2]|H[g+68>>2])){break z}p=(e>>>4|0)+16920|0;n=2;break z}e=q;l=H[g+68>>2];h=l;j=H[g+64>>2];if(h|j){while(1){e=e-1|0;F[e|0]=j&7|48;l=h;h=h>>>3|0;j=(l&7)<<29|j>>>3;if(j|h){continue}break}}l=e;if(!(f&8)){break z}e=q-l|0;k=(e|0)<(k|0)?k:e+1|0;break z}e=H[g+68>>2];h=e;j=H[g+64>>2];if((e|0)<-1?1:(e|0)<=-1){h=0-(h+((j|0)!=0)|0)|0;j=0-j|0;H[g+64>>2]=j;H[g+68>>2]=h;n=1;p=16920;break A}if(f&2048){n=1;p=16921;break A}n=f&1;p=n?16922:16920}l=Sb(j,h,q)}f=(k|0)>-1?f&-65537:f;e=H[g+64>>2];h=H[g+68>>2];if(!(!!(e|h)|k)){k=0;l=q;break e}e=!(e|h)+(q-l|0)|0;k=(e|0)<(k|0)?k:e;break e}e=H[g+64>>2];l=e?e:16930;f=l;e=k;i=(e|0)!=0;K:{L:{M:{N:{if(!e|!(f&3)){break N}while(1){if(!I[f|0]){break M}f=f+1|0;e=e-1|0;i=(e|0)!=0;if(!e){break N}if(f&3){continue}break}}if(!i){break L}}O:{if(!I[f|0]|e>>>0<4){break O}while(1){i=H[f>>2];if((i^-1)&i-16843009&-2139062144){break O}f=f+4|0;e=e-4|0;if(e>>>0>3){continue}break}}if(!e){break L}while(1){i=f;if(!I[f|0]){break K}f=f+1|0;e=e-1|0;if(e){continue}break}}i=0}e=i;i=e?e:k+l|0;f=h;k=e?e-l|0:k;break e}i=H[g+64>>2];if(k){break v}e=0;$a(a,32,m,0,f);break u}H[g+12>>2]=0;H[g+8>>2]=H[g+64>>2];H[g+64>>2]=g+8;k=-1;i=g+8|0}e=0;P:{while(1){h=H[i>>2];if(!h){break P}h=Ie(g+4|0,h);l=(h|0)<0;if(!(l|h>>>0>k-e>>>0)){i=i+4|0;e=e+h|0;if(k>>>0>e>>>0){continue}break P}break}n=-1;if(l){break a}}$a(a,32,m,e,f);if(!e){e=0;break u}i=0;j=H[g+64>>2];while(1){h=H[j>>2];if(!h){break u}h=Ie(g+4|0,h);i=h+i|0;if((i|0)>(e|0)){break u}Ua(a,g+4|0,h);j=j+4|0;if(e>>>0>i>>>0){continue}break}}$a(a,32,m,e,f^8192);e=(e|0)<(m|0)?m:e;continue b}e=fa[368](a,M[g+64>>3],m,k,f,e)|0;continue b}F[g+55|0]=H[g+64>>2];k=1;l=t;f=h;break e}h=e+1|0;H[g+76>>2]=h;f=I[e+1|0];e=h;continue}}n=o;if(a){break a}if(!s){break d}e=1;while(1){a=H[(e<<2)+d>>2];if(a){Ee((e<<3)+c|0,a,b);n=1;e=e+1|0;if((e|0)!=10){continue}break a}break}n=1;if(e>>>0>=10){break a}while(1){if(H[(e<<2)+d>>2]){break f}e=e+1|0;if((e|0)!=10){continue}break}break a}n=-1;break a}i=i-l|0;j=(i|0)>(k|0)?i:k;h=j+n|0;e=(h|0)>(m|0)?h:m;$a(a,32,e,h,f);Ua(a,p,n);$a(a,48,e,h,f^65536);$a(a,48,j,i,0);Ua(a,l,i);$a(a,32,e,h,f^8192);continue}break}n=0}da=g+80|0;return n}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=O(0),o=0,p=0,q=0,r=0,s=0,t=O(0),u=0;f=da-112|0;da=f;H[f+88>>2]=0;H[f+92>>2]=0;H[f+80>>2]=0;H[f+84>>2]=0;H[f+96>>2]=1065353216;d=H[a+80>>2];H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}c=d<<2;e=ra(c);H[f+32>>2]=e;g=c+e|0;H[f+40>>2]=g;ta(e,0,c);H[f+36>>2]=g}b:{if(!d){break b}while(1){d=H[H[b>>2]>>2];s=j;c=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],j,0)|0;c=d+c|0;e=I[c+12|0]|I[c+13|0]<<8|(I[c+14|0]<<16|I[c+15|0]<<24);H[f+72>>2]=I[c+8|0]|I[c+9|0]<<8|(I[c+10|0]<<16|I[c+11|0]<<24);H[f+76>>2]=e;d=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);H[f+64>>2]=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[f+68>>2]=d;d=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);e=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);g=I[c+12|0]|I[c+13|0]<<8|(I[c+14|0]<<16|I[c+15|0]<<24);H[f+56>>2]=I[c+8|0]|I[c+9|0]<<8|(I[c+10|0]<<16|I[c+11|0]<<24);H[f+60>>2]=g;H[f+48>>2]=d;H[f+52>>2]=e;d=0;k=H[f+84>>2];c:{if(!k){break c}g=H[f+80>>2];p=H[f+60>>2];o=H[f+56>>2];i=H[f+52>>2];h=H[f+48>>2];e=p^(o^(i^(h^318)+239)+239)+239;c=e&k-1;r=hl(k);d:{if(r>>>0<=1){break d}c=e;if(c>>>0>>0){break d}c=(e>>>0)%(k>>>0)|0}l=c;c=H[(c<<2)+g>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(r>>>0<=1){g=k-1|0;while(1){k=H[c+4>>2];f:{if((k|0)!=(e|0)){if((l|0)!=(g&k)){break c}break f}if((h|0)!=H[c+8>>2]|(i|0)!=H[c+12>>2]|(o|0)!=H[c+16>>2]){break f}if((p|0)==H[c+20>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}while(1){g=H[c+4>>2];g:{if((g|0)!=(e|0)){if(g>>>0>=k>>>0){g=(g>>>0)%(k>>>0)|0}if((g|0)!=(l|0)){break c}break g}if((h|0)!=H[c+8>>2]|(i|0)!=H[c+12>>2]|(o|0)!=H[c+16>>2]){break g}if((p|0)==H[c+20>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}h:{if(d){H[H[f+32>>2]+(s<<2)>>2]=H[d+24>>2];break h}d=H[f+60>>2];H[f+16>>2]=H[f+56>>2];H[f+20>>2]=d;d=H[f+52>>2];H[f+8>>2]=H[f+48>>2];H[f+12>>2]=d;H[f+24>>2]=q;d=0;r=H[f+20>>2];p=H[f+16>>2];o=H[f+12>>2];k=H[f+8>>2];c=r^(p^(o^(k^318)+239)+239)+239;u=f;i=f+80|0;g=H[i+4>>2];i:{j:{if(!g){break j}e=H[i>>2];l=hl(g);d=c&g-1;k:{if(l>>>0<=1){break k}d=c;if(c>>>0>>0){break k}d=(c>>>0)%(g>>>0)|0}e=H[e+(d<<2)>>2];if(!e){break j}h=H[e>>2];if(!h){break j}if(l>>>0<=1){e=g-1|0;while(1){l=H[h+4>>2];if((e&l)!=(d|0)?(c|0)!=(l|0):0){break j}if(!((k|0)!=H[h+8>>2]|(o|0)!=H[h+12>>2]|((p|0)!=H[h+16>>2]|(r|0)!=H[h+20>>2]))){d=0;break i}h=H[h>>2];if(h){continue}break}break j}while(1){e=H[h+4>>2];if((e|0)!=(c|0)){if(e>>>0>=g>>>0){e=(e>>>0)%(g>>>0)|0}if((d|0)!=(e|0)){break j}}if(!((k|0)!=H[h+8>>2]|(o|0)!=H[h+12>>2]|((p|0)!=H[h+16>>2]|(r|0)!=H[h+20>>2]))){d=0;break i}h=H[h>>2];if(h){continue}break}}h=ra(28);e=H[f+20>>2];H[h+16>>2]=H[f+16>>2];H[h+20>>2]=e;e=H[f+12>>2];H[h+8>>2]=H[f+8>>2];H[h+12>>2]=e;e=H[f+24>>2];H[h>>2]=0;H[h+4>>2]=c;H[h+24>>2]=e;t=O(H[i+12>>2]+1>>>0);n=L[i+16>>2];l:{if(g?!(t>O(n*O(g>>>0))):0){break l}g=(g-1&g)!=0|g>>>0<3|g<<1;n=O(U(O(t/n)));m:{if(n=O(0)){e=~~n>>>0;break m}e=0}e=e>>>0>g>>>0?e:g;d=2;n:{if((e|0)==1){break n}d=e;if(!(e&e-1)){break n}d=Na(e)}e=H[i+4>>2];o:{if(d>>>0>e>>>0){xe(i,d);break o}p:{if(d>>>0>=e>>>0){break p}o=e>>>0<3;n=O(U(O(O(K[i+12>>2])/L[i+16>>2])));q:{if(n=O(0)){l=~~n>>>0;break q}l=0}g=l;l=e;r:{s:{if(o){break s}if(hl(e)>>>0>1){break s}e=g>>>0<2?g:1<<32-Q(g-1|0);break r}e=Na(g)}d=d>>>0>>0?e:d;if(l>>>0<=d>>>0){break p}xe(i,d)}}g=H[i+4>>2];if(!(g&g-1)){d=c&g-1;break l}if(c>>>0>>0){d=c;break l}d=(c>>>0)%(g>>>0)|0}c=H[i>>2]+(d<<2)|0;d=H[c>>2];t:{if(!d){H[h>>2]=H[i+8>>2];H[i+8>>2]=h;H[c>>2]=i+8;d=H[h>>2];if(!d){break t}c=H[d+4>>2];d=g-1|0;u:{if(!(d&g)){c=c&d;break u}if(c>>>0>>0){break u}c=(c>>>0)%(g>>>0)|0}H[H[i>>2]+(c<<2)>>2]=h;break t}H[h>>2]=H[d>>2];H[d>>2]=h}H[i+12>>2]=H[i+12>>2]+1;d=1}F[u+108|0]=d;H[f+104>>2]=h;d=H[a+40>>2];sa(H[H[a>>2]>>2]+N(d,q)|0,f- -64|0,d);H[H[f+32>>2]+(s<<2)>>2]=q;q=q+1|0}d=m;c=j+1|0;d=c>>>0<1?d+1|0:d;j=c;m=d;c=H[a+80>>2];if(!d&c>>>0>j>>>0){continue}break}if((c|0)==(q|0)){break b}v:{if(!I[a+84|0]){c=H[a+68>>2];b=H[a+72>>2]-c|0;if(!b){break v}m=H[f+32>>2];d=b>>31;d=(d+b^d)>>>2|0;b=(b|0)>-1?b:-1;b=N(d,(b|0)<1?b:1);e=b>>>0>1?b:1;d=e&3;b=0;if(e-1>>>0>=3){g=e&-4;while(1){e=b<<2;j=e+c|0;H[j>>2]=H[m+(H[j>>2]<<2)>>2];j=c+(e|4)|0;H[j>>2]=H[m+(H[j>>2]<<2)>>2];j=c+(e|8)|0;H[j>>2]=H[m+(H[j>>2]<<2)>>2];e=c+(e|12)|0;H[e>>2]=H[m+(H[e>>2]<<2)>>2];b=b+4|0;g=g-4|0;if(g){continue}break}}if(!d){break v}while(1){e=c+(b<<2)|0;H[e>>2]=H[m+(H[e>>2]<<2)>>2];b=b+1|0;d=d-1|0;if(d){continue}break}break v}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;w:{if(b>>>0>>0){Va(a+68|0,c-b|0,1420);c=H[a+80>>2];break w}if(b>>>0<=c>>>0){break w}H[a+72>>2]=d+(c<<2)}if(!c){break v}m=H[f+32>>2];d=c&3;e=H[a+68>>2];b=0;if(c-1>>>0>=3){g=c&-4;while(1){c=b<<2;H[c+e>>2]=H[c+m>>2];j=c|4;H[j+e>>2]=H[j+m>>2];j=c|8;H[j+e>>2]=H[j+m>>2];c=c|12;H[c+e>>2]=H[c+m>>2];b=b+4|0;g=g-4|0;if(g){continue}break}}if(!d){break v}while(1){c=b<<2;H[c+e>>2]=H[c+m>>2];b=b+1|0;d=d-1|0;if(d){continue}break}}H[a+80>>2]=q}a=H[f+32>>2];if(a){H[f+36>>2]=a;qa(a)}b=H[f+88>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[f+80>>2];H[f+80>>2]=0;if(a){qa(a)}da=f+112|0;return q}ua();X()}function wj(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[11028]|I[11029]<<8|(I[11030]<<16|I[11031]<<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[11024]|I[11025]<<8|(I[11026]<<16|I[11027]<<24);d=I[11020]|I[11021]<<8|(I[11022]<<16|I[11023]<<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[11016]|I[11017]<<8|(I[11018]<<16|I[11019]<<24);d=I[11012]|I[11013]<<8|(I[11014]<<16|I[11015]<<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=uf(f+24|0,e);if(F[e+11|0]<=-1){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[11051]|I[11052]<<8|(I[11053]<<16|I[11054]<<24);d=I[11047]|I[11048]<<8|(I[11049]<<16|I[11050]<<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[11045]|I[11046]<<8|(I[11047]<<16|I[11048]<<24);d=I[11041]|I[11042]<<8|(I[11043]<<16|I[11044]<<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[11037]|I[11038]<<8|(I[11039]<<16|I[11040]<<24);d=I[11033]|I[11034]<<8|(I[11035]<<16|I[11036]<<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=uf(g+24|0,e);if(F[e+11|0]<=-1){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[11072]|I[11073]<<8;F[b+16|0]=c;F[b+17|0]=c>>>8;c=I[11068]|I[11069]<<8|(I[11070]<<16|I[11071]<<24);d=I[11064]|I[11065]<<8|(I[11066]<<16|I[11067]<<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[11060]|I[11061]<<8|(I[11062]<<16|I[11063]<<24);d=I[11056]|I[11057]<<8|(I[11058]<<16|I[11059]<<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=hb(i,e,-1);if(F[e+11|0]<=-1){qa(H[e>>2])}c=(h-j|0)/12|0;a:{b:{c:{d:{e:{f:{g:{switch(b+1|0){case 3:break f;case 0:break g;case 1:break e;default:break c}}if(!f){break f}if(c>>>0<1e3|(fb(H[a+48>>2])|0)>4|g^1){break d}}b=H[a+44>>2];F[e|0]=2;c=H[b+20>>2];if((c|0)<0?1:(c|0)<=0?!H[b+16>>2]:0){va(b,H[b+4>>2],e,e+1|0)}c=ra(360);b=c;H[b+4>>2]=0;H[b+8>>2]=0;H[b>>2]=11428;H[b+72>>2]=0;H[b+76>>2]=0;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;b=b+200|0;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=c+232|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;b=c;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;d=H[a+64>>2];H[a+64>>2]=b;if(!d){break b}fa[H[H[d>>2]+4>>2]](d);break c}if(!f){break c}}b=H[a+44>>2];F[e|0]=0;c=H[b+20>>2];if((c|0)<0?1:(c|0)<=0?!H[b+16>>2]:0){va(b,H[b+4>>2],e,e+1|0)}c=ra(296);b=c;H[b+4>>2]=0;H[b+8>>2]=0;H[b>>2]=11196;H[b+72>>2]=0;H[b+76>>2]=0;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;b=b+200|0;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=c+232|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;F[c+288|0]=0;H[c+280>>2]=0;H[c+284>>2]=0;H[c+272>>2]=0;H[c+276>>2]=0;H[c+264>>2]=0;H[c+268>>2]=0;b=H[a+64>>2];H[a+64>>2]=c;if(!b){break b}fa[H[H[b>>2]+4>>2]](b)}c=H[a+64>>2];if(!c){break a}}a=fa[H[H[c>>2]+8>>2]](c,a)|0;da=e+16|0;return a|0}da=e+16|0;return 0}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,n=0,o=0,p=0,q=0,r=0;k=da-32|0;da=k;d=H[a+16>>2];H[a+20>>2]=d;a:{if((d|0)!=H[a+24>>2]){H[d>>2]=b;b=d+4|0;H[a+20>>2]=b;f=d;break a}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(!d){break a}qa(d);b=H[a+20>>2];f=H[a+16>>2]}d=H[a+8>>2];c=H[d+100>>2]-H[d+96>>2]|0;d=(c|0)/12|0;b:{c:{if((b|0)==(f|0)){break c}if((c|0)<1){while(1){d=b-4|0;c=H[d>>2];d:{if((c|0)!=-1){c=(c>>>0)/3|0;if(!(H[H[a+28>>2]+(c>>>3&268435452)>>2]>>>c&1)){break d}}H[a+20>>2]=d;b=d}if((b|0)!=(f|0)){continue}break c}}q=a+120|0;r=(d|0)>1?d:1;e:{f:{g:{while(1){h:{i:{j:{d=b-4|0;b=H[d>>2];if((b|0)==-1){break j}f=H[a+28>>2];c=(b>>>0)/3|0;if(H[f+(c>>>3&268435452)>>2]>>>c&1){break j}h=1;while(1){H[a+164>>2]=H[a+164>>2]+1;i=(b>>>0)/3|0;l=(b|0)==-1;j=l?-1:i;d=(j>>>3&536870908)+f|0;H[d>>2]=H[d>>2]|1<>2];k:{if((d|0)!=H[a+80>>2]){H[d>>2]=b;H[a+76>>2]=d+4;break k}f=H[a+72>>2];c=d-f|0;g=c>>2;e=g+1|0;if(e>>>0>1073741823){break h}m=c>>1;e=g>>>0<536870911?e>>>0>m>>>0?e:m:1073741823;d=0;l:{if(!e){break l}if(e>>>0>1073741823){break b}d=ra(e<<2)}g=d+(g<<2)|0;H[g>>2]=b;if((c|0)>=1){sa(d,f,c)}H[a+80>>2]=d+(e<<2);H[a+76>>2]=g+4;H[a+72>>2]=d;if(!f){break k}qa(f)}d=-1;d=(b|0)!=-1?H[H[H[a+12>>2]>>2]+(b<<2)>>2]:d;n=d<<2;m=H[n+H[a+152>>2]>>2];m:{n:{f=H[a+84>>2]+(d>>>3&536870908)|0;c=H[f>>2];d=1<>2]=d|c;if((m|0)==-1){break n}}o:{if(l){break o}f=-1;d=-1;c=b+1|0;e=(c>>>0)%3|0?c:b-2|0;if((e|0)!=-1){d=H[H[H[a+12>>2]+12>>2]+(e<<2)>>2]}c=(b-N(i,3)|0?-1:2)+b|0;if((c|0)!=-1){f=H[H[H[a+12>>2]+12>>2]+(c<<2)>>2]}g=(f|0)==-1;i=g?-1:(f>>>0)/3|0;l=(d>>>0)/3|0;p:{if((e|0)==-1){break p}o=H[H[a+12>>2]+12>>2];e=H[o+(e<<2)>>2];if((e|0)==-1){break p}p=H[a+28>>2];e=(e>>>0)/3|0;if(H[p+(e>>>3&268435452)>>2]>>>e&1){break p}q:{if((c|0)==-1){break q}c=H[(c<<2)+o>>2];if((c|0)==-1){break q}c=(c>>>0)/3|0;if(H[(c>>>3&268435452)+p>>2]>>>c&1){break q}c=H[a+272>>2];r:{if((c|0)!=H[a+276>>2]){H[c>>2]=1;H[a+272>>2]=c+4;break r}h=H[a+268>>2];e=c-h|0;i=e>>2;g=i+1|0;if(g>>>0>1073741823){break g}l=e>>1;g=i>>>0<536870911?g>>>0>l>>>0?g:l:1073741823;c=0;s:{if(!g){break s}if(g>>>0>1073741823){break b}c=ra(g<<2)}i=c+(i<<2)|0;H[i>>2]=1;if((e|0)>=1){sa(c,h,e)}H[a+276>>2]=c+(g<<2);H[a+272>>2]=i+4;H[a+268>>2]=c;if(!h){break r}qa(h)}H[a+168>>2]=H[a+168>>2]+1;t:{if((m|0)==-1){break t}c=H[H[a+152>>2]+n>>2];if(H[H[a+140>>2]+(c>>>3&536870908)>>2]>>>c&1){break t}tc(a,b,0)}b=H[a+164>>2];H[k+4>>2]=j;H[k+16>>2]=k+4;Qf(k+24|0,q,k+4|0,k+16|0);H[H[k+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]=d;H[a+20>>2]=b+4;break i}f=H[a+16>>2];c=b-f|0;e=c>>2;h=e+1|0;if(h>>>0>1073741823){break f}g=c>>1;h=e>>>0<536870911?g>>>0>>0?h:g:1073741823;b=0;u:{if(!h){break u}if(h>>>0>1073741823){break e}b=ra(h<<2)}e=b+(e<<2)|0;H[e>>2]=d;if((c|0)>=1){sa(b,f,c)}H[a+24>>2]=b+(h<<2);H[a+20>>2]=e+4;H[a+16>>2]=b;if(!f){break i}qa(f);break i}if(!g){Ub(a,H[a+164>>2],0,i)}b=H[a+272>>2];if((b|0)!=H[a+276>>2]){H[b>>2]=3;H[a+272>>2]=b+4;break m}f=H[a+268>>2];c=b-f|0;g=c>>2;e=g+1|0;if(e>>>0>1073741823){break g}j=c>>1;e=g>>>0<536870911?e>>>0>j>>>0?e:j:1073741823;b=0;v:{if(!e){break v}if(e>>>0>1073741823){break b}b=ra(e<<2)}g=b+(g<<2)|0;H[g>>2]=3;if((c|0)>=1){sa(b,f,c)}H[a+276>>2]=b+(e<<2);H[a+272>>2]=g+4;H[a+268>>2]=b;if(!f){break m}qa(f);break m}b=(d|0)==-1;if(!b){Ub(a,H[a+164>>2],1,b?-1:l)}w:{if((c|0)==-1){break w}b=H[H[H[a+12>>2]+12>>2]+(c<<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}b=H[a+272>>2];if((b|0)!=H[a+276>>2]){H[b>>2]=5;H[a+272>>2]=b+4;d=f;break m}d=H[a+268>>2];c=b-d|0;g=c>>2;e=g+1|0;if(e>>>0>1073741823){break g}j=c>>1;e=g>>>0<536870911?e>>>0>j>>>0?e:j:1073741823;b=0;x:{if(!e){break x}if(e>>>0>1073741823){break b}b=ra(e<<2)}g=b+(g<<2)|0;H[g>>2]=5;if((c|0)>=1){sa(b,d,c)}H[a+276>>2]=b+(e<<2);H[a+272>>2]=g+4;H[a+268>>2]=b;if(!d){d=f;break m}qa(d);d=f;break m}if(g){break o}Ub(a,H[a+164>>2],0,i)}b=H[a+272>>2];y:{if((b|0)!=H[a+276>>2]){H[b>>2]=7;H[a+272>>2]=b+4;break y}d=H[a+268>>2];f=b-d|0;h=f>>2;c=h+1|0;if(c>>>0>1073741823){break g}e=f>>1;c=h>>>0<536870911?c>>>0>e>>>0?c:e:1073741823;b=0;z:{if(!c){break z}if(c>>>0>1073741823){break b}b=ra(c<<2)}h=b+(h<<2)|0;H[h>>2]=7;if((f|0)>=1){sa(b,d,f)}H[a+276>>2]=b+(c<<2);H[a+272>>2]=h+4;H[a+268>>2]=b;if(!d){break y}qa(d)}H[a+20>>2]=H[a+20>>2]-4;break i}d=H[a+272>>2];A:{if((d|0)!=H[a+276>>2]){H[d>>2]=0;H[a+272>>2]=d+4;break A}f=H[a+268>>2];c=d-f|0;g=c>>2;e=g+1|0;if(e>>>0>1073741823){break g}j=c>>1;e=g>>>0<536870911?e>>>0>j>>>0?e:j:1073741823;d=0;B:{if(!e){break B}if(e>>>0>1073741823){break b}d=ra(e<<2)}g=d+(g<<2)|0;H[g>>2]=0;if((c|0)>=1){sa(d,f,c)}H[a+276>>2]=d+(e<<2);H[a+272>>2]=g+4;H[a+268>>2]=d;if(!f){break A}qa(f)}d=-1;if((b|0)==-1){break m}f=b+1|0;b=(f>>>0)%3|0?f:b-2|0;if((b|0)==-1){break m}d=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2]}if((h|0)==(r|0)){break i}h=h+1|0;f=H[a+28>>2];b=d;continue}}H[a+20>>2]=d}b=H[a+20>>2];if((b|0)!=H[a+16>>2]){continue}break c}break}ua();X()}ua();X()}ua();X()}break b}da=k+32|0;return 1}wa(11712);X()}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=0,r=O(0),s=0,t=0,u=0,v=0,w=O(0),x=0;d=da+-64|0;da=d;g=H[a+80>>2];v=d+40|0;b=v;H[b>>2]=0;H[b+4>>2]=0;H[d+56>>2]=a;H[d+48>>2]=a;H[d+32>>2]=0;H[d+36>>2]=0;H[d+52>>2]=1065353216;Me(d+32|0,g);g=H[a+80>>2];H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;a:{if(g){if(g>>>0>=1073741824){break a}b=g<<2;e=ra(b);H[d+16>>2]=e;c=b+e|0;H[d+24>>2]=c;ta(e,0,b);H[d+20>>2]=c}H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;b:{c:{d:{if(!g){break d}g=0;while(1){e=0;b=H[d+48>>2];l=H[b+8>>2];n=H[b+12>>2]-l|0;p=(n|0)<1;e:{if(p){break e}b=N(n>>>2|0,p?n:1);c=(b|0)>1?b:1;h=c&1;i=0;if((b|0)>=2){b=c&2147483646;while(1){f=i<<2;c=H[f+l>>2];if(I[c+84|0]){c=g}else{c=H[H[c+68>>2]+(g<<2)>>2]}i=i+2|0;j=c<<3^e<<2;e=H[l+(f|4)>>2];if(I[e+84|0]){c=g}else{c=H[H[e+68>>2]+(g<<2)>>2]}e=j^c<<2;b=b-2|0;if(b){continue}break}}if(!h){break e}b=H[l+(i<<2)>>2];if(I[b+84|0]){b=g}else{b=H[H[b+68>>2]+(g<<2)>>2]}e=b<<2^e<<1}f:{g:{j=H[d+36>>2];if(!j){break g}f=H[d+32>>2];h=hl(j)>>>0>1;c=j-1&e;h:{if(!h){break h}b=e;c=b;if(b>>>0>>0){break h}c=(e>>>0)%(j>>>0)|0}b=H[f+(c<<2)>>2];if(!b){break g}k=H[b>>2];if(!k){break g}o=H[d+56>>2];i:{j:{if(!h){q=j-1|0;while(1){b=H[k+4>>2];k:{if((b|0)!=(e|0)){if((c|0)==(b&q)){break k}break g}t=H[o+8>>2];b=H[o+12>>2]-t|0;if((b|0)<1){break i}u=b>>2;h=H[k+8>>2];m=1;b=N(b>>>2|0,(b|0)<1?b:1);x=(b|0)>1?b:1;i=0;while(1){b=g;f=H[t+(i<<2)>>2];if(I[f+84|0]){f=h}else{f=H[f+68>>2];b=H[f+(g<<2)>>2];f=H[f+(h<<2)>>2]}if((b|0)==(f|0)){i=i+1|0;m=(u|0)>(i|0);if((i|0)!=(x|0)){continue}}break}if(!m){break j}}k=H[k>>2];if(k){continue}break}break g}while(1){b=H[k+4>>2];l:{if((b|0)!=(e|0)){if(b>>>0>=j>>>0){b=(b>>>0)%(j>>>0)|0}if((b|0)==(c|0)){break l}break g}q=H[o+8>>2];b=H[o+12>>2]-q|0;if((b|0)<1){break i}t=b>>2;h=H[k+8>>2];m=1;b=N(b>>>2|0,(b|0)<1?b:1);u=(b|0)>1?b:1;i=0;while(1){b=g;f=H[q+(i<<2)>>2];if(I[f+84|0]){f=h}else{f=H[f+68>>2];b=H[f+(g<<2)>>2];f=H[f+(h<<2)>>2]}if((b|0)==(f|0)){i=i+1|0;m=(t|0)>(i|0);if((i|0)!=(u|0)){continue}}break}if(!m){break j}}k=H[k>>2];if(k){continue}break}break g}if(!k){break g}}H[H[d+16>>2]+(g<<2)>>2]=H[k+12>>2];break f}m:{if(p){e=0;break m}b=N(n>>>2|0,p?n:1);c=(b|0)>1?b:1;h=c&1;e=0;i=0;if((b|0)>=2){b=c&2147483646;while(1){f=i<<2;c=H[f+l>>2];if(I[c+84|0]){c=g}else{c=H[H[c+68>>2]+(g<<2)>>2]}i=i+2|0;m=c<<3^e<<2;e=H[l+(f|4)>>2];if(I[e+84|0]){c=g}else{c=H[H[e+68>>2]+(g<<2)>>2]}e=m^c<<2;b=b-2|0;if(b){continue}break}}if(!h){break m}b=H[l+(i<<2)>>2];if(I[b+84|0]){b=g}else{b=H[H[b+68>>2]+(g<<2)>>2]}e=b<<2^e<<1}n:{o:{if(!j){break o}b=hl(j)>>>0<2;p:{if(!b){k=e>>>0>=j>>>0?(e>>>0)%(j>>>0)|0:e;f=H[H[d+32>>2]+(k<<2)>>2];if(!f){break o}if(b){break p}l=H[d+56>>2];while(1){f=H[f>>2];if(!f){break o}b=H[f+4>>2];if((b|0)!=(e|0)){if(b>>>0>=j>>>0){b=(b>>>0)%(j>>>0)|0}if((b|0)!=(k|0)){break o}}n=H[l+8>>2];b=H[l+12>>2]-n|0;if((b|0)<1){break n}o=b>>2;c=H[f+8>>2];m=1;b=N(b>>>2|0,(b|0)<1?b:1);p=(b|0)>1?b:1;i=0;while(1){b=g;h=H[n+(i<<2)>>2];if(I[h+84|0]){h=c}else{h=H[h+68>>2];b=H[h+(g<<2)>>2];h=H[h+(c<<2)>>2]}if((b|0)==(h|0)){i=i+1|0;m=(o|0)>(i|0);if((i|0)!=(p|0)){continue}}break}if(m){continue}break}break n}k=j-1&e;f=H[H[d+32>>2]+(k<<2)>>2];if(!f){break o}}n=j-1|0;l=H[d+56>>2];while(1){f=H[f>>2];if(!f){break o}b=H[f+4>>2];if((b&n)!=(k|0)?(b|0)!=(e|0):0){break o}o=H[l+8>>2];b=H[l+12>>2]-o|0;if((b|0)<1){break n}p=b>>2;c=H[f+8>>2];m=1;b=N(b>>>2|0,(b|0)<1?b:1);q=(b|0)>1?b:1;i=0;while(1){b=g;h=H[o+(i<<2)>>2];if(I[h+84|0]){h=c}else{h=H[h+68>>2];b=H[h+(g<<2)>>2];h=H[h+(c<<2)>>2]}if((b|0)==(h|0)){i=i+1|0;m=(p|0)>(i|0);if((i|0)!=(q|0)){continue}}break}if(m){continue}break}break n}c=ra(16);H[c+8>>2]=g;H[c+4>>2]=e;H[c>>2]=0;H[c+12>>2]=s;w=O(H[d+44>>2]+1>>>0);r=L[d+52>>2];q:{if(j?!(w>O(r*O(j>>>0))):0){break q}k=(j-1&j)!=0|j>>>0<3|j<<1;h=d+32|0;r=O(U(O(w/r)));r:{if(r=O(0)){b=~~r>>>0;break r}b=0}Me(h,b>>>0>k>>>0?b:k);j=H[d+36>>2];b=j-1|0;if(!(b&j)){k=b&e;break q}if(e>>>0>>0){k=e;break q}k=(e>>>0)%(j>>>0)|0}e=H[d+32>>2]+(k<<2)|0;b=H[e>>2];s:{if(!b){H[c>>2]=H[d+40>>2];H[d+40>>2]=c;H[e>>2]=v;b=H[c>>2];if(!b){break s}b=H[b+4>>2];e=j-1|0;t:{if(!(e&j)){b=b&e;break t}if(b>>>0>>0){break t}b=(b>>>0)%(j>>>0)|0}H[H[d+32>>2]+(b<<2)>>2]=c;break s}H[c>>2]=H[b>>2];H[b>>2]=c}H[d+44>>2]=H[d+44>>2]+1}H[H[d+16>>2]+(g<<2)>>2]=s;s=s+1|0;b=H[d+4>>2];if((b|0)!=H[d+8>>2]){H[b>>2]=g;H[d+4>>2]=b+4;break f}e=H[d>>2];c=b-e|0;f=c>>2;h=f+1|0;if(h>>>0>=1073741824){break c}i=c>>1;h=f>>>0<536870911?i>>>0>>0?h:i:1073741823;b=0;u:{if(!h){break u}if(h>>>0>=1073741824){break b}b=ra(h<<2)}f=b+(f<<2)|0;H[f>>2]=g;if((c|0)>=1){sa(b,e,c)}H[d+8>>2]=b+(h<<2);H[d+4>>2]=f+4;H[d>>2]=b;if(!e){break f}qa(e)}g=g+1|0;b=H[a+80>>2];if(g>>>0>>0){continue}break}if((b|0)==(s|0)){break d}fa[H[H[a>>2]+24>>2]](a,d+16|0,d);H[a+80>>2]=s}a=H[d>>2];if(a){H[d+4>>2]=a;qa(a)}a=H[d+16>>2];if(a){H[d+20>>2]=a;qa(a)}g=H[d+40>>2];if(g){while(1){a=H[g>>2];qa(g);g=a;if(g){continue}break}}a=H[d+32>>2];H[d+32>>2]=0;if(a){qa(a)}da=d- -64|0;return}ua();X()}wa(16852);X()}ua();X()}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=O(0),o=0,p=0,q=0,r=0,s=O(0),t=0;g=da-96|0;da=g;H[g+72>>2]=0;H[g+76>>2]=0;H[g+64>>2]=0;H[g+68>>2]=0;H[g+80>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}d=c<<2;e=ra(d);H[g+16>>2]=e;f=d+e|0;H[g+24>>2]=f;ta(e,0,d);H[g+20>>2]=f}b:{if(!c){break b}while(1){d=H[H[b>>2]>>2];r=j;c=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],j,0)|0;c=d+c|0;H[g+56>>2]=I[c+8|0]|I[c+9|0]<<8|(I[c+10|0]<<16|I[c+11|0]<<24);d=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);H[g+48>>2]=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[g+52>>2]=d;d=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);e=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[g+40>>2]=I[c+8|0]|I[c+9|0]<<8|(I[c+10|0]<<16|I[c+11|0]<<24);H[g+32>>2]=e;H[g+36>>2]=d;c=0;d=g- -64|0;k=H[d+4>>2];c:{if(!k){break c}f=H[d>>2];o=H[g+40>>2];i=H[g+36>>2];h=H[g+32>>2];e=o^(i^(h^318)+239)+239;d=e&k-1;q=hl(k);d:{if(q>>>0<=1){break d}d=e;if(d>>>0>>0){break d}d=(e>>>0)%(k>>>0)|0}m=d;d=H[(d<<2)+f>>2];if(!d){break c}d=H[d>>2];if(!d){break c}e:{if(q>>>0<=1){f=k-1|0;while(1){k=H[d+4>>2];f:{if((k|0)!=(e|0)){if((m|0)!=(f&k)){break c}break f}if((h|0)!=H[d+8>>2]|(i|0)!=H[d+12>>2]){break f}if((o|0)==H[d+16>>2]){break e}}d=H[d>>2];if(d){continue}break}break c}while(1){f=H[d+4>>2];g:{if((f|0)!=(e|0)){if(f>>>0>=k>>>0){f=(f>>>0)%(k>>>0)|0}if((f|0)!=(m|0)){break c}break g}if((h|0)!=H[d+8>>2]|(i|0)!=H[d+12>>2]){break g}if((o|0)==H[d+16>>2]){break e}}d=H[d>>2];if(d){continue}break}break c}c=d}h:{if(c){H[H[g+16>>2]+(r<<2)>>2]=H[c+20>>2];break h}H[g+8>>2]=H[g+40>>2];c=H[g+36>>2];H[g>>2]=H[g+32>>2];H[g+4>>2]=c;H[g+12>>2]=p;c=0;q=H[g+8>>2];o=H[g+4>>2];k=H[g>>2];d=q^(o^(k^318)+239)+239;t=g;i=g- -64|0;f=H[i+4>>2];i:{j:{if(!f){break j}h=H[i>>2];m=hl(f);e=d&f-1;k:{if(m>>>0<=1){break k}c=d;e=c;if(c>>>0>>0){break k}e=(d>>>0)%(f>>>0)|0}c=e;e=H[h+(c<<2)>>2];if(!e){break j}h=H[e>>2];if(!h){break j}if(m>>>0<=1){e=f-1|0;while(1){m=H[h+4>>2];if((e&m)!=(c|0)?(d|0)!=(m|0):0){break j}if(!((k|0)!=H[h+8>>2]|(o|0)!=H[h+12>>2]|(q|0)!=H[h+16>>2])){c=0;break i}h=H[h>>2];if(h){continue}break}break j}while(1){e=H[h+4>>2];if((e|0)!=(d|0)){if(e>>>0>=f>>>0){e=(e>>>0)%(f>>>0)|0}if((c|0)!=(e|0)){break j}}if(!((k|0)!=H[h+8>>2]|(o|0)!=H[h+12>>2]|(q|0)!=H[h+16>>2])){c=0;break i}h=H[h>>2];if(h){continue}break}}h=ra(24);H[h+16>>2]=H[g+8>>2];e=H[g+4>>2];H[h+8>>2]=H[g>>2];H[h+12>>2]=e;e=H[g+12>>2];H[h>>2]=0;H[h+4>>2]=d;H[h+20>>2]=e;s=O(H[i+12>>2]+1>>>0);n=L[i+16>>2];l:{if(f?!(s>O(n*O(f>>>0))):0){break l}f=(f-1&f)!=0|f>>>0<3|f<<1;n=O(U(O(s/n)));m:{if(n=O(0)){e=~~n>>>0;break m}e=0}e=e>>>0>f>>>0?e:f;f=2;n:{if((e|0)==1){break n}c=e;f=c;if(!(c&c-1)){break n}f=Na(e)}c=f;e=H[i+4>>2];o:{if(c>>>0>e>>>0){Be(i,c);break o}p:{if(c>>>0>=e>>>0){break p}o=e>>>0<3;n=O(U(O(O(K[i+12>>2])/L[i+16>>2])));q:{if(n=O(0)){f=~~n>>>0;break q}f=0}m=e;r:{s:{if(o){break s}if(hl(e)>>>0>1){break s}e=f>>>0<2?f:1<<32-Q(f-1|0);break r}e=Na(f)}c=c>>>0>>0?e:c;if(m>>>0<=c>>>0){break p}Be(i,c)}}f=H[i+4>>2];if(!(f&f-1)){c=d&f-1;break l}if(d>>>0>>0){c=d;break l}c=(d>>>0)%(f>>>0)|0}d=H[i>>2]+(c<<2)|0;c=H[d>>2];t:{if(!c){H[h>>2]=H[i+8>>2];H[i+8>>2]=h;H[d>>2]=i+8;c=H[h>>2];if(!c){break t}d=H[c+4>>2];c=f-1|0;u:{if(!(c&f)){d=c&d;break u}if(d>>>0>>0){break u}d=(d>>>0)%(f>>>0)|0}H[H[i>>2]+(d<<2)>>2]=h;break t}H[h>>2]=H[c>>2];H[c>>2]=h}H[i+12>>2]=H[i+12>>2]+1;c=1}F[t+92|0]=c;H[g+88>>2]=h;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,p)|0,g+48|0,c);H[H[g+16>>2]+(r<<2)>>2]=p;p=p+1|0}c=l;d=j+1|0;c=d>>>0<1?c+1|0:c;j=d;l=c;d=H[a+80>>2];if(!c&d>>>0>j>>>0){continue}break}if((d|0)==(p|0)){break b}v:{if(!I[a+84|0]){d=H[a+68>>2];b=H[a+72>>2]-d|0;if(!b){break v}l=H[g+16>>2];c=b>>31;c=(c+b^c)>>>2|0;b=(b|0)>-1?b:-1;b=N(c,(b|0)<1?b:1);e=b>>>0>1?b:1;c=e&3;b=0;if(e-1>>>0>=3){f=e&-4;while(1){e=b<<2;j=e+d|0;H[j>>2]=H[l+(H[j>>2]<<2)>>2];j=d+(e|4)|0;H[j>>2]=H[l+(H[j>>2]<<2)>>2];j=d+(e|8)|0;H[j>>2]=H[l+(H[j>>2]<<2)>>2];e=d+(e|12)|0;H[e>>2]=H[l+(H[e>>2]<<2)>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!c){break v}while(1){e=d+(b<<2)|0;H[e>>2]=H[l+(H[e>>2]<<2)>>2];b=b+1|0;c=c-1|0;if(c){continue}break}break v}F[a+84|0]=0;c=H[a+68>>2];b=H[a+72>>2]-c>>2;w:{if(b>>>0>>0){Va(a+68|0,d-b|0,1420);d=H[a+80>>2];break w}if(b>>>0<=d>>>0){break w}H[a+72>>2]=c+(d<<2)}if(!d){break v}l=H[g+16>>2];c=d&3;e=H[a+68>>2];b=0;if(d-1>>>0>=3){f=d&-4;while(1){d=b<<2;H[d+e>>2]=H[d+l>>2];j=d|4;H[j+e>>2]=H[j+l>>2];j=d|8;H[j+e>>2]=H[j+l>>2];d=d|12;H[d+e>>2]=H[d+l>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!c){break v}while(1){d=b<<2;H[d+e>>2]=H[d+l>>2];b=b+1|0;c=c-1|0;if(c){continue}break}}H[a+80>>2]=p}a=H[g+16>>2];if(a){H[g+20>>2]=a;qa(a)}b=H[g+72>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+64>>2];H[g+64>>2]=0;if(a){qa(a)}da=g+96|0;return p}ua();X()}function Hg(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;h=da-80|0;da=h;l=-1;f=-1;a:{if((b|0)==-1){break a}e=H[a+32>>2];j=b+1|0;j=(j>>>0)%3|0?j:b-2|0;if((j|0)!=-1){l=H[H[e>>2]+(j<<2)>>2]}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)==-1){break a}f=H[H[e>>2]+(b<<2)>>2]}e=H[a+36>>2];b=H[e>>2];b:{e=H[e+4>>2]-b>>2;if(!(e>>>0<=l>>>0|e>>>0<=f>>>0)){c:{d:{e=H[b+(f<<2)>>2];D=H[b+(l<<2)>>2];if((e|0)>=(d|0)|(D|0)>=(d|0)){break d}b=e<<3;r=H[(b|4)+c>>2];f=D<<3;p=H[(f|4)+c>>2];s=H[c+f>>2];z=H[b+c>>2];if(!((s|0)!=(z|0)|(p|0)!=(r|0))){H[a+8>>2]=s;H[a+12>>2]=p;break c}b=H[H[a+4>>2]+(d<<2)>>2];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;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],h+56|0);b=H[H[a+4>>2]+(D<<2)>>2];H[h+48>>2]=0;H[h+52>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;H[h+32>>2]=0;H[h+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],h+32|0);b=H[H[a+4>>2]+(e<<2)>>2];H[h+24>>2]=0;H[h+28>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;H[h+8>>2]=0;H[h+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],h+8|0);M=H[h+44>>2];b=H[h+16>>2];t=H[h+40>>2];e=t;f=H[h+20>>2]-(M+(b>>>0>>0)|0)|0;g=b-e|0;b=el(g,f,g,f);k=ea;i=b;N=H[h+36>>2];b=H[h+8>>2];l=H[h+32>>2];e=l;j=H[h+12>>2]-(N+(b>>>0>>0)|0)|0;m=b-e|0;n=el(m,j,m,j);e=i+n|0;b=ea+k|0;b=e>>>0>>0?b+1|0:b;q=e;O=H[h+52>>2];e=H[h+24>>2];A=H[h+48>>2];n=A;k=H[h+28>>2]-(O+(e>>>0>>0)|0)|0;w=e-n|0;i=el(w,k,w,k);n=q+i|0;e=ea+b|0;u=n;n=i>>>0>n>>>0?e+1|0:e;if(!(u|n)){break d}E=H[h+64>>2];e=E;b=t;G=H[h+68>>2];b=el(e-b|0,G-((b>>>0>e>>>0)+M|0)|0,g,f);e=ea;q=b;J=H[h+56>>2];i=J;b=l;B=H[h+60>>2];i=el(i-b|0,B-((b>>>0>i>>>0)+N|0)|0,m,j);b=q+i|0;e=ea+e|0;e=b>>>0>>0?e+1|0:e;q=b;L=H[h+72>>2];i=L;b=A;K=H[h+76>>2];v=el(i-b|0,K-((b>>>0>i>>>0)+O|0)|0,w,k);i=q+v|0;b=ea+e|0;C=i;i=i>>>0>>0?b+1|0:b;e=k;x=e>>31;q=x;v=q+w|0;b=e>>31;e=b+e|0;e=v>>>0>>0?e+1|0:e;v=v^q;b=b^e;x=b;e=f;o=e>>31;q=o+g|0;e=e>>31;b=f+e|0;P=q^o;b=e^(q>>>0>>0?b+1|0:b);q=b;e=j;b=e>>31;y=e>>31;e=y+m|0;o=b+j|0;o=e>>>0>>0?o+1|0:o;e=e^y;y=e;b=b^o;e=(b|0)==(q|0)&e>>>0

>>0|b>>>0>>0;o=e?P:y;b=e?q:b;e=(b|0)<(x|0)?1:(x|0)>=(b|0)?o>>>0>>0:0;e=C>>>0<=gl(-1,2147483647,e?v:o,e?x:b)>>>0;b=ea;if((b|0)>(i|0)?1:(b|0)>=(i|0)?e:0){b=r;e=p;x=b-e|0;p=e>>31;q=(b>>31)-(p+(b>>>0>>0)|0)|0;b=el(C,i,x,q);r=ea;p=el(u,n,e,p);b=p+b|0;e=ea+r|0;e=b>>>0

>>0?e+1|0:e;p=b;v=e;b=z;e=s;y=b-e|0;s=e>>31;z=(b>>31)-(s+(b>>>0>>0)|0)|0;b=el(C,i,y,z);r=ea;s=el(u,n,e,s);e=s+b|0;b=ea+r|0;r=e;s=e>>>0>>0?b+1|0:b;e=E;g=fl(el(g,f,C,i),ea,u,n);f=g+t|0;b=ea+M|0;b=f>>>0>>0?b+1|0:b;b=G-((e>>>0>>0)+b|0)|0;f=e-f|0;f=el(f,b,f,b);g=ea;b=J;t=f;j=fl(el(m,j,C,i),ea,u,n);f=j+l|0;e=ea+N|0;e=f>>>0>>0?e+1|0:e;e=B-((b>>>0>>0)+e|0)|0;b=b-f|0;e=el(b,e,b,e);f=t+e|0;b=ea+g|0;j=f;e=e>>>0>f>>>0?b+1|0:b;f=L;g=j;k=fl(el(w,k,C,i),ea,u,n);j=k+A|0;b=ea+O|0;b=j>>>0>>0?b+1|0:b;b=K-((f>>>0>>0)+b|0)|0;f=f-j|0;f=el(f,b,f,b);b=g+f|0;e=ea+e|0;j=el(b,b>>>0>>0?e+1|0:e,u,n);b=ea;k=b;e:{f:{if(!b&j>>>0<=1){b=k;f=j;if(f-1|0){break e}break f}f=2;b=0;m=j;e=k;while(1){if(!e&m>>>0<8){break f}g=e;e=e>>>2|0;m=(g&3)<<30|m>>>2;b=b<<1|f>>>31;f=f<<1;continue}}while(1){e=gl(j,k,f,b)+f|0;o=b+ea|0;b=e;o=b>>>0>>0?o+1|0:o;f=(o&1)<<31|b>>>1;e=o>>>1|0;b=e;e=el(f,b,f,b);g=ea;if((k|0)==(g|0)&e>>>0>j>>>0|g>>>0>k>>>0){continue}break}}j=a+16|0;A=H[a+24>>2];E=A<<5;l=H[a+20>>2];t=d<<3;g=H[(t|4)+c>>2];k=g;e=p;G=el(f,b,y,z);m=G;J=ea;e=fl(e-m|0,v-(J+(e>>>0>>0)|0)|0,u,n);w=g>>31;i=w-(ea+(e>>>0>g>>>0)|0)|0;g=g-e|0;B=el(g,i,g,i);L=ea;m=H[c+t>>2];g=m>>31;i=m;z=g;t=el(f,b,x,q);b=r;f=t+b|0;K=ea;o=s+K|0;f=fl(f,b>>>0>f>>>0?o+1|0:o,u,n);b=f;g=g-(ea+(b>>>0>i>>>0)|0)|0;b=i-b|0;m=el(b,g,b,g);g=m+B|0;b=ea+L|0;B=g;m=g>>>0>>0?b+1|0:b;g=k;b=v+J|0;k=p+G|0;b=k>>>0

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

>>0?e+1|0:e;e=q+K|0;p=o+J|0;e=p>>>0>>0?e+1|0:e;o=fl(p,e,w,n);e=o;m=m-(ea+(e>>>0>l>>>0)|0)|0;e=l-e|0;e=el(e,m,e,m);p=ea;t=fl(t-z|0,v-((t>>>0>>0)+L|0)|0,w,n);l=e;e=t;m=x-(ea+(e>>>0>i>>>0)|0)|0;e=i-e|0;i=el(e,m,e,m);m=l+i|0;e=ea+p|0;e=i>>>0>m>>>0?e+1|0:e;h:{if((e|0)==(j|0)&m>>>0>B>>>0|e>>>0>j>>>0){if((b|0)==(G|0)){if((b+1|0)<=-1){break b}if(b>>>0<=1073741822){b=b+32&-32;e=A<<6;b=b>>>0>e>>>0?b:e}else{b=2147483647}Kb(k,b);b=H[a+20>>2]}H[a+20>>2]=b+1;e=H[a+16>>2]+(b>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0<=1073741822){b=b+32&-32;e=A<<6;b=b>>>0>e>>>0?b:e}else{b=2147483647}Kb(k,b);b=H[a+20>>2]}H[a+20>>2]=b+1;e=H[a+16>>2]+(b>>>3&536870908)|0;f=H[e>>2];R=e,S=il(-2,b)&f,H[R>>2]=S;h=o;f=t}H[a+8>>2]=f;H[a+12>>2]=h}if(!(n|w)){break e}break d}e=a;if((d|0)>(E|0)){b=E<<1}else{if((d|0)<=0){H[a+8>>2]=0;H[a+12>>2]=0;break d}b=(d<<1)-2|0}b=(b<<2)+c|0;H[e+8>>2]=H[b>>2];H[a+12>>2]=H[b+4>>2]}da=g+80|0;return}xa();X()}ua();X()}function Kc(a,b){var c=0,d=0,e=0,f=0;e=da-16|0;da=e;H[a+8>>2]=b;H[a>>2]=0;d=a+12|0;c=d;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=c+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;a:{if(b){if(b>>>0>=1073741824){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);H[a+1132>>2]=f}H[a+1140>>2]=0;H[a+1144>>2]=0;H[a+1148>>2]=0;if(b){d=b<<2;c=ra(d);H[a+1140>>2]=c;f=c+d|0;H[a+1148>>2]=f;ta(c,0,d);H[a+1144>>2]=f}H[a+1152>>2]=0;H[a+1156>>2]=0;H[a+1160>>2]=0;if(b){d=b<<2;c=ra(d);H[a+1152>>2]=c;f=c+d|0;H[a+1160>>2]=f;ta(c,0,d);H[a+1156>>2]=f}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if(b){d=b<<2;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}c=b<<5|1;Ob(a+1164|0,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}Ob(a+1176|0,c,e);b=H[e>>2];if(b){H[e+4>>2]=b;qa(b)}da=e+16|0;return a}ua();X()}function Kd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=O(0),i=0,j=O(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;if(H[c>>2]==H[c+4>>2]){f=H[d+80>>2];z=da-16|0;da=z;c=H[a+4>>2];q=H[d+48>>2];d=H[H[d>>2]>>2];l=F[b+24|0];r=z+8|0;H[r>>2]=1065353216;L[r>>2]=O(-1<>2];m=ra((l|0)!=(l&1073741823)?-1:l<<2);a:{if(!f){break a}s=H[b>>2];v=H[b+48>>2];k=H[b+68>>2];c=I[b+84|0];n=H[b+44>>2];o=H[b+40>>2];t=o;if((l|0)>=1){y=d+q|0;q=H[a+8>>2];if(!c){b=l&-2;w=l&1;c=0;while(1){a=H[s>>2];d=el(o,n,H[k+(p<<2)>>2],0)+v|0;g=sa(m,a+d|0,t);h=L[r>>2];d=0;a=b;if((l|0)!=1){while(1){e=y+(c<<2)|0;i=e;u=d<<2;j=O(T(O(O(h*O(L[u+g>>2]-L[q+u>>2]))+O(.5))));b:{if(O(P(j))>2]=x;u=u|4;j=O(T(O(O(h*O(L[u+g>>2]-L[q+u>>2]))+O(.5))));c:{if(O(P(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(w){e=y+(c<<2)|0;a=d<<2;h=O(T(O(O(h*O(L[a+g>>2]-L[a+q>>2]))+O(.5))));d:{if(O(P(h))>2]=a;c=c+1|0}p=p+1|0;if((f|0)!=(p|0)){continue}break}break a}b=l&-2;w=l&1;c=0;while(1){a=H[s>>2];d=el(o,n,g,e)+v|0;p=sa(m,a+d|0,t);h=L[r>>2];d=0;a=b;if((l|0)!=1){while(1){k=y+(c<<2)|0;i=k;u=d<<2;j=O(T(O(O(h*O(L[u+p>>2]-L[q+u>>2]))+O(.5))));e:{if(O(P(j))>2]=x;u=u|4;j=O(T(O(O(h*O(L[u+p>>2]-L[q+u>>2]))+O(.5))));f:{if(O(P(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(w){k=y+(c<<2)|0;a=d<<2;h=O(T(O(O(h*O(L[a+p>>2]-L[a+q>>2]))+O(.5))));g:{if(O(P(h))>2]=a;c=c+1|0}a=g+1|0;e=a>>>0<1?e+1|0:e;g=a;if((f|0)!=(a|0)|e){continue}break}break a}if(!c){a=0;if((f|0)!=1){c=f&-2;while(1){g=H[s>>2];e=a<<2;b=v;d=el(o,n,H[e+k>>2],0)+b|0;g=sa(m,g+d|0,t);i=H[s>>2];d=el(o,n,H[k+(e|4)>>2],0)+b|0;sa(g,i+d|0,t);a=a+2|0;c=c-2|0;if(c){continue}break}}if(!(f&1)){break a}b=H[s>>2];a=el(o,n,H[k+(a<<2)>>2],0)+v|0;sa(m,b+a|0,t);break a}a=f;r=a&1;if((a|0)!=1){a=a&-2;b=0;while(1){f=H[s>>2];c=v;d=el(o,n,g,e)+c|0;f=sa(m,f+d|0,t);k=H[s>>2];d=el(o,n,g|1,e)+c|0;sa(f,k+d|0,t);c=g+2|0;e=c>>>0<2?e+1|0:e;g=c;c=b-(a>>>0<2)|0;a=a-2|0;b=c;if(a|c){continue}break}}if(!r){break a}b=H[s>>2];a=el(o,n,g,e)+v|0;sa(m,b+a|0,t)}qa(m);da=z+16|0;return 1}z=da-16|0;da=z;v=H[a+4>>2];m=H[d+48>>2];d=H[H[d>>2]>>2];r=F[b+24|0];e=z+8|0;H[e>>2]=1065353216;L[e>>2]=O(-1<>2];t=ra((r|0)!=(r&1073741823)?-1:r<<2);k=H[c>>2];c=H[c+4>>2]-k|0;h:{if(!c){break h}l=H[b>>2];v=H[b+48>>2];q=H[b+68>>2];f=I[b+84|0];s=H[b+44>>2];n=H[b+40>>2];o=n;i:{if((r|0)>=1){y=d+m|0;b=c>>31;d=(b+c^b)>>>2|0;b=(c|0)>-1?c:-1;b=N(d,(b|0)<1?b:1);u=b>>>0>1?b:1;g=H[a+8>>2];if(!f){break i}b=r&-2;w=r&1;c=0;m=0;while(1){a=H[l>>2];d=el(n,s,H[k+(m<<2)>>2],0)+v|0;q=sa(t,a+d|0,o);h=L[e>>2];d=0;a=b;if((r|0)!=1){while(1){f=y+(c<<2)|0;i=f;p=d<<2;j=O(T(O(O(h*O(L[p+q>>2]-L[g+p>>2]))+O(.5))));j:{if(O(P(j))>2]=x;p=p|4;j=O(T(O(O(h*O(L[p+q>>2]-L[g+p>>2]))+O(.5))));k:{if(O(P(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(w){f=y+(c<<2)|0;a=d<<2;h=O(T(O(O(h*O(L[a+q>>2]-L[a+g>>2]))+O(.5))));l:{if(O(P(h))>2]=a;c=c+1|0}m=m+1|0;if((u|0)!=(m|0)){continue}break}break h}a=c>>31;b=(a+c^a)>>>2|0;a=(c|0)>-1?c:-1;b=N(b,(a|0)<1?a:1);d=b>>>0>1?b:1;if(f){a=0;if(b>>>0>=2){c=d&-2;while(1){g=H[l>>2];f=a<<2;b=v;e=el(n,s,H[f+k>>2],0)+b|0;g=sa(t,g+e|0,o);i=H[l>>2];e=el(n,s,H[k+(f|4)>>2],0)+b|0;sa(g,i+e|0,o);a=a+2|0;c=c-2|0;if(c){continue}break}}if(!(d&1)){break h}b=H[l>>2];a=el(n,s,H[k+(a<<2)>>2],0)+v|0;sa(t,b+a|0,o);break h}a=0;if(b>>>0>=2){c=d&-2;while(1){g=H[l>>2];f=a<<2;b=v;e=el(n,s,H[q+(H[f+k>>2]<<2)>>2],0)+b|0;g=sa(t,g+e|0,o);i=H[l>>2];e=el(n,s,H[q+(H[k+(f|4)>>2]<<2)>>2],0)+b|0;sa(g,i+e|0,o);a=a+2|0;c=c-2|0;if(c){continue}break}}if(!(d&1)){break h}b=H[l>>2];a=el(n,s,H[q+(H[k+(a<<2)>>2]<<2)>>2],0)+v|0;sa(t,b+a|0,o);break h}b=r&-2;A=r&1;c=0;m=0;while(1){a=H[l>>2];d=el(n,s,H[q+(H[k+(m<<2)>>2]<<2)>>2],0)+v|0;p=sa(t,a+d|0,o);h=L[e>>2];d=0;a=b;if((r|0)!=1){while(1){f=y+(c<<2)|0;i=f;w=d<<2;j=O(T(O(O(h*O(L[w+p>>2]-L[g+w>>2]))+O(.5))));m:{if(O(P(j))>2]=x;w=w|4;j=O(T(O(O(h*O(L[w+p>>2]-L[g+w>>2]))+O(.5))));n:{if(O(P(j))>2]=i;d=d+2|0;c=c+2|0;a=a-2|0;if(a){continue}break}}if(A){f=y+(c<<2)|0;a=d<<2;h=O(T(O(O(h*O(L[a+p>>2]-L[a+g>>2]))+O(.5))));o:{if(O(P(h))>2]=a;c=c+1|0}m=m+1|0;if((u|0)!=(m|0)){continue}break}}qa(t);da=z+16|0;return 1}function Na(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=da-16|0;da=e;H[e+12>>2]=a;a:{if(a>>>0<=211){a=H[se(17568,17760,e+12|0)>>2];break a}if(a>>>0>=4294967292){ue();X()}f=(a>>>0)/210|0;d=N(f,210);H[e+8>>2]=a-d;g=se(17760,17952,e+8|0)-17760>>2;b:{while(1){a=H[(g<<2)+17760>>2]+d|0;d=5;b=h;c:{d:{while(1){h=b;if((d|0)==47){d=211;while(1){b=(a>>>0)/(d>>>0)|0;if(b>>>0>>0){break c}if((N(b,d)|0)==(a|0)){break d}b=d+10|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+12|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+16|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+18|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+22|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+28|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+30|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+36|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+40|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+42|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+46|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+52|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+58|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+60|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+66|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+70|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+72|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+78|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+82|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+88|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+96|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+100|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+102|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+106|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+108|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+112|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+120|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+126|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+130|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+136|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+138|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+142|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+148|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+150|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+156|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+162|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+166|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+168|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+172|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+178|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+180|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+186|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+190|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+192|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+196|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+198|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}if((N(b,c)|0)==(a|0)){break d}b=d+208|0;c=(a>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break c}d=d+210|0;if((N(b,c)|0)!=(a|0)){continue}break}break d}b=H[(d<<2)+17568>>2];c=(a>>>0)/(b>>>0)|0;i=N(b,c);c=b>>>0>c>>>0;if(!c){b=c?a:h;d=d+1|0;if((a|0)!=(i|0)){continue}}break}if((a|0)!=(i|0)|c){break b}}b=g+1|0;a=(b|0)==48;g=a?0:b;f=a+f|0;d=N(f,210);continue}break}H[e+12>>2]=a;break a}H[e+12>>2]=a;a=c?a:h}da=e+16|0;return a}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=O(0),o=0,p=0,q=0,r=0,s=0,t=O(0),u=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;d=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}c=d<<2;e=ra(c);H[g+16>>2]=e;f=c+e|0;H[g+24>>2]=f;ta(e,0,c);H[g+20>>2]=f}b:{if(!d){break b}while(1){d=H[H[b>>2]>>2];s=j;c=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],j,0)|0;c=d+c|0;e=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]=e;H[g+40>>2]=c;H[g+44>>2]=e;d=0;k=H[g+52>>2];c:{if(!k){break c}f=H[g+48>>2];p=J[g+38>>1];o=J[g+36>>1];i=J[g+34>>1];h=J[g+32>>1];e=p^(o^(i^(h^318)+239)+239)+239;c=e&k-1;r=hl(k);d:{if(r>>>0<=1){break d}c=e;if(c>>>0>>0){break d}c=(e>>>0)%(k>>>0)|0}l=c;c=H[(c<<2)+f>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(r>>>0<=1){f=k-1|0;while(1){k=H[c+4>>2];f:{if((k|0)!=(e|0)){if((l|0)!=(f&k)){break c}break f}if((h|0)!=J[c+8>>1]|(i|0)!=J[c+10>>1]|(o|0)!=J[c+12>>1]){break f}if((p|0)==J[c+14>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}while(1){f=H[c+4>>2];g:{if((f|0)!=(e|0)){if(f>>>0>=k>>>0){f=(f>>>0)%(k>>>0)|0}if((f|0)!=(l|0)){break c}break g}if((h|0)!=J[c+8>>1]|(i|0)!=J[c+10>>1]|(o|0)!=J[c+12>>1]){break g}if((p|0)==J[c+14>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}h:{if(d){H[H[g+16>>2]+(s<<2)>>2]=H[d+16>>2];break h}H[g+8>>2]=q;d=H[g+36>>2];H[g>>2]=H[g+32>>2];H[g+4>>2]=d;d=0;r=J[g+6>>1];p=J[g+4>>1];o=J[g+2>>1];k=J[g>>1];c=r^(p^(o^(k^318)+239)+239)+239;u=g;i=g+48|0;f=H[i+4>>2];i:{j:{if(!f){break j}e=H[i>>2];l=hl(f);d=c&f-1;k:{if(l>>>0<=1){break k}d=c;if(c>>>0>>0){break k}d=(c>>>0)%(f>>>0)|0}e=H[e+(d<<2)>>2];if(!e){break j}h=H[e>>2];if(!h){break j}if(l>>>0<=1){e=f-1|0;while(1){l=H[h+4>>2];if((e&l)!=(d|0)?(c|0)!=(l|0):0){break j}if(!((k|0)!=J[h+8>>1]|(o|0)!=J[h+10>>1]|((p|0)!=J[h+12>>1]|(r|0)!=J[h+14>>1]))){d=0;break i}h=H[h>>2];if(h){continue}break}break j}while(1){e=H[h+4>>2];if((e|0)!=(c|0)){if(e>>>0>=f>>>0){e=(e>>>0)%(f>>>0)|0}if((e|0)!=(d|0)){break j}}if(!((k|0)!=J[h+8>>1]|(o|0)!=J[h+10>>1]|((p|0)!=J[h+12>>1]|(r|0)!=J[h+14>>1]))){d=0;break i}h=H[h>>2];if(h){continue}break}}h=ra(20);e=H[g+4>>2];H[h+8>>2]=H[g>>2];H[h+12>>2]=e;e=H[g+8>>2];H[h+4>>2]=c;H[h+16>>2]=e;H[h>>2]=0;t=O(H[i+12>>2]+1>>>0);n=L[i+16>>2];l:{if(f?!(t>O(n*O(f>>>0))):0){break l}f=(f-1&f)!=0|f>>>0<3|f<<1;n=O(U(O(t/n)));m:{if(n=O(0)){e=~~n>>>0;break m}e=0}e=e>>>0>f>>>0?e:f;d=2;n:{if((e|0)==1){break n}d=e;if(!(e&e-1)){break n}d=Na(e)}e=H[i+4>>2];o:{if(d>>>0>e>>>0){ae(i,d);break o}p:{if(e>>>0<=d>>>0){break p}o=e>>>0<3;n=O(U(O(O(K[i+12>>2])/L[i+16>>2])));q:{if(n=O(0)){l=~~n>>>0;break q}l=0}f=l;l=e;r:{s:{if(o){break s}if(hl(e)>>>0>1){break s}e=f>>>0<2?f:1<<32-Q(f-1|0);break r}e=Na(f)}d=e>>>0>d>>>0?e:d;if(l>>>0<=d>>>0){break p}ae(i,d)}}f=H[i+4>>2];if(!(f&f-1)){d=c&f-1;break l}if(c>>>0>>0){d=c;break l}d=(c>>>0)%(f>>>0)|0}c=H[i>>2]+(d<<2)|0;d=H[c>>2];t:{if(!d){H[h>>2]=H[i+8>>2];H[i+8>>2]=h;H[c>>2]=i+8;d=H[h>>2];if(!d){break t}c=H[d+4>>2];d=f-1|0;u:{if(!(d&f)){c=c&d;break u}if(c>>>0>>0){break u}c=(c>>>0)%(f>>>0)|0}H[H[i>>2]+(c<<2)>>2]=h;break t}H[h>>2]=H[d>>2];H[d>>2]=h}H[i+12>>2]=H[i+12>>2]+1;d=1}F[u+76|0]=d;H[g+72>>2]=h;d=H[a+40>>2];sa(H[H[a>>2]>>2]+N(d,q)|0,g+40|0,d);H[H[g+16>>2]+(s<<2)>>2]=q;q=q+1|0}d=m;c=j+1|0;d=c>>>0<1?d+1|0:d;j=c;m=d;c=H[a+80>>2];if(!d&c>>>0>j>>>0){continue}break}if((c|0)==(q|0)){break b}v:{if(!I[a+84|0]){c=H[a+68>>2];b=H[a+72>>2]-c|0;if(!b){break v}m=H[g+16>>2];d=b>>31;d=(d+b^d)>>>2|0;b=(b|0)>-1?b:-1;b=N(d,(b|0)<1?b:1);e=b>>>0>1?b:1;d=e&3;b=0;if(e-1>>>0>=3){f=e&-4;while(1){e=b<<2;j=e+c|0;H[j>>2]=H[m+(H[j>>2]<<2)>>2];j=c+(e|4)|0;H[j>>2]=H[m+(H[j>>2]<<2)>>2];j=c+(e|8)|0;H[j>>2]=H[m+(H[j>>2]<<2)>>2];e=c+(e|12)|0;H[e>>2]=H[m+(H[e>>2]<<2)>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!d){break v}while(1){e=c+(b<<2)|0;H[e>>2]=H[m+(H[e>>2]<<2)>>2];b=b+1|0;d=d-1|0;if(d){continue}break}break v}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;w:{if(b>>>0>>0){Va(a+68|0,c-b|0,1420);c=H[a+80>>2];break w}if(b>>>0<=c>>>0){break w}H[a+72>>2]=d+(c<<2)}if(!c){break v}m=H[g+16>>2];d=c&3;e=H[a+68>>2];b=0;if(c-1>>>0>=3){f=c&-4;while(1){c=b<<2;H[c+e>>2]=H[c+m>>2];j=c|4;H[j+e>>2]=H[j+m>>2];j=c|8;H[j+e>>2]=H[j+m>>2];c=c|12;H[c+e>>2]=H[c+m>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!d){break v}while(1){c=b<<2;H[c+e>>2]=H[c+m>>2];b=b+1|0;d=d-1|0;if(d){continue}break}}H[a+80>>2]=q}a=H[g+16>>2];if(a){H[g+20>>2]=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 Hk(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;g=da-32|0;da=g;a:{if(!H[H[a+8>>2]+80>>2]){d=1;break a}F[g+31|0]=254;h=H[a+36>>2];if(h){if(!(fa[H[H[a>>2]+40>>2]](a,h)|0)){break a}d=H[a+36>>2];m=g,n=fa[H[H[d>>2]+8>>2]](d)|0,F[m+31|0]=n}d=H[c+20>>2];if((d|0)<0?1:(d|0)<=0?!H[c+16>>2]:0){va(c,H[c+4>>2],g+31|0,g+32|0)}d=H[a+36>>2];b:{if(!d){break b}m=g,n=fa[H[H[d>>2]+36>>2]](d)|0,F[m+16|0]=n;d=H[c+20>>2];if((d|0)>0?1:(d|0)>=0?H[c+16>>2]:0){break b}va(c,H[c+4>>2],g+16|0,g+17|0)}d=H[a+32>>2];f=H[d+48>>2];i=H[H[d>>2]>>2];h=H[d+80>>2];j=F[d+24|0];d=0;H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;c:{d:{e:{f:{g:{h:{h=N(h,j);if(h){if(h>>>0>=1073741824){break h}e=h<<2;d=ra(e);H[g+16>>2]=d;k=d+e|0;H[g+24>>2]=k;ta(d,0,e);H[g+20>>2]=k}e=f+i|0;f=H[a+36>>2];i:{j:{if(!f){break j}fa[H[H[f>>2]+44>>2]](f,e,d,h,j,H[b>>2])|0;d=H[a+36>>2];if(!d){d=H[g+16>>2];break j}if(fa[H[H[d>>2]+32>>2]](d)|0){break i}d=H[g+16>>2];e=H[a+36>>2]?d:e}i=0;k:{if((h|0)<1){break k}if((h|0)!=1){f=h&-2;while(1){l=i<<2;k=H[l+e>>2];H[d+l>>2]=(k|0)>-1?k<<1:(k^-1)<<1|1;l=l|4;k=H[l+e>>2];H[d+l>>2]=(k|0)>-1?k<<1:(k^-1)<<1|1;i=i+2|0;f=f-2|0;if(f){continue}break}}if(!(h&1)){break k}f=i<<2;e=H[f+e>>2];H[d+f>>2]=(e|0)>-1?e<<1:(e^-1)<<1|1}}l:{m:{d=H[a+4>>2];if(!d){break m}i=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[2336]|I[2337]<<8;F[d+32|0]=e;F[d+33|0]=e>>>8;e=I[2332]|I[2333]<<8|(I[2334]<<16|I[2335]<<24);f=I[2328]|I[2329]<<8|(I[2330]<<16|I[2331]<<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[2324]|I[2325]<<8|(I[2326]<<16|I[2327]<<24);f=I[2320]|I[2321]<<8|(I[2322]<<16|I[2323]<<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[2316]|I[2317]<<8|(I[2318]<<16|I[2319]<<24);f=I[2312]|I[2313]<<8|(I[2314]<<16|I[2315]<<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[2308]|I[2309]<<8|(I[2310]<<16|I[2311]<<24);f=I[2304]|I[2305]<<8|(I[2306]<<16|I[2307]<<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=Tb(i,g,1);if(F[g+11|0]<=-1){qa(H[g>>2])}if(d){break m}if(!h){break f}j=H[g+16>>2];e=h&3;if(h-1>>>0>=3){break l}d=0;b=0;break g}F[g|0]=1;d=H[c+20>>2];if((d|0)<0?1:(d|0)<=0?!H[c+16>>2]: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){i=10-fb(H[d+48>>2])|0;h=da-16|0;da=h;n:{if(i>>>0>10){break n}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[10861];e=I[10857]|I[10858]<<8|(I[10859]<<16|I[10860]<<24);f=I[10853]|I[10854]<<8|(I[10855]<<16|I[10856]<<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[10849]|I[10850]<<8|(I[10851]<<16|I[10852]<<24);f=I[10845]|I[10846]<<8|(I[10847]<<16|I[10848]<<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[10841]|I[10842]<<8|(I[10843]<<16|I[10844]<<24);f=I[10837]|I[10838]<<8|(I[10839]<<16|I[10840]<<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[10833]|I[10834]<<8|(I[10835]<<16|I[10836]<<24);f=I[10829]|I[10830]<<8|(I[10831]<<16|I[10832]<<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;_a(g,h,i);if(F[h+11|0]>-1){break n}qa(H[h>>2])}da=h+16|0}b=Gd(H[g+16>>2],N(j,H[b+4>>2]-H[b>>2]>>2),j,g,c);Oa(g,H[g+4>>2]);d=0;if(b){break d}break c}f=h&-4;d=0;b=0;while(1){i=d<<2;b=H[j+(i|12)>>2]|(H[j+(i|8)>>2]|(H[j+(i|4)>>2]|(H[i+j>>2]|b)));d=d+4|0;f=f-4|0;if(f){continue}break}break g}ua();X()}if(e){while(1){b=H[j+(d<<2)>>2]|b;d=d+1|0;e=e-1|0;if(e){continue}break}}if(!b){break f}b=4-(Q(b)>>>3|0)|0;break e}b=1}F[g|0]=0;e=H[c+20>>2];d=e;f=H[c+16>>2];if((d|0)<0?1:(d|0)<=0?!f:0){va(c,H[c+4>>2],g,g+1|0);f=H[c+16>>2];d=H[c+20>>2]}F[g|0]=b;if((d|0)<0?1:(d|0)<=0?!f:0){va(c,H[c+4>>2],g,g+1|0)}if((b|0)!=H[4068]){if(!h){break d}d=0;while(1){e=H[c+20>>2];if((e|0)<0?1:(e|0)<=0?!H[c+16>>2]:0){e=H[g+16>>2]+(d<<2)|0;va(c,H[c+4>>2],e,b+e|0)}d=d+1|0;if((h|0)!=(d|0)){continue}break}break d}b=H[c+20>>2];if((b|0)>0?1:(b|0)>=0?H[c+16>>2]:0){break d}b=H[g+16>>2];va(c,H[c+4>>2],b,b+(h<<2)|0)}d=1;a=H[a+36>>2];if(!a){break c}fa[H[H[a>>2]+40>>2]](a,c)|0}a=H[g+16>>2];if(!a){break a}H[g+20>>2]=a;qa(a)}da=g+32|0;return d|0}function ff(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),t=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:{if(c){if(c>>>0>=1073741824){break a}d=c<<2;e=ra(d);H[g+16>>2]=e;f=d+e|0;H[g+24>>2]=f;ta(e,0,d);H[g+20>>2]=f}b:{if(!c){break b}while(1){d=H[H[b>>2]>>2];r=j;c=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],j,0)|0;c=d+c|0;G[g+44>>1]=I[c+4|0]|I[c+5|0]<<8;H[g+40>>2]=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);d=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);G[g+36>>1]=I[c+4|0]|I[c+5|0]<<8;H[g+32>>2]=d;c=0;k=H[g+52>>2];c:{if(!k){break c}f=H[g+48>>2];o=J[g+36>>1];i=J[g+34>>1];h=J[g+32>>1];e=o^(i^(h^318)+239)+239;d=e&k+262143;q=hl(k);d:{if(q>>>0<=1){break d}d=e;if(d>>>0>>0){break d}d=(e>>>0)%(k>>>0)|0}m=d;d=H[(d<<2)+f>>2];if(!d){break c}d=H[d>>2];if(!d){break c}e:{if(q>>>0<=1){f=k-1|0;while(1){k=H[d+4>>2];f:{if((k|0)!=(e|0)){if((m|0)!=(f&k)){break c}break f}if((h|0)!=J[d+8>>1]|(i|0)!=J[d+10>>1]){break f}if((o|0)==J[d+12>>1]){break e}}d=H[d>>2];if(d){continue}break}break c}while(1){f=H[d+4>>2];g:{if((f|0)!=(e|0)){if(f>>>0>=k>>>0){f=(f>>>0)%(k>>>0)|0}if((f|0)!=(m|0)){break c}break g}if((h|0)!=J[d+8>>1]|(i|0)!=J[d+10>>1]){break g}if((o|0)==J[d+12>>1]){break e}}d=H[d>>2];if(d){continue}break}break c}c=d}h:{if(c){H[H[g+16>>2]+(r<<2)>>2]=H[c+16>>2];break h}G[g+4>>1]=J[g+36>>1];H[g>>2]=H[g+32>>2];H[g+8>>2]=p;c=0;q=J[g+4>>1];o=J[g+2>>1];k=J[g>>1];d=q^(o^(k^318)+239)+239;t=g;i=g+48|0;f=H[i+4>>2];i:{j:{if(!f){break j}e=H[i>>2];m=hl(f);c=d&f+262143;k:{if(m>>>0<=1){break k}c=d;if(d>>>0>>0){break k}c=(d>>>0)%(f>>>0)|0}e=H[e+(c<<2)>>2];if(!e){break j}h=H[e>>2];if(!h){break j}if(m>>>0<=1){e=f-1|0;while(1){m=H[h+4>>2];if((e&m)!=(c|0)?(d|0)!=(m|0):0){break j}if(!((k|0)!=J[h+8>>1]|(o|0)!=J[h+10>>1]|(q|0)!=J[h+12>>1])){c=0;break i}h=H[h>>2];if(h){continue}break}break j}while(1){e=H[h+4>>2];if((e|0)!=(d|0)){if(e>>>0>=f>>>0){e=(e>>>0)%(f>>>0)|0}if((c|0)!=(e|0)){break j}}if(!((k|0)!=J[h+8>>1]|(o|0)!=J[h+10>>1]|(q|0)!=J[h+12>>1])){c=0;break i}h=H[h>>2];if(h){continue}break}}h=ra(20);G[h+12>>1]=J[g+4>>1];H[h+8>>2]=H[g>>2];e=H[g+8>>2];H[h>>2]=0;H[h+4>>2]=d;H[h+16>>2]=e;s=O(H[i+12>>2]+1>>>0);n=L[i+16>>2];l:{if(f?!(s>O(n*O(f>>>0))):0){break l}f=(f-1&f)!=0|f>>>0<3|f<<1;n=O(U(O(s/n)));m:{if(n=O(0)){e=~~n>>>0;break m}e=0}e=e>>>0>f>>>0?e:f;f=2;n:{if((e|0)==1){break n}c=e;f=c;if(!(c&c-1)){break n}f=Na(e)}c=f;e=H[i+4>>2];o:{if(c>>>0>e>>>0){be(i,c);break o}p:{if(c>>>0>=e>>>0){break p}o=e>>>0<3;n=O(U(O(O(K[i+12>>2])/L[i+16>>2])));q:{if(n=O(0)){f=~~n>>>0;break q}f=0}m=e;r:{s:{if(o){break s}if(hl(e)>>>0>1){break s}e=f>>>0<2?f:1<<32-Q(f-1|0);break r}e=Na(f)}c=c>>>0>>0?e:c;if(m>>>0<=c>>>0){break p}be(i,c)}}f=H[i+4>>2];if(!(f&f-1)){c=d&f-1;break l}if(d>>>0>>0){c=d;break l}c=(d>>>0)%(f>>>0)|0}d=H[i>>2]+(c<<2)|0;c=H[d>>2];t:{if(!c){H[h>>2]=H[i+8>>2];H[i+8>>2]=h;H[d>>2]=i+8;c=H[h>>2];if(!c){break t}d=H[c+4>>2];c=f-1|0;u:{if(!(c&f)){d=d&c;break u}if(d>>>0>>0){break u}d=(d>>>0)%(f>>>0)|0}H[H[i>>2]+(d<<2)>>2]=h;break t}H[h>>2]=H[c>>2];H[c>>2]=h}H[i+12>>2]=H[i+12>>2]+1;c=1}F[t+76|0]=c;H[g+72>>2]=h;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,p)|0,g+40|0,c);H[H[g+16>>2]+(r<<2)>>2]=p;p=p+1|0}c=l;d=j+1|0;c=d>>>0<1?c+1|0:c;j=d;l=c;d=H[a+80>>2];if(!c&d>>>0>j>>>0){continue}break}if((d|0)==(p|0)){break b}v:{if(!I[a+84|0]){d=H[a+68>>2];b=H[a+72>>2]-d|0;if(!b){break v}l=H[g+16>>2];c=b>>31;c=(c+b^c)>>>2|0;b=(b|0)>-1?b:-1;b=N(c,(b|0)<1?b:1);e=b>>>0>1?b:1;c=e&3;b=0;if(e-1>>>0>=3){f=e&-4;while(1){e=b<<2;j=e+d|0;H[j>>2]=H[l+(H[j>>2]<<2)>>2];j=d+(e|4)|0;H[j>>2]=H[l+(H[j>>2]<<2)>>2];j=d+(e|8)|0;H[j>>2]=H[l+(H[j>>2]<<2)>>2];e=d+(e|12)|0;H[e>>2]=H[l+(H[e>>2]<<2)>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!c){break v}while(1){e=d+(b<<2)|0;H[e>>2]=H[l+(H[e>>2]<<2)>>2];b=b+1|0;c=c-1|0;if(c){continue}break}break v}F[a+84|0]=0;c=H[a+68>>2];b=H[a+72>>2]-c>>2;w:{if(b>>>0>>0){Va(a+68|0,d-b|0,1420);d=H[a+80>>2];break w}if(b>>>0<=d>>>0){break w}H[a+72>>2]=c+(d<<2)}if(!d){break v}l=H[g+16>>2];c=d&3;e=H[a+68>>2];b=0;if(d-1>>>0>=3){f=d&-4;while(1){d=b<<2;H[d+e>>2]=H[d+l>>2];j=d|4;H[j+e>>2]=H[j+l>>2];j=d|8;H[j+e>>2]=H[j+l>>2];d=d|12;H[d+e>>2]=H[d+l>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!c){break v}while(1){d=b<<2;H[d+e>>2]=H[d+l>>2];b=b+1|0;c=c-1|0;if(c){continue}break}}H[a+80>>2]=p}a=H[g+16>>2];if(a){H[g+20>>2]=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 p}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,R=0,S=0,T=0;l=da-96|0;da=l;p=c;u=(g&131071)<<15|f>>>17;j=i&65535;s=j;k=h;B=k<<15|g>>>17;n=(e^i)&-2147483648;o=e&65535;w=o;m=d;x=o;o=0;C=(j&131071)<<15|k>>>17;D=i>>>16&32767;L=e>>>16&32767;a:{b:{if(L-1>>>0<=32765){j=0;if(D-1>>>0<32766){break b}}q=e&2147483647;v=q;j=d;if(!(!j&(q|0)==2147418112?!(b|c):q>>>0<2147418112)){y=d;n=e|32768;break a}e=i&2147483647;q=e;d=h;if(!(!d&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){y=h;n=i|32768;b=f;c=g;break a}if(!(b|j|(v^2147418112|c))){if(!(d|f|(g|q))){n=2147450880;b=0;c=0;break a}n=n|2147418112;b=0;c=0;break a}if(!(d|f|(q^2147418112|g))){d=b|j;e=c|v;b=0;c=0;if(!(d|e)){n=2147450880;break a}n=n|2147418112;break a}if(!(b|j|(c|v))){b=0;c=0;break a}if(!(d|f|(g|q))){b=0;c=0;break a}if((v|0)==65535|v>>>0<65535){h=b;i=c;d=!(m|w);e=d<<6;j=Q(d?b:m)+32|0;b=Q(d?c:w);b=e+((b|0)==32?j:b)|0;Za(l+80|0,h,i,m,w,b-15|0);m=H[l+88>>2];p=H[l+84>>2];x=H[l+92>>2];t=16-b|0;b=H[l+80>>2]}j=t;if(q>>>0>65535){break b}c=!(k|s);d=c<<6;e=Q(c?f:k)+32|0;c=Q(c?g:s);c=d+((c|0)==32?e:c)|0;i=c;Za(l- -64|0,f,g,k,s,c-15|0);e=H[l+76>>2];c=e;h=H[l+72>>2];d=h;d=d<<15;e=H[l+68>>2];B=e>>>17|d;d=0;f=H[l+64>>2];u=d|((e&131071)<<15|f>>>17);C=(c&131071)<<15|h>>>17;j=(t-i|0)+16|0}t=j;d=u;c=b;s=0;q=el(d,0,b,s);b=ea;E=b;e=f;z=e<<15&-32768;k=p;g=el(z,0,k,0);f=g+q|0;e=ea+b|0;e=f>>>0>>0?e+1|0:e;h=f;j=f;i=0;g=el(c,s,z,A);f=i+g|0;b=j;j=j+ea|0;j=f>>>0>>0?j+1|0:j;u=f;g=j;I=(b|0)==(j|0)&f>>>0>>0|b>>>0>j>>>0;M=el(d,r,k,F);J=ea;p=m;f=el(z,A,m,0);b=f+M|0;j=ea+J|0;N=b;m=el(B,0,c,s);i=b+m|0;b=b>>>0>>0?j+1|0:j;f=b+ea|0;v=i;f=i>>>0>>0?f+1|0:f;w=f;j=f;f=(e|0)==(E|0)&h>>>0>>0|e>>>0>>0;h=e+v|0;j=f+j|0;q=h;j=h>>>0>>0?j+1|0:j;m=j;e=h;h=j;P=el(d,r,p,O);E=ea;f=z;G=x|65536;z=o;i=el(f,A,G,o);f=i+P|0;j=ea+E|0;j=f>>>0>>0?j+1|0:j;R=f;A=el(B,S,k,F);i=f+A|0;o=j;f=j+ea|0;f=i>>>0>>0?f+1|0:f;K=i;C=C&2147483647|-2147483648;i=el(c,s,C,0);c=K+i|0;s=f;j=f+ea|0;A=c;c=c>>>0>>0?j+1|0:j;x=I;i=0;f=i+e|0;j=h+A|0;I=f;h=f;e=x+f|0;x=f>>>0>>0?j+1|0:j;f=x;f=e>>>0>>0?f+1|0:f;h=e;i=f;t=(t+(D+L|0)|0)-16383|0;f=el(p,O,B,S);e=ea;r=el(d,r,G,z);d=r+f|0;j=ea+e|0;j=d>>>0>>0?j+1|0:j;r=d;f=(e|0)==(j|0)&f>>>0>d>>>0|e>>>0>j>>>0;e=j;D=f;f=el(C,T,k,F);d=f+d|0;j=ea+j|0;j=d>>>0>>0?j+1|0:j;f=d;d=j;k=(j|0)==(e|0)&f>>>0>>0|e>>>0>j>>>0;j=D+k|0;e=0;e=j>>>0>>0?1:e;r=f;k=d;D=j;f=(b|0)==(w|0)&v>>>0>>0|b>>>0>w>>>0;b=f+((b|0)==(J|0)&M>>>0>N>>>0|b>>>0>>0)|0;j=0;j=b>>>0>>0?1:j;f=b;b=r+f|0;j=d+j|0;j=b>>>0>>0?j+1|0:j;F=b;d=j;j=(j|0)==(k|0)&b>>>0>>0|j>>>0>>0;b=D+j|0;f=e;f=b>>>0>>0?f+1|0:f;e=el(C,T,G,z);b=e+b|0;j=ea+f|0;r=b;e=b>>>0>>0?j+1|0:j;k=el(C,T,p,O);f=ea;p=el(B,S,G,z);b=p+k|0;j=ea+f|0;j=b>>>0

>>0?j+1|0:j;p=b;b=j;j=(f|0)==(j|0)&k>>>0>p>>>0|f>>>0>j>>>0;k=b+r|0;e=e+j|0;e=k>>>0>>0?e+1|0:e;r=k;k=0;b=k+F|0;j=d+p|0;j=b>>>0>>0?j+1|0:j;f=j;k=(d|0)==(j|0)&b>>>0>>0|d>>>0>j>>>0;d=r+k|0;j=e;B=d;d=d>>>0>>0?j+1|0:j;p=b;k=f;f=(o|0)==(s|0)&R>>>0>K>>>0|o>>>0>s>>>0;e=f+((o|0)==(E|0)&P>>>0>R>>>0|o>>>0>>0)|0;f=e;e=f+((c|0)==(s|0)&A>>>0>>0|c>>>0>>0)|0;f=e;b=c+b|0;e=f+k|0;e=b>>>0>>0?e+1|0:e;o=b;c=b;b=e;e=(e|0)==(k|0)&c>>>0

>>0|e>>>0>>0;c=e+B|0;j=d;j=c>>>0>>0?j+1|0:j;d=c;k=d;e=(m|0)==(x|0)&q>>>0>I>>>0|m>>>0>x>>>0;d=e+((m|0)==(w|0)&q>>>0>>0|m>>>0>>0)|0;f=0;f=d>>>0>>0?1:f;m=d;d=d+o|0;e=b+f|0;e=d>>>0>>0?e+1|0:e;c=(b|0)==(e|0)&d>>>0>>0|b>>>0>e>>>0;b=k+c|0;j=b>>>0>>0?j+1|0:j;c=j;c:{if(j&65536){t=t+1|0;break c}m=g>>>31|0;j=c<<1|b>>>31;b=b<<1|e>>>31;c=j;j=e<<1|d>>>31;d=d<<1|i>>>31;e=j;o=u;j=g<<1|o>>>31;u=o<<1;g=j;j=i<<1|h>>>31;h=h<<1|m;i=j}if((t|0)>=32767){n=n|2147418112;b=0;c=0;break a}d:{if((t|0)<=0){f=1-t|0;if(f>>>0>=128){b=0;c=0;break a}j=t+127|0;Za(l+48|0,u,g,h,i,j);Za(l+32|0,d,e,b,c,j);Rb(l+16|0,u,g,h,i,f);Rb(l,d,e,b,c,f);u=(H[l+48>>2]|H[l+56>>2])!=0|(H[l+52>>2]|H[l+60>>2])!=0|(H[l+32>>2]|H[l+16>>2]);g=H[l+36>>2]|H[l+20>>2];h=H[l+40>>2]|H[l+24>>2];i=H[l+44>>2]|H[l+28>>2];d=H[l>>2];e=H[l+4>>2];c=H[l+12>>2];b=H[l+8>>2];break d}c=c&65535|t<<16}y=b|y;n=c|n;if(!(!h&(i|0)==-2147483648?!(g|u):(i|0)>-1)){j=e;b=d+1|0;j=b>>>0<1?j+1|0:j;f=b;c=j;f=(e|0)==(j|0)&d>>>0>f>>>0|e>>>0>j>>>0;d=f+y|0;e=n;y=d;n=d>>>0>>0?e+1|0:e;break a}if(h|u|(i^-2147483648|g)){b=d;c=e;break a}c=d&1;b=c+d|0;j=e;j=b>>>0>>0?j+1|0:j;f=b;c=j;e=(e|0)==(j|0)&d>>>0>f>>>0|e>>>0>j>>>0;d=e+y|0;j=n;y=d;n=d>>>0>>0?j+1|0:j}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=y;H[a+12>>2]=n;da=l+96|0}function pf(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=0,t=O(0),u=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;d=H[a+80>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}c=d<<2;e=ra(c);H[g+8>>2]=e;f=c+e|0;H[g+16>>2]=f;ta(e,0,c);H[g+12>>2]=f}b:{if(!d){break b}while(1){c=H[H[b>>2]>>2];s=j;d=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],j,0)|0;d=c+d|0;d=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);H[g+24>>2]=d;H[g+28>>2]=d;d=0;k=H[g+36>>2];c:{if(!k){break c}f=H[g+32>>2];p=I[g+27|0];o=I[g+26|0];i=I[g+25|0];h=I[g+24|0];e=p^(o^(i^(h^318)+239)+239)+239;c=e&k-1;r=hl(k);d:{if(r>>>0<=1){break d}c=e;if(c>>>0>>0){break d}c=(e>>>0)%(k>>>0)|0}l=c;c=H[(c<<2)+f>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(r>>>0<=1){f=k-1|0;while(1){k=H[c+4>>2];f:{if((k|0)!=(e|0)){if((l|0)!=(f&k)){break c}break f}if((h|0)!=I[c+8|0]|(i|0)!=I[c+9|0]|(o|0)!=I[c+10|0]){break f}if((p|0)==I[c+11|0]){break e}}c=H[c>>2];if(c){continue}break}break c}while(1){f=H[c+4>>2];g:{if((f|0)!=(e|0)){if(f>>>0>=k>>>0){f=(f>>>0)%(k>>>0)|0}if((f|0)!=(l|0)){break c}break g}if((h|0)!=I[c+8|0]|(i|0)!=I[c+9|0]|(o|0)!=I[c+10|0]){break g}if((p|0)==I[c+11|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}h:{if(d){H[H[g+8>>2]+(s<<2)>>2]=H[d+12>>2];break h}H[g+4>>2]=q;H[g>>2]=H[g+24>>2];d=0;r=I[g+3|0];p=I[g+2|0];o=I[g+1|0];k=I[g|0];c=r^(p^(o^(k^318)+239)+239)+239;u=g;i=g+32|0;f=H[i+4>>2];i:{j:{if(!f){break j}e=H[i>>2];l=hl(f);d=c&f-1;k:{if(l>>>0<=1){break k}d=c;if(c>>>0>>0){break k}d=(c>>>0)%(f>>>0)|0}e=H[e+(d<<2)>>2];if(!e){break j}h=H[e>>2];if(!h){break j}if(l>>>0<=1){e=f-1|0;while(1){l=H[h+4>>2];if((e&l)!=(d|0)?(c|0)!=(l|0):0){break j}if(!((k|0)!=I[h+8|0]|(o|0)!=I[h+9|0]|((p|0)!=I[h+10|0]|(r|0)!=I[h+11|0]))){d=0;break i}h=H[h>>2];if(h){continue}break}break j}while(1){e=H[h+4>>2];if((e|0)!=(c|0)){if(e>>>0>=f>>>0){e=(e>>>0)%(f>>>0)|0}if((d|0)!=(e|0)){break j}}if(!((k|0)!=I[h+8|0]|(o|0)!=I[h+9|0]|((p|0)!=I[h+10|0]|(r|0)!=I[h+11|0]))){d=0;break i}h=H[h>>2];if(h){continue}break}}h=ra(16);H[h+8>>2]=H[g>>2];e=H[g+4>>2];H[h+4>>2]=c;H[h+12>>2]=e;H[h>>2]=0;t=O(H[i+12>>2]+1>>>0);n=L[i+16>>2];l:{if(f?!(t>O(n*O(f>>>0))):0){break l}f=(f-1&f)!=0|f>>>0<3|f<<1;n=O(U(O(t/n)));m:{if(n=O(0)){e=~~n>>>0;break m}e=0}e=e>>>0>f>>>0?e:f;d=2;n:{if((e|0)==1){break n}d=e;if(!(e&e-1)){break n}d=Na(e)}e=H[i+4>>2];o:{if(d>>>0>e>>>0){he(i,d);break o}p:{if(d>>>0>=e>>>0){break p}o=e>>>0<3;n=O(U(O(O(K[i+12>>2])/L[i+16>>2])));q:{if(n=O(0)){l=~~n>>>0;break q}l=0}f=l;l=e;r:{s:{if(o){break s}if(hl(e)>>>0>1){break s}e=f>>>0<2?f:1<<32-Q(f-1|0);break r}e=Na(f)}d=d>>>0>>0?e:d;if(l>>>0<=d>>>0){break p}he(i,d)}}f=H[i+4>>2];if(!(f&f-1)){d=c&f-1;break l}if(c>>>0>>0){d=c;break l}d=(c>>>0)%(f>>>0)|0}c=H[i>>2]+(d<<2)|0;d=H[c>>2];t:{if(!d){H[h>>2]=H[i+8>>2];H[i+8>>2]=h;H[c>>2]=i+8;d=H[h>>2];if(!d){break t}c=H[d+4>>2];d=f-1|0;u:{if(!(d&f)){c=c&d;break u}if(c>>>0>>0){break u}c=(c>>>0)%(f>>>0)|0}H[H[i>>2]+(c<<2)>>2]=h;break t}H[h>>2]=H[d>>2];H[d>>2]=h}H[i+12>>2]=H[i+12>>2]+1;d=1}F[u+60|0]=d;H[g+56>>2]=h;d=H[a+40>>2];sa(H[H[a>>2]>>2]+N(d,q)|0,g+28|0,d);H[H[g+8>>2]+(s<<2)>>2]=q;q=q+1|0}d=m;c=j+1|0;d=c>>>0<1?d+1|0:d;j=c;m=d;c=H[a+80>>2];if(!d&c>>>0>j>>>0){continue}break}if((c|0)==(q|0)){break b}v:{if(!I[a+84|0]){c=H[a+68>>2];b=H[a+72>>2]-c|0;if(!b){break v}m=H[g+8>>2];d=b>>31;d=(d+b^d)>>>2|0;b=(b|0)>-1?b:-1;b=N(d,(b|0)<1?b:1);e=b>>>0>1?b:1;d=e&3;b=0;if(e-1>>>0>=3){f=e&-4;while(1){e=b<<2;j=e+c|0;H[j>>2]=H[m+(H[j>>2]<<2)>>2];j=c+(e|4)|0;H[j>>2]=H[m+(H[j>>2]<<2)>>2];j=c+(e|8)|0;H[j>>2]=H[m+(H[j>>2]<<2)>>2];e=c+(e|12)|0;H[e>>2]=H[m+(H[e>>2]<<2)>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!d){break v}while(1){e=c+(b<<2)|0;H[e>>2]=H[m+(H[e>>2]<<2)>>2];b=b+1|0;d=d-1|0;if(d){continue}break}break v}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;w:{if(b>>>0>>0){Va(a+68|0,c-b|0,1420);c=H[a+80>>2];break w}if(b>>>0<=c>>>0){break w}H[a+72>>2]=d+(c<<2)}if(!c){break v}m=H[g+8>>2];d=c&3;e=H[a+68>>2];b=0;if(c-1>>>0>=3){f=c&-4;while(1){c=b<<2;H[c+e>>2]=H[c+m>>2];j=c|4;H[j+e>>2]=H[j+m>>2];j=c|8;H[j+e>>2]=H[j+m>>2];c=c|12;H[c+e>>2]=H[c+m>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!d){break v}while(1){c=b<<2;H[c+e>>2]=H[c+m>>2];b=b+1|0;d=d-1|0;if(d){continue}break}}H[a+80>>2]=q}a=H[g+8>>2];if(a){H[g+12>>2]=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 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=O(0),o=0,p=0,q=0,r=0,s=O(0),t=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;d=H[a+80>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}c=d<<2;e=ra(c);H[g+8>>2]=e;f=c+e|0;H[g+16>>2]=f;ta(e,0,c);H[g+12>>2]=f}b:{if(!d){break b}while(1){c=H[H[b>>2]>>2];r=j;d=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],j,0)|0;d=c+d|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;k=H[g+36>>2];c:{if(!k){break c}f=H[g+32>>2];o=I[g+26|0];i=I[g+25|0];h=I[g+24|0];e=o^(i^(h^318)+239)+239;c=e&k-1;q=hl(k);d:{if(q>>>0<=1){break d}c=e;if(c>>>0>>0){break d}c=(e>>>0)%(k>>>0)|0}m=c;c=H[(c<<2)+f>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(q>>>0<=1){f=k-1|0;while(1){k=H[c+4>>2];f:{if((k|0)!=(e|0)){if((m|0)!=(f&k)){break c}break f}if((h|0)!=I[c+8|0]|(i|0)!=I[c+9|0]){break f}if((o|0)==I[c+10|0]){break e}}c=H[c>>2];if(c){continue}break}break c}while(1){f=H[c+4>>2];g:{if((f|0)!=(e|0)){if(f>>>0>=k>>>0){f=(f>>>0)%(k>>>0)|0}if((f|0)!=(m|0)){break c}break g}if((h|0)!=I[c+8|0]|(i|0)!=I[c+9|0]){break g}if((o|0)==I[c+10|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}h:{if(d){H[H[g+8>>2]+(r<<2)>>2]=H[d+12>>2];break h}F[g+2|0]=I[g+26|0];G[g>>1]=J[g+24>>1];H[g+4>>2]=p;d=0;q=I[g+2|0];o=I[g+1|0];k=I[g|0];c=q^(o^(k^318)+239)+239;t=g;i=g+32|0;f=H[i+4>>2];i:{j:{if(!f){break j}e=H[i>>2];m=hl(f);d=c&f-1;k:{if(m>>>0<=1){break k}d=c;if(c>>>0>>0){break k}d=(c>>>0)%(f>>>0)|0}e=H[e+(d<<2)>>2];if(!e){break j}h=H[e>>2];if(!h){break j}if(m>>>0<=1){e=f-1|0;while(1){m=H[h+4>>2];if((e&m)!=(d|0)?(c|0)!=(m|0):0){break j}if(!((k|0)!=I[h+8|0]|(o|0)!=I[h+9|0]|(q|0)!=I[h+10|0])){d=0;break i}h=H[h>>2];if(h){continue}break}break j}while(1){e=H[h+4>>2];if((e|0)!=(c|0)){if(e>>>0>=f>>>0){e=(e>>>0)%(f>>>0)|0}if((d|0)!=(e|0)){break j}}if(!((k|0)!=I[h+8|0]|(o|0)!=I[h+9|0]|(q|0)!=I[h+10|0])){d=0;break i}h=H[h>>2];if(h){continue}break}}h=ra(16);F[h+10|0]=I[g+2|0];G[h+8>>1]=J[g>>1];e=H[g+4>>2];H[h>>2]=0;H[h+4>>2]=c;H[h+12>>2]=e;s=O(H[i+12>>2]+1>>>0);n=L[i+16>>2];l:{if(f?!(s>O(n*O(f>>>0))):0){break l}f=(f-1&f)!=0|f>>>0<3|f<<1;n=O(U(O(s/n)));m:{if(n=O(0)){e=~~n>>>0;break m}e=0}e=e>>>0>f>>>0?e:f;f=2;n:{if((e|0)==1){break n}d=e;f=d;if(!(d&d-1)){break n}f=Na(e)}d=f;e=H[i+4>>2];o:{if(d>>>0>e>>>0){le(i,d);break o}p:{if(d>>>0>=e>>>0){break p}o=e>>>0<3;n=O(U(O(O(K[i+12>>2])/L[i+16>>2])));q:{if(n=O(0)){f=~~n>>>0;break q}f=0}m=e;r:{s:{if(o){break s}if(hl(e)>>>0>1){break s}e=f>>>0<2?f:1<<32-Q(f-1|0);break r}e=Na(f)}d=d>>>0>>0?e:d;if(m>>>0<=d>>>0){break p}le(i,d)}}f=H[i+4>>2];if(!(f&f-1)){d=c&f-1;break l}if(c>>>0>>0){d=c;break l}d=(c>>>0)%(f>>>0)|0}c=H[i>>2]+(d<<2)|0;d=H[c>>2];t:{if(!d){H[h>>2]=H[i+8>>2];H[i+8>>2]=h;H[c>>2]=i+8;d=H[h>>2];if(!d){break t}c=H[d+4>>2];d=f-1|0;u:{if(!(d&f)){c=c&d;break u}if(c>>>0>>0){break u}c=(c>>>0)%(f>>>0)|0}H[H[i>>2]+(c<<2)>>2]=h;break t}H[h>>2]=H[d>>2];H[d>>2]=h}H[i+12>>2]=H[i+12>>2]+1;d=1}F[t+60|0]=d;H[g+56>>2]=h;d=H[a+40>>2];sa(H[H[a>>2]>>2]+N(d,p)|0,g+28|0,d);H[H[g+8>>2]+(r<<2)>>2]=p;p=p+1|0}d=l;c=j+1|0;d=c>>>0<1?d+1|0:d;j=c;l=d;c=H[a+80>>2];if(!d&c>>>0>j>>>0){continue}break}if((c|0)==(p|0)){break b}v:{if(!I[a+84|0]){c=H[a+68>>2];b=H[a+72>>2]-c|0;if(!b){break v}l=H[g+8>>2];d=b>>31;d=(d+b^d)>>>2|0;b=(b|0)>-1?b:-1;b=N(d,(b|0)<1?b:1);e=b>>>0>1?b:1;d=e&3;b=0;if(e-1>>>0>=3){f=e&-4;while(1){e=b<<2;j=e+c|0;H[j>>2]=H[l+(H[j>>2]<<2)>>2];j=c+(e|4)|0;H[j>>2]=H[l+(H[j>>2]<<2)>>2];j=c+(e|8)|0;H[j>>2]=H[l+(H[j>>2]<<2)>>2];e=c+(e|12)|0;H[e>>2]=H[l+(H[e>>2]<<2)>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!d){break v}while(1){e=c+(b<<2)|0;H[e>>2]=H[l+(H[e>>2]<<2)>>2];b=b+1|0;d=d-1|0;if(d){continue}break}break v}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;w:{if(b>>>0>>0){Va(a+68|0,c-b|0,1420);c=H[a+80>>2];break w}if(b>>>0<=c>>>0){break w}H[a+72>>2]=d+(c<<2)}if(!c){break v}l=H[g+8>>2];d=c&3;e=H[a+68>>2];b=0;if(c-1>>>0>=3){f=c&-4;while(1){c=b<<2;H[c+e>>2]=H[c+l>>2];j=c|4;H[j+e>>2]=H[j+l>>2];j=c|8;H[j+e>>2]=H[j+l>>2];c=c|12;H[c+e>>2]=H[c+l>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!d){break v}while(1){c=b<<2;H[c+e>>2]=H[c+l>>2];b=b+1|0;d=d-1|0;if(d){continue}break}}H[a+80>>2]=p}a=H[g+8>>2];if(a){H[g+12>>2]=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 p}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;a:{b:{c:{d:{e:{if(H[a+92>>2]==H[a+88>>2]){break e}d=H[a+52>>2];f:{if((d|0)!=H[a+56>>2]){H[d>>2]=b;H[a+52>>2]=d+4;break f}h=H[a+48>>2];g=d-h|0;e=g>>2;c=e+1|0;if(c>>>0>=1073741824){break b}f=g>>1;c=e>>>0<536870911?c>>>0>f>>>0?c:f:1073741823;d=0;g:{if(!c){break g}if(c>>>0>=1073741824){break a}d=ra(c<<2)}f=d+(e<<2)|0;H[f>>2]=b;if((g|0)>=1){sa(d,h,g)}H[a+56>>2]=d+(c<<2);H[a+52>>2]=f+4;H[a+48>>2]=d;if(!h){break f}qa(h)}H[a+84>>2]=0;f=-1;d=-1;h:{if((b|0)==-1){break h}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]}c=((b>>>0)%3|0?-1:2)+b|0;if((c|0)==-1){break h}d=H[H[e>>2]+(c<<2)>>2]}c=H[a+36>>2];h=c+(f>>>3&536870908)|0;g=H[h>>2];e=1<>2]=e|g;h=a+8|0;if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b-2|0}else{c=-1}rb(h,f,c);c=H[a+36>>2]}e=(d>>>3&536870908)+c|0;c=H[e>>2];f=1<>2]=c|f;c=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}rb(c,d,f)}f=-1;f=(b|0)!=-1?H[H[H[a+4>>2]>>2]+(b<<2)>>2]:f;e=H[a+36>>2]+(f>>>3&536870908)|0;c=H[e>>2];d=1<>2]=c|d;rb(a+8|0,f,b)}c=H[a+84>>2];if((c|0)>2){break e}while(1){f=N(c,12)+a|0;b=H[f+52>>2];if((b|0)==H[f+48>>2]){c=c+1|0;if((c|0)!=3){continue}break e}d=b-4|0;b=H[d>>2];H[f+52>>2]=d;H[a+84>>2]=c;if((b|0)==-1){break e}f=H[a+24>>2];d=(b>>>0)/3|0;j:{if(H[f+(d>>>3&268435452)>>2]>>>d&1){break j}k:{while(1){k=(b>>>0)/3|0;d=(k>>>3&268435452)+f|0;H[d>>2]=H[d>>2]|1<>2]>>2]+(b<<2)>>2]:f;e=H[a+36>>2]+(f>>>3&536870908)|0;c=H[e>>2];d=1<>2]=c|d;h=H[(H[H[a+16>>2]+96>>2]+N(k,12)|0)+((b>>>0)%3<<2)>>2];l=H[H[a+20>>2]+4>>2];d=H[l+4>>2];r:{if((d|0)!=H[l+8>>2]){H[d>>2]=h;H[l+4>>2]=d+4;break r}i=H[l>>2];j=d-i|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break q}c=j>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;d=0;s:{if(!e){break s}if(e>>>0>=1073741824){break a}d=ra(e<<2)}c=d+(g<<2)|0;H[c>>2]=h;if((j|0)>=1){sa(d,i,j)}H[l+8>>2]=d+(e<<2);H[l+4>>2]=c+4;H[l>>2]=d;if(!i){break r}qa(i)}i=H[a+12>>2];d=H[i+4>>2];t:{if((d|0)!=H[i+8>>2]){H[d>>2]=b;H[i+4>>2]=d+4;break t}j=H[i>>2];h=d-j|0;g=h>>2;e=g+1|0;if(e>>>0>=1073741824){break p}c=h>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;d=0;u:{if(!e){break u}if(e>>>0>=1073741824){break a}d=ra(e<<2)}c=d+(g<<2)|0;H[c>>2]=b;if((h|0)>=1){sa(d,j,h)}H[i+8>>2]=d+(e<<2);H[i+4>>2]=c+4;H[i>>2]=d;if(!j){break t}qa(j)}d=H[a+12>>2];H[H[d+12>>2]+(f<<2)>>2]=H[d+24>>2];H[d+24>>2]=H[d+24>>2]+1}if((b|0)==-1){break k}h=H[a+4>>2];d=-1;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]}b=(b-N(k,3)|0?-1:2)+b|0;if((b|0)!=-1){d=H[H[h+12>>2]+(b<<2)>>2]}g=(d|0)==-1;e=(d>>>0)/3|0;c=(f>>>0)/3|0;b=(f|0)==-1;if(!b){b=b?-1:c;b=H[H[a+24>>2]+(b>>>3&536870908)>>2]&1<>2]+(b>>>3&536870908)>>2]>>>b&1){break v}b=0;c=H[H[h>>2]+(d<<2)>>2];if(!(H[H[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){b=H[a+88>>2]+(c<<2)|0;c=H[b>>2];H[b>>2]=c+1;b=(c|0)<1?2:1}if(!(!l|H[a+84>>2]<(b|0))){b=d;f=H[a+24>>2];continue}m=N(b,12)+a|0;j=m;c=H[j+52>>2];w:{if((c|0)!=H[j+56>>2]){H[c>>2]=d;H[j+52>>2]=c+4;break w}k=H[m+48>>2];i=c-k|0;h=i>>2;g=h+1|0;if(g>>>0>=1073741824){break d}e=i>>1;g=h>>>0<536870911?e>>>0>>0?g:e:1073741823;c=0;x:{if(!g){break x}if(g>>>0>=1073741824){break a}c=ra(g<<2)}e=c+(h<<2)|0;H[e>>2]=d;if((i|0)>=1){sa(c,k,i)}H[m+48>>2]=c;H[j+52>>2]=e+4;H[m+56>>2]=c+(g<<2);if(!k){break w}qa(k)}if(H[a+84>>2]<=(b|0)){break v}H[a+84>>2]=b}if(l){break k}b=-1;if((f|0)==-1){break l}}b=H[H[H[a+4>>2]>>2]+(f<<2)>>2]}d=0;if(!(H[H[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=H[a+88>>2]+(b<<2)|0;d=H[b>>2];H[b>>2]=d+1;d=(d|0)<1?2:1}if(H[a+84>>2]>=(d|0)){b=f;f=H[a+24>>2];continue}break}k=N(d,12)+a|0;h=k;b=H[h+52>>2];y:{if((b|0)!=H[h+56>>2]){H[b>>2]=f;H[h+52>>2]=b+4;break y}i=H[k+48>>2];j=b-i|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break c}c=j>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;b=0;z:{if(!e){break z}if(e>>>0>=1073741824){break a}b=ra(e<<2)}c=b+(g<<2)|0;H[c>>2]=f;if((j|0)>=1){sa(b,i,j)}H[k+48>>2]=b;H[h+52>>2]=c+4;H[k+56>>2]=b+(e<<2);if(!i){break y}qa(i)}c=H[a+84>>2];if((c|0)<=(d|0)){break j}H[a+84>>2]=d;c=d;break j}c=H[a+84>>2]}if((c|0)<3){continue}break}}return 1}ua();X()}ua();X()}ua();X()}wa(11712);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=O(0),o=0,p=0,q=0,r=0,s=O(0);h=da-80|0;da=h;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;H[h+64>>2]=1065353216;d=H[a+80>>2];H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}e=d<<2;f=ra(e);H[h+24>>2]=f;c=f+e|0;H[h+32>>2]=c;ta(f,0,e);H[h+28>>2]=c}b:{if(!d){break b}while(1){d=H[H[b>>2]>>2];r=m;e=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],m,0)|0;c=d+e|0;e=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);q=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[h+40>>2]=q;H[h+44>>2]=e;c:{d:{e:{if(!g){break e}o=e;j=q;i=e^(j^318)+239;k=hl(g)>>>0>1;f:{if(!k){d=i&g-1;break f}d=i;if(g>>>0>d>>>0){break f}d=(i>>>0)%(g>>>0)|0}c=H[H[h+48>>2]+(d<<2)>>2];if(!c){break e}c=H[c>>2];if(!c){break e}if(!k){k=g-1|0;while(1){g=H[c+4>>2];g:{if((g|0)!=(i|0)){if((g&k)==(d|0)){break g}break e}if((j|0)!=H[c+8>>2]){break g}if((o|0)==H[c+12>>2]){break d}}c=H[c>>2];if(c){continue}break}break e}while(1){k=H[c+4>>2];h:{if((k|0)!=(i|0)){if(g>>>0<=k>>>0){k=(k>>>0)%(g>>>0)|0}if((d|0)==(k|0)){break h}break e}if((j|0)!=H[c+8>>2]){break h}if((o|0)==H[c+12>>2]){break d}}c=H[c>>2];if(c){continue}break}}H[h+16>>2]=p;H[h+8>>2]=q;H[h+12>>2]=e;d=0;k=H[h+12>>2];i=H[h+8>>2];e=k^(i^318)+239;q=h;i:{j:{j=h+48|0;f=H[j+4>>2];if(!f){break j}c=hl(f);k:{if(c>>>0>=2){d=e;if(d>>>0>=f>>>0){d=(e>>>0)%(f>>>0)|0}g=H[H[j>>2]+(d<<2)>>2];if(!g){break j}if(c>>>0<=1){break k}while(1){g=H[g>>2];if(!g){break j}c=H[g+4>>2];if((c|0)!=(e|0)){if(c>>>0>=f>>>0){c=(c>>>0)%(f>>>0)|0}if((c|0)!=(d|0)){break j}}if((i|0)!=H[g+8>>2]|(k|0)!=H[g+12>>2]){continue}break}d=0;break i}d=e&f-1;g=H[H[j>>2]+(d<<2)>>2];if(!g){break j}}c=f-1|0;while(1){g=H[g>>2];if(!g){break j}o=H[g+4>>2];if((c&o)!=(d|0)?(e|0)!=(o|0):0){break j}if((i|0)!=H[g+8>>2]|(k|0)!=H[g+12>>2]){continue}break}d=0;break i}g=ra(20);c=H[h+12>>2];H[g+8>>2]=H[h+8>>2];H[g+12>>2]=c;c=H[h+16>>2];H[g+4>>2]=e;H[g+16>>2]=c;H[g>>2]=0;s=O(H[j+12>>2]+1>>>0);n=L[j+16>>2];l:{if(f?!(s>O(n*O(f>>>0))):0){break l}i=(f-1&f)!=0|f>>>0<3|f<<1;n=O(U(O(s/n)));m:{if(n=O(0)){c=~~n>>>0;break m}c=0}c=c>>>0>i>>>0?c:i;d=2;n:{if((c|0)==1){break n}d=c;if(!(c&c-1)){break n}d=Na(c)}c=H[j+4>>2];o:{if(d>>>0>c>>>0){Ge(j,d);break o}p:{if(c>>>0<=d>>>0){break p}f=c>>>0<3;n=O(U(O(O(K[j+12>>2])/L[j+16>>2])));q:{if(n=O(0)){i=~~n>>>0;break q}i=0}o=c;r:{s:{if(f){break s}if(hl(c)>>>0>1){break s}c=i>>>0<2?i:1<<32-Q(i-1|0);break r}c=Na(i)}d=c>>>0>d>>>0?c:d;if(o>>>0<=d>>>0){break p}Ge(j,d)}}f=H[j+4>>2];if(!(f&f-1)){d=e&f-1;break l}if(f>>>0>e>>>0){d=e;break l}d=(e>>>0)%(f>>>0)|0}e=H[j>>2]+(d<<2)|0;d=H[e>>2];t:{if(!d){H[g>>2]=H[j+8>>2];H[j+8>>2]=g;H[e>>2]=j+8;d=H[g>>2];if(!d){break t}c=H[d+4>>2];d=f-1|0;u:{if(!(d&f)){c=c&d;break u}if(c>>>0>>0){break u}c=(c>>>0)%(f>>>0)|0}H[H[j>>2]+(c<<2)>>2]=g;break t}H[g>>2]=H[d>>2];H[d>>2]=g}H[j+12>>2]=H[j+12>>2]+1;d=1}F[q+76|0]=d;H[h+72>>2]=g;d=H[a+40>>2];sa(H[H[a>>2]>>2]+N(d,p)|0,h+40|0,d);f=H[h+24>>2];H[f+(r<<2)>>2]=p;p=p+1|0;break c}H[(r<<2)+f>>2]=H[c+16>>2]}d=l;e=m+1|0;d=e>>>0<1?d+1|0:d;m=e;l=d;c=H[a+80>>2];if(!d&c>>>0>e>>>0){g=H[h+52>>2];continue}break}if((c|0)==(p|0)){break b}v:{if(!I[a+84|0]){e=H[a+68>>2];b=H[a+72>>2]-e|0;if(!b){break v}l=H[h+24>>2];d=b>>31;d=(d+b^d)>>>2|0;b=(b|0)>-1?b:-1;b=N(d,(b|0)<1?b:1);b=b>>>0>1?b:1;d=b&3;c=0;if(b-1>>>0>=3){b=b&-4;while(1){i=c<<2;m=i+e|0;H[m>>2]=H[l+(H[m>>2]<<2)>>2];m=e+(i|4)|0;H[m>>2]=H[l+(H[m>>2]<<2)>>2];m=e+(i|8)|0;H[m>>2]=H[l+(H[m>>2]<<2)>>2];i=e+(i|12)|0;H[i>>2]=H[l+(H[i>>2]<<2)>>2];c=c+4|0;b=b-4|0;if(b){continue}break}}if(!d){break v}while(1){b=e+(c<<2)|0;H[b>>2]=H[l+(H[b>>2]<<2)>>2];c=c+1|0;d=d-1|0;if(d){continue}break}break v}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;w:{if(b>>>0>>0){Va(a+68|0,c-b|0,1420);c=H[a+80>>2];break w}if(b>>>0<=c>>>0){break w}H[a+72>>2]=d+(c<<2)}if(!c){break v}e=H[h+24>>2];d=c&3;l=H[a+68>>2];f=0;if(c-1>>>0>=3){b=c&-4;while(1){c=f<<2;H[c+l>>2]=H[c+e>>2];i=c|4;H[i+l>>2]=H[e+i>>2];i=c|8;H[i+l>>2]=H[e+i>>2];c=c|12;H[c+l>>2]=H[c+e>>2];f=f+4|0;b=b-4|0;if(b){continue}break}}if(!d){break v}while(1){b=f<<2;H[b+l>>2]=H[b+e>>2];f=f+1|0;d=d-1|0;if(d){continue}break}}H[a+80>>2]=p}a=H[h+24>>2];if(a){H[h+28>>2]=a;qa(a)}c=H[h+56>>2];if(c){while(1){a=H[c>>2];qa(c);c=a;if(c){continue}break}}a=H[h+48>>2];H[h+48>>2]=0;if(a){qa(a)}da=h+80|0;return p}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=O(0),m=0,n=0,o=0,p=0,q=0,r=O(0),s=0;h=da+-64|0;da=h;H[h+40>>2]=0;H[h+44>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;H[h+48>>2]=1065353216;c=H[a+80>>2];H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}d=c<<2;i=ra(d);H[h+16>>2]=i;e=d+i|0;H[h+24>>2]=e;ta(i,0,d);H[h+20>>2]=e}b:{if(!c){break b}while(1){e=H[H[b>>2]>>2];q=p;c=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],p,0)|0;c=e+c|0;n=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[h+28>>2]=n;c:{d:{e:{if(!f){break e}m=n>>>16|0;j=n&65535;e=m^(j^318)+239;g=hl(f)>>>0>1;f:{if(!g){c=e&f+131071;break f}c=e;if(f>>>0>c>>>0){break f}c=(e>>>0)%(f>>>0)|0}d=H[H[h+32>>2]+(c<<2)>>2];if(!d){break e}d=H[d>>2];if(!d){break e}if(!g){g=f-1|0;while(1){f=H[d+4>>2];g:{if((f|0)!=(e|0)){if((f&g)==(c|0)){break g}break e}if((j|0)!=J[d+8>>1]){break g}if((m|0)==J[d+10>>1]){break d}}d=H[d>>2];if(d){continue}break}break e}while(1){g=H[d+4>>2];h:{if((g|0)!=(e|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((c|0)==(g|0)){break h}break e}if((j|0)!=J[d+8>>1]){break h}if((m|0)==J[d+10>>1]){break d}}d=H[d>>2];if(d){continue}break}}H[h+12>>2]=o;H[h+8>>2]=n;c=0;m=J[h+10>>1];g=J[h+8>>1];d=m^(g^318)+239;s=h;i:{j:{j=h+32|0;i=H[j+4>>2];if(!i){break j}e=hl(i);k:{if(e>>>0>=2){c=d;if(d>>>0>=i>>>0){c=(d>>>0)%(i>>>0)|0}f=H[H[j>>2]+(c<<2)>>2];if(!f){break j}if(e>>>0<=1){break k}while(1){f=H[f>>2];if(!f){break j}e=H[f+4>>2];if((e|0)!=(d|0)){if(e>>>0>=i>>>0){e=(e>>>0)%(i>>>0)|0}if((c|0)!=(e|0)){break j}}if((g|0)!=J[f+8>>1]|(m|0)!=J[f+10>>1]){continue}break}c=0;break i}c=d&i+131071;f=H[H[j>>2]+(c<<2)>>2];if(!f){break j}}e=i-1|0;while(1){f=H[f>>2];if(!f){break j}n=H[f+4>>2];if((e&n)!=(c|0)?(n|0)!=(d|0):0){break j}if((g|0)!=J[f+8>>1]|(m|0)!=J[f+10>>1]){continue}break}c=0;break i}f=ra(16);H[f+8>>2]=H[h+8>>2];e=H[h+12>>2];H[f+4>>2]=d;H[f+12>>2]=e;H[f>>2]=0;r=O(H[j+12>>2]+1>>>0);l=L[j+16>>2];l:{if(i?!(r>O(l*O(i>>>0))):0){break l}g=(i-1&i)!=0|i>>>0<3|i<<1;l=O(U(O(r/l)));m:{if(l=O(0)){e=~~l>>>0;break m}e=0}e=e>>>0>g>>>0?e:g;g=2;n:{if((e|0)==1){break n}c=e;g=c;if(!(c&c-1)){break n}g=Na(e)}c=g;e=H[j+4>>2];o:{if(c>>>0>e>>>0){de(j,c);break o}p:{if(c>>>0>=e>>>0){break p}m=e>>>0<3;l=O(U(O(O(K[j+12>>2])/L[j+16>>2])));q:{if(l=O(0)){g=~~l>>>0;break q}g=0}i=e;r:{s:{if(m){break s}if(hl(e)>>>0>1){break s}e=g>>>0<2?g:1<<32-Q(g-1|0);break r}e=Na(g)}c=c>>>0>>0?e:c;if(i>>>0<=c>>>0){break p}de(j,c)}}i=H[j+4>>2];if(!(i&i-1)){c=d&i-1;break l}if(d>>>0>>0){c=d;break l}c=(d>>>0)%(i>>>0)|0}d=H[j>>2]+(c<<2)|0;c=H[d>>2];t:{if(!c){H[f>>2]=H[j+8>>2];H[j+8>>2]=f;H[d>>2]=j+8;c=H[f>>2];if(!c){break t}d=H[c+4>>2];c=i-1|0;u:{if(!(c&i)){d=d&c;break u}if(d>>>0>>0){break u}d=(d>>>0)%(i>>>0)|0}H[H[j>>2]+(d<<2)>>2]=f;break t}H[f>>2]=H[c>>2];H[c>>2]=f}H[j+12>>2]=H[j+12>>2]+1;c=1}F[s+60|0]=c;H[h+56>>2]=f;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,o)|0,h+28|0,c);i=H[h+16>>2];H[i+(q<<2)>>2]=o;o=o+1|0;break c}H[(q<<2)+i>>2]=H[d+12>>2]}c=k;d=p+1|0;c=d>>>0<1?c+1|0:c;p=d;k=c;d=H[a+80>>2];if(!c&d>>>0>p>>>0){f=H[h+36>>2];continue}break}if((d|0)==(o|0)){break b}v:{if(!I[a+84|0]){b=H[a+68>>2];c=H[a+72>>2]-b|0;if(!c){break v}k=H[h+16>>2];d=c>>31;e=(d+c^d)>>>2|0;c=(c|0)>-1?c:-1;c=N(e,(c|0)<1?c:1);e=c>>>0>1?c:1;c=e&3;d=0;if(e-1>>>0>=3){f=e&-4;while(1){e=d<<2;g=e+b|0;H[g>>2]=H[k+(H[g>>2]<<2)>>2];g=b+(e|4)|0;H[g>>2]=H[k+(H[g>>2]<<2)>>2];g=b+(e|8)|0;H[g>>2]=H[k+(H[g>>2]<<2)>>2];e=b+(e|12)|0;H[e>>2]=H[k+(H[e>>2]<<2)>>2];d=d+4|0;f=f-4|0;if(f){continue}break}}if(!c){break v}while(1){e=b+(d<<2)|0;H[e>>2]=H[k+(H[e>>2]<<2)>>2];d=d+1|0;c=c-1|0;if(c){continue}break}break v}F[a+84|0]=0;c=H[a+68>>2];b=H[a+72>>2]-c>>2;w:{if(b>>>0>>0){Va(a+68|0,d-b|0,1420);d=H[a+80>>2];break w}if(b>>>0<=d>>>0){break w}H[a+72>>2]=c+(d<<2)}if(!d){break v}k=H[h+16>>2];c=d&3;e=H[a+68>>2];b=0;if(d-1>>>0>=3){f=d&-4;while(1){d=b<<2;H[d+e>>2]=H[d+k>>2];g=d|4;H[g+e>>2]=H[g+k>>2];g=d|8;H[g+e>>2]=H[g+k>>2];d=d|12;H[d+e>>2]=H[d+k>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!c){break v}while(1){d=b<<2;H[d+e>>2]=H[d+k>>2];b=b+1|0;c=c-1|0;if(c){continue}break}}H[a+80>>2]=o}a=H[h+16>>2];if(a){H[h+20>>2]=a;qa(a)}d=H[h+40>>2];if(d){while(1){a=H[d>>2];qa(d);d=a;if(d){continue}break}}a=H[h+32>>2];H[h+32>>2]=0;if(a){qa(a)}da=h- -64|0;return o}ua();X()}function mb(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=0;a:{b:{c:{if(!d){break c}d:{switch(H[a+28>>2]-1|0){case 0:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;f=F[b|0];H[e>>2]=f;H[e+4>>2]=f>>31;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 a;case 1:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;H[e>>2]=I[b|0];H[e+4>>2]=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 a;case 2:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;f=G[b>>1];H[e>>2]=f;H[e+4>>2]=f>>31;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 a;case 3:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;H[e>>2]=J[b>>1];H[e+4>>2]=0;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 a;case 4:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;f=H[b>>2];H[e>>2]=f;H[e+4>>2]=f>>31;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 a;case 5:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;H[e>>2]=H[b>>2];H[e+4>>2]=0;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 a;case 6:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}f=H[b+4>>2];e=(g<<3)+d|0;H[e>>2]=H[b>>2];H[e+4>>2]=f;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 a;case 7:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=H[b>>2];f=H[b+4>>2];k=f;if((f|0)<0){break b}f=(g<<3)+d|0;H[f>>2]=e;H[f+4>>2]=k;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 a;case 8:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;k=H[e+4>>2];while(1){if(b>>>0>=k>>>0){break b}e=(g<<3)+d|0;h=e;i=L[b>>2];e:{if(O(P(i))=O(1)?i>O(0)?~~O(R(O(T(O(i*O(2.3283064365386963e-10)))),O(4294967296)))>>>0:~~O(U(O(O(i-O(~~i>>>0>>>0))*O(2.3283064365386963e-10))))>>>0:0;l=~~i>>>0;break e}f=-2147483648;l=0}H[h>>2]=l;H[e+4>>2]=f;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 a;case 9:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;k=H[e+4>>2];while(1){if(b>>>0>=k>>>0){break b}e=(g<<3)+d|0;h=e;j=M[b>>3];f:{if(P(j)<0x8000000000000000){f=P(j)>=1?j>0?~~R(T(j*2.3283064365386963e-10),4294967295)>>>0:~~U((j-+(~~j>>>0>>>0))*2.3283064365386963e-10)>>>0:0;l=~~j>>>0;break f}f=-2147483648;l=0}H[h>>2]=l;H[e+4>>2]=f;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 a;case 10:break d;default:break c}}e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break b}e=(g<<3)+d|0;H[e>>2]=I[b|0];H[e+4>>2]=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}ta((e<<3)+d|0,0,c-e<<3)}return}return}ta((e<<3)+d|0,0,c-e<<3)}function vf(a,b){var c=0,d=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=O(0),s=0;h=da+-64|0;da=h;H[h+40>>2]=0;H[h+44>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;H[h+48>>2]=1065353216;c=H[a+80>>2];H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}d=c<<2;i=ra(d);H[h+16>>2]=i;e=d+i|0;H[h+24>>2]=e;ta(i,0,d);H[h+20>>2]=e}b:{if(!c){break b}while(1){e=H[H[b>>2]>>2];q=p;c=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],p,0)|0;c=e+c|0;n=I[c|0]|I[c+1|0]<<8;G[h+30>>1]=n;c:{d:{e:{if(!f){break e}m=n>>>8|0;j=n&255;e=m^(j^318)+239;g=hl(f)>>>0>1;f:{if(!g){c=e&f-1;break f}c=e;if(f>>>0>c>>>0){break f}c=(e>>>0)%(f>>>0)|0}d=H[H[h+32>>2]+(c<<2)>>2];if(!d){break e}d=H[d>>2];if(!d){break e}if(!g){g=f-1|0;while(1){f=H[d+4>>2];g:{if((f|0)!=(e|0)){if((f&g)==(c|0)){break g}break e}if((j|0)!=I[d+8|0]){break g}if((m|0)==I[d+9|0]){break d}}d=H[d>>2];if(d){continue}break}break e}while(1){g=H[d+4>>2];h:{if((g|0)!=(e|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((c|0)==(g|0)){break h}break e}if((j|0)!=I[d+8|0]){break h}if((m|0)==I[d+9|0]){break d}}d=H[d>>2];if(d){continue}break}}H[h+12>>2]=o;G[h+8>>1]=n;c=0;m=I[h+9|0];g=I[h+8|0];d=m^(g^318)+239;s=h;i:{j:{j=h+32|0;i=H[j+4>>2];if(!i){break j}e=hl(i);k:{if(e>>>0>=2){c=d;if(d>>>0>=i>>>0){c=(d>>>0)%(i>>>0)|0}f=H[H[j>>2]+(c<<2)>>2];if(!f){break j}if(e>>>0<=1){break k}while(1){f=H[f>>2];if(!f){break j}e=H[f+4>>2];if((e|0)!=(d|0)){if(e>>>0>=i>>>0){e=(e>>>0)%(i>>>0)|0}if((c|0)!=(e|0)){break j}}if((g|0)!=I[f+8|0]|(m|0)!=I[f+9|0]){continue}break}c=0;break i}c=d&i+1023;f=H[H[j>>2]+(c<<2)>>2];if(!f){break j}}e=i-1|0;while(1){f=H[f>>2];if(!f){break j}n=H[f+4>>2];if((e&n)!=(c|0)?(n|0)!=(d|0):0){break j}if((g|0)!=I[f+8|0]|(m|0)!=I[f+9|0]){continue}break}c=0;break i}f=ra(16);G[f+8>>1]=J[h+8>>1];e=H[h+12>>2];H[f+4>>2]=d;H[f+12>>2]=e;H[f>>2]=0;r=O(H[j+12>>2]+1>>>0);l=L[j+16>>2];l:{if(i?!(r>O(l*O(i>>>0))):0){break l}g=(i-1&i)!=0|i>>>0<3|i<<1;l=O(U(O(r/l)));m:{if(l=O(0)){e=~~l>>>0;break m}e=0}e=e>>>0>g>>>0?e:g;g=2;n:{if((e|0)==1){break n}c=e;g=c;if(!(c&c-1)){break n}g=Na(e)}c=g;e=H[j+4>>2];o:{if(c>>>0>e>>>0){ne(j,c);break o}p:{if(c>>>0>=e>>>0){break p}m=e>>>0<3;l=O(U(O(O(K[j+12>>2])/L[j+16>>2])));q:{if(l=O(0)){g=~~l>>>0;break q}g=0}i=e;r:{s:{if(m){break s}if(hl(e)>>>0>1){break s}e=g>>>0<2?g:1<<32-Q(g-1|0);break r}e=Na(g)}c=c>>>0>>0?e:c;if(i>>>0<=c>>>0){break p}ne(j,c)}}i=H[j+4>>2];if(!(i&i-1)){c=d&i-1;break l}if(d>>>0>>0){c=d;break l}c=(d>>>0)%(i>>>0)|0}d=H[j>>2]+(c<<2)|0;c=H[d>>2];t:{if(!c){H[f>>2]=H[j+8>>2];H[j+8>>2]=f;H[d>>2]=j+8;c=H[f>>2];if(!c){break t}d=H[c+4>>2];c=i-1|0;u:{if(!(c&i)){d=d&c;break u}if(d>>>0>>0){break u}d=(d>>>0)%(i>>>0)|0}H[H[j>>2]+(d<<2)>>2]=f;break t}H[f>>2]=H[c>>2];H[c>>2]=f}H[j+12>>2]=H[j+12>>2]+1;c=1}F[s+60|0]=c;H[h+56>>2]=f;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,o)|0,h+30|0,c);i=H[h+16>>2];H[i+(q<<2)>>2]=o;o=o+1|0;break c}H[(q<<2)+i>>2]=H[d+12>>2]}c=k;d=p+1|0;c=d>>>0<1?c+1|0:c;p=d;k=c;d=H[a+80>>2];if(!c&d>>>0>p>>>0){f=H[h+36>>2];continue}break}if((d|0)==(o|0)){break b}v:{if(!I[a+84|0]){b=H[a+68>>2];c=H[a+72>>2]-b|0;if(!c){break v}k=H[h+16>>2];d=c>>31;e=(d+c^d)>>>2|0;c=(c|0)>-1?c:-1;c=N(e,(c|0)<1?c:1);e=c>>>0>1?c:1;c=e&3;d=0;if(e-1>>>0>=3){f=e&-4;while(1){e=d<<2;g=e+b|0;H[g>>2]=H[k+(H[g>>2]<<2)>>2];g=b+(e|4)|0;H[g>>2]=H[k+(H[g>>2]<<2)>>2];g=b+(e|8)|0;H[g>>2]=H[k+(H[g>>2]<<2)>>2];e=b+(e|12)|0;H[e>>2]=H[k+(H[e>>2]<<2)>>2];d=d+4|0;f=f-4|0;if(f){continue}break}}if(!c){break v}while(1){e=b+(d<<2)|0;H[e>>2]=H[k+(H[e>>2]<<2)>>2];d=d+1|0;c=c-1|0;if(c){continue}break}break v}F[a+84|0]=0;c=H[a+68>>2];b=H[a+72>>2]-c>>2;w:{if(b>>>0>>0){Va(a+68|0,d-b|0,1420);d=H[a+80>>2];break w}if(b>>>0<=d>>>0){break w}H[a+72>>2]=c+(d<<2)}if(!d){break v}k=H[h+16>>2];c=d&3;e=H[a+68>>2];b=0;if(d-1>>>0>=3){f=d&-4;while(1){d=b<<2;H[d+e>>2]=H[d+k>>2];g=d|4;H[g+e>>2]=H[g+k>>2];g=d|8;H[g+e>>2]=H[g+k>>2];d=d|12;H[d+e>>2]=H[d+k>>2];b=b+4|0;f=f-4|0;if(f){continue}break}}if(!c){break v}while(1){d=b<<2;H[d+e>>2]=H[d+k>>2];b=b+1|0;c=c-1|0;if(c){continue}break}}H[a+80>>2]=o}a=H[h+16>>2];if(a){H[h+20>>2]=a;qa(a)}d=H[h+40>>2];if(d){while(1){a=H[d>>2];qa(d);d=a;if(d){continue}break}}a=H[h+32>>2];H[h+32>>2]=0;if(a){qa(a)}da=h- -64|0;return o}ua();X()}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,k=0,l=0,m=0,n=0,o=0,p=0;k=da-16|0;da=k;c=H[b+56>>2];f=H[c+100>>2]-H[c+96>>2]|0;g=(f|0)/12|0;Ga(g,H[b+44>>2]);Ga(H[H[b+56>>2]+80>>2],H[b+44>>2]);n=H[b+48>>2];c=ra(32);H[k>>2]=c;H[k+4>>2]=21;H[k+8>>2]=-2147483616;F[c+21|0]=0;j=I[13309]|I[13310]<<8|(I[13311]<<16|I[13312]<<24);i=I[13305]|I[13306]<<8|(I[13307]<<16|I[13308]<<24);F[c+13|0]=i;F[c+14|0]=i>>>8;F[c+15|0]=i>>>16;F[c+16|0]=i>>>24;F[c+17|0]=j;F[c+18|0]=j>>>8;F[c+19|0]=j>>>16;F[c+20|0]=j>>>24;j=I[13304]|I[13305]<<8|(I[13306]<<16|I[13307]<<24);i=I[13300]|I[13301]<<8|(I[13302]<<16|I[13303]<<24);F[c+8|0]=i;F[c+9|0]=i>>>8;F[c+10|0]=i>>>16;F[c+11|0]=i>>>24;F[c+12|0]=j;F[c+13|0]=j>>>8;F[c+14|0]=j>>>16;F[c+15|0]=j>>>24;j=I[13296]|I[13297]<<8|(I[13298]<<16|I[13299]<<24);i=I[13292]|I[13293]<<8|(I[13294]<<16|I[13295]<<24);F[c|0]=i;F[c+1|0]=i>>>8;F[c+2|0]=i>>>16;F[c+3|0]=i>>>24;F[c+4|0]=j;F[c+5|0]=j>>>8;F[c+6|0]=j>>>16;F[c+7|0]=j>>>24;j=Tb(n,k,0);if(F[k+11|0]<=-1){qa(H[k>>2])}c=H[b+44>>2];a:{if(j){F[k|0]=0;g=H[c+20>>2];if((g|0)<0?1:(g|0)<=0?!H[c+16>>2]:0){va(c,H[c+4>>2],k,k+1|0)}g=da-16|0;da=g;H[g+8>>2]=0;H[g>>2]=0;H[g+4>>2]=0;c=H[b+56>>2];f=H[c+96>>2];b:{c=H[c+100>>2]-f|0;if(!c){break b}e=(c|0)/12|0;n=e>>>0>1?e:1;e=0;c:{while(1){d:{j=N(o,12)+f|0;l=H[j>>2];c=l-m|0;f=c>>31;i=(f^c+f)<<1|c>>>31;e:{if((d|0)!=(h|0)){H[d>>2]=i;d=d+4|0;H[g+4>>2]=d;break e}f=h-e|0;h=f>>2;d=h+1|0;if(d>>>0>=1073741824){break d}m=f>>1;d=h>>>0<536870911?d>>>0>m>>>0?d:m:1073741823;c=0;f:{if(!d){break f}if(d>>>0>=1073741824){break c}c=ra(d<<2)}m=c+(h<<2)|0;H[m>>2]=i;h=c+(d<<2)|0;d=m+4|0;if((f|0)>=1){sa(c,e,f)}H[g+8>>2]=h;H[g+4>>2]=d;H[g>>2]=c;if(e){qa(e)}e=c}p=H[j+4>>2];c=p-l|0;f=c>>31;i=(f^c+f)<<1|c>>>31;g:{if((d|0)!=(h|0)){H[d>>2]=i;d=d+4|0;H[g+4>>2]=d;break g}f=h-e|0;h=f>>2;d=h+1|0;if(d>>>0>1073741823){break d}l=f>>1;d=h>>>0<536870911?d>>>0>l>>>0?d:l:1073741823;c=0;h:{if(!d){break h}if(d>>>0>1073741823){break c}c=ra(d<<2)}l=c+(h<<2)|0;H[l>>2]=i;h=c+(d<<2)|0;d=l+4|0;if((f|0)>=1){sa(c,e,f)}H[g+8>>2]=h;H[g+4>>2]=d;H[g>>2]=c;if(e){qa(e)}e=c}m=H[j+8>>2];c=m-p|0;f=c>>31;j=(f^c+f)<<1|c>>>31;i:{if((d|0)!=(h|0)){H[d>>2]=j;d=d+4|0;H[g+4>>2]=d;break i}f=h-e|0;h=f>>2;d=h+1|0;if(d>>>0>1073741823){break d}i=f>>1;d=h>>>0<536870911?d>>>0>i>>>0?d:i:1073741823;c=0;j:{if(!d){break j}if(d>>>0>1073741823){break c}c=ra(d<<2)}i=c+(h<<2)|0;H[i>>2]=j;h=c+(d<<2)|0;d=i+4|0;if((f|0)>=1){sa(c,e,f)}H[g+8>>2]=h;H[g+4>>2]=d;H[g>>2]=c;if(e){qa(e)}e=c}o=o+1|0;if((n|0)==(o|0)){break b}f=H[H[b+56>>2]+96>>2];continue}break}ua();X()}wa(13360);X()}Gd(e,d-e>>2,1,0,H[b+44>>2]);if(e){qa(e)}da=g+16|0;break a}F[k|0]=1;d=H[c+20>>2];if((d|0)<0?1:(d|0)<=0?!H[c+16>>2]:0){va(c,H[c+4>>2],k,k+1|0)}d=H[b+56>>2];c=H[d+80>>2];if(c>>>0<=255){if(!f){break a}h=k+1|0;i=g>>>0>1?g:1;f=0;while(1){e=H[b+44>>2];g=H[d+96>>2]+N(f,12)|0;F[k|0]=H[g>>2];j=H[e+20>>2];c=j;d=H[e+16>>2];if((c|0)<0?1:(c|0)<=0?!d:0){va(e,H[e+4>>2],k,h);e=H[b+44>>2];c=e;d=H[c+16>>2];c=H[c+20>>2]}F[k|0]=H[g+4>>2];if((c|0)<0?1:(c|0)<=0?!d:0){va(e,H[e+4>>2],k,h);e=H[b+44>>2];d=H[e+16>>2];c=H[e+20>>2]}F[k|0]=H[g+8>>2];if((c|0)<0?1:(c|0)<=0?!d:0){va(e,H[e+4>>2],k,h)}f=f+1|0;if((i|0)==(f|0)){break a}d=H[b+56>>2];continue}}if(c>>>0<=65535){if(!f){break a}h=k+2|0;i=g>>>0>1?g:1;f=0;while(1){e=H[b+44>>2];g=H[d+96>>2]+N(f,12)|0;G[k>>1]=H[g>>2];j=H[e+20>>2];c=j;d=H[e+16>>2];if((c|0)<0?1:(c|0)<=0?!d:0){va(e,H[e+4>>2],k,h);e=H[b+44>>2];c=e;d=H[c+16>>2];c=H[c+20>>2]}G[k>>1]=H[g+4>>2];if((c|0)<0?1:(c|0)<=0?!d:0){va(e,H[e+4>>2],k,h);e=H[b+44>>2];d=H[e+16>>2];c=H[e+20>>2]}G[k>>1]=H[g+8>>2];if((c|0)<0?1:(c|0)<=0?!d:0){va(e,H[e+4>>2],k,h)}f=f+1|0;if((i|0)==(f|0)){break a}d=H[b+56>>2];continue}}if(c>>>0>=2097152){if(!f){break a}g=g>>>0>1?g:1;while(1){c=H[b+44>>2];f=H[c+20>>2];if((f|0)<0?1:(f|0)<=0?!H[c+16>>2]:0){j=c;f=H[c+4>>2];c=H[d+96>>2]+N(e,12)|0;va(j,f,c,c+12|0)}e=e+1|0;if((g|0)==(e|0)){break a}d=H[b+56>>2];continue}}if(!f){break a}g=g>>>0>1?g:1;while(1){c=H[d+96>>2]+N(e,12)|0;Ga(H[c>>2],H[b+44>>2]);Ga(H[c+4>>2],H[b+44>>2]);Ga(H[c+8>>2],H[b+44>>2]);e=e+1|0;if((g|0)==(e|0)){break a}d=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=k+16|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=O(0),m=0,n=0,o=0,p=0,q=0,r=O(0);h=da+-64|0;da=h;H[h+40>>2]=0;H[h+44>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;H[h+48>>2]=1065353216;c=H[a+80>>2];H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}e=c<<2;g=ra(e);H[h+16>>2]=g;f=e+g|0;H[h+24>>2]=f;ta(g,0,e);H[h+20>>2]=f}b:{if(!c){break b}while(1){e=H[H[b>>2]>>2];q=o;c=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],o,0)|0;c=e+c|0;i=I[c|0]|I[c+1|0]<<8;G[h+30>>1]=i;c:{d:{e:{if(!d){break e}p=H[h+32>>2];e=i^318;j=hl(d)>>>0>1;f=e&d-1;f:{if(!j){break f}c=e;f=c;if(c>>>0>>0){break f}f=(e>>>0)%(d>>>0)|0}m=f;c=H[p+(m<<2)>>2];if(!c){break e}c=H[c>>2];if(!c){break e}if(!j){d=d-1|0;while(1){f=H[c+4>>2];g:{if((f|0)!=(e|0)){if((m|0)==(d&f)){break g}break e}if((i|0)==J[c+8>>1]){break d}}c=H[c>>2];if(c){continue}break}break e}while(1){f=H[c+4>>2];h:{if((f|0)!=(e|0)){if(d>>>0<=f>>>0){f=(f>>>0)%(d>>>0)|0}if((f|0)==(m|0)){break h}break e}if((i|0)==J[c+8>>1]){break d}}c=H[c>>2];if(c){continue}break}}H[h+12>>2]=n;G[h+8>>1]=i;d=0;f=J[h+8>>1];c=f^318;p=h;i:{j:{j=h+32|0;g=H[j+4>>2];if(!g){break j}e=hl(g);k:{if(e>>>0>=2){d=c;if(c>>>0>=g>>>0){d=(c>>>0)%(g>>>0)|0}i=H[H[j>>2]+(d<<2)>>2];if(!i){break j}if(e>>>0<=1){break k}while(1){i=H[i>>2];if(!i){break j}e=H[i+4>>2];if((e|0)!=(c|0)){if(e>>>0>=g>>>0){e=(e>>>0)%(g>>>0)|0}if((d|0)!=(e|0)){break j}}if((f|0)!=J[i+8>>1]){continue}break}d=0;break i}d=c&g-1;i=H[H[j>>2]+(d<<2)>>2];if(!i){break j}}e=g-1|0;while(1){i=H[i>>2];if(!i){break j}m=H[i+4>>2];if((e&m)!=(d|0)?(c|0)!=(m|0):0){break j}if((f|0)!=J[i+8>>1]){continue}break}d=0;break i}i=ra(16);G[i+8>>1]=J[h+8>>1];e=H[h+12>>2];H[i+4>>2]=c;H[i+12>>2]=e;H[i>>2]=0;r=O(H[j+12>>2]+1>>>0);l=L[j+16>>2];l:{if(g?!(r>O(l*O(g>>>0))):0){break l}f=(g-1&g)!=0|g>>>0<3|g<<1;l=O(U(O(r/l)));m:{if(l=O(0)){e=~~l>>>0;break m}e=0}e=e>>>0>f>>>0?e:f;f=2;n:{if((e|0)==1){break n}d=e;f=d;if(!(d&d-1)){break n}f=Na(e)}d=f;e=H[j+4>>2];o:{if(d>>>0>e>>>0){ee(j,d);break o}p:{if(d>>>0>=e>>>0){break p}m=e>>>0<3;l=O(U(O(O(K[j+12>>2])/L[j+16>>2])));q:{if(l=O(0)){f=~~l>>>0;break q}f=0}g=e;r:{s:{if(m){break s}if(hl(e)>>>0>1){break s}e=f>>>0<2?f:1<<32-Q(f-1|0);break r}e=Na(f)}d=d>>>0>>0?e:d;if(g>>>0<=d>>>0){break p}ee(j,d)}}g=H[j+4>>2];if(!(g&g-1)){d=c&g-1;break l}if(c>>>0>>0){d=c;break l}d=(c>>>0)%(g>>>0)|0}c=H[j>>2]+(d<<2)|0;d=H[c>>2];t:{if(!d){H[i>>2]=H[j+8>>2];H[j+8>>2]=i;H[c>>2]=j+8;d=H[i>>2];if(!d){break t}c=H[d+4>>2];d=g-1|0;u:{if(!(d&g)){c=c&d;break u}if(c>>>0>>0){break u}c=(c>>>0)%(g>>>0)|0}H[H[j>>2]+(c<<2)>>2]=i;break t}H[i>>2]=H[d>>2];H[d>>2]=i}H[j+12>>2]=H[j+12>>2]+1;d=1}F[p+60|0]=d;H[h+56>>2]=i;d=H[a+40>>2];sa(H[H[a>>2]>>2]+N(d,n)|0,h+30|0,d);g=H[h+16>>2];H[g+(q<<2)>>2]=n;n=n+1|0;break c}H[(q<<2)+g>>2]=H[c+12>>2]}d=k;c=o+1|0;d=c>>>0<1?d+1|0:d;o=c;k=d;c=H[a+80>>2];if(!d&c>>>0>o>>>0){d=H[h+36>>2];continue}break}if((c|0)==(n|0)){break b}v:{if(!I[a+84|0]){d=H[a+68>>2];b=H[a+72>>2]-d|0;if(!b){break v}k=H[h+16>>2];c=b>>31;c=(c+b^c)>>>2|0;b=(b|0)>-1?b:-1;b=N(c,(b|0)<1?b:1);e=b>>>0>1?b:1;b=e&3;c=0;if(e-1>>>0>=3){g=e&-4;while(1){e=c<<2;f=e+d|0;H[f>>2]=H[k+(H[f>>2]<<2)>>2];f=d+(e|4)|0;H[f>>2]=H[k+(H[f>>2]<<2)>>2];f=d+(e|8)|0;H[f>>2]=H[k+(H[f>>2]<<2)>>2];e=d+(e|12)|0;H[e>>2]=H[k+(H[e>>2]<<2)>>2];c=c+4|0;g=g-4|0;if(g){continue}break}}if(!b){break v}while(1){e=d+(c<<2)|0;H[e>>2]=H[k+(H[e>>2]<<2)>>2];c=c+1|0;b=b-1|0;if(b){continue}break}break v}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;w:{if(b>>>0>>0){Va(a+68|0,c-b|0,1420);c=H[a+80>>2];break w}if(b>>>0<=c>>>0){break w}H[a+72>>2]=d+(c<<2)}if(!c){break v}k=H[h+16>>2];b=c&3;e=H[a+68>>2];d=0;if(c-1>>>0>=3){g=c&-4;while(1){c=d<<2;H[c+e>>2]=H[c+k>>2];f=c|4;H[f+e>>2]=H[f+k>>2];f=c|8;H[f+e>>2]=H[f+k>>2];c=c|12;H[c+e>>2]=H[c+k>>2];d=d+4|0;g=g-4|0;if(g){continue}break}}if(!b){break v}while(1){c=d<<2;H[c+e>>2]=H[c+k>>2];d=d+1|0;b=b-1|0;if(b){continue}break}}H[a+80>>2]=n}a=H[h+16>>2];if(a){H[h+20>>2]=a;qa(a)}c=H[h+40>>2];if(c){while(1){a=H[c>>2];qa(c);c=a;if(c){continue}break}}a=H[h+32>>2];H[h+32>>2]=0;if(a){qa(a)}da=h- -64|0;return n}ua();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,s=0,t=0,u=0;l=da-48|0;da=l;H[a+68>>2]=f;p=a+112|0;Ba(p);d=H[a+56>>2];e=H[d>>2];f=H[d+4>>2];H[l+40>>2]=0;H[l+32>>2]=0;H[l+36>>2]=0;H[l+16>>2]=0;H[l+20>>2]=0;H[l+8>>2]=0;H[l+12>>2]=0;H[l>>2]=0;H[l+4>>2]=0;a:{e=f-e|0;f=(e|0)<1;if(f){break a}h=H[d>>2];if((h|0)!=H[d+4>>2]){s=a+60|0;d=N(e>>>2|0,f?e:1);t=(d|0)>1?d:1;u=c+4|0;while(1){Dc(s,H[(m<<2)+h>>2],l+32|0);f=H[l+36>>2];d=f>>31;e=H[l+32>>2];j=e>>31;h=H[l+40>>2];g=h>>31;g=g^g+h;j=g+((d^d+f)+(j^e+j)|0)|0;d=0;d=g>>>0>j>>>0?1:d;b:{if(!(d|j)){i=H[a+108>>2];e=i;break b}i=H[a+108>>2];n=i>>31;f=fl(el(i,n,f,f>>31),ea,j,d);g=f>>31;g=g^f+g;e=fl(el(i,n,e,e>>31),ea,j,d);d=e>>31;d=d^d+e;if((h|0)>=0){h=i-(d+g|0)|0;break b}h=g+(d-i|0)|0}c:{if((e|0)>=0){j=f+i|0;g=h+i|0;break c}d:{if((f|0)<=-1){d=h>>31;j=d+h^d;break d}d=h>>31;j=H[a+100>>2]-(d+h^d)|0}if((h|0)<=-1){d=f>>31;g=d+f^d;break c}d=f>>31;g=H[a+100>>2]-(d+f^d)|0}e:{if(!(g|j)){d=H[a+100>>2];g=d;k=d;break e}d=H[a+100>>2];f:{g:{h:{i:{if(!j){if((d|0)==(g|0)){d=g;k=d;break e}k=0;if(d|g){break i}g=0;break e}if((d|0)!=(j|0)|g){break h}d=j;g=d;k=d;break e}if((g|0)>(i|0)){g=(i<<1)-g|0;break e}if(d){break f}break g}if((d|0)!=(j|0)){break f}}d=j;if((g|0)>=(i|0)){break f}g=(i<<1)-g|0;k=j;break e}if(!((d|0)!=(g|0)|(j|0)>=(i|0))){k=(i<<1)-j|0;break e}if(g){k=j;break e}g=0;if((j|0)<=(i|0)){k=j;break e}k=(i<<1)-j|0}H[l+28>>2]=g;H[l+24>>2]=k;H[l+40>>2]=0-h;H[l+36>>2]=0-f;H[l+32>>2]=0-e;j:{if((e|0)<=0){g=i-h|0;e=i-f|0;break j}e=f>>31;e=e+f^e;g=(h|0)>0?e:d-e|0;e=h>>31;e=e+h^e;e=(f|0)>0?e:d-e|0}k:{l:{if(!(e|g)){break l}m:{n:{o:{if(!e){if((d|0)==(g|0)){break l}h=0;if(d|g){break o}g=0;break k}if((d|0)==(e|0)?!g:0){break l}if((d|0)==(e|0)){break n}break m}if((g|0)>(i|0)){g=(i<<1)-g|0;break k}if(d){break m}}d=e;if((g|0)>=(i|0)){break m}g=(i<<1)-g|0;h=e;break k}if(!((d|0)!=(g|0)|(e|0)>=(i|0))){h=(i<<1)-e|0;break k}if(g){h=e;break k}g=0;if((e|0)<=(i|0)){h=e;break k}h=(i<<1)-e|0;break k}g=d;h=d}H[l+20>>2]=g;H[l+16>>2]=h;g=H[a+8>>2];p:{if((g|0)<1){break p}q=(m<<3)+b|0;e=l+24|0;j=0;while(1){f=0;q:{if((g|0)<=0){h=H[a+32>>2];break q}while(1){d=f<<2;g=H[d+e>>2];k=H[a+16>>2];r:{if((g|0)>(k|0)){h=H[a+32>>2];H[d+h>>2]=k;break r}h=H[a+32>>2];d=d+h|0;k=H[a+12>>2];if((k|0)>(g|0)){H[d>>2]=k;break r}H[d>>2]=g}f=f+1|0;g=H[a+8>>2];if((f|0)<(g|0)){continue}break}}e=j<<2;d=e+(l+8|0)|0;e=H[e+q>>2]-H[e+h>>2]|0;H[d>>2]=e;k=H[a+28>>2];f=e+H[a+20>>2]|0;s:{t:{if((e|0)<(k|0)){break t}if((e|0)<=H[a+24>>2]){break s}f=e-H[a+20>>2]|0}H[d>>2]=f}e=h;j=j+1|0;if((j|0)<(g|0)){continue}break}o=0;n=l+16|0;j=e;f=e;if((g|0)<1){break p}while(1){d=0;if((g|0)>=1){while(1){f=h;i=f;g=H[a+16>>2];r=d<<2;k=H[r+n>>2];if((g|0)>=(k|0)){g=H[a+12>>2];f=(g|0)>(k|0);g=f?g:k;i=e;f=f?e:j}H[f+r>>2]=g;e=i;j=f;d=d+1|0;g=H[a+8>>2];if((d|0)<(g|0)){continue}break}k=H[a+28>>2]}i=o<<2;d=i+l|0;i=H[i+q>>2]-H[f+i>>2]|0;H[d>>2]=i;u:{if((i|0)<(k|0)){i=i+H[a+20>>2]|0}else{if((i|0)<=H[a+24>>2]){break u}i=i-H[a+20>>2]|0}H[d>>2]=i}n=f;o=o+1|0;if((o|0)<(g|0)){continue}break}}h=H[l+8>>2];e=H[a+108>>2];v:{if((h|0)>(e|0)){h=h-H[a+96>>2]|0;break v}if((0-e|0)<=(h|0)){break v}h=H[a+96>>2]+h|0}H[l+8>>2]=h;g=H[l+12>>2];w:{if((e|0)<(g|0)){g=g-H[a+96>>2]|0;break w}if((0-e|0)<=(g|0)){break w}g=H[a+96>>2]+g|0}H[l+12>>2]=g;d=H[l>>2];x:{if((e|0)<(d|0)){d=d-H[a+96>>2]|0;break x}if((0-e|0)<=(d|0)){break x}d=H[a+96>>2]+d|0}H[l>>2]=d;f=H[l+4>>2];y:{if((e|0)<(f|0)){f=f-H[a+96>>2]|0;break y}if((0-e|0)<=(f|0)){break y}f=H[a+96>>2]+f|0}e=m<<1;H[l+4>>2]=f;j=g>>31;j=j+g^j;k=h>>31;k=k+h^k;i=k>>>0>(j^2147483647)>>>0?2147483647:j+k|0;j=f>>31;j=j+f^j;k=d>>31;k=k+d^k;z:{if(i>>>0<(k>>>0>(j^2147483647)>>>0?2147483647:j+k|0)>>>0){Ea(p,0);d=(e<<2)+c|0;if((h|0)<=-1){h=H[a+96>>2]+h|0}H[d>>2]=h;if((g|0)>-1){f=g;break z}f=H[a+96>>2]+g|0;break z}Ea(p,1);j=(e<<2)+c|0;if((d|0)<=-1){d=H[a+96>>2]+d|0}H[j>>2]=d;if((f|0)>-1){break z}f=H[a+96>>2]+f|0}H[(e<<2)+u>>2]=f;m=m+1|0;if((t|0)==(m|0)){break a}d=H[a+56>>2];h=H[d>>2];if(H[d+4>>2]-h>>2>>>0>m>>>0){continue}break}}xa();X()}da=l+48|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,o=0,p=0,q=0,r=0,s=0,t=0,u=0;l=da-48|0;da=l;H[a+68>>2]=f;p=a+112|0;Ba(p);d=H[a+56>>2];e=H[d>>2];f=H[d+4>>2];H[l+40>>2]=0;H[l+32>>2]=0;H[l+36>>2]=0;H[l+16>>2]=0;H[l+20>>2]=0;H[l+8>>2]=0;H[l+12>>2]=0;H[l>>2]=0;H[l+4>>2]=0;a:{e=f-e|0;f=(e|0)<1;if(f){break a}h=H[d>>2];if((h|0)!=H[d+4>>2]){s=a+60|0;d=N(e>>>2|0,f?e:1);t=(d|0)>1?d:1;u=c+4|0;while(1){Bc(s,H[(m<<2)+h>>2],l+32|0);f=H[l+36>>2];d=f>>31;e=H[l+32>>2];j=e>>31;h=H[l+40>>2];g=h>>31;g=g^g+h;j=g+((d^d+f)+(j^e+j)|0)|0;d=0;d=g>>>0>j>>>0?1:d;b:{if(!(d|j)){i=H[a+108>>2];e=i;break b}i=H[a+108>>2];n=i>>31;f=fl(el(i,n,f,f>>31),ea,j,d);g=f>>31;g=g^f+g;e=fl(el(i,n,e,e>>31),ea,j,d);d=e>>31;d=d^d+e;if((h|0)>=0){h=i-(d+g|0)|0;break b}h=g+(d-i|0)|0}c:{if((e|0)>=0){j=f+i|0;g=h+i|0;break c}d:{if((f|0)<=-1){d=h>>31;j=d+h^d;break d}d=h>>31;j=H[a+100>>2]-(d+h^d)|0}if((h|0)<=-1){d=f>>31;g=d+f^d;break c}d=f>>31;g=H[a+100>>2]-(d+f^d)|0}e:{if(!(g|j)){d=H[a+100>>2];g=d;k=d;break e}d=H[a+100>>2];f:{g:{h:{i:{if(!j){if((d|0)==(g|0)){d=g;k=d;break e}k=0;if(d|g){break i}g=0;break e}if((d|0)!=(j|0)|g){break h}d=j;g=d;k=d;break e}if((g|0)>(i|0)){g=(i<<1)-g|0;break e}if(d){break f}break g}if((d|0)!=(j|0)){break f}}d=j;if((g|0)>=(i|0)){break f}g=(i<<1)-g|0;k=j;break e}if(!((d|0)!=(g|0)|(j|0)>=(i|0))){k=(i<<1)-j|0;break e}if(g){k=j;break e}g=0;if((j|0)<=(i|0)){k=j;break e}k=(i<<1)-j|0}H[l+28>>2]=g;H[l+24>>2]=k;H[l+40>>2]=0-h;H[l+36>>2]=0-f;H[l+32>>2]=0-e;j:{if((e|0)<=0){g=i-h|0;e=i-f|0;break j}e=f>>31;e=e+f^e;g=(h|0)>0?e:d-e|0;e=h>>31;e=e+h^e;e=(f|0)>0?e:d-e|0}k:{l:{if(!(e|g)){break l}m:{n:{o:{if(!e){if((d|0)==(g|0)){break l}h=0;if(d|g){break o}g=0;break k}if((d|0)==(e|0)?!g:0){break l}if((d|0)==(e|0)){break n}break m}if((g|0)>(i|0)){g=(i<<1)-g|0;break k}if(d){break m}}d=e;if((g|0)>=(i|0)){break m}g=(i<<1)-g|0;h=e;break k}if(!((d|0)!=(g|0)|(e|0)>=(i|0))){h=(i<<1)-e|0;break k}if(g){h=e;break k}g=0;if((e|0)<=(i|0)){h=e;break k}h=(i<<1)-e|0;break k}g=d;h=d}H[l+20>>2]=g;H[l+16>>2]=h;g=H[a+8>>2];p:{if((g|0)<1){break p}q=(m<<3)+b|0;e=l+24|0;j=0;while(1){f=0;q:{if((g|0)<=0){h=H[a+32>>2];break q}while(1){d=f<<2;g=H[d+e>>2];k=H[a+16>>2];r:{if((g|0)>(k|0)){h=H[a+32>>2];H[d+h>>2]=k;break r}h=H[a+32>>2];d=d+h|0;k=H[a+12>>2];if((k|0)>(g|0)){H[d>>2]=k;break r}H[d>>2]=g}f=f+1|0;g=H[a+8>>2];if((f|0)<(g|0)){continue}break}}e=j<<2;d=e+(l+8|0)|0;e=H[e+q>>2]-H[e+h>>2]|0;H[d>>2]=e;k=H[a+28>>2];f=e+H[a+20>>2]|0;s:{t:{if((e|0)<(k|0)){break t}if((e|0)<=H[a+24>>2]){break s}f=e-H[a+20>>2]|0}H[d>>2]=f}e=h;j=j+1|0;if((j|0)<(g|0)){continue}break}o=0;n=l+16|0;j=e;f=e;if((g|0)<1){break p}while(1){d=0;if((g|0)>=1){while(1){f=h;i=f;g=H[a+16>>2];r=d<<2;k=H[r+n>>2];if((g|0)>=(k|0)){g=H[a+12>>2];f=(g|0)>(k|0);g=f?g:k;i=e;f=f?e:j}H[f+r>>2]=g;e=i;j=f;d=d+1|0;g=H[a+8>>2];if((d|0)<(g|0)){continue}break}k=H[a+28>>2]}i=o<<2;d=i+l|0;i=H[i+q>>2]-H[f+i>>2]|0;H[d>>2]=i;u:{if((i|0)<(k|0)){i=i+H[a+20>>2]|0}else{if((i|0)<=H[a+24>>2]){break u}i=i-H[a+20>>2]|0}H[d>>2]=i}n=f;o=o+1|0;if((o|0)<(g|0)){continue}break}}h=H[l+8>>2];e=H[a+108>>2];v:{if((h|0)>(e|0)){h=h-H[a+96>>2]|0;break v}if((0-e|0)<=(h|0)){break v}h=H[a+96>>2]+h|0}H[l+8>>2]=h;g=H[l+12>>2];w:{if((e|0)<(g|0)){g=g-H[a+96>>2]|0;break w}if((0-e|0)<=(g|0)){break w}g=H[a+96>>2]+g|0}H[l+12>>2]=g;d=H[l>>2];x:{if((e|0)<(d|0)){d=d-H[a+96>>2]|0;break x}if((0-e|0)<=(d|0)){break x}d=H[a+96>>2]+d|0}H[l>>2]=d;f=H[l+4>>2];y:{if((e|0)<(f|0)){f=f-H[a+96>>2]|0;break y}if((0-e|0)<=(f|0)){break y}f=H[a+96>>2]+f|0}e=m<<1;H[l+4>>2]=f;j=g>>31;j=j+g^j;k=h>>31;k=k+h^k;i=k>>>0>(j^2147483647)>>>0?2147483647:j+k|0;j=f>>31;j=j+f^j;k=d>>31;k=k+d^k;z:{if(i>>>0<(k>>>0>(j^2147483647)>>>0?2147483647:j+k|0)>>>0){Ea(p,0);d=(e<<2)+c|0;if((h|0)<=-1){h=H[a+96>>2]+h|0}H[d>>2]=h;if((g|0)>-1){f=g;break z}f=H[a+96>>2]+g|0;break z}Ea(p,1);j=(e<<2)+c|0;if((d|0)<=-1){d=H[a+96>>2]+d|0}H[j>>2]=d;if((f|0)>-1){break z}f=H[a+96>>2]+f|0}H[(e<<2)+u>>2]=f;m=m+1|0;if((t|0)==(m|0)){break a}d=H[a+56>>2];h=H[d>>2];if(H[d+4>>2]-h>>2>>>0>m>>>0){continue}break}}xa();X()}da=l+48|0;return 1}function Af(a,b){var c=0,d=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=O(0);h=da+-64|0;da=h;H[h+40>>2]=0;H[h+44>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;H[h+48>>2]=1065353216;c=H[a+80>>2];H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;a:{if(c){if(c>>>0>=1073741824){break a}e=c<<2;g=ra(e);H[h+16>>2]=g;f=e+g|0;H[h+24>>2]=f;ta(g,0,e);H[h+20>>2]=f}b:{if(!c){break b}while(1){e=H[H[b>>2]>>2];q=o;c=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],o,0)|0;i=I[e+c|0];F[h+31|0]=i;c:{d:{e:{if(!d){break e}p=H[h+32>>2];e=i^318;j=hl(d)>>>0>1;f=e&d-1;f:{if(!j){break f}c=e;f=c;if(c>>>0>>0){break f}f=(e>>>0)%(d>>>0)|0}m=f;c=H[p+(m<<2)>>2];if(!c){break e}c=H[c>>2];if(!c){break e}if(!j){d=d-1|0;while(1){f=H[c+4>>2];g:{if((f|0)!=(e|0)){if((m|0)==(d&f)){break g}break e}if((i|0)==I[c+8|0]){break d}}c=H[c>>2];if(c){continue}break}break e}while(1){f=H[c+4>>2];h:{if((f|0)!=(e|0)){if(d>>>0<=f>>>0){f=(f>>>0)%(d>>>0)|0}if((f|0)==(m|0)){break h}break e}if((i|0)==I[c+8|0]){break d}}c=H[c>>2];if(c){continue}break}}H[h+12>>2]=n;F[h+8|0]=i;d=0;f=I[h+8|0];c=f^318;p=h;i:{j:{j=h+32|0;g=H[j+4>>2];if(!g){break j}e=hl(g);k:{if(e>>>0>=2){d=c;if(c>>>0>=g>>>0){d=(c>>>0)%(g>>>0)|0}i=H[H[j>>2]+(d<<2)>>2];if(!i){break j}if(e>>>0<=1){break k}while(1){i=H[i>>2];if(!i){break j}e=H[i+4>>2];if((e|0)!=(c|0)){if(e>>>0>=g>>>0){e=(e>>>0)%(g>>>0)|0}if((d|0)!=(e|0)){break j}}if((f|0)!=I[i+8|0]){continue}break}d=0;break i}d=c&g-1;i=H[H[j>>2]+(d<<2)>>2];if(!i){break j}}e=g-1|0;while(1){i=H[i>>2];if(!i){break j}m=H[i+4>>2];if((e&m)!=(d|0)?(c|0)!=(m|0):0){break j}if((f|0)!=I[i+8|0]){continue}break}d=0;break i}i=ra(16);F[i+8|0]=I[h+8|0];e=H[h+12>>2];H[i+4>>2]=c;H[i+12>>2]=e;H[i>>2]=0;r=O(H[j+12>>2]+1>>>0);l=L[j+16>>2];l:{if(g?!(r>O(l*O(g>>>0))):0){break l}f=(g-1&g)!=0|g>>>0<3|g<<1;l=O(U(O(r/l)));m:{if(l=O(0)){e=~~l>>>0;break m}e=0}e=e>>>0>f>>>0?e:f;f=2;n:{if((e|0)==1){break n}d=e;f=d;if(!(d&d-1)){break n}f=Na(e)}d=f;e=H[j+4>>2];o:{if(d>>>0>e>>>0){te(j,d);break o}p:{if(d>>>0>=e>>>0){break p}m=e>>>0<3;l=O(U(O(O(K[j+12>>2])/L[j+16>>2])));q:{if(l=O(0)){f=~~l>>>0;break q}f=0}g=e;r:{s:{if(m){break s}if(hl(e)>>>0>1){break s}e=f>>>0<2?f:1<<32-Q(f-1|0);break r}e=Na(f)}d=d>>>0>>0?e:d;if(g>>>0<=d>>>0){break p}te(j,d)}}g=H[j+4>>2];if(!(g&g-1)){d=c&g-1;break l}if(c>>>0>>0){d=c;break l}d=(c>>>0)%(g>>>0)|0}c=H[j>>2]+(d<<2)|0;d=H[c>>2];t:{if(!d){H[i>>2]=H[j+8>>2];H[j+8>>2]=i;H[c>>2]=j+8;d=H[i>>2];if(!d){break t}c=H[d+4>>2];d=g-1|0;u:{if(!(d&g)){c=c&d;break u}if(c>>>0>>0){break u}c=(c>>>0)%(g>>>0)|0}H[H[j>>2]+(c<<2)>>2]=i;break t}H[i>>2]=H[d>>2];H[d>>2]=i}H[j+12>>2]=H[j+12>>2]+1;d=1}F[p+60|0]=d;H[h+56>>2]=i;d=H[a+40>>2];sa(H[H[a>>2]>>2]+N(d,n)|0,h+31|0,d);g=H[h+16>>2];H[g+(q<<2)>>2]=n;n=n+1|0;break c}H[(q<<2)+g>>2]=H[c+12>>2]}d=k;c=o+1|0;d=c>>>0<1?d+1|0:d;o=c;k=d;c=H[a+80>>2];if(!d&c>>>0>o>>>0){d=H[h+36>>2];continue}break}if((c|0)==(n|0)){break b}v:{if(!I[a+84|0]){d=H[a+68>>2];b=H[a+72>>2]-d|0;if(!b){break v}k=H[h+16>>2];c=b>>31;c=(c+b^c)>>>2|0;b=(b|0)>-1?b:-1;b=N(c,(b|0)<1?b:1);e=b>>>0>1?b:1;b=e&3;c=0;if(e-1>>>0>=3){g=e&-4;while(1){e=c<<2;f=e+d|0;H[f>>2]=H[k+(H[f>>2]<<2)>>2];f=d+(e|4)|0;H[f>>2]=H[k+(H[f>>2]<<2)>>2];f=d+(e|8)|0;H[f>>2]=H[k+(H[f>>2]<<2)>>2];e=d+(e|12)|0;H[e>>2]=H[k+(H[e>>2]<<2)>>2];c=c+4|0;g=g-4|0;if(g){continue}break}}if(!b){break v}while(1){e=d+(c<<2)|0;H[e>>2]=H[k+(H[e>>2]<<2)>>2];c=c+1|0;b=b-1|0;if(b){continue}break}break v}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;w:{if(b>>>0>>0){Va(a+68|0,c-b|0,1420);c=H[a+80>>2];break w}if(b>>>0<=c>>>0){break w}H[a+72>>2]=d+(c<<2)}if(!c){break v}k=H[h+16>>2];b=c&3;e=H[a+68>>2];d=0;if(c-1>>>0>=3){g=c&-4;while(1){c=d<<2;H[c+e>>2]=H[c+k>>2];f=c|4;H[f+e>>2]=H[f+k>>2];f=c|8;H[f+e>>2]=H[f+k>>2];c=c|12;H[c+e>>2]=H[c+k>>2];d=d+4|0;g=g-4|0;if(g){continue}break}}if(!b){break v}while(1){c=d<<2;H[c+e>>2]=H[c+k>>2];d=d+1|0;b=b-1|0;if(b){continue}break}}H[a+80>>2]=n}a=H[h+16>>2];if(a){H[h+20>>2]=a;qa(a)}c=H[h+40>>2];if(c){while(1){a=H[c>>2];qa(c);c=a;if(c){continue}break}}a=H[h+32>>2];H[h+32>>2]=0;if(a){qa(a)}da=h- -64|0;return n}ua();X()}function Dc(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;d=H[a+16>>2];F[f+92|0]=1;H[f+88>>2]=b;H[f+84>>2]=b;H[f+80>>2]=d;i=H[a+20>>2];e=H[i>>2];a:{b:{d=H[H[d+28>>2]+(b<<2)>>2];if(d>>>0>2]-e>>2>>>0){e=H[H[a+8>>2]+(H[e+(d<<2)>>2]<<2)>>2];d=H[a+4>>2];if(!I[d+84|0]){e=H[H[d+68>>2]+(e<<2)>>2]}H[f+72>>2]=0;H[f+76>>2]=0;i=f- -64|0;H[i>>2]=0;H[i+4>>2]=0;H[f+56>>2]=0;H[f+60>>2]=0;mb(d,e,F[d+24|0],f+56|0);d=b+1|0;e=(d>>>0)%3|0;if(b>>>0<=d>>>0){i=e?d:b-2|0;o=((b>>>0)%3|0?-1:2)+b|0;while(1){e=i;d=o;c:{if(!H[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break c}d=b+2|0}g=H[a+20>>2];b=H[g>>2];e=H[H[H[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=H[g+4>>2]-b>>2>>>0){break b}e=H[H[a+8>>2]+(H[b+(e<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){e=H[H[b+68>>2]+(e<<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,e,F[b+24|0],f+32|0);e=H[a+20>>2];b=H[e>>2];d=H[H[H[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=H[e+4>>2]-b>>2>>>0){break a}e=H[H[a+8>>2]+(H[b+(d<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){e=H[H[b+68>>2]+(e<<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,e,F[b+24|0],f+8|0);d=H[f+8>>2];b=H[f+56>>2];g=d-b|0;l=H[f+60>>2];e=H[f+12>>2]-(l+(b>>>0>d>>>0)|0)|0;h=H[f+40>>2];d=H[f+64>>2];v=h-d|0;t=H[f+68>>2];h=H[f+44>>2]-(t+(h>>>0>>0)|0)|0;p=el(g,e,v,h);u=k-p|0;j=j-(ea+(k>>>0

>>0)|0)|0;m=u;k=H[f+16>>2];p=k-d|0;t=H[f+20>>2]-((d>>>0>k>>>0)+t|0)|0;k=H[f+32>>2];u=k-b|0;l=H[f+36>>2]-((b>>>0>k>>>0)+l|0)|0;d=el(p,t,u,l);k=m+d|0;b=ea+j|0;b=d>>>0>k>>>0?b+1|0:b;j=b;x=q;m=g;b=H[f+48>>2];d=H[f+72>>2];g=b-d|0;q=H[f+76>>2];w=H[f+52>>2]-(q+(b>>>0>>0)|0)|0;m=el(m,e,g,w);e=x+m|0;b=ea+n|0;b=e>>>0>>0?b+1|0:b;n=H[f+24>>2];m=n-d|0;d=H[f+28>>2]-((d>>>0>n>>>0)+q|0)|0;n=el(m,d,u,l);q=e-n|0;n=b-(ea+(e>>>0>>0)|0)|0;b=el(p,t,g,w);e=r-b|0;b=s-(ea+(b>>>0>r>>>0)|0)|0;s=el(m,d,v,h);r=s+e|0;b=ea+b|0;b=r>>>0>>0?b+1|0:b;s=b;b=H[f+88>>2];d=H[f+80>>2];d:{if(I[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}e=b+1|0;b=(e>>>0)%3|0?e:b-2|0;if((b|0)==-1|H[H[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=H[H[H[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}H[f+88>>2]=-1;break f}e=b+1|0;b=(e>>>0)%3|0?e:b-2|0;H[f+88>>2]=b;if((b|0)!=-1){break e}}b=-1;e=H[f+84>>2];i:{if((e|0)==-1){break i}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1|H[H[d>>2]+(e>>>3&536870908)>>2]>>>e&1){break i}d=H[H[H[d+64>>2]+12>>2]+(e<<2)>>2];if((d|0)==-1){break i}if((d>>>0)%3|0){b=d-1|0;break i}b=d+2|0}F[f+92|0]=0;H[f+88>>2]=b;break d}if((b|0)!=H[f+84>>2]){break d}H[f+88>>2]=-1;break d}e=-1;j:{if((b|0)==-1){break j}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)==-1|H[H[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break j}b=H[H[H[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break j}if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0}H[f+88>>2]=e}b=H[f+88>>2];if((b|0)!=-1){continue}break}}d=s;o=d>>31;g=o;e=g+r|0;d=d>>31;b=s+d|0;l=e^g;g=d^(e>>>0>>0?b+1|0:b);d=n;b=d>>31;i=d>>31;d=i+q|0;e=b;b=n+b|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^e;h=b;p=d^-1;e=b^2147483647;k:{if(!H[a+28>>2]){if((e|0)==(g|0)&l>>>0>p>>>0|e>>>0>>0){break k}b=g+h|0;a=d+l|0;b=a>>>0>>0?b+1|0:b;i=a;a=b;b=j;l=b>>31;h=l;o=h+k|0;e=b>>31;b=e+b|0;b=h>>>0>o>>>0?b+1|0:b;g=h^o;o=g+i|0;d=b^e;b=o;d=d^2147483647;a=(d|0)==(a|0)&(g^-1)>>>0>>0|a>>>0>d>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break k}b=(a|0)/536870912|0;a=b;b=b>>31;k=fl(k,j,a,b);q=fl(q,n,a,b);r=fl(r,s,a,b);break k}m=k;i=j;b=3;a=-1;l:{if((e|0)==(g|0)&l>>>0>p>>>0|e>>>0>>0){break l}b=g+h|0;a=d+l|0;b=a>>>0>>0?b+1|0:b;d=a;g=b;e=b;a=j;b=a>>31;h=a>>31;j=h+k|0;o=a;a=b;b=o+b|0;b=j>>>0>>0?b+1|0:b;j=j^h;h=a^b;p=h;b=3;h=h^2147483647;a=-1;if((h|0)==(e|0)&(j^-1)>>>0>>0|e>>>0>h>>>0){break l}b=g+p|0;a=d+j|0;b=a>>>0>>0?b+1|0:b;j=a;a=b;if(!b&j>>>0<536870913){break k}b=a>>>29|0;a=(a&536870911)<<3|j>>>29}k=fl(m,i,a,b);q=fl(q,n,a,b);r=fl(r,s,a,b)}H[c+8>>2]=k;H[c+4>>2]=q;H[c>>2]=r;da=f+96|0;return}xa();X()}xa();X()}xa();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=O(0),r=0;i=1;a:{if(!H[a+80>>2]){break a}e=H[a+8>>2];if((H[a+12>>2]-e|0)<=0){break a}while(1){j=0;m=0;n=0;k=0;d=0;b=-1;b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{f=H[(p<<2)+e>>2];c=f;switch(H[c+28>>2]-1|0){case 3:break h;case 1:case 10:break i;case 0:break j;case 8:break k;case 4:break e;case 5:break f;case 2:break g;default:break b}}l:{switch(F[f+24|0]-1|0){case 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;l=c;h=H[c+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;m:{n:{if(h){if(h>>>0>=1073741824){break n}c=h<<2;n=ra(c);H[g+16>>2]=n;b=c+n|0;H[g+24>>2]=b;ta(n,0,c);H[g+20>>2]=b}o:{if(!h){break o}while(1){b=H[H[f>>2]>>2];h=k;i=H[f+48>>2]+el(H[f+40>>2],H[f+44>>2],h,0)|0;b=b+i|0;q=(x(2,I[b|0]|I[b+1|0]<<8|(I[b+2|0]<<16|I[b+3|0]<<24)),B());L[g+28>>2]=q;p:{q:{r:{if(!j){break r}r=(C(q),v(2));i=r^318;o=hl(j)>>>0>1;s:{if(!o){b=i&j-1;break s}b=i;if(j>>>0>b>>>0){break s}b=(i>>>0)%(j>>>0)|0}c=H[H[g+32>>2]+(b<<2)>>2];if(!c){break r}e=H[c>>2];if(!e){break r}if(!o){o=j-1|0;while(1){c=H[e+4>>2];t:{if((c|0)!=(i|0)){if((c&o)==(b|0)){break t}break r}if(H[e+8>>2]==(r|0)){break q}}e=H[e>>2];if(e){continue}break}break r}while(1){c=H[e+4>>2];u:{if((c|0)!=(i|0)){if(c>>>0>=j>>>0){c=(c>>>0)%(j>>>0)|0}if((b|0)==(c|0)){break u}break r}if(H[e+8>>2]==(r|0)){break q}}e=H[e>>2];if(e){continue}break}}H[g+12>>2]=m;L[g+8>>2]=q;We(g+56|0,g+32|0,g+8|0,g+8|0);b=H[l+40>>2];sa(H[H[l>>2]>>2]+N(b,m)|0,g+28|0,b);n=H[g+16>>2];H[n+(h<<2)>>2]=m;m=m+1|0;break p}H[(h<<2)+n>>2]=H[e+12>>2]}b=k+1|0;d=b>>>0<1?d+1|0:d;k=b;e=H[l+80>>2];if(!d&e>>>0>b>>>0){j=H[g+36>>2];continue}break}if((e|0)==(m|0)){break o}v:{if(!I[l+84|0]){k=H[l+68>>2];d=H[l+72>>2]-k|0;if(!d){break v}h=H[g+16>>2];b=d>>31;c=(b+d^b)>>>2|0;b=(d|0)>-1?d:-1;b=N(c,(b|0)<1?b:1);d=b>>>0>1?b:1;b=d&3;e=0;if(d-1>>>0>=3){j=d&-4;while(1){c=e<<2;d=c+k|0;H[d>>2]=H[h+(H[d>>2]<<2)>>2];d=k+(c|4)|0;H[d>>2]=H[h+(H[d>>2]<<2)>>2];d=k+(c|8)|0;H[d>>2]=H[h+(H[d>>2]<<2)>>2];d=k+(c|12)|0;H[d>>2]=H[h+(H[d>>2]<<2)>>2];e=e+4|0;j=j-4|0;if(j){continue}break}}if(!b){break v}while(1){d=k+(e<<2)|0;H[d>>2]=H[h+(H[d>>2]<<2)>>2];e=e+1|0;b=b-1|0;if(b){continue}break}break v}F[l+84|0]=0;b=H[l+68>>2];d=H[l+72>>2]-b>>2;w:{if(d>>>0>>0){Va(l+68|0,e-d|0,1420);e=H[l+80>>2];break w}if(e>>>0>=d>>>0){break w}H[l+72>>2]=b+(e<<2)}if(!e){break v}k=H[g+16>>2];b=e&3;h=H[l+68>>2];i=0;if(e-1>>>0>=3){j=e&-4;while(1){c=i<<2;H[c+h>>2]=H[c+k>>2];d=c|4;H[d+h>>2]=H[d+k>>2];d=c|8;H[d+h>>2]=H[d+k>>2];d=c|12;H[d+h>>2]=H[d+k>>2];i=i+4|0;j=j-4|0;if(j){continue}break}}if(!b){break v}while(1){d=i<<2;H[d+h>>2]=H[d+k>>2];i=i+1|0;b=b-1|0;if(b){continue}break}}H[l+80>>2]=m}b=H[g+16>>2];if(b){H[g+20>>2]=b;qa(b)}e=H[g+40>>2];if(e){while(1){b=H[e>>2];qa(e);e=b;if(b){continue}break}}b=H[g+32>>2];H[g+32>>2]=0;if(b){qa(b)}da=g- -64|0;b=m;break m}ua();X()}break d;case 1:b=kd(c,f);break d;case 2:b=jd(c,f);break d;case 3:break l;default:break c}}b=hd(c,f);break d}x:{switch(F[f+24|0]-1|0){case 0:b=Af(c,f);break d;case 1:b=vf(c,f);break d;case 2:b=sf(c,f);break d;case 3:break x;default:break c}}b=pf(c,f);break d}y:{switch(F[f+24|0]-1|0){case 0:b=Af(c,f);break d;case 1:b=vf(c,f);break d;case 2:b=sf(c,f);break d;case 3:break y;default:break c}}b=pf(c,f);break d}z:{switch(F[f+24|0]-1|0){case 0:b=of(c,f);break d;case 1:b=gf(c,f);break d;case 2:b=ff(c,f);break d;case 3:break z;default:break c}}b=ef(c,f);break d}A:{switch(F[f+24|0]-1|0){case 0:b=of(c,f);break d;case 1:b=gf(c,f);break d;case 2:b=ff(c,f);break d;case 3:break A;default:break c}}b=ef(c,f);break d}B:{switch(F[f+24|0]-1|0){case 0:b=bf(c,f);break d;case 1:b=kd(c,f);break d;case 2:b=jd(c,f);break d;case 3:break B;default:break c}}b=hd(c,f);break d}C:{switch(F[f+24|0]-1|0){case 0:b=bf(c,f);break d;case 1:b=kd(c,f);break d;case 2:b=jd(c,f);break d;case 3:break C;default:break c}}b=hd(c,f)}if(b){break b}}b=-1}if(b){p=p+1|0;e=H[a+8>>2];if((p|0)>2]-e>>2){continue}}break}i=(b|0)!=0}return i|0}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;d=H[a+16>>2];F[f+92|0]=1;H[f+88>>2]=b;H[f+84>>2]=b;H[f+80>>2]=d;e=-1;e=(b|0)!=-1?H[H[d>>2]+(b<<2)>>2]:e;i=H[a+20>>2];d=H[i>>2];a:{b:{if(H[i+4>>2]-d>>2>>>0>e>>>0){e=H[H[a+8>>2]+(H[d+(e<<2)>>2]<<2)>>2];d=H[a+4>>2];if(!I[d+84|0]){e=H[H[d+68>>2]+(e<<2)>>2]}H[f+72>>2]=0;H[f+76>>2]=0;i=f- -64|0;H[i>>2]=0;H[i+4>>2]=0;H[f+56>>2]=0;H[f+60>>2]=0;mb(d,e,F[d+24|0],f+56|0);d=b+1|0;e=(d>>>0)%3|0;if(b>>>0<=d>>>0){i=e?d:b-2|0;o=((b>>>0)%3|0?-1:2)+b|0;while(1){e=i;d=o;c:{if(!H[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break c}d=b+2|0}b=-1;b=(e|0)!=-1?H[H[H[a+16>>2]>>2]+(e<<2)>>2]:b;g=H[a+20>>2];e=H[g>>2];if(H[g+4>>2]-e>>2>>>0<=b>>>0){break b}e=H[H[a+8>>2]+(H[e+(b<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){e=H[H[b+68>>2]+(e<<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,e,F[b+24|0],f+32|0);b=-1;b=(d|0)!=-1?H[H[H[a+16>>2]>>2]+(d<<2)>>2]:b;e=H[a+20>>2];d=H[e>>2];if(H[e+4>>2]-d>>2>>>0<=b>>>0){break a}e=H[H[a+8>>2]+(H[d+(b<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){e=H[H[b+68>>2]+(e<<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,e,F[b+24|0],f+8|0);d=H[f+8>>2];b=H[f+56>>2];g=d-b|0;l=H[f+60>>2];e=H[f+12>>2]-(l+(d>>>0>>0)|0)|0;h=H[f+40>>2];d=H[f+64>>2];v=h-d|0;t=H[f+68>>2];h=H[f+44>>2]-(t+(h>>>0>>0)|0)|0;p=el(g,e,v,h);u=k-p|0;j=j-(ea+(k>>>0

>>0)|0)|0;m=u;k=H[f+16>>2];p=k-d|0;t=H[f+20>>2]-((d>>>0>k>>>0)+t|0)|0;k=H[f+32>>2];u=k-b|0;l=H[f+36>>2]-((b>>>0>k>>>0)+l|0)|0;d=el(p,t,u,l);k=m+d|0;b=ea+j|0;b=d>>>0>k>>>0?b+1|0:b;j=b;x=q;m=g;b=H[f+48>>2];d=H[f+72>>2];g=b-d|0;q=H[f+76>>2];w=H[f+52>>2]-(q+(b>>>0>>0)|0)|0;m=el(m,e,g,w);e=x+m|0;b=ea+n|0;b=e>>>0>>0?b+1|0:b;n=H[f+24>>2];m=n-d|0;d=H[f+28>>2]-((d>>>0>n>>>0)+q|0)|0;n=el(m,d,u,l);q=e-n|0;n=b-(ea+(e>>>0>>0)|0)|0;b=el(p,t,g,w);e=r-b|0;b=s-(ea+(b>>>0>r>>>0)|0)|0;s=el(m,d,v,h);r=s+e|0;b=ea+b|0;b=r>>>0>>0?b+1|0:b;s=b;d=H[f+88>>2];g=H[f+80>>2];d:{if(I[f+92|0]){e:{f:{g:{h:{if((d|0)==-1){break h}b=d+1|0;b=(b>>>0)%3|0?b:d-2|0;if((b|0)==-1){break h}b=H[H[g+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}}d=H[f+84>>2];b=-1;i:{if((d|0)==-1){break i}d=d+((d>>>0)%3|0?-1:2)|0;b=-1;if((d|0)==-1){break i}d=H[H[g+12>>2]+(d<<2)>>2];b=-1;if((d|0)==-1){break i}b=d-1|0;if((d>>>0)%3|0){break i}b=d+2|0}F[f+92|0]=0;H[f+88>>2]=b;break d}if((b|0)!=H[f+84>>2]){break d}H[f+88>>2]=-1;break d}b=f;e=-1;j:{if((d|0)==-1){break j}d=d+((d>>>0)%3|0?-1:2)|0;e=-1;if((d|0)==-1){break j}d=H[H[g+12>>2]+(d<<2)>>2];e=-1;if((d|0)==-1){break j}e=d-1|0;if((d>>>0)%3|0){break j}e=d+2|0}H[b+88>>2]=e}b=H[f+88>>2];if((b|0)!=-1){continue}break}}d=s;o=d>>31;g=o;e=g+r|0;d=d>>31;b=s+d|0;l=e^g;g=d^(e>>>0>>0?b+1|0:b);d=n;b=d>>31;i=d>>31;d=i+q|0;e=b;b=n+b|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^e;h=b;p=d^-1;e=b^2147483647;k:{if(!H[a+28>>2]){if((e|0)==(g|0)&l>>>0>p>>>0|e>>>0>>0){break k}b=g+h|0;a=d+l|0;b=a>>>0>>0?b+1|0:b;i=a;a=b;b=j;l=b>>31;h=l;o=h+k|0;e=b>>31;b=e+b|0;b=h>>>0>o>>>0?b+1|0:b;g=h^o;o=g+i|0;d=b^e;b=o;d=d^2147483647;a=(d|0)==(a|0)&(g^-1)>>>0>>0|a>>>0>d>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break k}b=(a|0)/536870912|0;a=b;b=b>>31;k=fl(k,j,a,b);q=fl(q,n,a,b);r=fl(r,s,a,b);break k}m=k;i=j;b=3;a=-1;l:{if((e|0)==(g|0)&l>>>0>p>>>0|e>>>0>>0){break l}b=g+h|0;a=d+l|0;b=a>>>0>>0?b+1|0:b;d=a;g=b;e=b;a=j;b=a>>31;h=a>>31;j=h+k|0;o=a;a=b;b=o+b|0;b=j>>>0>>0?b+1|0:b;j=j^h;h=a^b;p=h;b=3;h=h^2147483647;a=-1;if((h|0)==(e|0)&(j^-1)>>>0>>0|e>>>0>h>>>0){break l}b=g+p|0;a=d+j|0;b=a>>>0>>0?b+1|0:b;j=a;a=b;if(!b&j>>>0<536870913){break k}b=a>>>29|0;a=(a&536870911)<<3|j>>>29}k=fl(m,i,a,b);q=fl(q,n,a,b);r=fl(r,s,a,b)}H[c+8>>2]=k;H[c+4>>2]=q;H[c>>2]=r;da=f+96|0;return}xa();X()}xa();X()}xa();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;p=da-16|0;da=p;a:{b:{if(!(fa[H[H[a>>2]+32>>2]](a)|0)){break b}c=H[a+44>>2];d=H[a+12>>2];b=H[a+8>>2];F[p+15|0]=d-b>>>2;g=H[c+20>>2];if((g|0)<0?1:(g|0)<=0?!H[c+16>>2]:0){va(c,H[c+4>>2],p+15|0,p+16|0);d=H[a+12>>2];b=H[a+8>>2]}if((b|0)!=(d|0)){while(1){c=H[b>>2];if(!(fa[H[H[c>>2]+8>>2]](c,a,H[a+4>>2])|0)){break b}b=b+4|0;if((d|0)!=(b|0)){continue}break}}g=da-48|0;da=g;r=a+32|0;d=H[a+12>>2]-H[a+8>>2]>>2;c=H[a+32>>2];b=H[a+36>>2]-c>>2;c:{if(d>>>0>b>>>0){La(r,d-b|0);d=H[a+12>>2]-H[a+8>>2]>>2;break c}if(b>>>0<=d>>>0){break c}H[a+36>>2]=c+(d<<2)}F[g+16|0]=0;q=Zb(g+32|0,d,g+16|0);d=H[a+8>>2];e=H[a+12>>2];d:{while(1){e:{f:{b=e-d|0;if(b>>2>>>0>h>>>0){i=0;if(!b){break f}b=0;while(1){l=H[q>>2];k=b>>>5<<2;j=H[l+k>>2];n=1<>2];c=H[f+4>>2];if((c|0)!=H[f+8>>2]){while(1){d=0;c=H[(e<<2)+c>>2];h:{if((fa[H[H[f>>2]+24>>2]](f,c)|0)<1){break h}while(1){i:{f=H[m+H[a+8>>2]>>2];f=fa[H[H[f>>2]+28>>2]](f,c,d)|0;if((f|0)==(b|0)){break i}f=H[H[a+20>>2]+(f<<2)>>2];if(H[H[q>>2]+(f>>>3&536870908)>>2]>>>f&1){break i}o=0;break h}f=H[m+H[a+8>>2]>>2];d=d+1|0;if((fa[H[H[f>>2]+24>>2]](f,c)|0)>(d|0)){continue}break}}d=H[a+8>>2];f=H[m+d>>2];c=H[f+4>>2];e=e+1|0;if(e>>>0>2]-c>>2>>>0){continue}break}if(!o){break g}l=H[q>>2];j=H[k+l>>2]}H[H[r>>2]+(h<<2)>>2]=b;H[k+l>>2]=j|n;i=1;h=h+1|0}b=b+1|0;e=H[a+12>>2];c=e-d>>2;if(b>>>0>>0){continue}break}c=c>>>0<=h>>>0|i;break e}l=0;H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;b=H[a+4>>2];c=H[b+12>>2];b=H[b+8>>2];F[g+44|0]=0;m=Zb(g,c-b>>2,g+44|0);j:{k:{e=H[a+8>>2];l:{if((e|0)==H[a+12>>2]){d=1;break l}while(1){i=H[H[r>>2]+(l<<2)>>2]<<2;b=H[i+e>>2];b=H[b+8>>2]-H[b+4>>2]|0;m:{if((b|0)<8){break m}c=b>>2;e=H[g+16>>2];d=H[g+20>>2]-e>>2;n:{if(c>>>0>d>>>0){La(g+16|0,c-d|0);break n}if(d>>>0<=c>>>0){break n}H[g+20>>2]=e+(c<<2)}b=N(b>>>2|0,(b|0)<1?b:1);o=(b|0)>1?b:1;f=0;o:{while(1){if((c|0)<=(f|0)){break o}b=H[m>>2];e=0;h=0;while(1){s=1<>>5<<2;p:{if(s&H[n+b>>2]){break p}d=0;b=H[i+H[a+8>>2]>>2];k=H[H[b+4>>2]+(e<<2)>>2];if((fa[H[H[b>>2]+24>>2]](b,k)|0)>0){while(1){b=H[i+H[a+8>>2]>>2];j=fa[H[H[b>>2]+28>>2]](b,k,d)|0;b=H[m>>2];if(!(H[b+(j>>>3&536870908)>>2]>>>j&1)){break p}b=H[i+H[a+8>>2]>>2];d=d+1|0;if((fa[H[H[b>>2]+24>>2]](b,k)|0)>(d|0)){continue}break}}H[H[g+16>>2]+(f<<2)>>2]=e;b=H[m>>2];d=n+b|0;H[d>>2]=s|H[d>>2];h=1;f=f+1|0}e=e+1|0;if((o|0)!=(e|0)){continue}break}if(h&1|(c|0)<=(f|0)){continue}break}d=0;break l}e=H[a+8>>2];d=H[i+e>>2];b=H[d+4>>2];H[d+8>>2]=b;H[d+20>>2]=H[d+16>>2];f=H[g+16>>2];o=H[g+20>>2];if((f|0)==(o|0)){break m}k=d+16|0;c=b;while(1){e=H[f>>2];q:{if(H[d+12>>2]!=(c|0)){H[c>>2]=e;H[d+8>>2]=c+4;break q}h=c-b|0;j=h>>2;i=j+1|0;if(i>>>0>=1073741824){break k}n=h>>1;i=j>>>0<536870911?i>>>0>n>>>0?i:n:1073741823;c=0;r:{if(!i){break r}if(i>>>0>=1073741824){break j}c=ra(i<<2)}j=c+(j<<2)|0;H[j>>2]=e;if((h|0)>=1){sa(c,b,h)}H[d+12>>2]=c+(i<<2);H[d+8>>2]=j+4;H[d+4>>2]=c;if(!b){break q}qa(b)}c=H[d+16>>2];b=H[d+20>>2]-c>>2;s:{if((b|0)>(e|0)){break s}H[g+44>>2]=-1;h=e+1|0;if(h>>>0>b>>>0){Bb(k,h-b|0,g+44|0);c=H[k>>2];break s}if(b>>>0<=h>>>0){break s}H[d+20>>2]=(h<<2)+c}e=(e<<2)+c|0;c=H[d+8>>2];b=H[d+4>>2];H[e>>2]=(c-b>>2)-1;f=f+4|0;if((o|0)!=(f|0)){continue}break}e=H[a+8>>2]}d=1;l=l+1|0;if(l>>>0>2]-e>>2>>>0){continue}break}}b=H[m>>2];if(b){qa(b)}b=H[g+16>>2];if(!b){break d}H[g+20>>2]=b;qa(b);break d}ua();X()}wa(13776);X()}c=1}if(c&1){continue}break}d=0}b=H[q>>2];if(b){qa(b)}da=g+48|0;if(!d){break b}b=H[a+32>>2];c=H[a+36>>2];if((b|0)==(c|0)){break a}while(1){if(!(fa[H[H[a>>2]+40>>2]](a,H[b>>2])|0)){break b}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=H[a+32>>2];c=H[a+36>>2];if((b|0)==(c|0)){break a}while(1){d=H[H[a+8>>2]+(H[b>>2]<<2)>>2];if(!(fa[H[H[d>>2]+12>>2]](d,H[a+44>>2])|0)){break b}b=b+4|0;if((c|0)!=(b|0)){continue}break}break a}da=p+16|0;return 0}a=fa[H[H[a>>2]+44>>2]](a)|0;da=p+16|0;return a|0}function dk(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;c=da-48|0;da=c;g=H[H[b+4>>2]+48>>2];H[c+8>>2]=H[b+12>>2];d=ra(32);H[c+24>>2]=d;H[c+28>>2]=17;H[c+32>>2]=-2147483616;F[d+17|0]=0;F[d+16|0]=I[6044];e=I[6040]|I[6041]<<8|(I[6042]<<16|I[6043]<<24);f=I[6036]|I[6037]<<8|(I[6038]<<16|I[6039]<<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[6032]|I[6033]<<8|(I[6034]<<16|I[6035]<<24);f=I[6028]|I[6029]<<8|(I[6030]<<16|I[6031]<<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=Ac(g,c+8|0,c+24|0,-1);if(F[c+35|0]<=-1){qa(H[c+24>>2])}H[c+32>>2]=-1;H[c+36>>2]=1065353216;H[c+24>>2]=-1;H[c+28>>2]=-1;H[c+40>>2]=-1;d=-1<>>0>28){break a}H[c+24>>2]=d+1;d=-2<>2]=d^-1;d=-2-d|0;H[c+32>>2]=d;H[c+40>>2]=(d|0)/2;L[c+36>>2]=O(2)/O(d|0)}g=ug(H[b+12>>2],H[b+4>>2]);h=H[H[b+4>>2]+48>>2];H[c+20>>2]=H[b+12>>2];d=ra(32);H[c+8>>2]=d;H[c+12>>2]=17;H[c+16>>2]=-2147483616;F[d+17|0]=0;F[d+16|0]=I[6184];e=I[6180]|I[6181]<<8|(I[6182]<<16|I[6183]<<24);f=I[6176]|I[6177]<<8|(I[6178]<<16|I[6179]<<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[6172]|I[6173]<<8|(I[6174]<<16|I[6175]<<24);f=I[6168]|I[6169]<<8|(I[6170]<<16|I[6171]<<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=Ac(h,c+20|0,c+8|0,g);if(F[c+19|0]<=-1){qa(H[c+8>>2])}b:{c:{switch(d|0){case 6:d=H[b+4>>2];h=H[b+12>>2];k=H[H[H[d+4>>2]+8>>2]+(h<<2)>>2];d:{if((fa[H[H[d>>2]+8>>2]](d)|0)==1){f=c+8|0;b=c+24|0;e=da-32|0;da=e;i=H[H[H[d+4>>2]+8>>2]+(h<<2)>>2];e:{f:{if((fa[H[H[d>>2]+8>>2]](d)|0)!=1){break f}j=fa[H[H[d>>2]+52>>2]](d)|0;g=fa[H[H[d>>2]+60>>2]](d,h)|0;if(!(g?j:0)){H[f>>2]=0;break e}h=fa[H[H[d>>2]+56>>2]](d,h)|0;if(h){d=H[d+56>>2];H[e+20>>2]=h;H[e+16>>2]=d;H[e+28>>2]=g;H[e+24>>2]=g+12;d=ra(128);H[d+4>>2]=i;g=H[b+4>>2];H[d+8>>2]=H[b>>2];H[d+12>>2]=g;g=H[b+12>>2];H[d+16>>2]=H[b+8>>2];H[d+20>>2]=g;H[d+24>>2]=H[b+16>>2];b=H[e+20>>2];H[d+28>>2]=H[e+16>>2];H[d+32>>2]=b;b=H[e+28>>2];H[d+36>>2]=H[e+24>>2];H[d+40>>2]=b;H[d+48>>2]=0;H[d+52>>2]=0;H[d>>2]=7292;b=H[e+20>>2];H[d+56>>2]=H[e+16>>2];H[d+60>>2]=b;g=H[e+28>>2];b=d- -64|0;H[b>>2]=H[e+24>>2];H[b+4>>2]=g;H[d+88>>2]=1065353216;H[d+92>>2]=-1;H[d+80>>2]=-1;H[d+84>>2]=-1;H[d+72>>2]=1;H[d+76>>2]=-1;H[d+44>>2]=7552;H[d+96>>2]=0;H[d+100>>2]=0;H[d+120>>2]=0;H[d+124>>2]=0;H[d+112>>2]=0;H[d+116>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;H[f>>2]=d;if(!H[f>>2]){break f}break e}d=H[d+56>>2];H[e+20>>2]=j;H[e+16>>2]=d;H[e+28>>2]=g;H[e+24>>2]=g+12;d=ra(128);H[d+4>>2]=i;g=H[b+4>>2];H[d+8>>2]=H[b>>2];H[d+12>>2]=g;g=H[b+12>>2];H[d+16>>2]=H[b+8>>2];H[d+20>>2]=g;H[d+24>>2]=H[b+16>>2];b=H[e+20>>2];H[d+28>>2]=H[e+16>>2];H[d+32>>2]=b;b=H[e+28>>2];H[d+36>>2]=H[e+24>>2];H[d+40>>2]=b;H[d+48>>2]=0;H[d+52>>2]=0;H[d>>2]=8916;b=H[e+20>>2];H[d+56>>2]=H[e+16>>2];H[d+60>>2]=b;g=H[e+28>>2];b=d- -64|0;H[b>>2]=H[e+24>>2];H[b+4>>2]=g;H[d+88>>2]=1065353216;H[d+92>>2]=-1;H[d+80>>2]=-1;H[d+84>>2]=-1;H[d+72>>2]=1;H[d+76>>2]=-1;H[d+44>>2]=9160;H[d+96>>2]=0;H[d+100>>2]=0;H[d+120>>2]=0;H[d+124>>2]=0;H[d+112>>2]=0;H[d+116>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;H[f>>2]=d;if(H[f>>2]){break e}}H[f>>2]=0}da=e+32|0;b=H[c+8>>2];if(b){break d}H[c+8>>2]=0}b=ra(28);H[b+4>>2]=k;d=H[c+28>>2];H[b+8>>2]=H[c+24>>2];H[b+12>>2]=d;d=H[c+36>>2];H[b+16>>2]=H[c+32>>2];H[b+20>>2]=d;H[b+24>>2]=H[c+40>>2];H[b>>2]=9572}H[a>>2]=b;break b;case 0:d=H[b+4>>2];e=H[H[H[d+4>>2]+8>>2]+(H[b+12>>2]<<2)>>2];if((fa[H[H[d>>2]+8>>2]](d)|0)==1){fa[H[H[d>>2]+8>>2]](d)|0}b=ra(28);H[b+4>>2]=e;d=H[c+28>>2];H[b+8>>2]=H[c+24>>2];H[b+12>>2]=d;d=H[c+36>>2];H[b+16>>2]=H[c+32>>2];H[b+20>>2]=d;H[b+24>>2]=H[c+40>>2];H[b>>2]=9572;H[a>>2]=b;break b;default:break c}}H[a>>2]=0}da=c+48|0}function Mc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=O(0),k=0;a:{b:{c:{if(!d){break 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)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}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 a;case 1:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}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 a;case 2:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}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 a;case 3:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}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 a;case 4:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}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 a;case 5:h=F[a+24|0];if((((c|0)<(h|0)?c:h)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;e=H[e+4>>2];while(1){if(b>>>0>=e>>>0){break b}h=0;f=H[b>>2];if((f|0)<0){break c}H[(g<<2)+d>>2]=f;b=b+4|0;g=g+1|0;h=F[a+24|0];if((g|0)<(((c|0)<(h|0)?c:h)|0)){continue}break}}if((c|0)<=(h|0)){return 1}ta((h<<2)+d|0,0,c-h<<2);return 1;case 6:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}e=H[b+4>>2];i=H[b>>2];if(i- -2147483648>>>0<2147483648?e+1|0:e){break b}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 a;case 7:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}e=H[b+4>>2];i=H[b>>2];if(!e&i>>>0>2147483647|e){break b}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 a;case 8:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}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 a;case 9:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}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 a;case 10:break d;default:break c}}h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>=1){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+el(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 b}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}ta((e<<2)+d|0,0,c-e<<2)}return h}return 0}ta((e<<2)+d|0,0,c-e<<2);return 1}function eg(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;n=da-32|0;da=n;a:{if((c|0)<1){break a}f=c&3;b:{if(c-1>>>0<3){c=0;break b}h=c&-4;c=0;while(1){v=c|1;j=(v<<3)+b|0;g=H[j+4>>2];q=H[j>>2];w=c|2;l=(w<<3)+b|0;j=H[l+4>>2];r=H[l>>2];x=c|3;o=(x<<3)+b|0;l=H[o+4>>2];y=H[o>>2];t=i;i=(c<<3)+b|0;z=H[i+4>>2];o=H[i>>2];i=l|y?x:j|r?w:g|q?v:!(z|o)?t:c;e=e+z|0;p=o+p|0;e=p>>>0>>0?e+1|0:e;o=p+q|0;e=e+g|0;e=o>>>0

>>0?e+1|0:e;g=o+r|0;e=e+j|0;e=g>>>0>>0?e+1|0:e;j=g;g=g+y|0;e=e+l|0;e=g>>>0>>0?e+1|0:e;p=g;c=c+4|0;h=h-4|0;if(h){continue}break}}if(!f){break a}while(1){j=i;i=(c<<3)+b|0;g=H[i+4>>2];h=H[i>>2];i=!(g|h)?j:c;c=c+1|0;e=e+g|0;j=h+p|0;e=j>>>0>>0?e+1|0:e;p=j;f=f-1|0;if(f){continue}break}}h=i+1|0;H[a+12>>2]=h;f=H[a>>2];c=H[a+4>>2]-f>>3;c:{if(c>>>0>>0){Ya(a,h-c|0);break c}if(c>>>0<=h>>>0){break c}H[a+4>>2]=f+(h<<3)}d:{e:{f:{g:{h:{if((i|0)>=0){s=+(p>>>0)+ +(e>>>0)*4294967296;f=H[a>>2];c=0;while(1){g=c<<3;j=g+b|0;e=H[j+4>>2];j=H[j>>2];l=(j|0)!=0|(e|0)!=0;g=f+g|0;k=(+(j>>>0)+ +(e>>>0)*4294967296)/s*4096+.5;i:{if(k<4294967296&k>=0){e=~~k>>>0;break i}e=0}e=e?e:l?1:e;H[g>>2]=e;m=e+m|0;e=(c|0)==(i|0);c=c+1|0;if(!e){continue}break}if((m|0)==4096){break h}}H[n+16>>2]=0;H[n+8>>2]=0;H[n+12>>2]=0;f=0;if(h){if(h>>>0>=1073741824){break g}c=h<<2;f=ra(c);H[n+8>>2]=f;u=c+f|0;H[n+16>>2]=u;ta(f,0,c);H[n+12>>2]=u}c=0;j:{if((i|0)<0){break j}e=i+1|0;h=e&7;if(i>>>0>=7){e=e&-8;while(1){H[(c<<2)+f>>2]=c;g=c|1;H[(g<<2)+f>>2]=g;g=c|2;H[(g<<2)+f>>2]=g;g=c|3;H[(g<<2)+f>>2]=g;g=c|4;H[(g<<2)+f>>2]=g;g=c|5;H[(g<<2)+f>>2]=g;g=c|6;H[(g<<2)+f>>2]=g;g=c|7;H[(g<<2)+f>>2]=g;c=c+8|0;e=e-8|0;if(e){continue}break}}if(!h){break j}while(1){H[(c<<2)+f>>2]=c;c=c+1|0;h=h-1|0;if(h){continue}break}}H[n+24>>2]=a;Fd(f,u,n+24|0);if((m|0)<4096){c=H[a>>2]+(H[H[n+12>>2]-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-m|0)+4096;c=0;break f}if((i|0)>=1){f=m-4096|0;p=H[a>>2];while(1){k=4096/+(m|0);q=H[n+8>>2];h=i;while(1){k:{l:{e=p+(H[q+(h<<2)>>2]<<3)|0;c=H[e>>2];if(c>>>0>=2){r=c-1|0;g=e;j=c;t=f;e=c;s=T(k*+(c>>>0));m:{if(P(s)<2147483648){l=~~s;break m}l=-2147483648}e=e-l|0;e=e?e:1;c=(c|0)>(e|0)?e:r;c=(c|0)>(f|0)?t:c;H[g>>2]=j-c;f=f-c|0;m=m-c|0;if((m|0)!=4096){break l}m=4096;break k}if((h|0)!=(i|0)){break k}c=1;break f}c=(h|0)>1;h=h-1|0;if(c){continue}}break}c=0;if((f|0)>0){continue}break}break f}c=0;if((m|0)<4097){break f}while(1)continue}if((i|0)<0){break d}break e}ua();X()}e=H[n+8>>2];if(e){H[n+12>>2]=e;qa(e)}if((i|0)<0|c){break d}}g=i+1|0;m=g&3;e=H[a>>2];n:{if(i>>>0<3){f=0;c=0;break n}j=g&-4;f=0;c=0;while(1){h=f<<3;l=h+e|0;H[l+4>>2]=c;o=e+(h|8)|0;c=H[l>>2]+c|0;H[o+4>>2]=c;l=e+(h|16)|0;c=c+H[o>>2]|0;H[l+4>>2]=c;h=e+(h|24)|0;c=c+H[l>>2]|0;H[h+4>>2]=c;c=c+H[h>>2]|0;f=f+4|0;j=j-4|0;if(j){continue}break}}if(m){while(1){h=e+(f<<3)|0;H[h+4>>2]=c;f=f+1|0;c=H[h>>2]+c|0;m=m-1|0;if(m){continue}break}}if((c|0)!=4096){break d}c=0;k=0;o:{if((i|0)<0){break o}e=H[a>>2];if(i){h=g&-2;while(1){f=c<<3;i=H[f+e>>2];if(i){f=b+f|0;j=H[f+4>>2];f=H[f>>2];k=k+ya(+(i>>>0)*.000244140625)*(+(f>>>0)+ +(j>>>0)*4294967296)}f=(c|1)<<3;i=H[f+e>>2];if(i){f=b+f|0;j=H[f+4>>2];f=H[f>>2];k=k+ya(+(i>>>0)*.000244140625)*(+(f>>>0)+ +(j>>>0)*4294967296)}c=c+2|0;h=h-2|0;if(h){continue}break}}if(!(g&1)){break o}c=c<<3;e=H[c+e>>2];if(!e){break o}b=b+c|0;c=H[b+4>>2];b=H[b>>2];k=k+ya(+(e>>>0)*.000244140625)*(+(b>>>0)+ +(c>>>0)*4294967296)}b=a;c=b;k=U(-k);p:{if(k<0x10000000000000000&k>=0){e=P(k)>=1?k>0?~~R(T(k*2.3283064365386963e-10),4294967295)>>>0:~~U((k-+(~~k>>>0>>>0))*2.3283064365386963e-10)>>>0:0;i=~~k>>>0;break p}e=0;i=0}H[c+16>>2]=i;H[b+20>>2]=e;Xa(a,d)}da=n+32|0}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;h=H[g>>2];f=H[a+36>>2]-h>>2;a:{if(f>>>0>>0){La(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=h+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){d=g;break c}h=1;f=d-1|0;i=f&1;d:{if((d|0)==2){d=g;break d}f=f&-2;d=g;while(1){j=(h<<2)+b|0;l=H[j+4>>2];j=H[j>>2];o=(j|0)<(d|0);d=o?j:d;p=(d|0)>(l|0);d=p?l:d;g=o?g:(g|0)<(j|0)?j:g;g=p?g:(g|0)<(l|0)?l:g;h=h+2|0;f=f-2|0;if(f){continue}break}}if(!i){break c}f=H[(h<<2)+b>>2];h=(f|0)<(d|0);d=h?f:d;g=h?g:(f|0)>(g|0)?f:g}H[a+16>>2]=g;H[a+12>>2]=d;f=d;d=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;f=g-f|0;if(!d&f>>>0>2147483646|d){break b}d=f+1|0;H[a+20>>2]=d;f=(d|0)/2|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}d=(e&1073741823)!=(e|0)?-1:e<<2;l=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){u=H[a+52>>2];s=H[a+48>>2];p=e&-2;v=e&1;t=d>>2;j=t;while(1){o=j;e:{f:{j=j-1|0;if(t>>>0>j>>>0){n=N(e,j);d=H[(j<<2)+r>>2];if((d|0)==-1){break f}d=H[H[s+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}f=H[u>>2];g=H[s>>2];i=H[f+(H[g+(d<<2)>>2]<<2)>>2];k=d+1|0;k=(k>>>0)%3|0?k:d-2|0;h=f-4|0;g:{if((k|0)==-1){break g}h=f+(H[g+(k<<2)>>2]<<2)|0}d=d+((d>>>0)%3|0?-1:2)|0;k=f-4|0;h:{if((d|0)==-1){break h}k=f+(H[g+(d<<2)>>2]<<2)|0}if((i|0)>=(j|0)){break f}f=H[h>>2];if((f|0)>=(j|0)){break f}d=H[k>>2];if((d|0)>=(j|0)){break f}i:{if((e|0)<1){break i}d=N(d,e);h=N(e,f);i=N(e,i);g=0;f=p;if((e|0)!=1){while(1){H[l+(g<<2)>>2]=(H[(d+g<<2)+b>>2]+H[(g+h<<2)+b>>2]|0)-H[(g+i<<2)+b>>2];k=g|1;H[l+(k<<2)>>2]=(H[(d+k<<2)+b>>2]+H[(h+k<<2)+b>>2]|0)-H[(i+k<<2)+b>>2];g=g+2|0;f=f-2|0;if(f){continue}break}}if(!v){break i}H[l+(g<<2)>>2]=(H[(d+g<<2)+b>>2]+H[(g+h<<2)+b>>2]|0)-H[(g+i<<2)+b>>2]}d=H[a+8>>2];if((d|0)<1){break e}f=n<<2;n=f+c|0;q=b+f|0;f=l;i=0;while(1){g=0;j:{if((d|0)<=0){h=H[a+32>>2];break j}while(1){d=g<<2;k=H[d+f>>2];m=H[a+16>>2];k:{if((k|0)>(m|0)){h=H[a+32>>2];H[d+h>>2]=m;break k}h=H[a+32>>2];d=d+h|0;m=H[a+12>>2];if((m|0)>(k|0)){H[d>>2]=m;break k}H[d>>2]=k}g=g+1|0;if((g|0)>2]){continue}break}}f=i<<2;d=f+n|0;f=H[f+q>>2]-H[f+h>>2]|0;H[d>>2]=f;l:{if((f|0)>2]){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[d>>2]=f}f=h;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}break e}xa();X()}d=H[a+8>>2];if((d|0)<1){break e}f=n<<2;n=f+c|0;q=b+f|0;f=(N(o-2|0,e)<<2)+b|0;i=0;while(1){g=0;m:{if((d|0)<=0){h=H[a+32>>2];break m}while(1){d=g<<2;k=H[d+f>>2];m=H[a+16>>2];n:{if((k|0)>(m|0)){h=H[a+32>>2];H[d+h>>2]=m;break n}h=H[a+32>>2];d=d+h|0;m=H[a+12>>2];if((m|0)>(k|0)){H[d>>2]=m;break n}H[d>>2]=k}g=g+1|0;if((g|0)>2]){continue}break}}f=i<<2;d=f+n|0;f=H[f+q>>2]-H[f+h>>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=h;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}if((o|0)>2){continue}break}}if((e|0)>=1){ta(l,0,e<<2)}d=H[a+8>>2];if((d|0)>=1){i=0;f=l;while(1){g=0;p:{if((d|0)<=0){h=H[a+32>>2];break p}while(1){d=g<<2;e=H[d+f>>2];j=H[a+16>>2];q:{if((e|0)>(j|0)){h=H[a+32>>2];H[d+h>>2]=j;break q}h=H[a+32>>2];d=d+h|0;j=H[a+12>>2];if((j|0)>(e|0)){H[d>>2]=j;break q}H[d>>2]=e}g=g+1|0;if((g|0)>2]){continue}break}}e=i<<2;d=e+c|0;e=H[b+e>>2]-H[e+h>>2]|0;H[d>>2]=e;r:{if((e|0)>2]){e=e+H[a+20>>2]|0}else{if((e|0)<=H[a+24>>2]){break r}e=e-H[a+20>>2]|0}H[d>>2]=e}f=h;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}qa(l);return 1}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,u=0,v=0;H[a+8>>2]=e;g=a+32|0;h=H[g>>2];f=H[a+36>>2]-h>>2;a:{if(f>>>0>>0){La(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=h+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){d=g;break c}h=1;f=d-1|0;p=f&1;d:{if((d|0)==2){d=g;break d}f=f&-2;d=g;while(1){i=(h<<2)+b|0;k=H[i+4>>2];i=H[i>>2];j=(i|0)<(d|0);d=j?i:d;o=(d|0)>(k|0);d=o?k:d;g=j?g:(g|0)<(i|0)?i:g;g=o?g:(g|0)<(k|0)?k:g;h=h+2|0;f=f-2|0;if(f){continue}break}}if(!p){break c}f=H[(h<<2)+b>>2];h=(f|0)<(d|0);d=h?f:d;g=h?g:(f|0)>(g|0)?f:g}H[a+16>>2]=g;H[a+12>>2]=d;f=d;d=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;f=g-f|0;if(!d&f>>>0>2147483646|d){break b}d=f+1|0;H[a+20>>2]=d;f=(d|0)/2|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}d=(e&1073741823)!=(e|0)?-1:e<<2;k=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){u=H[a+52>>2];q=H[a+48>>2];p=e&-2;v=e&1;t=d>>2;j=t;while(1){o=j;e:{f:{j=j-1|0;if(t>>>0>j>>>0){n=N(e,j);d=H[(j<<2)+s>>2];if((d|0)==-1|H[H[q>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}d=H[H[H[q+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}g=H[u>>2];f=H[q+28>>2];h=H[g+(H[f+(d<<2)>>2]<<2)>>2];if((h|0)>=(j|0)){break f}i=d+1|0;i=H[g+(H[f+(((i>>>0)%3|0?i:d-2|0)<<2)>>2]<<2)>>2];if((i|0)>=(j|0)){break f}d=H[g+(H[f+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(j|0)){break f}g:{if((e|0)<1){break g}d=N(d,e);f=N(e,i);h=N(e,h);g=0;i=p;if((e|0)!=1){while(1){H[k+(g<<2)>>2]=(H[(d+g<<2)+b>>2]+H[(f+g<<2)+b>>2]|0)-H[(g+h<<2)+b>>2];l=g|1;H[k+(l<<2)>>2]=(H[(d+l<<2)+b>>2]+H[(f+l<<2)+b>>2]|0)-H[(h+l<<2)+b>>2];g=g+2|0;i=i-2|0;if(i){continue}break}}if(!v){break g}H[k+(g<<2)>>2]=(H[(d+g<<2)+b>>2]+H[(f+g<<2)+b>>2]|0)-H[(g+h<<2)+b>>2]}d=H[a+8>>2];if((d|0)<1){break e}f=n<<2;n=f+c|0;r=b+f|0;f=k;i=0;while(1){g=0;h:{if((d|0)<=0){h=H[a+32>>2];break h}while(1){d=g<<2;l=H[d+f>>2];m=H[a+16>>2];i:{if((l|0)>(m|0)){h=H[a+32>>2];H[d+h>>2]=m;break i}h=H[a+32>>2];d=d+h|0;m=H[a+12>>2];if((m|0)>(l|0)){H[d>>2]=m;break i}H[d>>2]=l}g=g+1|0;if((g|0)>2]){continue}break}}f=i<<2;d=f+n|0;f=H[f+r>>2]-H[f+h>>2]|0;H[d>>2]=f;j:{if((f|0)>2]){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[d>>2]=f}f=h;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}break e}xa();X()}d=H[a+8>>2];if((d|0)<1){break e}f=n<<2;n=f+c|0;r=b+f|0;f=(N(o-2|0,e)<<2)+b|0;i=0;while(1){g=0;k:{if((d|0)<=0){h=H[a+32>>2];break k}while(1){d=g<<2;l=H[d+f>>2];m=H[a+16>>2];l:{if((l|0)>(m|0)){h=H[a+32>>2];H[d+h>>2]=m;break l}h=H[a+32>>2];d=d+h|0;m=H[a+12>>2];if((m|0)>(l|0)){H[d>>2]=m;break l}H[d>>2]=l}g=g+1|0;if((g|0)>2]){continue}break}}f=i<<2;d=f+n|0;f=H[f+r>>2]-H[f+h>>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=h;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}if((o|0)>2){continue}break}}if((e|0)>=1){ta(k,0,e<<2)}d=H[a+8>>2];if((d|0)>=1){i=0;f=k;while(1){g=0;n:{if((d|0)<=0){h=H[a+32>>2];break n}while(1){d=g<<2;e=H[d+f>>2];j=H[a+16>>2];o:{if((e|0)>(j|0)){h=H[a+32>>2];H[d+h>>2]=j;break o}h=H[a+32>>2];d=d+h|0;j=H[a+12>>2];if((j|0)>(e|0)){H[d>>2]=j;break o}H[d>>2]=e}g=g+1|0;if((g|0)>2]){continue}break}}e=i<<2;d=e+c|0;e=H[b+e>>2]-H[e+h>>2]|0;H[d>>2]=e;p:{if((e|0)>2]){e=e+H[a+20>>2]|0}else{if((e|0)<=H[a+24>>2]){break p}e=e-H[a+20>>2]|0}H[d>>2]=e}f=h;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}qa(k);return 1}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,s=0;k=da-112|0;da=k;l=h;o=i&2147483647;m=c-(b>>>0<1)|0;j=b-1|0;q=(j|0)==-1&(m|0)==-1;r=d;p=(c|0)==(m|0)&b>>>0>j>>>0|c>>>0>m>>>0;n=d+p|0;m=e&2147483647;j=m;j=n>>>0

>>0?j+1|0:j;p=n-1|0;a:{b:{j=j-(n>>>0<1)|0;if(!((p|0)==-1&(j|0)==2147418111?q:j>>>0>2147418111)){j=f;n=g-(j>>>0<1)|0;j=j-1|0;q=(j|0)!=-1|(n|0)!=-1;p=(g|0)==(n|0)&f>>>0>j>>>0|g>>>0>n>>>0;n=p+l|0;j=o;j=n>>>0

>>0?j+1|0:j;p=n;n=n-1|0;j=j-(p>>>0<1)|0;if((n|0)==-1&(j|0)==2147418111?q:(j|0)==2147418111&(n|0)!=-1|j>>>0<2147418111){break b}}if(!(!r&(m|0)==2147418112?!(b|c):m>>>0<2147418112)){h=d;i=e|32768;f=b;g=c;break a}if(!(!l&(o|0)==2147418112?!(f|g):o>>>0<2147418112)){i=i|32768;break a}if(!(b|r|(m^2147418112|c))){j=d;d=!(b^f|d^h|(c^g|e^i^-2147483648));h=d?0:j;i=d?2147450880:e;f=d?0:b;g=d?0:c;break a}if(!(f|l|(o^2147418112|g))){break a}if(!(b|r|(c|m))){if(f|l|(g|o)){break a}f=b&f;g=c&g;h=d&h;i=e&i;break a}if(f|l|(g|o)){break b}f=b;g=c;h=d;i=e;break a}q=(l|0)==(r|0)&(m|0)==(o|0)?(c|0)==(g|0)&b>>>0>>0|c>>>0>>0:(m|0)==(o|0)&l>>>0>r>>>0|m>>>0>>0;j=q;n=j?f:b;o=j?g:c;l=j?i:e;r=l;m=j?h:d;j=l&65535;i=q?e:i;e=i;h=q?d:h;p=i>>>16&32767;l=l>>>16&32767;if(!l){d=!(j|m);i=d<<6;l=Q(d?n:m)+32|0;d=Q(d?o:j);d=i+((d|0)==32?l:d)|0;Za(k+96|0,n,o,m,j,d-15|0);m=H[k+104>>2];n=H[k+96>>2];o=H[k+100>>2];l=16-d|0;j=H[k+108>>2]}f=q?b:f;g=q?c:g;i=e&65535;if(!p){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;Za(k+80|0,f,g,h,i,b-15|0);p=16-b|0;h=H[k+88>>2];i=H[k+92>>2];g=H[k+84>>2];f=H[k+80>>2]}b=h;c=i<<3|b>>>29;h=b<<3|g>>>29;i=c|524288;b=m;d=j<<3|b>>>29;m=b<<3|o>>>29;s=d;q=e^r;b=f;j=g<<3|b>>>29;b=b<<3;c=j;d=l-p|0;e=b;c:{if(!d){break c}if(d>>>0>127){h=0;i=0;j=0;e=1;break c}Za(k- -64|0,b,c,h,i,128-d|0);Rb(k+48|0,b,c,h,i,d);h=H[k+56>>2];i=H[k+60>>2];j=H[k+52>>2];e=H[k+48>>2]|((H[k+64>>2]|H[k+72>>2])!=0|(H[k+68>>2]|H[k+76>>2])!=0)}f=j;d=m;p=s|524288;b=n;j=o<<3|b>>>29;c=b<<3;d:{if((q|0)<-1?1:(q|0)<=-1){o=e;b=c-e|0;m=h;n=d-h|0;e=(f|0)==(j|0)&c>>>0>>0|f>>>0>j>>>0;h=n-e|0;c=j-((c>>>0>>0)+f|0)|0;i=(p-((d>>>0>>0)+i|0)|0)-(e>>>0>n>>>0)|0;if(!(b|h|(c|i))){f=0;g=0;h=0;i=0;break a}if(i>>>0>524287){break d}f=b;d=!(h|i);e=d<<6;g=Q(d?b:h)+32|0;b=Q(d?c:i);b=e+((b|0)==32?g:b)|0;b=b-12|0;Za(k+32|0,f,c,h,i,b);l=l-b|0;h=H[k+40>>2];i=H[k+44>>2];b=H[k+32>>2];c=H[k+36>>2];break d}b=c;g=b+e|0;c=f+j|0;c=b>>>0>g>>>0?c+1|0:c;b=g;g=(c|0)==(f|0)&e>>>0>b>>>0|c>>>0>>0;e=d;f=d+h|0;d=i+p|0;d=e>>>0>f>>>0?d+1|0:d;e=g+f|0;h=e;i=h>>>0>>0?d+1|0:d;if(!(i&1048576)){break d}b=b&1|((c&1)<<31|b>>>1);c=h<<31|c>>>1;l=l+1|0;h=(i&1)<<31|h>>>1;i=i>>>1|0}o=0;r=r&-2147483648;if((l|0)>=32767){h=o;i=r|2147418112;f=0;g=0;break a}if((l|0)>=1){e=l}else{Za(k+16|0,b,c,h,i,l+127|0);Rb(k,b,c,h,i,1-l|0);b=H[k>>2]|((H[k+16>>2]|H[k+24>>2])!=0|(H[k+20>>2]|H[k+28>>2])!=0);c=H[k+4>>2];h=H[k+8>>2];i=H[k+12>>2];e=0}j=(c&7)<<29|b>>>3;l=b&7;b=j+(l>>>0>4)|0;d=h<<29|c>>>3;c=b>>>0>>0?d+1|0:d;f=b;g=c;b=(d|0)==(c|0)&b>>>0>>0|c>>>0>>0;d=o|((i&7)<<29|h>>>3);b=b+d|0;j=r|(i>>>3&65535|e<<16);h=b;i=b>>>0>>0?j+1|0:j;e:{if((l|0)==4){j=i;c=0;d=g+c|0;e=f&1;b=f+e|0;d=b>>>0>>0?d+1|0:d;f=b;g=d;c=(c|0)==(d|0)&b>>>0>>0|c>>>0>d>>>0;b=c+h|0;h=b;i=b>>>0>>0?j+1|0:j;break e}if(!l){break a}}}H[a>>2]=f;H[a+4>>2]=g;H[a+8>>2]=h;H[a+12>>2]=i;da=k+112|0}function Mf(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;i=da-32|0;da=i;c=H[a+16>>2];H[a+20>>2]=c;a:{if((c|0)!=H[a+24>>2]){H[c>>2]=b;b=c+4|0;H[a+20>>2]=b;e=c;break a}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 a}qa(c);b=H[a+20>>2];e=H[a+16>>2]}c=H[a+8>>2];g=H[c+100>>2]-H[c+96>>2]|0;c=(g|0)/12|0;b:{if((b|0)==(e|0)){break b}if((g|0)<1){while(1){c=b-4|0;g=H[c>>2];c:{if((g|0)!=-1){g=(g>>>0)/3|0;if(!(H[H[a+28>>2]+(g>>>3&268435452)>>2]>>>g&1)){break c}}H[a+20>>2]=c;b=c}if((b|0)!=(e|0)){continue}break b}}q=a+120|0;g=a+200|0;r=(c|0)>1?c:1;d:{e:{f:{while(1){g:{h:{i:{c=b-4|0;b=H[c>>2];if((b|0)==-1){break i}e=H[a+28>>2];d=(b>>>0)/3|0;if(H[e+(d>>>3&268435452)>>2]>>>d&1){break i}h=1;while(1){H[a+164>>2]=H[a+164>>2]+1;k=(b>>>0)/3|0;m=(b|0)==-1;l=m?-1:k;c=(l>>>3&536870908)+e|0;H[c>>2]=H[c>>2]|1<>2];j:{if((c|0)!=H[a+80>>2]){H[c>>2]=b;H[a+76>>2]=c+4;break j}e=H[a+72>>2];d=c-e|0;j=d>>2;f=j+1|0;if(f>>>0>1073741823){break g}n=d>>1;f=j>>>0<536870911?f>>>0>n>>>0?f:n:1073741823;c=0;k:{if(!f){break k}if(f>>>0>1073741823){break f}c=ra(f<<2)}j=c+(j<<2)|0;H[j>>2]=b;if((d|0)>=1){sa(c,e,d)}H[a+80>>2]=c+(f<<2);H[a+76>>2]=j+4;H[a+72>>2]=c;if(!e){break j}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;j=H[n+H[a+152>>2]>>2];l:{m:{e=H[a+84>>2]+(c>>>3&536870908)|0;d=H[e>>2];c=1<>2]=c|d;if((j|0)==-1){break m}}n:{if(m){break n}e=-1;c=-1;d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;if((f|0)!=-1){c=H[H[H[a+12>>2]+12>>2]+(f<<2)>>2]}d=(b-N(k,3)|0?-1:2)+b|0;if((d|0)!=-1){e=H[H[H[a+12>>2]+12>>2]+(d<<2)>>2]}k=(e|0)==-1;m=k?-1:(e>>>0)/3|0;s=(c>>>0)/3|0;o:{if((f|0)==-1){break o}o=H[H[a+12>>2]+12>>2];f=H[o+(f<<2)>>2];if((f|0)==-1){break o}p=H[a+28>>2];f=(f>>>0)/3|0;if(H[p+(f>>>3&268435452)>>2]>>>f&1){break o}p:{if((d|0)==-1){break p}d=H[(d<<2)+o>>2];if((d|0)==-1){break p}d=(d>>>0)/3|0;if(H[(d>>>3&268435452)+p>>2]>>>d&1){break p}$b(g,1);H[a+168>>2]=H[a+168>>2]+1;q:{if((j|0)==-1){break q}d=H[H[a+152>>2]+n>>2];if(H[H[a+140>>2]+(d>>>3&536870908)>>2]>>>d&1){break q}tc(a,b,0)}b=H[a+164>>2];H[i+4>>2]=l;H[i+16>>2]=i+4;Qf(i+24|0,q,i+4|0,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 h}e=H[a+16>>2];d=b-e|0;f=d>>2;h=f+1|0;if(h>>>0>1073741823){break e}l=d>>1;h=f>>>0<536870911?h>>>0>l>>>0?h:l:1073741823;b=0;r:{if(!h){break r}if(h>>>0>1073741823){break d}b=ra(h<<2)}f=b+(f<<2)|0;H[f>>2]=c;if((d|0)>=1){sa(b,e,d)}H[a+24>>2]=b+(h<<2);H[a+20>>2]=f+4;H[a+16>>2]=b;if(!e){break h}qa(e);break h}if(!k){Ub(a,H[a+164>>2],0,m)}$b(g,3);break l}b=(c|0)==-1;if(!b){Ub(a,H[a+164>>2],1,b?-1:s)}s:{if((d|0)==-1){break s}b=H[H[H[a+12>>2]+12>>2]+(d<<2)>>2];if((b|0)==-1){break s}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break s}$b(g,5);c=e;break l}if(k){break n}Ub(a,H[a+164>>2],0,m)}$b(g,7);H[a+20>>2]=H[a+20>>2]-4;break h}$b(g,0);c=-1;if((b|0)==-1){break l}e=b+1|0;b=(e>>>0)%3|0?e:b-2|0;if((b|0)==-1){break l}c=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2]}if((h|0)==(r|0)){break h}h=h+1|0;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 b}break}ua();X()}wa(11712);X()}ua();X()}wa(11712);X()}da=i+32|0;return 1}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=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=da-48|0;da=k;d=H[a+8>>2];if(d-2>>>0<=28){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;n=a+96|0;Ba(n);d=H[a+40>>2];e=H[d>>2];f=H[d+4>>2];H[k+16>>2]=0;H[k+8>>2]=0;H[k+12>>2]=0;a:{e=f-e|0;f=(e|0)<1;if(f){break a}i=H[d>>2];if((i|0)!=H[d+4>>2]){o=a+8|0;q=a+44|0;d=N(e>>>2|0,f?e:1);r=(d|0)>1?d:1;s=c+4|0;while(1){Dc(q,H[(m<<2)+i>>2],k+8|0);f=H[k+12>>2];d=f>>31;e=H[k+8>>2];j=e>>31;i=H[k+16>>2];g=i>>31;g=g^g+i;j=g+((d^d+f)+(j^e+j)|0)|0;d=0;d=g>>>0>j>>>0?1:d;b:{if(!(d|j)){l=H[a+92>>2];h=l;break b}l=H[a+92>>2];h=l;p=h>>31;f=fl(el(h,p,f,f>>31),ea,j,d);g=f>>31;g=g^f+g;h=fl(el(h,p,e,e>>31),ea,j,d);d=h>>31;d=d^d+h;if((i|0)>=0){i=l-(d+g|0)|0;break b}i=g+(d-l|0)|0}c:{if((h|0)>=0){d=f+l|0;g=i+l|0;break c}d:{if((f|0)<=-1){d=i>>31;d=d+i^d;break d}d=i>>31;d=H[a+84>>2]-(d+i^d)|0}if((i|0)<=-1){e=f>>31;g=e+f^e;break c}e=f>>31;g=H[a+84>>2]-(e+f^e)|0}e:{if(!(d|g)){e=H[a+84>>2];g=e;j=e;break e}e=H[a+84>>2];f:{g:{h:{i:{if(!d){if((e|0)==(g|0)){e=g;j=e;break e}j=0;if(e|g){break i}g=0;break e}if((d|0)!=(e|0)|g){break h}e=d;g=d;j=d;break e}if((g|0)>(l|0)){g=(l<<1)-g|0;break e}if(e){break f}break g}if((d|0)!=(e|0)){break f}}e=d;if((g|0)>=(l|0)){break f}g=(l<<1)-g|0;j=d;break e}if(!((e|0)!=(g|0)|(d|0)>=(l|0))){j=(l<<1)-d|0;break e}if(g){j=d;break e}g=0;if((d|0)<=(l|0)){j=d;break e}j=(l<<1)-d|0}H[k+16>>2]=0-i;H[k+12>>2]=0-f;H[k+8>>2]=0-h;j:{if((h|0)<=0){h=l-i|0;f=l-f|0;break j}d=f>>31;d=d+f^d;h=(i|0)>0?d:e-d|0;d=i>>31;d=d+i^d;f=(f|0)>0?d:e-d|0}k:{l:{if(!(f|h)){break l}m:{n:{o:{if(!f){if((e|0)==(h|0)){break l}d=0;if(e|h){break o}h=0;break k}if((e|0)==(f|0)?!h:0){break l}if((e|0)==(f|0)){break n}break m}if((h|0)>(l|0)){h=(l<<1)-h|0;break k}if(e){break m}}e=f;if((h|0)>=(l|0)){break m}h=(l<<1)-h|0;d=f;break k}if(!((e|0)!=(h|0)|(f|0)>=(l|0))){d=(l<<1)-f|0;break k}if(h){d=f;break k}h=0;if((f|0)<=(l|0)){d=f;break k}d=(l<<1)-f|0;break k}h=e;d=e}e=(m<<3)+b|0;f=H[e+4>>2];H[k+32>>2]=H[e>>2];H[k+36>>2]=f;H[k+28>>2]=g;H[k+24>>2]=j;ab(k+40|0,o,k+32|0,k+24|0);g=H[k+44>>2];i=H[k+40>>2];f=H[e+4>>2];H[k+32>>2]=H[e>>2];H[k+36>>2]=f;H[k+28>>2]=h;H[k+24>>2]=d;ab(k+40|0,o,k+32|0,k+24|0);f=H[k+44>>2];e=H[k+40>>2];d=H[a+92>>2];p:{if((d|0)<(i|0)){i=i-H[a+80>>2]|0;break p}if((0-d|0)<=(i|0)){break p}i=H[a+80>>2]+i|0}q:{if((d|0)<(g|0)){g=g-H[a+80>>2]|0;break q}if((0-d|0)<=(g|0)){break q}g=H[a+80>>2]+g|0}r:{if((d|0)<(e|0)){e=e-H[a+80>>2]|0;break r}if((0-d|0)<=(e|0)){break r}e=H[a+80>>2]+e|0}s:{if((d|0)<(f|0)){f=f-H[a+80>>2]|0;break s}if((0-d|0)<=(f|0)){break s}f=H[a+80>>2]+f|0}d=m<<1;j=g>>31;j=j+g^j;h=i>>31;h=h+i^h;l=h>>>0>(j^2147483647)>>>0?2147483647:j+h|0;j=f>>31;j=j+f^j;h=e>>31;h=h+e^h;t:{if(l>>>0<(h>>>0>(j^2147483647)>>>0?2147483647:j+h|0)>>>0){Ea(n,0);e=(d<<2)+c|0;if((i|0)<=-1){i=H[a+80>>2]+i|0}H[e>>2]=i;if((g|0)>-1){f=g;break t}f=H[a+80>>2]+g|0;break t}Ea(n,1);j=(d<<2)+c|0;if((e|0)<=-1){e=H[a+80>>2]+e|0}H[j>>2]=e;if((f|0)>-1){break t}f=H[a+80>>2]+f|0}H[(d<<2)+s>>2]=f;m=m+1|0;if((r|0)==(m|0)){break a}d=H[a+40>>2];i=H[d>>2];if(H[d+4>>2]-i>>2>>>0>m>>>0){continue}break}}xa();X()}da=k+48|0;return 1}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;k=da-48|0;da=k;d=H[a+8>>2];if(d-2>>>0<=28){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;n=a+96|0;Ba(n);d=H[a+40>>2];e=H[d>>2];f=H[d+4>>2];H[k+16>>2]=0;H[k+8>>2]=0;H[k+12>>2]=0;a:{e=f-e|0;f=(e|0)<1;if(f){break a}i=H[d>>2];if((i|0)!=H[d+4>>2]){o=a+8|0;q=a+44|0;d=N(e>>>2|0,f?e:1);r=(d|0)>1?d:1;s=c+4|0;while(1){Bc(q,H[(m<<2)+i>>2],k+8|0);f=H[k+12>>2];d=f>>31;e=H[k+8>>2];j=e>>31;i=H[k+16>>2];g=i>>31;g=g^g+i;j=g+((d^d+f)+(j^e+j)|0)|0;d=0;d=g>>>0>j>>>0?1:d;b:{if(!(d|j)){l=H[a+92>>2];h=l;break b}l=H[a+92>>2];h=l;p=h>>31;f=fl(el(h,p,f,f>>31),ea,j,d);g=f>>31;g=g^f+g;h=fl(el(h,p,e,e>>31),ea,j,d);d=h>>31;d=d^d+h;if((i|0)>=0){i=l-(d+g|0)|0;break b}i=g+(d-l|0)|0}c:{if((h|0)>=0){d=f+l|0;g=i+l|0;break c}d:{if((f|0)<=-1){d=i>>31;d=d+i^d;break d}d=i>>31;d=H[a+84>>2]-(d+i^d)|0}if((i|0)<=-1){e=f>>31;g=e+f^e;break c}e=f>>31;g=H[a+84>>2]-(e+f^e)|0}e:{if(!(d|g)){e=H[a+84>>2];g=e;j=e;break e}e=H[a+84>>2];f:{g:{h:{i:{if(!d){if((e|0)==(g|0)){e=g;j=e;break e}j=0;if(e|g){break i}g=0;break e}if((d|0)!=(e|0)|g){break h}e=d;g=d;j=d;break e}if((g|0)>(l|0)){g=(l<<1)-g|0;break e}if(e){break f}break g}if((d|0)!=(e|0)){break f}}e=d;if((g|0)>=(l|0)){break f}g=(l<<1)-g|0;j=d;break e}if(!((e|0)!=(g|0)|(d|0)>=(l|0))){j=(l<<1)-d|0;break e}if(g){j=d;break e}g=0;if((d|0)<=(l|0)){j=d;break e}j=(l<<1)-d|0}H[k+16>>2]=0-i;H[k+12>>2]=0-f;H[k+8>>2]=0-h;j:{if((h|0)<=0){h=l-i|0;f=l-f|0;break j}d=f>>31;d=d+f^d;h=(i|0)>0?d:e-d|0;d=i>>31;d=d+i^d;f=(f|0)>0?d:e-d|0}k:{l:{if(!(f|h)){break l}m:{n:{o:{if(!f){if((e|0)==(h|0)){break l}d=0;if(e|h){break o}h=0;break k}if((e|0)==(f|0)?!h:0){break l}if((e|0)==(f|0)){break n}break m}if((h|0)>(l|0)){h=(l<<1)-h|0;break k}if(e){break m}}e=f;if((h|0)>=(l|0)){break m}h=(l<<1)-h|0;d=f;break k}if(!((e|0)!=(h|0)|(f|0)>=(l|0))){d=(l<<1)-f|0;break k}if(h){d=f;break k}h=0;if((f|0)<=(l|0)){d=f;break k}d=(l<<1)-f|0;break k}h=e;d=e}e=(m<<3)+b|0;f=H[e+4>>2];H[k+32>>2]=H[e>>2];H[k+36>>2]=f;H[k+28>>2]=g;H[k+24>>2]=j;ab(k+40|0,o,k+32|0,k+24|0);g=H[k+44>>2];i=H[k+40>>2];f=H[e+4>>2];H[k+32>>2]=H[e>>2];H[k+36>>2]=f;H[k+28>>2]=h;H[k+24>>2]=d;ab(k+40|0,o,k+32|0,k+24|0);f=H[k+44>>2];e=H[k+40>>2];d=H[a+92>>2];p:{if((d|0)<(i|0)){i=i-H[a+80>>2]|0;break p}if((0-d|0)<=(i|0)){break p}i=H[a+80>>2]+i|0}q:{if((d|0)<(g|0)){g=g-H[a+80>>2]|0;break q}if((0-d|0)<=(g|0)){break q}g=H[a+80>>2]+g|0}r:{if((d|0)<(e|0)){e=e-H[a+80>>2]|0;break r}if((0-d|0)<=(e|0)){break r}e=H[a+80>>2]+e|0}s:{if((d|0)<(f|0)){f=f-H[a+80>>2]|0;break s}if((0-d|0)<=(f|0)){break s}f=H[a+80>>2]+f|0}d=m<<1;j=g>>31;j=j+g^j;h=i>>31;h=h+i^h;l=h>>>0>(j^2147483647)>>>0?2147483647:j+h|0;j=f>>31;j=j+f^j;h=e>>31;h=h+e^h;t:{if(l>>>0<(h>>>0>(j^2147483647)>>>0?2147483647:j+h|0)>>>0){Ea(n,0);e=(d<<2)+c|0;if((i|0)<=-1){i=H[a+80>>2]+i|0}H[e>>2]=i;if((g|0)>-1){f=g;break t}f=H[a+80>>2]+g|0;break t}Ea(n,1);j=(d<<2)+c|0;if((e|0)<=-1){e=H[a+80>>2]+e|0}H[j>>2]=e;if((f|0)>-1){break t}f=H[a+80>>2]+f|0}H[(d<<2)+s>>2]=f;m=m+1|0;if((r|0)==(m|0)){break a}d=H[a+40>>2];i=H[d>>2];if(H[d+4>>2]-i>>2>>>0>m>>>0){continue}break}}xa();X()}da=k+48|0;return 1}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;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}f=c+(b<<2)|0;e=H[f>>2];h=H[e+60>>2];g=H[e+56>>2];c=f+4|0;b:{if((c|0)!=(d|0)){while(1){i=H[c>>2];H[c>>2]=0;H[f>>2]=i;if(e){Ma(e)}f=f+4|0;c=c+4|0;if((c|0)!=(d|0)){e=H[f>>2];continue}break}d=H[a+12>>2];if((f|0)==(d|0)){break b}}while(1){d=d-4|0;c=H[d>>2];H[d>>2]=0;if(c){Ma(c)}if((d|0)!=(f|0)){continue}break}}H[a+12>>2]=f;e=H[a+4>>2];c:{if(!e|(h|0)<0){break c}d=H[e+24>>2];c=H[e+28>>2];if((d|0)==(c|0)){break c}while(1){if((h|0)==H[H[d>>2]+24>>2]){f=d+4|0;h=H[e+28>>2];d:{if((f|0)!=(h|0)){while(1){i=H[f>>2];H[f>>2]=0;c=H[d>>2];H[d>>2]=i;if(c){qb(c+12|0,H[c+16>>2]);pb(c,H[c+4>>2]);qa(c)}d=d+4|0;f=f+4|0;if((h|0)!=(f|0)){continue}break}f=H[e+28>>2];if((f|0)==(d|0)){break d}}while(1){f=f-4|0;c=H[f>>2];H[f>>2]=0;if(c){qb(c+12|0,H[c+16>>2]);pb(c,H[c+4>>2]);qa(c)}if((d|0)!=(f|0)){continue}break}}H[e+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{f=N(g,12)+a|0;d=H[f+20>>2];c=H[f+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}e=d+4|0;c=c-e|0;if(c){Ha(d,e,c)}H[f+24>>2]=d+c}f=H[a+20>>2];d=H[a+24>>2]-f|0;g:{if(!d){break g}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=N(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=H[g>>2];if((i|0)>(b|0)){H[g>>2]=i-1}e=f+(e|4)|0;g=H[e>>2];if((g|0)>(b|0)){H[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break g}d=f+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break g}H[d>>2]=c-1}f=H[a+32>>2];d=H[a+36>>2]-f|0;h:{if(!d){break h}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=N(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=H[g>>2];if((i|0)>(b|0)){H[g>>2]=i-1}e=f+(e|4)|0;g=H[e>>2];if((g|0)>(b|0)){H[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break h}d=f+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break h}H[d>>2]=c-1}f=H[a+44>>2];d=H[a+48>>2]-f|0;i:{if(!d){break i}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=N(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=H[g>>2];if((i|0)>(b|0)){H[g>>2]=i-1}e=f+(e|4)|0;g=H[e>>2];if((g|0)>(b|0)){H[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break i}d=f+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break i}H[d>>2]=c-1}f=H[a+56>>2];d=H[a+60>>2]-f|0;j:{if(!d){break j}c=d>>31;c=(c+d^c)>>>2|0;d=(d|0)>-1?d:-1;c=N(c,(d|0)<1?d:1);e=c>>>0>1?c:1;h=e&1;d=0;if(c>>>0>=2){c=e&-2;while(1){e=d<<2;g=e+f|0;i=H[g>>2];if((i|0)>(b|0)){H[g>>2]=i-1}e=f+(e|4)|0;g=H[e>>2];if((g|0)>(b|0)){H[e>>2]=g-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!h){break j}d=f+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break j}H[d>>2]=c-1}f=H[a+68>>2];a=H[a+72>>2]-f|0;if(!a){break a}d=a>>31;c=(d+a^d)>>>2|0;a=(a|0)>-1?a:-1;a=N(c,(a|0)<1?a:1);c=a>>>0>1?a:1;e=c&1;d=0;if(a>>>0>=2){c=c&-2;while(1){a=d<<2;h=a+f|0;g=H[h>>2];if((g|0)>(b|0)){H[h>>2]=g-1}a=f+(a|4)|0;h=H[a>>2];if((h|0)>(b|0)){H[a>>2]=h-1}d=d+2|0;c=c-2|0;if(c){continue}break}}if(!e){break a}c=b;a=f+(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=19304,j=H[4826]&il(-2,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)+19608|0;e:{if(H[c>>2]==(d|0)){H[c>>2]=b;if(b){break e}i=19308,j=H[4827]&il(-2,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[4828]=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[4832]==(f|0)){H[4832]=d;a=H[4829]+a|0;H[4829]=a;H[d+4>>2]=a|1;if(H[4831]!=(d|0)){break a}H[4828]=0;H[4831]=0;return}if(H[4831]==(f|0)){H[4831]=d;a=H[4828]+a|0;H[4828]=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=19304,j=H[4826]&il(-2,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)+19608|0;j:{if(H[c>>2]==(f|0)){H[c>>2]=b;if(b){break j}i=19308,j=H[4827]&il(-2,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[4831]!=(d|0)){break f}H[4828]=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)+19344|0;c=H[4826];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)+19608|0;l:{m:{c=H[4827];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[4834]-1|0;H[4834]=a?a:-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,l=0;d=da-80|0;da=d;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)<1){break d}ag(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];j=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;e=H[a+172>>2];c=H[a+176>>2]-e|0;e:{if(!c){break e}c=(c|0)/136|0;g=c>>>0>1?c:1;c=0;while(1){if(H[e+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[j+56>>2];if(!I[(e+N(h,136)|0)+28|0]|(f|0)!=1?!(!c|!f):0){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[d+16>>2]=-1;i=e;e=N(h,136);g=i+e|0;Cb(g+116|0,f-c>>2,d+16|0);F[(e+H[a+172>>2]|0)+100|0]=0;c=g+104|0}e=0;if(fb(H[(fa[H[H[a>>2]+40>>2]](a)|0)+48>>2])|H[j+56>>2]){break h}l:{if(!I[a+288|0]){e=1;break l}e=H[a+8>>2];f=H[e+12>>2]-H[e+8>>2]|0;e=(f|0)<5;if((f|0)>4){break h}}$f(d+16|0,a,c);break g}e=e+N(h,136)|0;c=H[e+56>>2];f=H[e+60>>2];H[d+16>>2]=-1;Cb(e+116|0,f-c>>2,d+16|0);c=ra(80);f=H[a+8>>2];H[c+12>>2]=0;H[c+16>>2]=0;H[c>>2]=12896;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;j=e+104|0;H[c+72>>2]=j;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]=11788;H[d+56>>2]=0;H[d+60>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;i=d+40|0;H[i>>2]=0;H[i+4>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+72>>2]=0;H[d+64>>2]=0;H[d+68>>2]=0;H[d+16>>2]=11788;k=e+4|0;H[d+20>>2]=k;e=H[e+68>>2];l=H[e>>2];e=H[e+4>>2];F[d+79|0]=0;Sa(i,(e-l>>2>>>0)/3|0,d+79|0);e=H[d+20>>2];i=H[e+56>>2];e=H[e+52>>2];F[d+79|0]=0;Sa(d+52|0,i-e>>2,d+79|0);H[d+36>>2]=c;H[d+32>>2]=f;H[d+28>>2]=j;H[d+24>>2]=k;H[c+76>>2]=a+72;vc(c+8|0,d+16|0);Vb(g,H[d+64>>2],H[d+68>>2]);H[d+16>>2]=11788;e=H[d+64>>2];if(e){H[d+68>>2]=e;qa(e)}H[d+16>>2]=12040;e=H[d+52>>2];if(e){qa(e)}e=H[d+40>>2];if(e){qa(e)}e=0;break f}_f(d+16|0,a,c)}c=H[d+16>>2];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]=e;e=ra(76);H[d+8>>2]=c;j=Jc(e,d+8|0,b);b=H[d+8>>2];H[d+8>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}b=H[a+188>>2];m:{if((b|0)!=H[a+192>>2]){H[b>>2]=h;H[a+188>>2]=b+4;break m}c=H[a+184>>2];e=b-c|0;g=e>>2;f=g+1|0;if(f>>>0>=1073741824){break b}i=e>>1;f=g>>>0<536870911?f>>>0>i>>>0?f:i:1073741823;b=0;n:{if(!f){break n}if(f>>>0>=1073741824){break a}b=ra(f<<2)}g=b+(g<<2)|0;H[g>>2]=h;if((e|0)>=1){sa(b,c,e)}H[a+192>>2]=b+(f<<2);H[a+188>>2]=g+4;H[a+184>>2]=b;if(!c){break m}qa(c)}a=fa[H[H[a>>2]+40>>2]](a)|0;H[d>>2]=j;b=H[a+12>>2];o:{if(b>>>0>2]){H[d>>2]=0;H[b>>2]=j;H[a+12>>2]=b+4;break o}bc(a+8|0,d)}a=H[d>>2];H[d>>2]=0;c=1;if(!a){break c}fa[H[H[a>>2]+4>>2]](a)}da=d+80|0;return c|0}ua();X()}wa(11712);X()}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;d=da-80|0;da=d;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)<1){break d}ag(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];j=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;e=H[a+172>>2];c=H[a+176>>2]-e|0;e:{if(!c){break e}c=(c|0)/136|0;g=c>>>0>1?c:1;c=0;while(1){if(H[e+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[j+56>>2];if(!I[(e+N(h,136)|0)+28|0]|(f|0)!=1?!(!c|!f):0){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[d+16>>2]=-1;i=e;e=N(h,136);g=i+e|0;Cb(g+116|0,f-c>>2,d+16|0);F[(e+H[a+172>>2]|0)+100|0]=0;c=g+104|0}e=0;if(fb(H[(fa[H[H[a>>2]+40>>2]](a)|0)+48>>2])|H[j+56>>2]){break h}l:{if(!I[a+352|0]){e=1;break l}e=H[a+8>>2];f=H[e+12>>2]-H[e+8>>2]|0;e=(f|0)<5;if((f|0)>4){break h}}$f(d+16|0,a,c);break g}e=e+N(h,136)|0;c=H[e+56>>2];f=H[e+60>>2];H[d+16>>2]=-1;Cb(e+116|0,f-c>>2,d+16|0);c=ra(80);f=H[a+8>>2];H[c+12>>2]=0;H[c+16>>2]=0;H[c>>2]=12896;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;j=e+104|0;H[c+72>>2]=j;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]=11788;H[d+56>>2]=0;H[d+60>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;i=d+40|0;H[i>>2]=0;H[i+4>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+72>>2]=0;H[d+64>>2]=0;H[d+68>>2]=0;H[d+16>>2]=11788;k=e+4|0;H[d+20>>2]=k;e=H[e+68>>2];l=H[e>>2];e=H[e+4>>2];F[d+79|0]=0;Sa(i,(e-l>>2>>>0)/3|0,d+79|0);e=H[d+20>>2];i=H[e+56>>2];e=H[e+52>>2];F[d+79|0]=0;Sa(d+52|0,i-e>>2,d+79|0);H[d+36>>2]=c;H[d+32>>2]=f;H[d+28>>2]=j;H[d+24>>2]=k;H[c+76>>2]=a+72;vc(c+8|0,d+16|0);Vb(g,H[d+64>>2],H[d+68>>2]);H[d+16>>2]=11788;e=H[d+64>>2];if(e){H[d+68>>2]=e;qa(e)}H[d+16>>2]=12040;e=H[d+52>>2];if(e){qa(e)}e=H[d+40>>2];if(e){qa(e)}e=0;break f}_f(d+16|0,a,c)}c=H[d+16>>2];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]=e;e=ra(76);H[d+8>>2]=c;j=Jc(e,d+8|0,b);b=H[d+8>>2];H[d+8>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}b=H[a+188>>2];m:{if((b|0)!=H[a+192>>2]){H[b>>2]=h;H[a+188>>2]=b+4;break m}c=H[a+184>>2];e=b-c|0;g=e>>2;f=g+1|0;if(f>>>0>=1073741824){break b}i=e>>1;f=g>>>0<536870911?f>>>0>i>>>0?f:i:1073741823;b=0;n:{if(!f){break n}if(f>>>0>=1073741824){break a}b=ra(f<<2)}g=b+(g<<2)|0;H[g>>2]=h;if((e|0)>=1){sa(b,c,e)}H[a+192>>2]=b+(f<<2);H[a+188>>2]=g+4;H[a+184>>2]=b;if(!c){break m}qa(c)}a=fa[H[H[a>>2]+40>>2]](a)|0;H[d>>2]=j;b=H[a+12>>2];o:{if(b>>>0>2]){H[d>>2]=0;H[b>>2]=j;H[a+12>>2]=b+4;break o}bc(a+8|0,d)}a=H[d>>2];H[d>>2]=0;c=1;if(!a){break c}fa[H[H[a>>2]+4>>2]](a)}da=d+80|0;return c|0}ua();X()}wa(11712);X()}function Gf(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}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}f=ra(4);H[f>>2]=b;e=f+4|0;H[a+56>>2]=e;H[a+52>>2]=e;H[a+48>>2]=f;if(!c){break a}qa(c)}e=H[H[a+4>>2]+28>>2];c=b+1|0;f=(c>>>0)%3|0?c:b-2|0;c=H[e+(f<<2)>>2];if((c|0)==-1){return 0}h=(b-N(d,3)|0?-1:2)+b|0;d=H[e+(h<<2)>>2];if((d|0)==-1){return 0}b=H[a+36>>2];e=b+(c>>>3&536870908)|0;g=H[e>>2];i=1<>2]=g|i;rb(a+8|0,c,f);b=H[a+36>>2]}b=(d>>>3&536870908)+b|0;c=H[b>>2];f=1<>2]=c|f;rb(a+8|0,d,h)}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}f=H[a+24>>2]+(d>>>3&268435452)|0;e=H[f>>2];d=1<>2]=d|e;f=H[a+4>>2];c=H[H[f+28>>2]+(b<<2)>>2];if((c|0)==-1){return 0}while(1){d=b;d:{e=H[a+36>>2]+(c>>>3&536870908)|0;h=H[e>>2];g=1<>2]+(c<<2)>>2];if((b|0)!=-1){f:{i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|H[H[f>>2]+(b>>>3&536870908)>>2]>>>b&1){break f}b=H[H[H[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}H[e>>2]=h|g;rb(k,c,d);c=b+1|0;if((((c>>>0)%3|0?c:b-2|0)|0)==-1){break e}b=-1;f=H[a+4>>2];g:{if((d|0)==-1){break g}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1|H[H[f>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=H[H[H[f+64>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];i=c>>>5|0;e=H[d+(i<<2)>>2];break d}}H[e>>2]=h|g;rb(k,c,d)}h:{i:{if((d|0)==-1){break i}f=H[a+4>>2];b=-1;e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;c=-1;j:{if((e|0)==-1){break j}c=-1;if(H[H[f>>2]+(e>>>3&536870908)>>2]>>>e&1){break j}c=H[H[H[f+64>>2]+12>>2]+(e<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if(!((d|0)==-1|H[H[f>>2]+(d>>>3&536870908)>>2]>>>d&1)){b=H[H[H[f+64>>2]+12>>2]+(d<<2)>>2]}j=(b|0)==-1;h=j?-1:(b>>>0)/3|0;e=(c>>>0)/3|0;g=(c|0)==-1;if(!g){d=H[a+24>>2];g=g?-1:e;i=g>>>5|0;e=H[d+(i<<2)>>2];g=1<>2];i=h>>>5|0;e=H[d+(i<<2)>>2];if(!(g&e)){break d}}c=H[a+52>>2]-4|0;H[a+52>>2]=c;break b}if(j){b=c;break d}if(H[(h>>>3&536870908)+d>>2]>>>h&1){b=c;break d}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 c}k:{b=d;d=H[a+48>>2];f=b-d|0;h=f>>2;e=h+1|0;if(e>>>0<1073741824){g=f>>1;e=h>>>0<536870911?e>>>0>g>>>0?e:g:1073741823;b=0;l:{if(!e){break l}if(e>>>0>=1073741824){break k}b=ra(e<<2)}h=b+(h<<2)|0;H[h>>2]=c;c=h+4|0;if((f|0)>=1){sa(b,d,f)}H[a+56>>2]=b+(e<<2);H[a+52>>2]=c;H[a+48>>2]=b;if(!d){break b}qa(d);c=H[a+52>>2];break b}ua();X()}wa(11712);X()}H[(i<<2)+d>>2]=e|g;c=H[H[f+28>>2]+(b<<2)>>2];if((c|0)!=-1){continue}break}return 0}H[a+52>>2]=c}if(H[a+48>>2]!=(c|0)){continue}break}}return 1}function $b(a,b){var c=0,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[a+124>>2]=H[a+124>>2]+1;g=-1;d=H[a+120>>2];c=-1;a:{if((d|0)==-1){break a}c=d+1|0;g=(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];h=e+(g<<2)|0;i=f+(H[h>>2]<<2)|0;j=H[i>>2];b:{c:{switch(b|0){case 0:case 1:H[i>>2]=j-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){h=a- -64|0;d=1;break d}h=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[h>>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((g|0)==-1){e=1;break f}e=1;c=H[H[H[a+88>>2]+12>>2]+(g<<2)>>2];if((c|0)==-1){break f}f=H[a+108>>2]-f>>2;while(1){d=H[h>>2];g=(c>>>0)/3|0;if(fa[H[H[d>>2]+36>>2]](d,g)|0){break f}d=c+1|0;H[H[a+92>>2]+(((d>>>0)%3|0?d:c-2|0)<<2)>>2]=f;c=(c-N(g,3)|0?-1:2)+c|0;if((c|0)==-1){e=e+1|0;break f}e=e+1|0;c=H[H[H[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}break}}H[k+12>>2]=e;g:{c=H[a+108>>2];g=H[a+112>>2];if(c>>>0>>0){H[c>>2]=H[k+12>>2];H[a+108>>2]=c+4;break g}h:{e=H[a+104>>2];d=c-e|0;h=d>>2;f=h+1|0;if(f>>>0<1073741824){g=g-e|0;i=g>>1;f=g>>2>>>0<536870911?f>>>0>i>>>0?f:i:1073741823;c=0;i:{if(!f){break i}if(f>>>0>=1073741824){break h}c=ra(f<<2)}g=c+(h<<2)|0;H[g>>2]=H[k+12>>2];if((d|0)>=1){sa(c,e,d)}H[a+112>>2]=c+(f<<2);H[a+108>>2]=g+4;H[a+104>>2]=c;if(e){qa(e)}break g}ua();X()}wa(11712);X()}break b;case 5:d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;d=(H[h>>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;break b;case 3:d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;d=(H[h>>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 7:break c;default:break b}}d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;d=(H[h>>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}j:{k:{f=H[a+116>>2];l:{if((f|0)==-1){break l}e=H[a+136>>2];d=H[a+128>>2];c=d;if((c|0)<=(j|0)){c=H[a+132>>2];c=(c|0)<(j|0)?c:j}e=N(c-d|0,12)+e|0;g=e;j=H[(f<<2)+12096>>2];c=H[e+4>>2];i=H[e+8>>2];if(c>>>0>>0){H[c>>2]=j;H[g+4>>2]=c+4;break l}f=H[e>>2];h=c-f|0;c=h>>2;d=c+1|0;if(d>>>0>=1073741824){break k}l=c<<2;i=i-f|0;c=i>>1;d=i>>2>>>0<536870911?c>>>0>>0?d:c:1073741823;c=0;m:{if(!d){break m}if(d>>>0>=1073741824){break j}c=ra(d<<2)}i=l+c|0;H[i>>2]=j;if((h|0)>=1){sa(c,f,h)}H[e>>2]=c;H[g+4>>2]=i+4;H[e+8>>2]=c+(d<<2);if(!f){break l}qa(f)}H[a+116>>2]=b;da=k+16|0;return}ua();X()}wa(11712);X()}function pc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=H[b+4>>2];a:{if(!d){c=H[b+8>>2];if(H[c>>2]==(b|0)){break a}d=b+8|0;while(1){e=H[d>>2];d=e+8|0;c=H[e+8>>2];if((e|0)!=H[c>>2]){continue}break}break a}while(1){c=d;d=H[c>>2];if(d){continue}break}}if(H[a>>2]==(b|0)){H[a>>2]=c}H[a+8>>2]=H[a+8>>2]-1;d=H[a+4>>2];f=b;b:{c:{c=b;b=H[b>>2];if(b){a=H[f+4>>2];if(!a){break c}while(1){c=a;a=H[a>>2];if(a){continue}break}}b=H[c+4>>2];if(b){break c}b=0;e=1;break b}H[b+8>>2]=H[c+8>>2];e=0}g=H[c+8>>2];a=H[g>>2];d:{if((c|0)==(a|0)){H[g>>2]=b;if((c|0)==(d|0)){a=0;d=b;break d}a=H[g+4>>2];break d}H[g+4>>2]=b}h=!I[c+12|0];if((c|0)!=(f|0)){g=H[f+8>>2];H[c+8>>2]=g;H[g+(((f|0)!=H[H[f+8>>2]>>2])<<2)>>2]=c;g=H[f>>2];H[c>>2]=g;H[g+8>>2]=c;g=H[f+4>>2];H[c+4>>2]=g;if(g){H[g+8>>2]=c}F[c+12|0]=I[f+12|0];d=(d|0)==(f|0)?c: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)){g:{h:{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]}c=H[a>>2];i:{if(!(I[c+12|0]?0:c)){b=H[a+4>>2];if(I[b+12|0]?0:b){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}b=H[a+4>>2];if(!b){break h}}if(I[b+12|0]){break h}c=a;break g}F[c+12|0]=1;F[a+12|0]=0;b=H[c+4>>2];H[a>>2]=b;if(b){H[b+8>>2]=a}H[c+8>>2]=H[a+8>>2];b=H[a+8>>2];H[((H[b>>2]!=(a|0))<<2)+b>>2]=c;H[c+4>>2]=a;H[a+8>>2]=c;b=a}a=c;c=H[c+8>>2];F[a+12|0]=I[c+12|0];F[c+12|0]=1;F[b+12|0]=1;b=H[c+4>>2];a=H[b>>2];H[c+4>>2]=a;if(a){H[a+8>>2]=c}H[b+8>>2]=H[c+8>>2];a=H[c+8>>2];H[(((c|0)!=H[a>>2])<<2)+a>>2]=b;H[b>>2]=c;H[c+8>>2]=b;break e}k:{if(b){b=a;break k}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];c=H[e+8>>2];l:{if((e|0)==H[c>>2]){H[c>>2]=a;b=H[e>>2];break l}H[c+4>>2]=a}H[a+4>>2]=e;H[e+8>>2]=a;d=(d|0)==(e|0)?a:d}c=H[b>>2];m:{if(!(!c|I[c+12|0])){a=b;break m}a=H[b+4>>2];if(!(I[a+12|0]?0:a)){F[b+12|0]=0;a=H[b+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]){a=b;break m}a=H[b+4>>2]}F[a+12|0]=1;F[b+12|0]=0;c=H[a>>2];H[b+4>>2]=c;if(c){H[c+8>>2]=b}H[a+8>>2]=H[b+8>>2];c=H[b+8>>2];H[((H[c>>2]!=(b|0))<<2)+c>>2]=a;H[a>>2]=b;H[b+8>>2]=a;c=b}d=H[a+8>>2];F[a+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[b+12|0]=1}a=H[f+28>>2];if(a){H[f+32>>2]=a;qa(a)}if(F[f+27|0]<=-1){qa(H[f+16>>2])}qa(f)}function hg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=a+4|0;if((e|0)!=(b|0)){Wb(e,H[b>>2],b+4|0);c=H[b+12>>2];k=b+16|0;e=0;g=a+16|0;a:{if(!H[g+8>>2]){break a}f=H[g>>2];j=g+4|0;H[g>>2]=j;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){tb(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)==(k|0)){f=h;break c}i=c;while(1){f=e;H[h+16>>2]=H[i+16>>2];if((h|0)!=(i|0)){Wb(h+20|0,H[i+20>>2],i+24|0)}d:{c=H[j>>2];if(!c){c=j;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]}yb(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)!=(k|0)){continue}break}}tb(g,f);if(!e){break a}while(1){d=H[e+8>>2];if(d){e=d;continue}break}tb(g,e)}if((c|0)!=(k|0)){while(1){i=ra(32);f=c;c=c+16|0;e=H[c>>2];l=i+24|0;H[l>>2]=0;H[l+4>>2]=0;H[i+16>>2]=e;j=i+20|0;H[j>>2]=l;e=H[c+4>>2];h=c+8|0;if((e|0)!=(h|0)){while(1){d=e;c=d+16|0;ng(j,l,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)!=(h|0)){continue}break}}c=H[g+4>>2];i:{j:{if(c){d=H[i+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[i+8>>2]=c;H[i>>2]=0;H[i+4>>2]=0;H[e>>2]=i;d=H[H[g>>2]>>2];c=i;l:{if(!d){break l}H[g>>2]=d;c=H[e>>2]}yb(H[g+4>>2],c);H[g+8>>2]=H[g+8>>2]+1;d=H[f+4>>2];m:{if(!d){c=H[f+8>>2];if((f|0)==H[c>>2]){break m}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 m}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(k|0)){continue}break}}Wb(a+28|0,H[b+24>>2],b+28|0)}}function Rf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=H[a+8>>2];e=H[a+4>>2];if((d-e|0)/136>>>0>=b>>>0){d=a;if(b){a=N(b,136)+e|0;while(1){H[e>>2]=-1;Ve(e+4|0);H[e+104>>2]=0;H[e+108>>2]=0;F[e+100|0]=1;H[e+112>>2]=0;H[e+116>>2]=0;H[e+120>>2]=0;H[e+124>>2]=0;H[e+128>>2]=0;e=e+136|0;if((a|0)!=(e|0)){continue}break}e=a}H[d+4>>2]=e;return}a:{b:{c:{c=H[a>>2];g=(e-c|0)/136|0;e=g+b|0;if(e>>>0<31580642){d=(d-c|0)/136|0;c=d<<1;c=d>>>0<15790320?c>>>0>>0?e:c:31580641;if(c){if(c>>>0>=31580642){break c}h=ra(N(c,136))}d=N(g,136)+h|0;g=d+N(b,136)|0;e=d;while(1){H[e>>2]=-1;Ve(e+4|0);H[e+104>>2]=0;H[e+108>>2]=0;F[e+100|0]=1;H[e+112>>2]=0;H[e+116>>2]=0;H[e+120>>2]=0;H[e+124>>2]=0;H[e+128>>2]=0;e=e+136|0;if((g|0)!=(e|0)){continue}break}h=N(c,136)+h|0;b=H[a>>2];e=H[a+4>>2];if((b|0)==(e|0)){break b}while(1){d=d-136|0;e=e-136|0;c=e;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;f=I[c+28|0];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;F[d+28|0]=f;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;f=d- -64|0;H[f>>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];i=f;f=c- -64|0;H[i>>2]=H[f>>2];H[f>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[d+68>>2]=H[c+68>>2];f=H[c+72>>2];H[d+84>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+72>>2]=f;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;f=I[c+100|0];H[d+112>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;F[d+100|0]=f;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]=h;e=H[a+4>>2];H[a+4>>2]=g;b=H[a>>2];H[a>>2]=d;if((b|0)==(e|0)){break a}while(1){a=H[e-20>>2];if(a){H[e-16>>2]=a;qa(a)}a=H[e-32>>2];if(a){H[e-28>>2]=a;qa(a)}ac(e-132|0);e=e-136|0;if((e|0)!=(b|0)){continue}break}break a}ua();X()}wa(11712);X()}H[a+8>>2]=h;H[a+4>>2]=g;H[a>>2]=d}if(b){qa(b)}}function Wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!H[a+8>>2]){break a}d=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[d+4>>2];d=f?f:d;if(!d){Oa(a,d);break a}g=H[d+8>>2];b:{if(!g){break b}f=H[g>>2];if((f|0)==(d|0)){H[g>>2]=0;f=H[g+4>>2];if(!f){e=g;break b}while(1){e=f;f=H[e>>2];if(f){continue}f=H[e+4>>2];if(f){continue}break}break b}H[g+4>>2]=0;if(!f){e=g;break b}while(1){e=f;f=H[e>>2];if(f){continue}f=H[e+4>>2];if(f){continue}break}}c:{if((b|0)==(c|0)){g=d;break c}f=b;while(1){g=e;Rc(d+16|0,f+16|0);Rc(d+28|0,f+28|0);b=H[a+4>>2];d:{e:{if(b){h=I[d+27|0];e=h<<24>>24<0;h=e?H[d+20>>2]:h;k=e?H[d+16>>2]:d+16|0;while(1){i=I[b+27|0];e=i<<24>>24<0;f:{g:{h:{i:{i=e?H[b+20>>2]:i;j=h>>>0>i>>>0?i:h;if(j){l=b+16|0;e=Ca(k,e?H[l>>2]:l,j);if(e){break i}}if(h>>>0>>0){break h}break g}if((e|0)>-1){break g}}e=H[b>>2];if(!e){break e}break f}e=H[b+4>>2];if(e){break f}e=b+4|0;break d}b=e;continue}}b=a+4|0}e=b}H[d+8>>2]=b;H[d>>2]=0;H[d+4>>2]=0;H[e>>2]=d;b=H[H[a>>2]>>2];if(b){H[a>>2]=b;d=H[e>>2]}yb(H[a+4>>2],d);H[a+8>>2]=H[a+8>>2]+1;e=0;j:{if(!g){break j}d=H[g+8>>2];if(!d){break j}b=H[d>>2];if((g|0)==(b|0)){H[d>>2]=0;b=H[d+4>>2];if(!b){e=d;break j}while(1){e=b;b=H[b>>2];if(b){continue}b=H[e+4>>2];if(b){continue}break}break j}H[d+4>>2]=0;if(!b){e=d;break j}while(1){e=b;b=H[b>>2];if(b){continue}b=H[e+4>>2];if(b){continue}break}}d=H[f+4>>2];k:{if(!d){b=H[f+8>>2];if(H[b>>2]==(f|0)){break k}f=f+8|0;while(1){d=H[f>>2];f=d+8|0;b=H[d+8>>2];if((d|0)!=H[b>>2]){continue}break}break k}while(1){b=d;d=H[b>>2];if(d){continue}break}}if(!g){break c}d=g;f=b;if((b|0)!=(c|0)){continue}break}}Oa(a,g);if(!e){break a}while(1){d=H[e+8>>2];if(d){e=d;continue}break}Oa(a,e)}if((b|0)!=(c|0)){while(1){f=b;d=ra(40);b=b+16|0;e=Ja(d+16|0,b);Ja(d+28|0,b+12|0);b=H[a+4>>2];l:{m:{if(b){g=I[e+11|0];h=g<<24>>24<0;g=h?H[d+20>>2]:g;i=h?H[e>>2]:e;while(1){h=I[b+27|0];e=h<<24>>24<0;n:{o:{p:{q:{h=e?H[b+20>>2]:h;k=g>>>0>h>>>0?h:g;if(k){j=b+16|0;e=Ca(i,e?H[j>>2]:j,k);if(e){break q}}if(g>>>0>>0){break p}break o}if((e|0)>-1){break o}}e=H[b>>2];if(!e){break m}break n}e=H[b+4>>2];if(e){break n}e=b+4|0;break l}b=e;continue}}b=a+4|0}e=b}H[d+8>>2]=b;H[d>>2]=0;H[d+4>>2]=0;H[e>>2]=d;b=H[H[a>>2]>>2];if(b){H[a>>2]=b;d=H[e>>2]}yb(H[a+4>>2],d);H[a+8>>2]=H[a+8>>2]+1;d=H[f+4>>2];r:{if(!d){b=H[f+8>>2];if((f|0)==H[b>>2]){break r}e=f+8|0;while(1){d=H[e>>2];e=d+8|0;b=H[d+8>>2];if((d|0)!=H[b>>2]){continue}break}break r}while(1){b=d;d=H[b>>2];if(d){continue}break}}if((b|0)!=(c|0)){continue}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){Ed(e,d,c);a=d+4|0;continue c}Ed(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}} +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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){zd(e,d,c);a=d+4|0;continue c}zd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){yd(e,d,c);a=d+4|0;continue c}yd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){xd(e,d,c);a=d+4|0;continue c}xd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){wd(e,d,c);a=d+4|0;continue c}wd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){vd(e,d,c);a=d+4|0;continue c}vd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){ud(e,d,c);a=d+4|0;continue c}ud(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){td(e,d,c);a=d+4|0;continue c}td(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){sd(e,d,c);a=d+4|0;continue c}sd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){rd(e,d,c);a=d+4|0;continue c}rd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){qd(e,d,c);a=d+4|0;continue c}qd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){pd(e,d,c);a=d+4|0;continue c}pd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){od(e,d,c);a=d+4|0;continue c}od(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){Fd(e,d,c);a=d+4|0;continue c}Fd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){Dd(e,d,c);a=d+4|0;continue c}Dd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){Cd(e,d,c);a=d+4|0;continue c}Cd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){Bd(e,d,c);a=d+4|0;continue c}Bd(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();X()}}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:{b:while(1){k=b-4|0;c:while(1){e=a;d:while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{a=b-e|0;d=a>>2;switch(d|0){case 0:case 1:break a;case 5:break k;case 4:break l;case 2:break m;case 3:break h;default:break j}}c=H[c>>2];a=H[c>>2];c=H[c+4>>2]-a>>3;d=b-4|0;b=H[d>>2];if(c>>>0<=b>>>0){break i}k=c;c=H[e>>2];if(k>>>0<=c>>>0){break i}if(K[a+(b<<3)>>2]>=K[a+(c<<3)>>2]){break a}H[e>>2]=b;H[d>>2]=c;return}Ta(e,e+4|0,e+8|0,b-4|0,c);return}Fa(e,e+4|0,e+8|0,e+12|0,b-4|0,c);return}if((a|0)<=123){Wa(e,b,c);return}l=((d|0)/2<<2)+e|0;n:{if((a|0)>=3997){a=(d|0)/4<<2;a=Fa(e,a+e|0,l,a+l|0,k,c);break n}a=Da(e,l,k,c)}i=a;a=H[c>>2];j=H[a>>2];h=H[a+4>>2]-j>>3;a=H[e>>2];if(h>>>0<=a>>>0){break e}g=H[l>>2];if(g>>>0>=h>>>0){break e}f=k;d=H[(a<<3)+j>>2];m=H[(g<<3)+j>>2];if(d>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(e|0)){f=H[k>>2];if(f>>>0>=h>>>0){break e}a=e+4|0;if(d>>>0>2]){break f}if((a|0)==(k|0)){break a}while(1){i=H[a>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){H[a>>2]=f;H[k>>2]=i;a=a+4|0;break f}a=a+4|0;if((k|0)!=(a|0)){continue}break}break a}g=H[f>>2];if(g>>>0>=h>>>0){break e}if(m>>>0<=K[(g<<3)+j>>2]){continue}break}H[e>>2]=g;H[f>>2]=a;i=i+1|0}d=e+4|0;if(f>>>0<=d>>>0){break g}g=H[d>>2];if(g>>>0>=h>>>0){break e}while(1){a=H[l>>2];if(a>>>0>=h>>>0){break e}m=H[(a<<3)+j>>2];a=d;while(1){if(m>>>0>K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=h>>>0){break e}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(a>>>0>f>>>0){d=a;break g}H[a>>2]=d;H[f>>2]=g;l=(a|0)==(l|0)?f:l;d=a+4|0;i=i+1|0;g=H[a+4>>2];if(g>>>0>>0){continue}break}break e}xa();X()}Da(e,e+4|0,b-4|0,c);break a}o:{if((d|0)==(l|0)){break o}a=H[l>>2];if(a>>>0>=h>>>0){break e}f=H[d>>2];if(f>>>0>=h>>>0){break e}if(K[(a<<3)+j>>2]>=K[(f<<3)+j>>2]){break o}H[d>>2]=a;H[l>>2]=f;i=i+1|0}if(!i){f=Ia(e,d,c);a=d+4|0;if(Ia(a,b,c)){b=d;a=e;if(!f){continue b}break a}if(f){continue c}}if((d-e|0)<(b-d|0)){Ad(e,d,c);a=d+4|0;continue c}Ad(d+4|0,b,c);b=d;a=e;continue b}if((a|0)==(k|0)){break a}f=k;d=H[e>>2];if(h>>>0<=d>>>0){break e}while(1){g=H[a>>2];if(g>>>0>=h>>>0){break e}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(g<<3)+j>>2]){g=H[a+4>>2];a=a+4|0;if(h>>>0>g>>>0){continue}break e}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=h>>>0){break e}if(d>>>0>2]){continue}break}if(a>>>0>=f>>>0){e=a;continue d}H[a>>2]=i;H[f>>2]=g;a=a+4|0;d=H[e>>2];if(h>>>0>d>>>0){continue}break}}break}break}break}xa();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;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;h=H[a+80>>2];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;a:{if(h){if(h>>>0>=1073741824){break a}g=h<<2;j=ra(g);H[f+16>>2]=j;c=g+j|0;H[f+24>>2]=c;ta(j,0,g);H[f+20>>2]=c}b:{if(!h){break b}while(1){c=H[H[b>>2]>>2];h=o;k=H[b+48>>2]+el(H[b+40>>2],H[b+44>>2],h,0)|0;c=c+k|0;m=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[f+28>>2]=m;c:{d:{e:{if(!i){break e}g=H[f+32>>2];k=m^318;n=hl(i)>>>0>1;e=k&i-1;f:{if(!n){break f}c=k;e=c;if(c>>>0>>0){break f}e=(k>>>0)%(i>>>0)|0}c=e;g=H[g+(c<<2)>>2];if(!g){break e}e=H[g>>2];if(!e){break e}g=c;if(!n){n=i-1|0;while(1){c=H[e+4>>2];g:{if((c|0)!=(k|0)){if((c&n)==(g|0)){break g}break e}if((m|0)==H[e+8>>2]){break d}}e=H[e>>2];if(e){continue}break}break e}while(1){c=H[e+4>>2];h:{if((c|0)!=(k|0)){if(c>>>0>=i>>>0){c=(c>>>0)%(i>>>0)|0}if((c|0)==(g|0)){break h}break e}if((m|0)==H[e+8>>2]){break d}}e=H[e>>2];if(e){continue}break}}H[f+12>>2]=l;H[f+8>>2]=m;We(f+56|0,f+32|0,f+8|0,f+8|0);c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,l)|0,f+28|0,c);j=H[f+16>>2];H[j+(h<<2)>>2]=l;l=l+1|0;break c}H[(h<<2)+j>>2]=H[e+12>>2]}c=o+1|0;d=c>>>0<1?d+1|0:d;o=c;e=H[a+80>>2];if(!d&e>>>0>c>>>0){i=H[f+36>>2];continue}break}if((e|0)==(l|0)){break b}i:{if(!I[a+84|0]){h=H[a+68>>2];d=H[a+72>>2]-h|0;if(!d){break i}g=H[f+16>>2];b=d>>31;c=(b+d^b)>>>2|0;b=(d|0)>-1?d:-1;b=N(c,(b|0)<1?b:1);d=b>>>0>1?b:1;b=d&3;e=0;if(d-1>>>0>=3){j=d&-4;while(1){c=e<<2;d=c+h|0;H[d>>2]=H[g+(H[d>>2]<<2)>>2];d=h+(c|4)|0;H[d>>2]=H[g+(H[d>>2]<<2)>>2];d=h+(c|8)|0;H[d>>2]=H[g+(H[d>>2]<<2)>>2];d=h+(c|12)|0;H[d>>2]=H[g+(H[d>>2]<<2)>>2];e=e+4|0;j=j-4|0;if(j){continue}break}}if(!b){break i}while(1){d=h+(e<<2)|0;H[d>>2]=H[g+(H[d>>2]<<2)>>2];e=e+1|0;b=b-1|0;if(b){continue}break}break i}F[a+84|0]=0;b=H[a+68>>2];d=H[a+72>>2]-b>>2;j:{if(d>>>0>>0){Va(a+68|0,e-d|0,1420);e=H[a+80>>2];break j}if(d>>>0<=e>>>0){break j}H[a+72>>2]=b+(e<<2)}if(!e){break i}h=H[f+16>>2];b=e&3;g=H[a+68>>2];i=0;if(e-1>>>0>=3){j=e&-4;while(1){c=i<<2;H[c+g>>2]=H[c+h>>2];d=c|4;H[d+g>>2]=H[d+h>>2];d=c|8;H[d+g>>2]=H[d+h>>2];d=c|12;H[d+g>>2]=H[d+h>>2];i=i+4|0;j=j-4|0;if(j){continue}break}}if(!b){break i}while(1){d=i<<2;H[d+g>>2]=H[d+h>>2];i=i+1|0;b=b-1|0;if(b){continue}break}}H[a+80>>2]=l}a=H[f+16>>2];if(a){H[f+20>>2]=a;qa(a)}e=H[f+40>>2];if(e){while(1){a=H[e>>2];qa(e);e=a;if(e){continue}break}}a=H[f+32>>2];H[f+32>>2]=0;if(a){qa(a)}da=f- -64|0;return l}ua();X()}function Hf(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=H[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b-2|0;if((f|0)!=-1){c=H[H[e>>2]+(f<<2)>>2]}h=(b-N(d,3)|0?-1:2)+b|0;if((h|0)==-1){return 0}if((c|0)==-1){return 0}d=H[H[e>>2]+(h<<2)>>2];if((d|0)==-1){return 0}b=H[a+36>>2];e=b+(c>>>3&536870908)|0;g=H[e>>2];i=1<>2]=g|i;rb(a+8|0,c,f);b=H[a+36>>2]}b=(d>>>3&536870908)+b|0;c=H[b>>2];e=1<>2]=c|e;rb(a+8|0,d,h)}d=H[a+52>>2];if((d|0)==H[a+48>>2]){return 1}j=a+8|0;while(1){d=d-4|0;b=H[d>>2];c=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=H[a+24>>2]+(c>>>3&268435452)|0;f=H[e>>2];c=1<>2]=c|f;while(1){d=H[a+4>>2];c=H[H[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}d:{e=H[a+36>>2]+(c>>>3&536870908)|0;f=H[e>>2];h=1<>2]+(c<<2)>>2];if((g|0)!=-1){i=g+1|0;g=(i>>>0)%3|0?i:g-2|0;if((g|0)!=-1){d=H[H[d+12>>2]+(g<<2)>>2];if((d|0)!=-1){H[e>>2]=f|h;rb(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break e}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];i=c>>>5|0;f=H[e+(i<<2)>>2];break d}}}H[e>>2]=f|h;rb(j,c,b)}d=-1;e=H[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b-2|0;if((f|0)!=-1){c=H[H[e+12>>2]+(f<<2)>>2]}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)!=-1){d=H[H[e+12>>2]+(b<<2)>>2]}b=(d|0)==-1;h=b?-1:(d>>>0)/3|0;f=(c>>>0)/3|0;f:{g=(c|0)==-1;if(!g){e=H[a+24>>2];g=g?-1:f;i=g>>>5|0;f=H[e+(i<<2)>>2];g=1<>2];i=h>>>5|0;f=H[e+(i<<2)>>2];if(!(g&f)){break d}}d=H[a+52>>2]-4|0;H[a+52>>2]=d;break b}if(b){b=c;break d}if(H[(h>>>3&536870908)+e>>2]>>>h&1){b=c;break d}b=H[a+52>>2];H[b-4>>2]=d;if((b|0)!=H[a+56>>2]){H[b>>2]=c;d=b+4|0;break c}g:{e=H[a+48>>2];f=b-e|0;d=f>>2;h=d+1|0;if(h>>>0<1073741824){g=f>>1;h=d>>>0<536870911?h>>>0>g>>>0?h:g:1073741823;b=0;h:{if(!h){break h}if(h>>>0>=1073741824){break g}b=ra(h<<2)}d=b+(d<<2)|0;H[d>>2]=c;d=d+4|0;if((f|0)>=1){sa(b,e,f)}H[a+56>>2]=b+(h<<2);H[a+52>>2]=d;H[a+48>>2]=b;if(!e){break b}qa(e);d=H[a+52>>2];break b}ua();X()}wa(11712);X()}H[(i<<2)+e>>2]=f|g;if((b|0)!=-1){continue}break}return 0}H[a+52>>2]=d}if(H[a+48>>2]!=(d|0)){continue}break}}return 1}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,l=0;i=da-16|0;da=i;a:{g=H[a+4>>2];b:{c:{if(g){if(fa[H[H[a>>2]+52>>2]](a,b,H[H[g+4>>2]+80>>2])|0){break c}break b}if(!(fa[H[H[a>>2]+52>>2]](a,b,0)|0)){break b}}l=1;if(!I[a+28|0]){break b}e=H[a+32>>2];k=H[a+8>>2];c=H[k+80>>2];g=0;H[i+8>>2]=0;H[i>>2]=0;H[i+4>>2]=0;if(c){if(c>>>0>=1073741824){break a}c=c<<2;g=ra(c);H[i>>2]=g;f=c+g|0;H[i+8>>2]=f;ta(g,0,c);H[i+4>>2]=f}f=H[b>>2];b=H[b+4>>2]-f|0;d:{if(!b){break d}if(I[k+84|0]){c=b>>31;c=(c+b^c)>>>2|0;b=(b|0)>-1?b:-1;b=N(c,(b|0)<1?b:1);c=b>>>0>1?b:1;d=c&3;b=0;if(c-1>>>0>=3){c=c&-4;while(1){H[(H[f+(b<<2)>>2]<<2)+g>>2]=b;h=b|1;H[(H[f+(h<<2)>>2]<<2)+g>>2]=h;h=b|2;H[(H[f+(h<<2)>>2]<<2)+g>>2]=h;h=b|3;H[(H[f+(h<<2)>>2]<<2)+g>>2]=h;b=b+4|0;c=c-4|0;if(c){continue}break}}if(!d){break d}while(1){H[(H[f+(b<<2)>>2]<<2)+g>>2]=b;b=b+1|0;d=d-1|0;if(d){continue}break}break d}c=b>>31;c=(c+b^c)>>>2|0;b=(b|0)>-1?b:-1;b=N(c,(b|0)<1?b:1);h=b>>>0>1?b:1;c=h&3;d=H[k+68>>2];b=0;if(h-1>>>0>=3){h=h&-4;while(1){H[(H[d+(H[f+(b<<2)>>2]<<2)>>2]<<2)+g>>2]=b;j=b|1;H[(H[d+(H[f+(j<<2)>>2]<<2)>>2]<<2)+g>>2]=j;j=b|2;H[(H[d+(H[f+(j<<2)>>2]<<2)>>2]<<2)+g>>2]=j;j=b|3;H[(H[d+(H[f+(j<<2)>>2]<<2)>>2]<<2)+g>>2]=j;b=b+4|0;h=h-4|0;if(h){continue}break}}if(!c){break d}while(1){H[(H[d+(H[f+(b<<2)>>2]<<2)>>2]<<2)+g>>2]=b;b=b+1|0;c=c-1|0;if(c){continue}break}}e:{if(!I[e+84|0]){break e}b=H[H[H[a+4>>2]+4>>2]+80>>2];F[e+84|0]=0;f=H[e+68>>2];c=H[e+72>>2]-f>>2;if(c>>>0>>0){Va(e+68|0,b-c|0,2396);break e}if(b>>>0>=c>>>0){break e}H[e+72>>2]=f+(b<<2)}d=H[H[H[a+4>>2]+4>>2]+80>>2];f:{if(!d){break f}f=H[e+68>>2];if(I[k+84|0]){a=d&3;b=0;if(d-1>>>0>=3){c=d&-4;while(1){e=b<<2;H[e+f>>2]=H[g+e>>2];d=e|4;H[d+f>>2]=H[g+d>>2];d=e|8;H[d+f>>2]=H[g+d>>2];e=e|12;H[e+f>>2]=H[g+e>>2];b=b+4|0;c=c-4|0;if(c){continue}break}}if(!a){break f}while(1){c=b<<2;H[c+f>>2]=H[c+g>>2];b=b+1|0;a=a-1|0;if(a){continue}break}break f}c=d&3;a=H[k+68>>2];b=0;if(d-1>>>0>=3){h=d&-4;while(1){e=b<<2;H[e+f>>2]=H[(H[a+e>>2]<<2)+g>>2];d=e|4;H[d+f>>2]=H[(H[a+d>>2]<<2)+g>>2];d=e|8;H[d+f>>2]=H[(H[a+d>>2]<<2)+g>>2];e=e|12;H[e+f>>2]=H[(H[a+e>>2]<<2)+g>>2];b=b+4|0;h=h-4|0;if(h){continue}break}}if(!c){break f}while(1){e=b<<2;H[e+f>>2]=H[(H[a+e>>2]<<2)+g>>2];b=b+1|0;c=c-1|0;if(c){continue}break}}a=H[i>>2];if(!a){break b}qa(a)}da=i+16|0;return l|0}ua();X()}function sj(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}n=(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;g=e+1|0;if(g>>>0>=1073741824){break e}k=f>>1;g=e>>>0<536870911?g>>>0>k>>>0?g:k:1073741823;b=0;g:{if(!g){break g}if(g>>>0>=1073741824){break d}b=ra(g<<2)}e=b+(e<<2)|0;H[e>>2]=j;e=e+4|0;if((f|0)>=1){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(11120);X()}j=H[h>>2];p=H[i+24>>2];b=H[i+28>>2]-p|0;if(b){c=b>>31;c=(c+b^c)>>>2|0;b=(b|0)>-1?b:-1;b=N(c,(b|0)<1?b:1);q=b>>>0>1?b:1;k=e-j|0;b=(k|0)>-1?k:-1;c=(b|0)<1?b:1;b=k>>31;b=N(c,(b+k^b)>>>2|0);r=b>>>0>1?b:1;while(1){f=H[(o<<2)+p>>2];if((f|0)!=-1){h:{if((f|0)<=-1){c=(f>>>0)%3|0;b=-1;break h}b=(f>>>0)/3|0;c=f-N(b,3)|0;b=H[(H[l+96>>2]+N(b,12)|0)+(c<<2)>>2]}m=0;c=f+(c?-1:2)|0;i:{if((c|0)==-1){break i}c=H[H[i+12>>2]+(c<<2)>>2];if((c|0)==-1){break i}e=f;d=c+((c>>>0)%3|0?-1:2)|0;if((d|0)==-1){break i}while(1){c=(d|0)<0?-1:H[(H[l+96>>2]+N((d>>>0)/3|0,12)|0)+((d>>>0)%3<<2)>>2];j:{if((b|0)==(c|0)){c=0;if(!k){c=b;break j}k:{while(1){g=H[H[(c<<2)+j>>2]+28>>2];if(H[g+(d<<2)>>2]!=H[g+(e<<2)>>2]){break k}c=c+1|0;if((r|0)!=(c|0)){continue}break}c=b;break j}c=b}m=m+1|0}if((d|0)==(f|0)|(d|0)==-1){break i}b=((d>>>0)%3|0?-1:2)+d|0;if((b|0)==-1){break i}g=H[H[i+12>>2]+(b<<2)>>2];if((g|0)==-1){break i}b=c;e=d;c=g+((g>>>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;l:{if((b|0)==-1){break l}b=H[H[i+12>>2]+(b<<2)>>2];if((b|0)==-1){break l}c=b+1|0;c=(((c>>>0)%3|0?c:b-2|0)|0)==-1}n=(n+m|0)-((c^1)&(m|0)!=0)|0}o=o+1|0;if((q|0)!=(o|0)){continue}break}}if(!j){break b}qa(j)}H[a+52>>2]=n}da=h+16|0}function Ze(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[16395]|I[16396]<<8|(I[16397]<<16|I[16398]<<24);d=I[16391]|I[16392]<<8|(I[16393]<<16|I[16394]<<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[16389]|I[16390]<<8|(I[16391]<<16|I[16392]<<24);d=I[16385]|I[16386]<<8|(I[16387]<<16|I[16388]<<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[16381]|I[16382]<<8|(I[16383]<<16|I[16384]<<24);d=I[16377]|I[16378]<<8|(I[16379]<<16|I[16380]<<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[16373]|I[16374]<<8|(I[16375]<<16|I[16376]<<24);d=I[16369]|I[16370]<<8|(I[16371]<<16|I[16372]<<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;_a(e,f,b);if(F[f+11|0]<=-1){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[16425]|I[16426]<<8|(I[16427]<<16|I[16428]<<24);d=I[16421]|I[16422]<<8|(I[16423]<<16|I[16424]<<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[16420]|I[16421]<<8|(I[16422]<<16|I[16423]<<24);d=I[16416]|I[16417]<<8|(I[16418]<<16|I[16419]<<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[16412]|I[16413]<<8|(I[16414]<<16|I[16415]<<24);d=I[16408]|I[16409]<<8|(I[16410]<<16|I[16411]<<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[16404]|I[16405]<<8|(I[16406]<<16|I[16407]<<24);d=I[16400]|I[16401]<<8|(I[16402]<<16|I[16403]<<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;_a(e,f,b);if(F[f+11|0]<=-1){qa(H[f>>2])}da=f+16|0}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;j=da-128|0;da=j;a:{b:{c:{if(!Mb(f,g,h,i,0,0,0,0)){break c}o=h;m=i&65535;n=i>>>16&32767;d:{e:{if((n|0)!=32767){l=4;if(n){break e}l=f|o|(g|m)?3:2;break d}l=!(f|o|(g|m))}}r=e>>>16|0;p=r&32767;if((p|0)==32767){break c}if(l){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];we(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}l=p<<16;n=d;q=l|e&65535;m=q;q=i>>>16&32767;k=i&65535|q<<16;if((Mb(b,c,n,m,f,g,h,k)|0)<=0){if(Mb(b,c,n,m,f,g,o,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(p){i=c;h=b}else{Ka(j+96|0,b,c,n,m,0,0,0,1081540608);h=H[j+108>>2];m=h;n=H[j+104>>2];p=(h>>>16|0)-120|0;i=H[j+100>>2];h=H[j+96>>2]}if(!q){Ka(j+80|0,f,g,o,k,0,0,0,1081540608);f=H[j+92>>2];k=f;o=H[j+88>>2];q=(k>>>16|0)-120|0;g=H[j+84>>2];f=H[j+80>>2]}s=k&65535|65536;m=m&65535|65536;if((p|0)>(q|0)){while(1){k=n;l=o;t=k-l|0;l=m-((k>>>0>>0)+s|0)|0;k=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;l=l-(k>>>0>t>>>0)|0;k=t-k|0;f:{if((l|0)>0?1:(l|0)>=0){m=h;h=h-f|0;i=i-((f>>>0>m>>>0)+g|0)|0;if(!(h|k|(i|l))){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}l=l<<1|k>>>31;n=k<<1|i>>>31;break f}l=m<<1|n>>>31;n=n<<1|i>>>31}m=l;l=i<<1|h>>>31;h=h<<1;i=l;p=p-1|0;if((q|0)<(p|0)){continue}break}p=q}l=n;q=l-o|0;k=m-((l>>>0>>0)+s|0)|0;l=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;k=k-(l>>>0>q>>>0)|0;o=q-l|0;g:{if((k|0)<0){o=n;k=m;break g}n=h;h=h-f|0;i=i-((f>>>0>n>>>0)+g|0)|0;if(h|o|(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;p=p-1|0;m=i<<1|h>>>31;h=h<<1;i=m;c=b;b=o;k=k<<1|b>>>31;o=c|b<<1;if(k>>>0<65536){continue}break}}b=r&32768;if((p|0)<=0){Ka(j- -64|0,h,i,o,k&65535|(b|p+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=o;e=k&65535|(b|p)<<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 Mh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=O(f);var g=0,h=0,i=0;i=H[a>>2];g=da-16|0;da=g;H[g+12>>2]=b;a=ra(32);H[g>>2]=a;H[g+4>>2]=17;H[g+8>>2]=-2147483616;F[a+17|0]=0;F[a+16|0]=I[10560];b=I[10556]|I[10557]<<8|(I[10558]<<16|I[10559]<<24);h=I[10552]|I[10553]<<8|(I[10554]<<16|I[10555]<<24);F[a+8|0]=h;F[a+9|0]=h>>>8;F[a+10|0]=h>>>16;F[a+11|0]=h>>>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[10548]|I[10549]<<8|(I[10550]<<16|I[10551]<<24);h=I[10544]|I[10545]<<8|(I[10546]<<16|I[10547]<<24);F[a|0]=h;F[a+1|0]=h>>>8;F[a+2|0]=h>>>16;F[a+3|0]=h>>>24;F[a+4|0]=b;F[a+5|0]=b>>>8;F[a+6|0]=b>>>16;F[a+7|0]=b>>>24;h=i+4|0;_a(Fb(h,g+12|0),g,c);if(F[g+11|0]<=-1){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[10602]|I[10603]<<8|(I[10604]<<16|I[10605]<<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[10599]|I[10600]<<8|(I[10601]<<16|I[10602]<<24);c=I[10595]|I[10596]<<8|(I[10597]<<16|I[10598]<<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[10591]|I[10592]<<8|(I[10593]<<16|I[10594]<<24);c=I[10587]|I[10588]<<8|(I[10589]<<16|I[10590]<<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;qg(Fb(h,g+12|0),g,e,d);if(F[g+11|0]<=-1){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[10623]|I[10624]<<8;F[a+16|0]=b;F[a+17|0]=b>>>8;b=I[10619]|I[10620]<<8|(I[10621]<<16|I[10622]<<24);c=I[10615]|I[10616]<<8|(I[10617]<<16|I[10618]<<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[10611]|I[10612]<<8|(I[10613]<<16|I[10614]<<24);c=I[10607]|I[10608]<<8|(I[10609]<<16|I[10610]<<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;zf(Fb(h,g+12|0),g,f);if(F[g+11|0]<=-1){qa(H[g>>2])}da=g+16|0}function Wh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=O(f);var g=0,h=0,i=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[10144];h=I[10140]|I[10141]<<8|(I[10142]<<16|I[10143]<<24);i=I[10136]|I[10137]<<8|(I[10138]<<16|I[10139]<<24);F[b+8|0]=i;F[b+9|0]=i>>>8;F[b+10|0]=i>>>16;F[b+11|0]=i>>>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[10132]|I[10133]<<8|(I[10134]<<16|I[10135]<<24);i=I[10128]|I[10129]<<8|(I[10130]<<16|I[10131]<<24);F[b|0]=i;F[b+1|0]=i>>>8;F[b+2|0]=i>>>16;F[b+3|0]=i>>>24;F[b+4|0]=h;F[b+5|0]=h>>>8;F[b+6|0]=h>>>16;F[b+7|0]=h>>>24;h=a+4|0;_a(Fb(h,g+12|0),g,c);if(F[g+11|0]<=-1){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[10161]|I[10162]<<8|(I[10163]<<16|I[10164]<<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[10158]|I[10159]<<8|(I[10160]<<16|I[10161]<<24);c=I[10154]|I[10155]<<8|(I[10156]<<16|I[10157]<<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[10150]|I[10151]<<8|(I[10152]<<16|I[10153]<<24);c=I[10146]|I[10147]<<8|(I[10148]<<16|I[10149]<<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;qg(Fb(h,g+12|0),g,e,d);if(F[g+11|0]<=-1){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[10182]|I[10183]<<8;F[a+16|0]=b;F[a+17|0]=b>>>8;b=I[10178]|I[10179]<<8|(I[10180]<<16|I[10181]<<24);c=I[10174]|I[10175]<<8|(I[10176]<<16|I[10177]<<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[10170]|I[10171]<<8|(I[10172]<<16|I[10173]<<24);c=I[10166]|I[10167]<<8|(I[10168]<<16|I[10169]<<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;zf(Fb(h,g+12|0),g,f);if(F[g+11|0]<=-1){qa(H[g>>2])}da=g+16|0}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;H[a+8>>2]=e;g=a+32|0;i=H[g>>2];f=H[a+36>>2]-i>>2;a:{if(f>>>0>>0){La(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=i+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){g=f;break c}h=1;g=d-1|0;m=g&1;d:{if((d|0)==2){g=f;break d}i=g&-2;g=f;while(1){j=(h<<2)+b|0;k=H[j+4>>2];j=H[j>>2];n=(j|0)<(g|0);g=n?j:g;o=(g|0)>(k|0);g=o?k:g;f=n?f:(f|0)<(j|0)?j:f;f=o?f:(f|0)<(k|0)?k:f;h=h+2|0;i=i-2|0;if(i){continue}break}}if(!m){break c}i=H[(h<<2)+b>>2];h=(i|0)<(g|0);g=h?i:g;f=h?f:(f|0)<(i|0)?i:f}H[a+16>>2]=f;H[a+12>>2]=g;i=f;f=(f>>31)-((g>>31)+(g>>>0>f>>>0)|0)|0;g=i-g|0;if(!f&g>>>0>2147483646|f){break b}f=g+1|0;H[a+20>>2]=f;g=(f|0)/2|0;H[a+24>>2]=g;H[a+28>>2]=0-g;if(f&1){break b}H[a+24>>2]=g-1}k=d-e|0;if((k|0)>=1){h=H[a+8>>2];n=0-e<<2;while(1){if((h|0)>=1){d=k<<2;o=d+c|0;m=b+d|0;i=m+n|0;g=0;while(1){f=0;e:{if((h|0)<=0){h=H[a+32>>2];break e}while(1){d=f<<2;j=H[d+i>>2];l=H[a+16>>2];f:{if((j|0)>(l|0)){h=H[a+32>>2];H[d+h>>2]=l;break f}h=H[a+32>>2];d=d+h|0;l=H[a+12>>2];if((l|0)>(j|0)){H[d>>2]=l;break f}H[d>>2]=j}f=f+1|0;if((f|0)>2]){continue}break}}f=g<<2;d=f+o|0;f=H[f+m>>2]-H[f+h>>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}i=h;h=H[a+8>>2];g=g+1|0;if((h|0)>(g|0)){continue}break}}k=k-e|0;if((k|0)>0){continue}break}}d=(e&1073741823)!=(e|0)?-1:e<<2;d=ta(ra(d),0,d);h=H[a+8>>2];if((h|0)>=1){i=d;g=0;while(1){f=0;h:{if((h|0)<=0){h=H[a+32>>2];break h}while(1){e=f<<2;k=H[e+i>>2];j=H[a+16>>2];i:{if((k|0)>(j|0)){h=H[a+32>>2];H[e+h>>2]=j;break i}h=H[a+32>>2];e=e+h|0;j=H[a+12>>2];if((j|0)>(k|0)){H[e>>2]=j;break i}H[e>>2]=k}f=f+1|0;if((f|0)>2]){continue}break}}f=g<<2;e=f+c|0;f=H[b+f>>2]-H[f+h>>2]|0;H[e>>2]=f;j:{if((f|0)>2]){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}i=h;h=H[a+8>>2];g=g+1|0;if((h|0)>(g|0)){continue}break}}qa(d);return 1}function Pk(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;f=da-16|0;da=f;g=H[b+28>>2];e=H[H[b+4>>2]+(c<<2)>>2];l=H[H[H[g+4>>2]+8>>2]+(e<<2)>>2];b=H[l+28>>2];a:{if(b-1>>>0>=6){b:{if((b|0)!=9){break b}g=H[g+48>>2];h=ra(32);H[f>>2]=h;H[f+4>>2]=17;H[f+8>>2]=-2147483616;F[h+17|0]=0;F[h+16|0]=I[2108];c=I[2104]|I[2105]<<8|(I[2106]<<16|I[2107]<<24);b=h;d=I[2100]|I[2101]<<8|(I[2102]<<16|I[2103]<<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[2096]|I[2097]<<8|(I[2098]<<16|I[2099]<<24);d=I[2092]|I[2093]<<8|(I[2094]<<16|I[2095]<<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;d=g+16|0;b=H[d>>2];c:{if(!b){break c}c=d;while(1){i=(e|0)>H[b+16>>2];c=i?c:b;b=H[(i<<2)+b>>2];if(b){continue}break}if((c|0)==(d|0)|(e|0)>2]){break c}b=H[c+24>>2];if(!b){break c}c=c+20|0;while(1){d=I[b+27|0];e=d<<24>>24<0;d=e?H[b+20>>2]:d;i=d>>>0<17;d:{e:{k=i?d:17;f:{if(k){j=b+16|0;e=e?H[j>>2]:j;j=Ca(h,e,k);g:{if(!j){if(d>>>0<=17){break g}break d}if((j|0)<=-1){break d}}d=Ca(e,h,k);if(!d){break f}if((d|0)<=-1){break e}g=c;break c}if(d>>>0>17){break d}}if(i){break e}g=c;break c}b=b+4|0}b=H[b>>2];if(b){continue}break}}b=hb(g,f,-1);if(F[f+11|0]<=-1){qa(H[f>>2])}if((b|0)<1){break b}if(H[l+56>>2]==1){b=ra(48);H[b>>2]=0;H[b+4>>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;Nd(b);H[b+44>>2]=-1;H[b+40>>2]=1032;H[b>>2]=6056;H[a>>2]=b;break a}b=ra(64);Nd(b);H[b+48>>2]=0;H[b+52>>2]=0;H[b+44>>2]=-1;H[b+40>>2]=1140;H[b>>2]=9756;H[b+56>>2]=0;H[b+60>>2]=0;H[a>>2]=b;break a}b=ra(36);H[b+32>>2]=0;H[b+12>>2]=-1;H[b+4>>2]=0;H[b+8>>2]=0;H[b>>2]=1860;H[b+16>>2]=0;H[b+20>>2]=0;F[b+21|0]=0;F[b+22|0]=0;F[b+23|0]=0;F[b+24|0]=0;F[b+25|0]=0;F[b+26|0]=0;F[b+27|0]=0;F[b+28|0]=0;H[a>>2]=b;break a}m=a,n=Nd(ra(40)),H[m>>2]=n}da=f+16|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,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){e=da-16|0;da=e;f=c;d=c+16|0;h=mg(a,l,e+12|0,e+8|0,d);if(!H[h>>2]){c=ra(40);Ja(c+16|0,d);H[c+36>>2]=0;g=c+28|0;H[g>>2]=0;H[g+4>>2]=0;ib(g,H[d+16>>2]-H[d+12>>2]|0);j=H[g>>2];g=H[d+12>>2];sa(j,g,H[d+16>>2]-g|0);H[c+8>>2]=H[e+12>>2];H[c>>2]=0;H[c+4>>2]=0;H[h>>2]=c;d=H[H[a>>2]>>2];if(d){H[a>>2]=d;c=H[h>>2]}yb(H[a+4>>2],c);H[a+8>>2]=H[a+8>>2]+1}da=e+16|0;d=H[f+4>>2];a:{if(!d){c=H[f+8>>2];if((f|0)==H[c>>2]){break a}d=f+8|0;while(1){f=H[d>>2];d=f+8|0;c=H[f+8>>2];if((f|0)!=H[c>>2]){continue}break}break a}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)){e=a+12|0;while(1){f=c;n=ra(24);Wc(n,H[c+28>>2]);b=c+16|0;H[i+16>>2]=b;a=H[e+4>>2];b:{c:{if(a){c=I[b+11|0];d=c<<24>>24<0;g=d?H[b>>2]:b;d=d?H[b+4>>2]:c;b=e+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;d:{e:{f:{g:{h:{k=l?c:d;i:{if(k){j=a+16|0;h=h?H[j>>2]:j;j=Ca(g,h,k);if(!j){if(c>>>0>d>>>0){break i}break h}if((j|0)>-1){break h}break i}if(c>>>0<=d>>>0){break g}}c=H[a>>2];if(c){break d}break c}c=Ca(h,g,k);if(c){break f}}if(l){break e}break b}if((c|0)>-1){break b}}b=a+4|0;c=H[a+4>>2];if(!c){break b}a=b}b=a;a=c;continue}}a=e+4|0}b=a}d=i;c=H[b>>2];if(c){a=0}else{c=ra(32);Ja(c+16|0,H[i+16>>2]);H[c+8>>2]=a;H[c>>2]=0;H[c+4>>2]=0;H[c+28>>2]=0;H[b>>2]=c;g=H[H[e>>2]>>2];a=c;j:{if(!g){break j}H[e>>2]=g;a=H[b>>2]}yb(H[e+4>>2],a);H[e+8>>2]=H[e+8>>2]+1;a=1}F[d+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){qb(a+12|0,H[a+16>>2]);pb(a,H[a+4>>2]);qa(a)}d=H[f+4>>2];k:{if(!d){c=H[f+8>>2];if((f|0)==H[c>>2]){break k}d=f+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 k}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(m|0)){continue}break}}da=i+32|0}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;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[11255]|I[11256]<<8|(I[11257]<<16|I[11258]<<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[11252]|I[11253]<<8|(I[11254]<<16|I[11255]<<24);d=I[11248]|I[11249]<<8|(I[11250]<<16|I[11251]<<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[11244]|I[11245]<<8|(I[11246]<<16|I[11247]<<24);d=I[11240]|I[11241]<<8|(I[11242]<<16|I[11243]<<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)<=-1){break b}}d=Ca(e,c,h);if(!d){break e}if((d|0)>-1){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[11255]|I[11256]<<8|(I[11257]<<16|I[11258]<<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[11252]|I[11253]<<8|(I[11254]<<16|I[11255]<<24);d=I[11248]|I[11249]<<8|(I[11250]<<16|I[11251]<<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[11244]|I[11245]<<8|(I[11246]<<16|I[11247]<<24);d=I[11240]|I[11241]<<8|(I[11242]<<16|I[11243]<<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=Tb(e,f,0),F[j+288|0]=k;if(F[f+11|0]>-1){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 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;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[11255]|I[11256]<<8|(I[11257]<<16|I[11258]<<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[11252]|I[11253]<<8|(I[11254]<<16|I[11255]<<24);d=I[11248]|I[11249]<<8|(I[11250]<<16|I[11251]<<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[11244]|I[11245]<<8|(I[11246]<<16|I[11247]<<24);d=I[11240]|I[11241]<<8|(I[11242]<<16|I[11243]<<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)<=-1){break b}}d=Ca(e,c,h);if(!d){break e}if((d|0)>-1){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[11255]|I[11256]<<8|(I[11257]<<16|I[11258]<<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[11252]|I[11253]<<8|(I[11254]<<16|I[11255]<<24);d=I[11248]|I[11249]<<8|(I[11250]<<16|I[11251]<<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[11244]|I[11245]<<8|(I[11246]<<16|I[11247]<<24);d=I[11240]|I[11241]<<8|(I[11242]<<16|I[11243]<<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=Tb(e,f,0),F[j+352|0]=k;if(F[f+11|0]>-1){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 Md(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;i=da-16|0;da=i;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(o=(fa[H[H[a>>2]+32>>2]](a)|0)==1,p=0,q=H[H[a+8>>2]+28>>2]-1>>>0>5,q?o:p){break a}m=i+8|0;n=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[9966];c=I[9962]|I[9963]<<8|(I[9964]<<16|I[9965]<<24);e=I[9958]|I[9959]<<8|(I[9960]<<16|I[9961]<<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[9954]|I[9955]<<8|(I[9956]<<16|I[9957]<<24);e=I[9950]|I[9951]<<8|(I[9952]<<16|I[9953]<<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){j=(g|0)>H[f+16>>2];c=j?c:f;f=H[(j<<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;j=g>>>0<17;c:{d:{l=j?g:17;e:{if(l){k=f+16|0;e=e?H[k>>2]:k;k=Ca(d,e,l);f:{if(!k){if(g>>>0<=17){break f}break c}if((k|0)<=-1){break c}}g=Ca(e,d,l);if(!g){break e}if((g|0)<=-1){break d}b=c;break b}if(g>>>0>17){break c}}if(j){break d}b=c;break b}f=f+4|0}f=H[f>>2];if(f){continue}break}}b=hb(b,h,-1);if(F[h+11|0]<=-1){qa(H[h>>2])}g:{if((b|0)==-1){da=h+16|0;b=-1;break g}da=h+16|0;b=b>>>0>6?-2:b}fa[H[H[a>>2]+48>>2]](m,n,b);b=H[i+8>>2];H[i+8>>2]=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[i+8>>2];H[i+8>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}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)}da=i+16|0;return e|0}function Rg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=da-32|0;da=c;d=a- -64|0;Ga(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;f=c;Ba(c);d=H[a+64>>2];if((d|0)>=1){while(1){g=d-1|0;Ea(f,H[H[a+60>>2]+(g>>>3&536870908)>>2]>>>g&1);e=(d|0)>1;d=g;if(e){continue}break}}Aa(f,b);za(f)}Ga(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;f=c;Ba(c);d=H[a+76>>2];if((d|0)>=2){while(1){g=d-2|0;Ea(f,H[H[a+72>>2]+(g>>>3&536870908)>>2]>>>g&1);e=d-1|0;Ea(f,H[H[a+72>>2]+(e>>>3&536870908)>>2]>>>e&1);e=(d|0)>3;d=g;if(e){continue}break}}Aa(f,b);za(f)}Ga(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;f=c;Ba(c);d=H[a+88>>2];if((d|0)>=3){while(1){g=d-3|0;Ea(f,H[H[a+84>>2]+(g>>>3&536870908)>>2]>>>g&1);e=d-2|0;Ea(f,H[H[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ea(f,H[H[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=(d|0)>5;d=g;if(e){continue}break}}Aa(f,b);za(f)}Ga(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;f=c;Ba(c);d=H[a+100>>2];if((d|0)>=4){while(1){g=d-4|0;Ea(f,H[H[a+96>>2]+(g>>>3&536870908)>>2]>>>g&1);e=d-3|0;Ea(f,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-2|0;Ea(f,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ea(f,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=(d|0)>7;d=g;if(e){continue}break}}Aa(f,b);za(f)}H[c>>2]=H[a+12>>2];f=H[b+20>>2];d=f;g=H[b+16>>2];if((d|0)<0?1:(d|0)<=0?!g:0){va(b,H[b+4>>2],c,c+4|0);g=H[b+16>>2];d=H[b+20>>2]}H[c>>2]=H[a+16>>2];if((d|0)<0?1:(d|0)<=0?!g:0){va(b,H[b+4>>2],c,c+4|0)}da=c+32|0;return 1}function Eg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=da-32|0;da=c;Ga(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;e=c;Ba(c);d=H[a+48>>2];if((d|0)>=1){while(1){g=d-1|0;Ea(e,H[H[a+44>>2]+(g>>>3&536870908)>>2]>>>g&1);f=(d|0)>1;d=g;if(f){continue}break}}Aa(e,b);za(e)}Ga(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;e=c;Ba(c);d=H[a+60>>2];if((d|0)>=2){while(1){g=d-2|0;Ea(e,H[H[a+56>>2]+(g>>>3&536870908)>>2]>>>g&1);f=d-1|0;Ea(e,H[H[a+56>>2]+(f>>>3&536870908)>>2]>>>f&1);f=(d|0)>3;d=g;if(f){continue}break}}Aa(e,b);za(e)}Ga(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;e=c;Ba(c);d=H[a+72>>2];if((d|0)>=3){while(1){g=d-3|0;Ea(e,H[H[a+68>>2]+(g>>>3&536870908)>>2]>>>g&1);f=d-2|0;Ea(e,H[H[a+68>>2]+(f>>>3&536870908)>>2]>>>f&1);f=d-1|0;Ea(e,H[H[a+68>>2]+(f>>>3&536870908)>>2]>>>f&1);f=(d|0)>5;d=g;if(f){continue}break}}Aa(e,b);za(e)}Ga(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;e=c;Ba(c);d=H[a+84>>2];if((d|0)>=4){while(1){g=d-4|0;Ea(e,H[H[a+80>>2]+(g>>>3&536870908)>>2]>>>g&1);f=d-3|0;Ea(e,H[H[a+80>>2]+(f>>>3&536870908)>>2]>>>f&1);f=d-2|0;Ea(e,H[H[a+80>>2]+(f>>>3&536870908)>>2]>>>f&1);f=d-1|0;Ea(e,H[H[a+80>>2]+(f>>>3&536870908)>>2]>>>f&1);f=(d|0)>7;d=g;if(f){continue}break}}Aa(e,b);za(e)}H[c>>2]=H[a+12>>2];e=H[b+20>>2];d=e;g=H[b+16>>2];if((e|0)<0?1:(e|0)<=0?!g:0){va(b,H[b+4>>2],c,c+4|0);g=H[b+16>>2];d=H[b+20>>2]}H[c>>2]=H[a+24>>2];if((d|0)<0?1:(d|0)<=0?!g:0){va(b,H[b+4>>2],c,c+4|0)}da=c+32|0;return 1}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;j=g;e=H[a>>2];h=H[e>>2];c=H[e+4>>2];k=+(h>>>0)+ +(c>>>0)*4294967296;c=H[e+12>>2]+c|0;e=H[e+8>>2];h=e+h|0;c=h>>>0>>0?c+1|0:c;e=!(c|h);k=k/(+((e?1:h)>>>0)+ +((e?0:c)>>>0)*4294967296)*256+.5;a:{if(k<4294967296&k>=0){c=~~k>>>0;break a}c=0}d=c>>>0<255?c:255;l=!(d&255)+d|0;F[j+23|0]=l;h=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:{d=(h-n<<1)- -64|0;if(d){if((d|0)<=-1){break c}i=ra(d);H[g+8>>2]=i;c=d+i|0;H[g+16>>2]=c;ta(i,0,d);H[g+12>>2]=c}e=H[a+28>>2]-1|0;if((e|0)<0){d=4096;break b}j=0-l|0;o=j&255;p=H[a+24>>2];d=4096;while(1){m=p&1<>>0<=d>>>0){F[f+i|0]=d;f=f+1|0;d=d>>>8|0}q=256-c|0;c=(c<<3)+14208|0;el(H[c>>2],0,d,0);d=((m?0:o)+d|0)+N(q,ea+d>>>H[c+4>>2]|0)|0;e=e-1|0;if((e|0)>-1){continue}break}break b}ua();X()}if((h|0)!=(n|0)){j=0-l|0;o=j&255;while(1){h=h-4|0;p=H[h>>2];c=31;while(1){e=c;m=p&1<>>0<=d>>>0){F[f+i|0]=d;f=f+1|0;d=d>>>8|0}q=256-c|0;c=(c<<3)+14208|0;el(H[c>>2],0,d,0);d=((m?0:o)+d|0)+N(q,ea+d>>>H[c+4>>2]|0)|0;c=e-1|0;if(e){continue}break}if((h|0)!=(n|0)){continue}break}}e=d-4096|0;d:{e:{if(e>>>0<=63){c=f+i|0;d=f+1|0;break e}if(e>>>0<=16383){c=f+i|0;d=d+12288|0;F[c|0]=d;c=c+1|0;e=d>>>8|0;d=f+2|0;break e}if(e>>>0>4194303){d=f;break d}c=f+i|0;d=d+8384512|0;F[c|0]=d;F[c+1|0]=d>>>8;c=c+2|0;e=d>>>16|0;d=f+3|0}F[c|0]=e}f=H[b+20>>2];if((f|0)<0?1:(f|0)<=0?!H[b+16>>2]:0){va(b,H[b+4>>2],g+23|0,g+24|0)}Ga(d,b);f=H[b+20>>2];if((f|0)<0?1:(f|0)<=0?!H[b+16>>2]:0){c=b;e=H[b+4>>2];b=H[g+8>>2];va(c,e,b,b+d|0)}H[g+24>>2]=0;H[g+28>>2]=0;Jd(a,g+24|0);H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=H[a+12>>2];a=H[g+8>>2];if(a){H[g+12>>2]=a;qa(a)}da=g+32|0}function Zh(){var a=0,b=0,c=0,d=0,e=0,f=0,g=0;g=ra(48);f=g;H[f>>2]=10384;d=da-16|0;da=d;e=f+4|0;a=e;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;a=a+16|0;H[a>>2]=0;H[a+4>>2]=0;H[e+12>>2]=a;e=e+24|0;a=e;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;b=ra(32);H[d>>2]=b;H[d+4>>2]=20;H[d+8>>2]=-2147483616;F[b+20|0]=0;a=I[10408]|I[10409]<<8|(I[10410]<<16|I[10411]<<24);F[b+16|0]=a;F[b+17|0]=a>>>8;F[b+18|0]=a>>>16;F[b+19|0]=a>>>24;c=I[10404]|I[10405]<<8|(I[10406]<<16|I[10407]<<24);a=I[10400]|I[10401]<<8|(I[10402]<<16|I[10403]<<24);F[b+8|0]=a;F[b+9|0]=a>>>8;F[b+10|0]=a>>>16;F[b+11|0]=a>>>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[10396]|I[10397]<<8|(I[10398]<<16|I[10399]<<24);a=I[10392]|I[10393]<<8|(I[10394]<<16|I[10395]<<24);F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>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(e,d,1);if(F[d+11|0]<=-1){qa(H[d>>2])}a=ra(32);H[d>>2]=a;H[d+4>>2]=22;H[d+8>>2]=-2147483616;F[a+22|0]=0;b=I[10431]|I[10432]<<8|(I[10433]<<16|I[10434]<<24);c=I[10427]|I[10428]<<8|(I[10429]<<16|I[10430]<<24);F[a+14|0]=c;F[a+15|0]=c>>>8;F[a+16|0]=c>>>16;F[a+17|0]=c>>>24;F[a+18|0]=b;F[a+19|0]=b>>>8;F[a+20|0]=b>>>16;F[a+21|0]=b>>>24;b=I[10425]|I[10426]<<8|(I[10427]<<16|I[10428]<<24);c=I[10421]|I[10422]<<8|(I[10423]<<16|I[10424]<<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[10417]|I[10418]<<8|(I[10419]<<16|I[10420]<<24);c=I[10413]|I[10414]<<8|(I[10415]<<16|I[10416]<<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;_a(e,d,1);if(F[d+11|0]<=-1){qa(H[d>>2])}da=d+16|0;H[f+40>>2]=0;H[f+44>>2]=0;H[f>>2]=10112;return g|0}function Sj(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);p=a+8|0;d=H[a+40>>2];f=H[d>>2];a:{n=H[d+4>>2]-f|0;if((n|0)<5){break a}o=n>>>2|0;d=o-1|0;if(d>>>0>2>>>0){r=H[a+36>>2];q=H[a+32>>2];n=e&-2;s=e&1;while(1){t=N(d,e);b:{c:{f=H[(d<<2)+f>>2];if((f|0)==-1){break c}f=H[H[q+12>>2]+(f<<2)>>2];if((f|0)==-1){break c}g=H[r>>2];j=H[q>>2];m=H[g+(H[j+(f<<2)>>2]<<2)>>2];h=f+1|0;h=(h>>>0)%3|0?h:f-2|0;k=g-4|0;d:{if((h|0)==-1){break d}k=g+(H[j+(h<<2)>>2]<<2)|0}f=f+((f>>>0)%3|0?-1:2)|0;h=g-4|0;e:{if((f|0)==-1){break e}h=g+(H[j+(f<<2)>>2]<<2)|0}if((d|0)<=(m|0)){break c}f=H[k>>2];if((f|0)>=(d|0)){break c}g=H[h>>2];if((g|0)>=(d|0)){break c}f:{if((e|0)<1){break f}j=N(e,g);k=N(e,f);m=N(e,m);g=0;f=n;if((e|0)!=1){while(1){H[(g<<2)+l>>2]=(H[(g+j<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2];h=g|1;H[(h<<2)+l>>2]=(H[(h+j<<2)+b>>2]+H[(h+k<<2)+b>>2]|0)-H[(h+m<<2)+b>>2];g=g+2|0;f=f-2|0;if(f){continue}break}}if(!s){break f}H[(g<<2)+l>>2]=(H[(g+j<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2]}g=H[l>>2];j=H[l+4>>2];break b}f=(N(o-2|0,e)<<2)+b|0;g=H[f>>2];j=H[f+4>>2]}k=t<<2;m=k+b|0;h=H[m+4>>2];f=i;H[f+16>>2]=H[m>>2];H[f+20>>2]=h;H[f+8>>2]=g;H[f+12>>2]=j;ab(f+24|0,p,f+16|0,f+8|0);g=c+k|0;H[g>>2]=H[f+24>>2];H[g+4>>2]=H[f+28>>2];if((o|0)<3){break a}o=d;g=H[a+40>>2];f=H[g>>2];d=d-1|0;if(d>>>0>2]-f>>2>>>0){continue}break}}xa();X()}if((e|0)>=1){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,p,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 xg(a,b,c){var d=0,e=O(0),f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=O(0),n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0;n=da-16|0;da=n;a:{if(!(H[a+4>>2]!=-1|c-1>>>0>29)){H[a+4>>2]=c;i=F[b+24|0];c=0;H[a+20>>2]=0;H[n+8>>2]=0;H[n>>2]=0;H[n+4>>2]=0;if(i){if((i|0)<=-1){break a}c=i<<2;f=ra(c);c=ta(f,0,c)+c|0}g=H[a+8>>2];if(g){H[a+12>>2]=g;qa(g)}H[a+8>>2]=f;H[a+16>>2]=c;H[a+12>>2]=c;c=(i&1073741823)!=(i|0)?-1:i<<2;d=ra(c);c=ra(c);p=H[b+44>>2];h=c;g=H[b+48>>2];c=g;k=H[b>>2];o=H[b+40>>2];l=o;q=sa(h,c+H[k>>2]|0,l);s=sa(f,c+H[k>>2]|0,l);t=sa(d,c+H[k>>2]|0,l);b=H[b+80>>2];b:{if(b>>>0<2){break b}f=b;if((i|0)>0){h=1;c=0;while(1){b=H[k>>2];d=el(h,c,o,p)+g|0;j=sa(q,b+d|0,l);b=0;while(1){d=b<<2;r=d+s|0;e=L[d+j>>2];if(L[r>>2]>e){L[r>>2]=e}d=d+t|0;if(e>L[d>>2]){L[d>>2]=e}b=b+1|0;if((i|0)!=(b|0)){continue}break}b=c;c=h+1|0;b=c>>>0<1?b+1|0:b;h=c;c=b;if((f|0)!=(h|0)|b){continue}break}break b}h=1;c=0;d=f-1|0;f=0-(f>>>0<1)|0;r=d&1;if((b|0)!=2){d=d&-2;while(1){b=H[k>>2];j=el(h,c,o,p)+g|0;u=sa(q,b+j|0,l);w=H[k>>2];b=c;j=h+1|0;b=j>>>0<1?b+1|0:b;j=el(o,p,j,b)+g|0;sa(u,w+j|0,l);b=h+2|0;c=b>>>0<2?c+1|0:c;h=b;b=f-(d>>>0<2)|0;d=d-2|0;f=b;if(b|d){continue}break}}if(!(r|x)){break b}f=H[k>>2];b=el(h,c,o,p)+g|0;sa(q,f+b|0,l)}c=1;c:{d:{e:{if((i|0)>=1){e=L[s>>2];if(e!=e){break c}b=0;break e}e=L[a+20>>2];c=0;break d}while(1){if(((C(e),v(2))&2147483647)==2139095040){break c}g=t+(b<<2)|0;f=H[g>>2];m=L[g>>2];if((f&2147483647)==2139095040|m!=m){break c}m=O(m-e);e=L[a+20>>2];if(m>e){L[a+20>>2]=m;e=m}b=b+1|0;c=(i|0)>(b|0);if((b|0)==(i|0)){break d}e=L[s+(b<<2)>>2];if(e==e){continue}break}break c}if(e!=O(0)){break c}H[a+20>>2]=1065353216}qa(q);qa(t);f=c^1}da=n+16|0;return f&1}ua();X()}function We(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=O(0),m=0;j=H[c>>2];h=j^318;m=a;a:{b:{f=H[b+4>>2];if(!f){break b}g=hl(f);c:{if(g>>>0>=2){e=h;if(e>>>0>=f>>>0){e=(h>>>0)%(f>>>0)|0}c=H[H[b>>2]+(e<<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(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if(H[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=h&f-1;c=H[H[b>>2]+(e<<2)>>2];if(!c){break b}}g=f-1|0;while(1){c=H[c>>2];if(!c){break b}k=H[c+4>>2];if((g&k)!=(e|0)?(h|0)!=(k|0):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]=h;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))):0){break d}g=(f-1&f)!=0|f>>>0<3|f<<1;i=O(U(O(l/i)));e:{if(i=O(0)){e=~~i>>>0;break e}e=0}e=e>>>0>g>>>0?e:g;g=2;f:{if((e|0)==1){break f}d=e;g=d;if(!(d&d-1)){break f}g=Na(e)}d=g;e=H[b+4>>2];g:{if(d>>>0>e>>>0){Le(b,d);break g}h:{if(d>>>0>=e>>>0){break h}j=e>>>0<3;i=O(U(O(O(K[b+12>>2])/L[b+16>>2])));i:{if(i=O(0)){g=~~i>>>0;break i}g=0}f=e;j:{k:{if(j){break k}if(hl(e)>>>0>1){break k}e=g>>>0<2?g:1<<32-Q(g-1|0);break j}e=Na(g)}d=d>>>0>>0?e:d;if(f>>>0<=d>>>0){break h}Le(b,d)}}f=H[b+4>>2];if(!(f&f-1)){e=h&f-1;break d}if(f>>>0>h>>>0){e=h;break d}e=(h>>>0)%(f>>>0)|0}h=H[b>>2]+(e<<2)|0;d=H[h>>2];l:{if(!d){H[c>>2]=H[b+8>>2];H[b+8>>2]=c;H[h>>2]=b+8;d=H[c>>2];if(!d){break l}d=H[d+4>>2];h=f-1|0;m:{if(!(h&f)){d=d&h;break m}if(d>>>0>>0){break m}d=(d>>>0)%(f>>>0)|0}H[H[b>>2]+(d<<2)>>2]=c;break l}H[c>>2]=H[d>>2];H[d>>2]=c}H[b+12>>2]=H[b+12>>2]+1;b=1}F[m+4|0]=b;H[a>>2]=c}function Qf(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=O(0),l=0;h=H[c>>2];l=a;a:{b:{f=H[b+4>>2];if(!f){break b}g=hl(f);c:{if(g>>>0>=2){e=h;e=f>>>0<=e>>>0?(e>>>0)%(f>>>0)|0:e;c=H[H[b>>2]+(e<<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(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if((h|0)!=H[c+8>>2]){continue}break}b=0;break a}e=h&f-1;c=H[H[b>>2]+(e<<2)>>2];if(!c){break b}}g=f-1|0;while(1){c=H[c>>2];if(!c){break b}j=H[c+4>>2];if((g&j)!=(e|0)?(h|0)!=(j|0):0){break b}if((h|0)!=H[c+8>>2]){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(f?!(k>O(i*O(f>>>0))):0){break d}g=(f-1&f)!=0|f>>>0<3|f<<1;i=O(U(O(k/i)));e:{if(i=O(0)){e=~~i>>>0;break e}e=0}e=e>>>0>g>>>0?e:g;g=2;f:{if((e|0)==1){break f}d=e;g=d;if(!(d&d-1)){break f}g=Na(e)}d=g;e=H[b+4>>2];g:{if(d>>>0>e>>>0){Ff(b,d);break g}h:{if(d>>>0>=e>>>0){break h}j=e>>>0<3;i=O(U(O(O(K[b+12>>2])/L[b+16>>2])));i:{if(i=O(0)){g=~~i>>>0;break i}g=0}f=e;j:{k:{if(j){break k}if(hl(e)>>>0>1){break k}e=g>>>0<2?g:1<<32-Q(g-1|0);break j}e=Na(g)}d=d>>>0>>0?e:d;if(f>>>0<=d>>>0){break h}Ff(b,d)}}f=H[b+4>>2];if(!(f&f-1)){e=h&f-1;break d}if(f>>>0>h>>>0){e=h;break d}e=(h>>>0)%(f>>>0)|0}h=H[b>>2]+(e<<2)|0;d=H[h>>2];l:{if(!d){H[c>>2]=H[b+8>>2];H[b+8>>2]=c;H[h>>2]=b+8;d=H[c>>2];if(!d){break l}d=H[d+4>>2];h=f-1|0;m:{if(!(h&f)){d=d&h;break m}if(d>>>0>>0){break m}d=(d>>>0)%(f>>>0)|0}H[H[b>>2]+(d<<2)>>2]=c;break l}H[c>>2]=H[d>>2];H[d>>2]=c}H[b+12>>2]=H[b+12>>2]+1;b=1}F[l+4|0]=b;H[a>>2]=c}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;i=da-32|0;da=i;d=(e&1073741823)!=(e|0)?-1:e<<2;l=ta(ra(d),0,d);q=a+8|0;d=H[a+40>>2];g=H[d>>2];a:{o=H[d+4>>2]-g|0;if((o|0)<5){break a}f=o>>>2|0;d=f-1|0;if(d>>>0>2>>>0){r=H[a+36>>2];p=H[a+32>>2];o=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[p>>2]+(g>>>3&536870908)>>2]>>>g&1){break c}g=H[H[H[p+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break c}k=H[r>>2];h=H[p+28>>2];m=H[k+(H[h+(g<<2)>>2]<<2)>>2];if((m|0)>=(d|0)){break c}j=g+1|0;j=H[k+(H[h+(((j>>>0)%3|0?j:g-2|0)<<2)>>2]<<2)>>2];if((j|0)>=(d|0)){break c}g=H[k+(H[h+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(d|0)){break c}d:{if((e|0)<1){break d}k=N(e,g);j=N(e,j);m=N(e,m);h=0;g=o;if((e|0)!=1){while(1){H[(h<<2)+l>>2]=(H[(h+k<<2)+b>>2]+H[(h+j<<2)+b>>2]|0)-H[(h+m<<2)+b>>2];n=h|1;H[(n<<2)+l>>2]=(H[(k+n<<2)+b>>2]+H[(j+n<<2)+b>>2]|0)-H[(m+n<<2)+b>>2];h=h+2|0;g=g-2|0;if(g){continue}break}}if(!s){break d}H[(h<<2)+l>>2]=(H[(h+k<<2)+b>>2]+H[(h+j<<2)+b>>2]|0)-H[(h+m<<2)+b>>2]}h=H[l>>2];k=H[l+4>>2];break b}g=(N(f-2|0,e)<<2)+b|0;h=H[g>>2];k=H[g+4>>2]}j=t<<2;m=j+b|0;n=H[m+4>>2];g=i;H[g+16>>2]=H[m>>2];H[g+20>>2]=n;H[g+8>>2]=h;H[g+12>>2]=k;ab(g+24|0,q,g+16|0,g+8|0);h=c+j|0;H[h>>2]=H[g+24>>2];H[h+4>>2]=H[g+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)>=1){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,q,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 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;h=H[g>>2];f=H[a+36>>2]-h>>2;a:{if(f>>>0>>0){La(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=h+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}h=1;g=d-1|0;l=g&1;d:{if((d|0)==2){d=f;break d}g=g&-2;d=f;while(1){j=(h<<2)+b|0;i=H[j+4>>2];j=H[j>>2];n=(j|0)<(d|0);d=n?j:d;k=(d|0)>(i|0);d=k?i:d;f=n?f:(f|0)<(j|0)?j:f;f=k?f:(f|0)<(i|0)?i:f;h=h+2|0;g=g-2|0;if(g){continue}break}}if(!l){break c}g=H[(h<<2)+b>>2];h=(g|0)<(d|0);d=h?g:d;f=h?f:(f|0)<(g|0)?g:f}H[a+16>>2]=f;H[a+12>>2]=d;g=d;d=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;f=f-g|0;if(!d&f>>>0>2147483646|d){break b}d=f+1|0;H[a+20>>2]=d;f=(d|0)/2|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}f=H[a+56>>2];d=H[f>>2];e:{f=H[f+4>>2]-d|0;if((f|0)<1){break e}j=f>>>2|0;i=j-1|0;if(i>>>0>2>>>0){o=a+60|0;n=a+68|0;while(1){Mg(o,H[(i<<2)+d>>2],b,i);d=H[a+8>>2];if((d|0)>=1){f=N(e,i)<<2;p=f+c|0;q=b+f|0;g=n;k=0;while(1){f=0;f:{if((d|0)<=0){h=H[a+32>>2];break f}while(1){d=f<<2;l=H[d+g>>2];m=H[a+16>>2];g:{if((l|0)>(m|0)){h=H[a+32>>2];H[d+h>>2]=m;break g}h=H[a+32>>2];d=d+h|0;m=H[a+12>>2];if((m|0)>(l|0)){H[d>>2]=m;break g}H[d>>2]=l}f=f+1|0;if((f|0)>2]){continue}break}}f=k<<2;d=f+p|0;f=H[f+q>>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}g=h;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}}if((j|0)<2){break e}j=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 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;h=H[g>>2];f=H[a+36>>2]-h>>2;a:{if(f>>>0>>0){La(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=h+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}h=1;g=d-1|0;l=g&1;d:{if((d|0)==2){d=f;break d}g=g&-2;d=f;while(1){j=(h<<2)+b|0;i=H[j+4>>2];j=H[j>>2];n=(j|0)<(d|0);d=n?j:d;k=(d|0)>(i|0);d=k?i:d;f=n?f:(f|0)<(j|0)?j:f;f=k?f:(f|0)<(i|0)?i:f;h=h+2|0;g=g-2|0;if(g){continue}break}}if(!l){break c}g=H[(h<<2)+b>>2];h=(g|0)<(d|0);d=h?g:d;f=h?f:(f|0)<(g|0)?g:f}H[a+16>>2]=f;H[a+12>>2]=d;g=d;d=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;f=f-g|0;if(!d&f>>>0>2147483646|d){break b}d=f+1|0;H[a+20>>2]=d;f=(d|0)/2|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}f=H[a+56>>2];d=H[f>>2];e:{f=H[f+4>>2]-d|0;if((f|0)<1){break e}j=f>>>2|0;i=j-1|0;if(i>>>0>2>>>0){o=a+60|0;n=a+68|0;while(1){Hg(o,H[(i<<2)+d>>2],b,i);d=H[a+8>>2];if((d|0)>=1){f=N(e,i)<<2;p=f+c|0;q=b+f|0;g=n;k=0;while(1){f=0;f:{if((d|0)<=0){h=H[a+32>>2];break f}while(1){d=f<<2;l=H[d+g>>2];m=H[a+16>>2];g:{if((l|0)>(m|0)){h=H[a+32>>2];H[d+h>>2]=m;break g}h=H[a+32>>2];d=d+h|0;m=H[a+12>>2];if((m|0)>(l|0)){H[d>>2]=m;break g}H[d>>2]=l}f=f+1|0;if((f|0)>2]){continue}break}}f=k<<2;d=f+p|0;f=H[f+q>>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}g=h;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}}if((j|0)<2){break e}j=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 jg(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[10680]|I[10681]<<8|(I[10682]<<16|I[10683]<<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[10676]|I[10677]<<8|(I[10678]<<16|I[10679]<<24);d=I[10672]|I[10673]<<8|(I[10674]<<16|I[10675]<<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[10668]|I[10669]<<8|(I[10670]<<16|I[10671]<<24);d=I[10664]|I[10665]<<8|(I[10666]<<16|I[10667]<<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(a,e,1);if(F[e+11|0]<=-1){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[10703]|I[10704]<<8|(I[10705]<<16|I[10706]<<24);d=I[10699]|I[10700]<<8|(I[10701]<<16|I[10702]<<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[10697]|I[10698]<<8|(I[10699]<<16|I[10700]<<24);d=I[10693]|I[10694]<<8|(I[10695]<<16|I[10696]<<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[10689]|I[10690]<<8|(I[10691]<<16|I[10692]<<24);d=I[10685]|I[10686]<<8|(I[10687]<<16|I[10688]<<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(a,e,1);if(F[e+11|0]<=-1){qa(H[e>>2])}da=e+16|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=0,j=0,k=0;f=H[a+12>>2];d=H[a+8>>2];e=f-d>>2;a:{if((e|0)>(b|0)){break a}i=b+1|0;if(i>>>0>e>>>0){e=i-e|0;g=H[a+16>>2];d=H[a+12>>2];if(e>>>0<=g-d>>2>>>0){f=a;if(e){j=d;d=e<<2;d=ta(j,0,d)+d|0}H[f+12>>2]=d;break a}b:{c:{d:{i=H[a+8>>2];h=d-i>>2;f=h+e|0;if(f>>>0<1073741824){g=g-i|0;k=g>>1;g=g>>2>>>0<536870911?f>>>0>k>>>0?f:k:1073741823;if(g){if(g>>>0>=1073741824){break d}j=ra(g<<2)}f=(h<<2)+j|0;h=e<<2;e=ta(f,0,h);h=e+h|0;g=(g<<2)+j|0;if((d|0)==(i|0)){break c}while(1){d=d-4|0;e=H[d>>2];H[d>>2]=0;f=f-4|0;H[f>>2]=e;if((d|0)!=(i|0)){continue}break}H[a+16>>2]=g;e=H[a+12>>2];H[a+12>>2]=h;d=H[a+8>>2];H[a+8>>2]=f;if((d|0)==(e|0)){break b}while(1){e=e-4|0;f=H[e>>2];H[e>>2]=0;if(f){Ma(f)}if((d|0)!=(e|0)){continue}break}break b}ua();X()}wa(16852);X()}H[a+16>>2]=g;H[a+12>>2]=h;H[a+8>>2]=e}if(d){qa(d)}break a}if(e>>>0<=i>>>0){break a}d=d+(i<<2)|0;if((d|0)!=(f|0)){while(1){f=f-4|0;e=H[f>>2];H[f>>2]=0;if(e){Ma(e)}if((d|0)!=(f|0)){continue}break}}H[a+12>>2]=d}e:{f:{d=H[H[c>>2]+56>>2];g:{if((d|0)>4){break g}f=N(d,12)+a|0;j=f;d=H[f+24>>2];if((d|0)!=H[f+28>>2]){H[d>>2]=b;H[j+24>>2]=d+4;break g}e=H[f+20>>2];i=d-e|0;h=i>>2;g=h+1|0;if(g>>>0>=1073741824){break f}k=i>>1;g=h>>>0<536870911?g>>>0>k>>>0?g:k:1073741823;d=0;h:{if(!g){break h}if(g>>>0>=1073741824){break e}d=ra(g<<2)}h=d+(h<<2)|0;H[h>>2]=b;if((i|0)>=1){sa(d,e,i)}H[f+20>>2]=d;H[j+24>>2]=h+4;H[f+28>>2]=d+(g<<2);if(!e){break g}qa(e)}d=H[c>>2];H[d+60>>2]=b;a=H[a+8>>2];H[c>>2]=0;b=a+(b<<2)|0;a=H[b>>2];H[b>>2]=d;if(a){Ma(a)}return}ua();X()}wa(16852);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+-64|0;da=e;a:{b:{c:{d:{e:{f:{if(!b){break f}f=ub(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=ub(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=ub(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=ub(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=e+16|0;d=gb(b,c);if((d|0)!=(b+4|0)){pc(b,d)}H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=F[e+11|0];ib(a,(d|0)<0?H[e+4>>2]:d&255);d=I[e+11|0];f=d<<24>>24<0;sa(H[a>>2],f?H[e>>2]:e,f?H[e+4>>2]:d);c=Ja(a+16|0,c);H[a+36>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;ib(a+28|0,H[a+4>>2]-H[a>>2]|0);d=H[a>>2];sa(H[a+28>>2],d,H[a+4>>2]-d|0);oc(a+40|0,b,c,a+16|0);c=H[a+28>>2];if(c){H[a+32>>2]=c;qa(c)}if(F[a+27|0]<=-1){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]<=-1){qa(H[e>>2])}if(F[e+27|0]<=-1){qa(H[e+16>>2])}if(F[e+43|0]<=-1){qa(H[e+32>>2])}if(F[e+59|0]>-1){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 $f(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=da-112|0;da=d;g=ra(120);j=H[b+8>>2];e=g;H[e+12>>2]=0;H[e+16>>2]=0;H[e>>2]=12136;H[e+4>>2]=0;H[e+20>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+56>>2]=0;H[e+60>>2]=0;H[e+8>>2]=12348;h=e- -64|0;H[h>>2]=0;H[h+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+88>>2]=0;H[e+116>>2]=0;H[e+112>>2]=c;H[e+108>>2]=j;H[e+104>>2]=0;H[e+96>>2]=0;H[e+100>>2]=0;h=H[b+12>>2];H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;i=d+32|0;f=i;H[f>>2]=0;H[f+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;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+104>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+8>>2]=12348;H[d+96>>2]=0;H[d+100>>2]=0;H[d+12>>2]=h;f=H[h>>2];k=H[h+4>>2];F[d+111|0]=0;Sa(i,(k-f>>2>>>0)/3|0,d+111|0);i=H[d+12>>2];f=H[i+28>>2];i=H[i+24>>2];F[d+111|0]=0;Sa(d+44|0,f-i>>2,d+111|0);H[d+28>>2]=e;H[d+24>>2]=j;H[d+20>>2]=c;H[d+16>>2]=h;H[e+116>>2]=b+72;c=e+8|0;b=d+8|0;vc(c,b);a:{if((b|0)==(c|0)){H[g+92>>2]=H[b+84>>2];break a}Vb(g+56|0,H[b+48>>2],H[b+52>>2]);Vb(g+68|0,H[b+60>>2],H[b- -64>>2]);Vb(g+80|0,H[b+72>>2],H[b+76>>2]);H[g+92>>2]=H[b+84>>2];eb(g+96|0,H[b+88>>2],H[b+92>>2])}H[a>>2]=g;H[d+8>>2]=12348;a=H[d+96>>2];if(a){H[d+100>>2]=a;qa(a)}a=H[d+80>>2];if(a){H[d+84>>2]=a;qa(a)}a=H[d+68>>2];if(a){H[d+72>>2]=a;qa(a)}a=H[d+56>>2];if(a){H[d+60>>2]=a;qa(a)}H[d+8>>2]=12584;a=H[d+44>>2];if(a){qa(a)}a=H[d+32>>2];if(a){qa(a)}da=d+112|0}function _e(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];h=H[a+4>>2];if((f-h|0)/12>>>0>=b>>>0){a:{if(!b){break a}g=N(b,12);d=h;f=N(b,12)-12|0;b=((f>>>0)/12|0)+1&3;if(b){while(1){e=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=e;H[d+8>>2]=H[c+8>>2];d=d+12|0;b=b-1|0;if(b){continue}break}}h=g+h|0;if(f>>>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((h|0)!=(d|0)){continue}break}}H[a+4>>2]=h;return}b:{e=H[a>>2];i=(h-e|0)/12|0;g=i+b|0;if(g>>>0<357913942){f=(f-e|0)/12|0;e=f<<1;e=f>>>0<178956970?e>>>0>>0?g:e:357913941;d=0;c:{if(!e){break c}if(e>>>0>=357913942){break b}d=ra(N(e,12))}f=d;g=N(i,12)+d|0;d=g;i=N(b,12);j=i-12|0;b=((j>>>0)/12|0)+1&3;if(b){d=g;while(1){k=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=k;H[d+8>>2]=H[c+8>>2];d=d+12|0;b=b-1|0;if(b){continue}break}}i=g+i|0;if(j>>>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((i|0)!=(d|0)){continue}break}}b=H[a>>2];c=h-b|0;d=g+N((c|0)/-12|0,12)|0;if((c|0)>=1){sa(d,b,c)}H[a+8>>2]=N(e,12)+f;H[a+4>>2]=i;H[a>>2]=d;if(b){qa(b)}return}ua();X()}wa(16301);X()}function Qk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=da-16|0;da=h;c=H[a+8>>2]-H[a+4>>2]>>2;b=H[a+40>>2];e=H[a+36>>2];d=b-e>>2;a:{if(c>>>0>d>>>0){d=c-d|0;f=H[a+44>>2];b=H[a+40>>2];if(d>>>0<=f-b>>2>>>0){c=a;if(d){e=b;b=d<<2;b=ta(e,0,b)+b|0}H[c+40>>2]=b;break a}b:{c:{d:{c=H[a+36>>2];g=b-c>>2;e=g+d|0;if(e>>>0<1073741824){f=f-c|0;i=f>>1;e=f>>2>>>0<536870911?e>>>0>i>>>0?e:i:1073741823;if(e){if(e>>>0>=1073741824){break d}j=ra(e<<2)}f=(g<<2)+j|0;g=d<<2;d=ta(f,0,g);g=d+g|0;e=(e<<2)+j|0;if((c|0)==(b|0)){break c}while(1){b=b-4|0;d=H[b>>2];H[b>>2]=0;f=f-4|0;H[f>>2]=d;if((c|0)!=(b|0)){continue}break}H[a+44>>2]=e;c=H[a+40>>2];H[a+40>>2]=g;b=H[a+36>>2];H[a+36>>2]=f;if((c|0)==(b|0)){break b}while(1){c=c-4|0;d=H[c>>2];H[c>>2]=0;if(d){fa[H[H[d>>2]+4>>2]](d)}if((c|0)!=(b|0)){continue}break}break b}ua();X()}wa(2172);X()}H[a+44>>2]=e;H[a+40>>2]=g;H[a+36>>2]=d}if(b){qa(b)}break a}if(c>>>0>=d>>>0){break a}d=e+(c<<2)|0;if((d|0)!=(b|0)){while(1){b=b-4|0;c=H[b>>2];H[b>>2]=0;if(c){fa[H[H[c>>2]+4>>2]](c)}if((b|0)!=(d|0)){continue}break}}H[a+40>>2]=d}if(H[a+8>>2]==H[a+4>>2]){b=1}else{b=0;while(1){fa[H[H[a>>2]+56>>2]](h+8|0,a,b);c=H[a+36>>2];d=H[h+8>>2];H[h+8>>2]=0;e=b<<2;f=e+c|0;c=H[f>>2];H[f>>2]=d;if(c){fa[H[H[c>>2]+4>>2]](c)}c=H[h+8>>2];H[h+8>>2]=0;if(c){fa[H[H[c>>2]+4>>2]](c)}c=H[e+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}b=(c|0)!=0}da=h+16|0;return b|0}function mg(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)>-1){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)>-1){break g}}if(!h){H[c>>2]=b;return b}H[c>>2]=d;return d+4|0}return lg(a,c,e)}f=Ca(h,g,k);if(f){break c}}if(j){break b}break a}if((f|0)>-1){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)>-1){break l}}if(!h){H[c>>2]=b;return b+4|0}H[c>>2]=d;return d}return lg(a,c,e)}H[c>>2]=b;H[d>>2]=b;return d}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,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;e=b>>>0>1?b:1;f=e&3;if(e-1>>>0>=3){e=e&-4;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(e){continue}break}}if(f){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}g=H[a+8>>2];if(!g){break b}e=a+8|0;h=H[g+4>>2];d=hl(b);c:{if(d>>>0<=1){h=b-1&h;break c}if(b>>>0>h>>>0){break c}h=(h>>>0)%(b>>>0)|0}H[H[a>>2]+(h<<2)>>2]=e;e=H[g>>2];if(!e){break b}p=b-1|0;q=d>>>0>1;while(1){c=H[e+4>>2];d:{if(!q){c=c&p;break d}if(b>>>0>c>>>0){break d}c=(c>>>0)%(b>>>0)|0}e:{if((c|0)==(h|0)){g=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];l=H[d+8>>2];d=H[d+12>>2]-l|0;f=(d|0)<1;if(f){break g}j=N(d>>>2|0,f?d:1);r=(j|0)>1?j:1;s=d>>2;m=H[e+8>>2];d=e;while(1){j=c;n=H[c+8>>2];c=0;o=1;while(1){f=n;i=H[(c<<2)+l>>2];if(I[i+84|0]){i=m}else{i=H[i+68>>2];f=H[i+(n<<2)>>2];i=H[i+(m<<2)>>2]}if((f|0)==(i|0)){c=c+1|0;o=(s|0)>(c|0);if((c|0)!=(r|0)){continue}}break}if(o){break f}d=j;c=H[d>>2];if(c){continue}break}j=0;break f}H[d>>2]=g;g=e;h=c;break e}while(1){d=c;c=H[c>>2];if(c){continue}break}}H[g>>2]=j;H[d>>2]=H[H[H[a>>2]+k>>2]>>2];H[H[H[a>>2]+k>>2]>>2]=e}e=H[g>>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(16852);X()}function xe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;e=d&3;c=0;if(d-1>>>0>=3){f=d&-4;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;f=f-4|0;if(f){continue}break}}if(e){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;e=e-1|0;if(e){continue}break}}e=H[a+8>>2];if(!e){break b}c=a+8|0;g=H[e+4>>2];d=hl(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]=c;c=H[e>>2];if(!c){break b}if(d>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){e=c;break d}d=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){e:{b=d;d=H[d>>2];if(!d|H[c+8>>2]!=H[d+8>>2]|(H[c+12>>2]!=H[d+12>>2]|H[c+16>>2]!=H[d+16>>2])){break e}if(H[c+20>>2]==H[d+20>>2]){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 d}H[i>>2]=e;e=c;g=b}c=H[e>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}f:{if((f|0)==(g|0)){e=c;break f}d=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=e;e=c;g=f;break f}while(1){g:{f=d;d=H[d>>2];if(!d|H[c+8>>2]!=H[d+8>>2]|(H[c+12>>2]!=H[d+12>>2]|H[c+16>>2]!=H[d+16>>2])){break g}if(H[c+20>>2]==H[d+20>>2]){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 b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function ae(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;e=d&3;c=0;if(d-1>>>0>=3){f=d&-4;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;f=f-4|0;if(f){continue}break}}if(e){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;e=e-1|0;if(e){continue}break}}e=H[a+8>>2];if(!e){break b}c=a+8|0;g=H[e+4>>2];d=hl(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]=c;c=H[e>>2];if(!c){break b}if(d>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){e=c;break d}d=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){e:{b=d;d=H[d>>2];if(!d|J[c+8>>1]!=J[d+8>>1]|(J[c+10>>1]!=J[d+10>>1]|J[c+12>>1]!=J[d+12>>1])){break e}if(J[c+14>>1]==J[d+14>>1]){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 d}H[i>>2]=e;e=c;g=b}c=H[e>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}f:{if((f|0)==(g|0)){e=c;break f}d=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=e;e=c;g=f;break f}while(1){g:{f=d;d=H[d>>2];if(!d|J[c+8>>1]!=J[d+8>>1]|(J[c+10>>1]!=J[d+10>>1]|J[c+12>>1]!=J[d+12>>1])){break g}if(J[c+14>>1]==J[d+14>>1]){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 b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}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;f=da-16|0;da=f;g=da-16|0;da=g;re(f);da=g+16|0;g=f;c=f;if(I[c+11|0]>>>7|0){h=(H[c+8>>2]&2147483647)-1|0}else{h=10}Sc(g,h);k=da-16|0;da=k;o=+b;if(I[c+11|0]>>>7|0){g=H[f+4>>2]}else{g=I[f+11|0]}while(1){a:{if(I[f+11|0]>>>7|0){c=H[f>>2]}else{c=f}M[k>>3]=o;p=f;m=da-16|0;da=m;H[m+12>>2]=k;i=da-160|0;da=i;sa(i+8|0,17976,144);b:{c:{j=g+1|0;if(j-1>>>0>=2147483647){if(j){break c}j=1;c=i+159|0}H[i+52>>2]=c;H[i+28>>2]=c;h=-2-c|0;n=h>>>0>>0?h:j;H[i+56>>2]=n;c=c+n|0;H[i+36>>2]=c;H[i+24>>2]=c;d=i+8|0;e=da-208|0;da=e;H[e+204>>2]=k;ta(e+160|0,0,40);H[e+200>>2]=H[e+204>>2];d:{if((Uc(0,e+200|0,e+80|0,e+160|0)|0)<0){c=-1;break d}q=H[d+76>>2]>=0;c=H[d>>2];if(F[d+74|0]<=0){H[d>>2]=c&-33}j=c&32;e:{if(H[d+48>>2]){l=Uc(d,e+200|0,e+80|0,e+160|0);break e}H[d+48>>2]=80;H[d+16>>2]=e+80;H[d+28>>2]=e;H[d+20>>2]=e;c=H[d+44>>2];H[d+44>>2]=e;h=Uc(d,e+200|0,e+80|0,e+160|0);l=h;if(!c){break e}fa[H[d+36>>2]](d,0,0)|0;H[d+48>>2]=0;H[d+44>>2]=c;H[d+28>>2]=0;H[d+16>>2]=0;c=H[d+20>>2];H[d+20>>2]=0;l=c?h:-1}h=l;c=H[d>>2];H[d>>2]=c|j;c=c&32?-1:h;if(!q){break d}}da=e+208|0;if(!n){break b}h=H[i+28>>2];F[h-((h|0)==H[i+24>>2])|0]=0;break b}H[4808]=61;c=-1}da=i+160|0;da=m+16|0;f:{if((c|0)>=0){if(c>>>0<=g>>>0){break a}g=c;break f}g=g<<1|1}Sc(p,g);continue}break}Sc(f,c);g=H[f+4>>2];H[a>>2]=H[f>>2];H[a+4>>2]=g;H[a+8>>2]=H[f+8>>2];re(f);da=k+16|0;if(I[f+11|0]>>>7|0){qa(H[f>>2])}da=f+16|0}function he(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;e=d&3;c=0;if(d-1>>>0>=3){f=d&-4;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;f=f-4|0;if(f){continue}break}}if(e){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;e=e-1|0;if(e){continue}break}}e=H[a+8>>2];if(!e){break b}c=a+8|0;g=H[e+4>>2];d=hl(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]=c;c=H[e>>2];if(!c){break b}if(d>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){e=c;break d}d=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){e:{b=d;d=H[d>>2];if(!d|I[c+8|0]!=I[d+8|0]|(I[c+9|0]!=I[d+9|0]|I[c+10|0]!=I[d+10|0])){break e}if(I[c+11|0]==I[d+11|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 d}H[i>>2]=e;e=c;g=b}c=H[e>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}f:{if((f|0)==(g|0)){e=c;break f}d=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=e;e=c;g=f;break f}while(1){g:{f=d;d=H[d>>2];if(!d|I[c+8|0]!=I[d+8|0]|(I[c+9|0]!=I[d+9|0]|I[c+10|0]!=I[d+10|0])){break g}if(I[c+11|0]==I[d+11|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 b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function ab(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=c;h=H[b+16>>2];g=H[e+4>>2]-h|0;H[e>>2]=H[e>>2]-h;H[e+4>>2]=g;e=H[d+4>>2]-h|0;f=H[d>>2]-h|0;H[d>>2]=f;H[d+4>>2]=e;i=H[b+16>>2];g=e>>31;j=g+e^g;g=f>>31;if((i|0)<(j+(g+f^g)|0)){h=H[c+4>>2];k=H[c>>2];a:{b:{if((k|0)>=0){e=1;g=1;if((h|0)>-1){break a}f=1;e=-1;g=-1;if((k|0)>=1){break b}break a}f=-1;e=-1;g=-1;if((h|0)<1){break a}}e=(h|0)<1?-1:1;g=f}f=1;j=-1;l=k<<1;k=N(g,i);l=l-k|0;g=(N(e,g)|0)>-1;e=N(e,i);H[c+4>>2]=((g?0-l|0:l)+e|0)/2;e=(h<<1)-e|0;H[c>>2]=(k+(g?0-e|0:e)|0)/2;g=H[d+4>>2];h=H[d>>2];c:{d:{if((h|0)>=0){e=1;if((g|0)>-1){break c}j=1;f=-1;e=-1;if((h|0)>=1){break d}break c}f=-1;e=-1;if((g|0)<1){break c}}f=(g|0)<1?-1:1;e=j}i=h<<1;j=H[b+16>>2];h=N(j,e);i=i-h|0;l=0-i|0;k=i;i=(N(e,f)|0)>-1;f=N(f,j);e=((i?l:k)+f|0)/2|0;H[d+4>>2]=e;f=(g<<1)-f|0;f=(h+(i?0-f|0:f)|0)/2|0;H[d>>2]=f}j=d;e:{f:{g:{h:{i:{j:{if(!f){if(e){break j}e=0;f=0;break e}if((e|0)<1?(f|0)<=-1:0){break e}if((f|0)<1){break i}if((e|0)<=-1){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)<1){break g}break h}if((e|0)>0){break h}f=H[d>>2];e=H[d+4>>2];break f}e=c;g=H[e>>2];H[e>>2]=0-H[e+4>>2];H[e+4>>2]=g;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[j>>2]=f;H[j+4>>2]=e}d=H[c+4>>2]-e|0;e=a;c=H[c>>2]-f|0;if((c|0)<=-1){c=c+H[b+4>>2]|0}H[e>>2]=c;if((d|0)<=-1){d=d+H[b+4>>2]|0}H[a+4>>2]=d}function be(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}e=ra(b<<2);c=H[a>>2];H[a>>2]=e;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;e=d&3;c=0;if(d-1>>>0>=3){f=d&-4;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;f=f-4|0;if(f){continue}break}}if(e){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;e=e-1|0;if(e){continue}break}}e=H[a+8>>2];if(!e){break b}c=a+8|0;g=H[e+4>>2];d=hl(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]=c;c=H[e>>2];if(!c){break b}if(d>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){e=c;break d}d=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=d;d=H[d>>2];if(!(!d|J[c+8>>1]!=J[d+8>>1]|J[c+10>>1]!=J[d+10>>1])){if(J[c+12>>1]==J[d+12>>1]){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 d}H[i>>2]=e;e=c;g=b}c=H[e>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|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:{f=d;d=H[d>>2];if(!d|J[c+8>>1]!=J[d+8>>1]|J[c+10>>1]!=J[d+10>>1]){break f}if(J[c+12>>1]==J[d+12>>1]){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 b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function Be(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}e=ra(b<<2);c=H[a>>2];H[a>>2]=e;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;e=d&3;c=0;if(d-1>>>0>=3){f=d&-4;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;f=f-4|0;if(f){continue}break}}if(e){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;e=e-1|0;if(e){continue}break}}e=H[a+8>>2];if(!e){break b}c=a+8|0;g=H[e+4>>2];d=hl(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]=c;c=H[e>>2];if(!c){break b}if(d>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){e=c;break d}d=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=d;d=H[d>>2];if(!(!d|H[c+8>>2]!=H[d+8>>2]|H[c+12>>2]!=H[d+12>>2])){if(H[c+16>>2]==H[d+16>>2]){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 d}H[i>>2]=e;e=c;g=b}c=H[e>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|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:{f=d;d=H[d>>2];if(!d|H[c+8>>2]!=H[d+8>>2]|H[c+12>>2]!=H[d+12>>2]){break f}if(H[c+16>>2]==H[d+16>>2]){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 b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function le(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}e=ra(b<<2);c=H[a>>2];H[a>>2]=e;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;e=d&3;c=0;if(d-1>>>0>=3){f=d&-4;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;f=f-4|0;if(f){continue}break}}if(e){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;e=e-1|0;if(e){continue}break}}e=H[a+8>>2];if(!e){break b}c=a+8|0;g=H[e+4>>2];d=hl(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]=c;c=H[e>>2];if(!c){break b}if(d>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){e=c;break d}d=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=d;d=H[d>>2];if(!(!d|I[c+8|0]!=I[d+8|0]|I[c+9|0]!=I[d+9|0])){if(I[c+10|0]==I[d+10|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 d}H[i>>2]=e;e=c;g=b}c=H[e>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|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:{f=d;d=H[d>>2];if(!d|I[c+8|0]!=I[d+8|0]|I[c+9|0]!=I[d+9|0]){break f}if(I[c+10|0]==I[d+10|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 b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function Jf(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=11428;d=H[a+336>>2];if(d){b=H[a+340>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b-12|0;e=H[c>>2];if(e){H[b-8>>2]=e;qa(e)}b=c;if((d|0)!=(b|0)){continue}break}c=H[a+336>>2]}H[a+340>>2]=d;qa(c)}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)}d=H[a+280>>2];H[a+280>>2]=0;if(d){c=d-4|0;b=H[c>>2];if(b){b=d+(b<<5)|0;while(1){b=za(b-32|0);if((d|0)!=(b|0)){continue}break}}qa(c)}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){b=H[a+176>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=H[b-20>>2];if(c){H[b-16>>2]=c;qa(c)}c=H[b-32>>2];if(c){H[b-28>>2]=c;qa(c)}ac(b-132|0);b=b-136|0;if((d|0)!=(b|0)){continue}break}c=H[a+172>>2]}H[a+176>>2]=d;qa(c)}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){d=H[b>>2];qa(b);b=d;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){sb(b)}return a|0}function de(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;f=d&3;c=0;if(d-1>>>0>=3){d=d&-4;while(1){e=c<<2;H[e+H[a>>2]>>2]=0;H[H[a>>2]+(e|4)>>2]=0;H[H[a>>2]+(e|8)>>2]=0;H[H[a>>2]+(e|12)>>2]=0;c=c+4|0;d=d-4|0;if(d){continue}break}}if(f){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}d=H[a+8>>2];if(!d){break b}c=a+8|0;g=H[d+4>>2];e=hl(b);c:{if(e>>>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]=c;c=H[d>>2];if(!c){break b}if(e>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){d=c;break d}e=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=e;e=H[b>>2];if(J[c+10>>1]==J[e+10>>1]?!(!e|J[c+8>>1]!=J[e+8>>1]):0){continue}break}H[d>>2]=e;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break d}H[i>>2]=d;d=c;g=b}c=H[d>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|0)){d=c;break e}e=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=d;d=c;g=f;break e}while(1){f:{f=e;e=H[e>>2];if(!e|J[c+8>>1]!=J[e+8>>1]){break f}if(J[c+10>>1]==J[e+10>>1]){continue}}break}H[d>>2]=e;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function Ge(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;f=d&3;c=0;if(d-1>>>0>=3){d=d&-4;while(1){e=c<<2;H[e+H[a>>2]>>2]=0;H[H[a>>2]+(e|4)>>2]=0;H[H[a>>2]+(e|8)>>2]=0;H[H[a>>2]+(e|12)>>2]=0;c=c+4|0;d=d-4|0;if(d){continue}break}}if(f){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}d=H[a+8>>2];if(!d){break b}c=a+8|0;g=H[d+4>>2];e=hl(b);c:{if(e>>>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]=c;c=H[d>>2];if(!c){break b}if(e>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){d=c;break d}e=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=e;e=H[b>>2];if(H[c+12>>2]==H[e+12>>2]?!(!e|H[c+8>>2]!=H[e+8>>2]):0){continue}break}H[d>>2]=e;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break d}H[i>>2]=d;d=c;g=b}c=H[d>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|0)){d=c;break e}e=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=d;d=c;g=f;break e}while(1){f:{f=e;e=H[e>>2];if(!e|H[c+8>>2]!=H[e+8>>2]){break f}if(H[c+12>>2]==H[e+12>>2]){continue}}break}H[d>>2]=e;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function ne(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;f=d&3;c=0;if(d-1>>>0>=3){d=d&-4;while(1){e=c<<2;H[e+H[a>>2]>>2]=0;H[H[a>>2]+(e|4)>>2]=0;H[H[a>>2]+(e|8)>>2]=0;H[H[a>>2]+(e|12)>>2]=0;c=c+4|0;d=d-4|0;if(d){continue}break}}if(f){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}d=H[a+8>>2];if(!d){break b}c=a+8|0;g=H[d+4>>2];e=hl(b);c:{if(e>>>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]=c;c=H[d>>2];if(!c){break b}if(e>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){d=c;break d}e=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=e;e=H[b>>2];if(I[c+9|0]==I[e+9|0]?!(!e|I[c+8|0]!=I[e+8|0]):0){continue}break}H[d>>2]=e;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break d}H[i>>2]=d;d=c;g=b}c=H[d>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|0)){d=c;break e}e=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=d;d=c;g=f;break e}while(1){f:{f=e;e=H[e>>2];if(!e|I[c+8|0]!=I[e+8|0]){break f}if(I[c+9|0]==I[e+9|0]){continue}}break}H[d>>2]=e;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function Tf(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){Ea(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){Ea(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){Ea(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 hf(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=da-16|0;da=g;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}c=H[H[f+(c<<2)>>2]+60>>2];a=ra(28);Wc(a,d);H[a+24>>2]=c;b=H[b+4>>2];H[g+8>>2]=a;a=g+8|0;d=H[a>>2];b:{if(!d){break b}c=H[b+28>>2];if(c>>>0>2]){H[a>>2]=0;H[c>>2]=d;H[b+28>>2]=c+4;break b}c=0;c:{d:{e:{e=H[b+24>>2];f=H[b+28>>2]-e>>2;d=f+1|0;if(d>>>0<1073741824){e=H[b+32>>2]-e|0;h=e>>1;e=e>>2>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;if(e){if(e>>>0>=1073741824){break e}c=ra(e<<2)}h=H[a>>2];H[a>>2]=0;d=(f<<2)+c|0;H[d>>2]=h;e=(e<<2)+c|0;f=d+4|0;a=H[b+24>>2];c=H[b+28>>2];if((a|0)==(c|0)){break d}while(1){c=c-4|0;h=H[c>>2];H[c>>2]=0;d=d-4|0;H[d>>2]=h;if((a|0)!=(c|0)){continue}break}H[b+32>>2]=e;c=H[b+28>>2];H[b+28>>2]=f;a=H[b+24>>2];H[b+24>>2]=d;if((a|0)==(c|0)){break c}while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){qb(b+12|0,H[b+16>>2]);pb(b,H[b+4>>2]);qa(b)}if((a|0)!=(c|0)){continue}break}break c}ua();X()}wa(16708);X()}H[b+32>>2]=e;H[b+28>>2]=f;H[b+24>>2]=d}if(a){qa(a)}}a=H[g+8>>2];H[g+8>>2]=0;e=1;if(!a){break a}qb(a+12|0,H[a+16>>2]);pb(a,H[a+4>>2]);qa(a)}da=g+16|0;return e|0}function Ff(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;f=d&3;c=0;if(d-1>>>0>=3){d=d&-4;while(1){e=c<<2;H[e+H[a>>2]>>2]=0;H[H[a>>2]+(e|4)>>2]=0;H[H[a>>2]+(e|8)>>2]=0;H[H[a>>2]+(e|12)>>2]=0;c=c+4|0;d=d-4|0;if(d){continue}break}}if(f){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}d=H[a+8>>2];if(!d){break b}c=a+8|0;g=H[d+4>>2];e=hl(b);c:{if(e>>>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]=c;c=H[d>>2];if(!c){break b}if(e>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){d=c;break d}e=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=e;e=H[b>>2];if(H[c+8>>2]==H[e+8>>2]?e:0){continue}break}H[d>>2]=e;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break d}H[i>>2]=d;d=c;g=b}c=H[d>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|0)){d=c;break e}e=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=d;d=c;g=f;break e}while(1){f=e;e=H[e>>2];if(H[c+8>>2]==H[e+8>>2]?e:0){continue}break}H[d>>2]=e;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(11712);X()}function ee(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;f=d&3;c=0;if(d-1>>>0>=3){d=d&-4;while(1){e=c<<2;H[e+H[a>>2]>>2]=0;H[H[a>>2]+(e|4)>>2]=0;H[H[a>>2]+(e|8)>>2]=0;H[H[a>>2]+(e|12)>>2]=0;c=c+4|0;d=d-4|0;if(d){continue}break}}if(f){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}d=H[a+8>>2];if(!d){break b}c=a+8|0;g=H[d+4>>2];e=hl(b);c:{if(e>>>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]=c;c=H[d>>2];if(!c){break b}if(e>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){d=c;break d}e=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=e;e=H[b>>2];if(J[c+8>>1]==J[e+8>>1]?e:0){continue}break}H[d>>2]=e;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break d}H[i>>2]=d;d=c;g=b}c=H[d>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|0)){d=c;break e}e=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=d;d=c;g=f;break e}while(1){f=e;e=H[e>>2];if(J[c+8>>1]==J[e+8>>1]?e:0){continue}break}H[d>>2]=e;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function Le(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;f=d&3;c=0;if(d-1>>>0>=3){d=d&-4;while(1){e=c<<2;H[e+H[a>>2]>>2]=0;H[H[a>>2]+(e|4)>>2]=0;H[H[a>>2]+(e|8)>>2]=0;H[H[a>>2]+(e|12)>>2]=0;c=c+4|0;d=d-4|0;if(d){continue}break}}if(f){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}d=H[a+8>>2];if(!d){break b}c=a+8|0;g=H[d+4>>2];e=hl(b);c:{if(e>>>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]=c;c=H[d>>2];if(!c){break b}if(e>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){d=c;break d}e=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=e;e=H[b>>2];if(H[c+8>>2]==H[e+8>>2]?e:0){continue}break}H[d>>2]=e;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break d}H[i>>2]=d;d=c;g=b}c=H[d>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|0)){d=c;break e}e=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=d;d=c;g=f;break e}while(1){f=e;e=H[e>>2];if(H[c+8>>2]==H[e+8>>2]?e:0){continue}break}H[d>>2]=e;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function te(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=b>>>0>1?b:1;f=d&3;c=0;if(d-1>>>0>=3){d=d&-4;while(1){e=c<<2;H[e+H[a>>2]>>2]=0;H[H[a>>2]+(e|4)>>2]=0;H[H[a>>2]+(e|8)>>2]=0;H[H[a>>2]+(e|12)>>2]=0;c=c+4|0;d=d-4|0;if(d){continue}break}}if(f){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;f=f-1|0;if(f){continue}break}}d=H[a+8>>2];if(!d){break b}c=a+8|0;g=H[d+4>>2];e=hl(b);c:{if(e>>>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]=c;c=H[d>>2];if(!c){break b}if(e>>>0<=1){h=b-1|0;while(1){b=h&H[c+4>>2];d:{if((b|0)==(g|0)){d=c;break d}e=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=e;e=H[b>>2];if(I[c+8|0]==I[e+8|0]?e:0){continue}break}H[d>>2]=e;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break d}H[i>>2]=d;d=c;g=b}c=H[d>>2];if(c){continue}break}break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((f|0)==(g|0)){d=c;break e}e=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=d;d=c;g=f;break e}while(1){f=e;e=H[e>>2];if(I[c+8|0]==I[e+8|0]?e:0){continue}break}H[d>>2]=e;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1352);X()}function Fb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=da-32|0;da=e;f=a+16|0;c=H[f>>2];a:{b:{if(!c){break b}g=H[b>>2];d=f;while(1){i=(g|0)>H[c+16>>2];d=i?d:c;c=H[(i<<2)+c>>2];if(c){continue}break}if((d|0)==(f|0)){break b}if((g|0)>=H[d+16>>2]){break a}}c=e+16|0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=c+4;i=c;b=H[b>>2];j=e+8|0;H[j>>2]=0;H[j+4>>2]=0;H[e>>2]=b;H[e+4>>2]=j;d=H[c>>2];h=c+4|0;if((d|0)!=(h|0)){g=e|4;while(1){b=d;c=d+16|0;ng(g,j,c,c);c=H[d+4>>2];c:{if(!c){d=H[b+8>>2];if((b|0)==H[d>>2]){break c}c=b+8|0;while(1){b=H[c>>2];c=b+8|0;d=H[b+8>>2];if((b|0)!=H[d>>2]){continue}break}break c}while(1){d=c;c=H[c>>2];if(c){continue}break}}if((d|0)!=(h|0)){continue}break}}c=H[f>>2];d:{if(c){f=a+16|0;g=H[e>>2];while(1){b=H[c+16>>2];e:{if((b|0)>(g|0)){d=H[c>>2];if(d){break e}f=c;break d}if((b|0)>=(g|0)){break d}f=c+4|0;d=H[c+4>>2];if(!d){break d}c=f}f=c;c=d;continue}}c=f}d=H[f>>2];if(!d){d=ra(32);H[d+16>>2]=H[e>>2];H[d+20>>2]=H[e+4>>2];h=d+24|0;g=H[e+8>>2];H[h>>2]=g;b=H[e+12>>2];H[d+28>>2]=b;f:{if(!b){H[d+20>>2]=h;break f}H[g+8>>2]=h;H[e+8>>2]=0;H[e+12>>2]=0;H[e+4>>2]=j}H[d+8>>2]=c;H[d>>2]=0;H[d+4>>2]=0;H[f>>2]=d;c=H[H[a+12>>2]>>2];b=d;g:{if(!c){break g}H[a+12>>2]=c;b=H[f>>2]}yb(H[a+16>>2],b);H[a+20>>2]=H[a+20>>2]+1}Oa(e|4,H[e+8>>2]);Oa(i,H[i+4>>2])}da=e+32|0;return d+20|0}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,k=0;h=da-16|0;da=h;d=H[c>>2];H[c>>2]=0;H[h+8>>2]=d;Oe(a,b,h+8|0);c=H[h+8>>2];H[h+8>>2]=0;if(c){Ma(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){f=b-d|0;e=H[a+92>>2];c=H[a+88>>2];if(f>>>0<=e-c>>2>>>0){b:{if(!f){break b}b=c;d=(f<<2)-4|0;e=(d>>>2|0)+1&7;if(e){while(1){H[b>>2]=1;b=b+4|0;e=e-1|0;if(e){continue}break}}c=(f<<2)+c|0;if(d>>>0<28){break b}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 a}c:{i=H[a+84>>2];j=c-i|0;d=j>>2;b=d+f|0;if(b>>>0<1073741824){e=e-i|0;g=e>>1;g=e>>2>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;c=0;d:{if(!g){break d}if(g>>>0>=1073741824){break c}c=ra(g<<2)}d=c+(d<<2)|0;b=d;f=f<<2;k=f-4|0;e=(k>>>2|0)+1&7;if(e){b=d;while(1){H[b>>2]=1;b=b+4|0;e=e-1|0;if(e){continue}break}}d=d+f|0;if(k>>>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((d|0)!=(b|0)){continue}break}}if((j|0)>=1){sa(c,i,j)}H[a+92>>2]=(g<<2)+c;H[a+88>>2]=d;H[a+84>>2]=c;if(i){qa(i)}break a}ua();X()}wa(16568);X()}if(b>>>0>=d>>>0){break a}H[a+88>>2]=c+(b<<2)}da=h+16|0}function fg(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;f=H[b+28>>2];g=H[b+24>>2];H[a+8>>2]=g;H[a+12>>2]=f;f=H[b+20>>2];H[a>>2]=H[b+16>>2];H[a+4>>2]=f;f=H[b+36>>2];H[a+16>>2]=H[b+32>>2];H[a+20>>2]=f;H[a+8>>2]=d+g;a:{b:{if((d|0)>=1){f=H[b>>2];while(1){i=H[b+4>>2]-f>>2;g=H[(h<<2)+c>>2];c:{if(i>>>0>g>>>0){break c}H[l+12>>2]=0;j=g+1|0;if(j>>>0>i>>>0){Bb(b,j-i|0,l+12|0);f=H[b>>2];break c}if(i>>>0<=j>>>0){break c}H[b+4>>2]=(j<<2)+f}j=(g<<2)+f|0;i=H[j>>2];d:{if((i|0)>=2){k=+(i|0);k=ya(k)*k;break d}k=0;if(i){break d}H[a+16>>2]=H[a+16>>2]+1;if(g>>>0<=K[a+12>>2]){break d}H[a+12>>2]=g}g=i+1|0;H[j>>2]=g;m=+(g|0);n=a,o=ya(m)*m-k+M[a>>3],M[n>>3]=o;h=h+1|0;if((h|0)!=(d|0)){continue}break}if(e){break b}if((d|0)<1){break a}e=d&3;a=H[b>>2];h=0;if(d-1>>>0>=3){f=d&-4;while(1){b=h<<2;d=a+(H[b+c>>2]<<2)|0;H[d>>2]=H[d>>2]-1;d=a+(H[(b|4)+c>>2]<<2)|0;H[d>>2]=H[d>>2]-1;d=a+(H[(b|8)+c>>2]<<2)|0;H[d>>2]=H[d>>2]-1;b=a+(H[(b|12)+c>>2]<<2)|0;H[b>>2]=H[b>>2]-1;h=h+4|0;f=f-4|0;if(f){continue}break}}if(!e){break a}while(1){b=a+(H[(h<<2)+c>>2]<<2)|0;H[b>>2]=H[b>>2]-1;h=h+1|0;e=e-1|0;if(e){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 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;f=da-16|0;da=f;Ga(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+(g<<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+g<<3)|0)+8>>2]){d=c;break d}d=c+1|0;if(H[(e+(g+d<<3)|0)+8>>2]){break d}d=c+2|0;if(H[(e+(g+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((c|0)<0?1:(c|0)<=0?!H[b+16>>2]:0){va(b,H[b+4>>2],f+15|0,n)}g=d+g|0;break b}F[f+14|0]=i<<2|d;e=H[b+20>>2];if((e|0)<0?1:(e|0)<=0?!H[b+16>>2]:0){va(b,H[b+4>>2],f+14|0,m)}if(!c){break b}k=1;o=d>>>0>1?d:1;while(1){e:{l=i>>>(k<<3)-2|0;F[f+13|0]=l;d=H[b+20>>2];f:{if((d|0)>0?1:(d|0)>=0?H[b+16>>2]:0){break f}c=H[b+8>>2];d=H[b+4>>2];if((c-d|0)>=1){F[d|0]=I[f+13|0];H[b+4>>2]=d+1;break f}j=H[b>>2];d=d-j|0;h=d+1|0;if((h|0)<=-1){break e}c=c-j|0;e=c<<1;h=c>>>0<1073741823?e>>>0>>0?h:e:2147483647;c=0;g:{if(!h){break g}c=ra(h)}e=c+d|0;F[e|0]=l;if((d|0)>=1){sa(c,j,d)}H[b+8>>2]=c+h;H[b+4>>2]=e+1;H[b>>2]=c;if(!j){break f}qa(j)}if((k|0)==(o|0)){break b}k=k+1|0;continue}break}ua();X()}c=1;g=g+1|0;if(g>>>0>2]){continue}break}}da=f+16|0}function Lk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=H[a+16>>2];a:{if(H[a+20>>2]-f>>2<=(b|0)){break a}h=H[f+(b<<2)>>2];if((h|0)<0){break a}if(K[a+52>>2]<=h>>>0){b:{b=da-16|0;da=b;c:{d=H[a+52>>2];c=h+1|0;d:{if(d>>>0>>0){f=c-d|0;g=H[a+56>>2];e=g<<5;e:{if(!(f>>>0>e>>>0|d>>>0>e-f>>>0)){H[a+52>>2]=c;c=d&31;d=H[a+48>>2]+(d>>>3&536870908)|0;break e}H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;if((c|0)<=-1){break c}d=b;if(e>>>0<=1073741822){c=c+31&-32;e=g<<6;c=c>>>0>e>>>0?c:e}else{c=2147483647}Kb(d,c);c=H[a+52>>2];H[b+4>>2]=c+f;e=H[a+48>>2];d=H[b>>2];f:{if((c|0)<1){c=0;break f}i=c>>>5|0;g=i<<2;d=Ha(d,e,g)+g|0;c=c-(i<<5)|0;g:{if((c|0)<1){c=0;break g}i=-1>>>32-c|0;H[d>>2]=H[d>>2]&(i^-1)|i&H[e+g>>2]}e=H[a+48>>2]}H[a+48>>2]=H[b>>2];H[b>>2]=e;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(!e){break e}qa(e)}if(!f){break d}if(c){e=32-c|0;g=e>>>0>f>>>0?f:e;H[d>>2]=H[d>>2]&(-1<>>e-g^-1);f=f-g|0;d=d+4|0}c=d;d=f>>>5<<2;c=ta(c,0,d);f=f&31;if(!f){break d}d=d+c|0;H[d>>2]=H[d>>2]&(-1>>>32-f^-1);break d}H[a+52>>2]=c}da=b+16|0;break b}ua();X()}}d=1;b=H[a+48>>2]+(h>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2];a=H[a+36>>2];if(b-a>>2>>>0<=h>>>0){break a}F[H[a+(h<<2)>>2]+28|0]=1}return d|0}function Hi(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]<=-1){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[13173]|I[13174]<<8|(I[13175]<<16|I[13176]<<24);e=I[13169]|I[13170]<<8|(I[13171]<<16|I[13172]<<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[13168]|I[13169]<<8|(I[13170]<<16|I[13171]<<24);e=I[13164]|I[13165]<<8|(I[13166]<<16|I[13167]<<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[13160]|I[13161]<<8|(I[13162]<<16|I[13163]<<24);e=I[13156]|I[13157]<<8|(I[13158]<<16|I[13159]<<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[13152]|I[13153]<<8|(I[13154]<<16|I[13155]<<24);e=I[13148]|I[13149]<<8|(I[13150]<<16|I[13151]<<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=Tb(g,f,0);if(F[f+11|0]<=-1){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 Yf(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:{b:{c=H[a+12>>2];b=H[c+4>>2]-H[c>>2]|0;if(!b){break b}i=a+140|0;g=b>>31;e=(g+b^g)>>>2|0;b=(b|0)>-1?b:-1;b=N(e,(b|0)<1?b:1);j=b>>>0>1?b:1;g=0;while(1){c:{if(rc(c,(g>>>0)/3|0)){break c}b=H[a+12>>2];if(H[H[b+12>>2]+(g<<2)>>2]!=-1){break c}e=H[a+152>>2];c=e;f=g+1|0;f=(f>>>0)%3|0?f:g-2|0;if((f|0)!=-1){b=H[H[b>>2]+(f<<2)>>2]}else{b=-1}h=b<<2;if(H[c+h>>2]!=-1){break c}c=a;f=H[a+144>>2];d=H[a+148>>2];d:{if((f|0)!=d<<5){d=1;b=f;break d}if((f+1|0)<=-1){break a}b=i;if(f>>>0<=1073741822){e=f+32&-32;d=d<<6;e=d>>>0>>0?e:d}else{e=2147483647}Kb(b,e);e=H[a+152>>2];d=H[h+e>>2]==-1;b=H[a+144>>2]}H[c+144>>2]=b+1;c=H[a+140>>2]+(b>>>3&536870908)|0;k=H[c>>2];l=c,m=il(-2,b)&k,H[l>>2]=m;if(!d){break c}c=e+h|0;h=H[a+12>>2];b=g;while(1){H[c>>2]=f;e:{f:{if((b|0)==-1){break f}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break f}d=H[h+12>>2];while(1){c=H[d+(b<<2)>>2];if((c|0)!=-1){b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){continue}break f}break}d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;c=e-4|0;if((d|0)==-1){break e}c=(H[H[h>>2]+(d<<2)>>2]<<2)+e|0;break e}b=-1;c=e-4|0}if(H[c>>2]==-1){continue}break}}g=g+1|0;if((j|0)==(g|0)){break b}c=H[a+12>>2];continue}}return 1}ua();X()}function Lh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=H[a>>2];e=da-16|0;da=e;a=ra(16);H[e>>2]=a;H[e+4>>2]=14;H[e+8>>2]=-2147483632;F[a+14|0]=0;d=I[10718]|I[10719]<<8|(I[10720]<<16|I[10721]<<24);f=I[10714]|I[10715]<<8|(I[10716]<<16|I[10717]<<24);F[a+6|0]=f;F[a+7|0]=f>>>8;F[a+8|0]=f>>>16;F[a+9|0]=f>>>24;F[a+10|0]=d;F[a+11|0]=d>>>8;F[a+12|0]=d>>>16;F[a+13|0]=d>>>24;d=I[10712]|I[10713]<<8|(I[10714]<<16|I[10715]<<24);f=I[10708]|I[10709]<<8|(I[10710]<<16|I[10711]<<24);F[a|0]=f;F[a+1|0]=f>>>8;F[a+2|0]=f>>>16;F[a+3|0]=f>>>24;F[a+4|0]=d;F[a+5|0]=d>>>8;F[a+6|0]=d>>>16;F[a+7|0]=d>>>24;f=g+4|0;_a(f,e,b);if(F[e+11|0]<=-1){qa(H[e>>2])}a=ra(16);H[e>>2]=a;H[e+4>>2]=14;H[e+8>>2]=-2147483632;F[a+14|0]=0;b=I[10733]|I[10734]<<8|(I[10735]<<16|I[10736]<<24);d=I[10729]|I[10730]<<8|(I[10731]<<16|I[10732]<<24);F[a+6|0]=d;F[a+7|0]=d>>>8;F[a+8|0]=d>>>16;F[a+9|0]=d>>>24;F[a+10|0]=b;F[a+11|0]=b>>>8;F[a+12|0]=b>>>16;F[a+13|0]=b>>>24;b=I[10727]|I[10728]<<8|(I[10729]<<16|I[10730]<<24);d=I[10723]|I[10724]<<8|(I[10725]<<16|I[10726]<<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(f,e,c);if(F[e+11|0]<=-1){qa(H[e>>2])}da=e+16|0}function Vh(a,b,c){a=a|0;b=b|0;c=c|0;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[10446]|I[10447]<<8|(I[10448]<<16|I[10449]<<24);e=I[10442]|I[10443]<<8|(I[10444]<<16|I[10445]<<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[10440]|I[10441]<<8|(I[10442]<<16|I[10443]<<24);e=I[10436]|I[10437]<<8|(I[10438]<<16|I[10439]<<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;_a(d,f,b);if(F[f+11|0]<=-1){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[10461]|I[10462]<<8|(I[10463]<<16|I[10464]<<24);b=I[10457]|I[10458]<<8|(I[10459]<<16|I[10460]<<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[10455]|I[10456]<<8|(I[10457]<<16|I[10458]<<24);b=I[10451]|I[10452]<<8|(I[10453]<<16|I[10454]<<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;_a(d,f,c);if(F[f+11|0]<=-1){qa(H[f>>2])}da=f+16|0}function Jd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{c=H[a+8>>2];d=H[a>>2];if(c-d>>3>>>0>=2){g=H[a+4>>2];i=g-d>>3;h=i>>>0<2?i:2;b:{if(!h){break b}f=h-1|0;j=h&7;c:{if(!j){c=d;break c}c=d;while(1){e=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=e;h=h-1|0;c=c+8|0;j=j-1|0;if(j){continue}break}}if(f>>>0<7){break b}while(1){e=b;f=H[e+4>>2];H[c>>2]=H[e>>2];H[c+4>>2]=f;f=H[e+4>>2];H[c+8>>2]=H[e>>2];H[c+12>>2]=f;f=H[e+4>>2];H[c+16>>2]=H[e>>2];H[c+20>>2]=f;f=H[e+4>>2];H[c+24>>2]=H[e>>2];H[c+28>>2]=f;f=H[e+4>>2];H[c+32>>2]=H[e>>2];H[c+36>>2]=f;f=H[e+4>>2];H[c+40>>2]=H[e>>2];H[c+44>>2]=f;f=H[e+4>>2];H[c+48>>2]=H[e>>2];H[c+52>>2]=f;f=H[e+4>>2];H[c+56>>2]=H[e>>2];H[c+60>>2]=f;c=c- -64|0;h=h-8|0;if(h){continue}break}}if(i>>>0<2){d=a;a=2-i|0;if(a){a=(a<<3)+g|0;while(1){c=H[b+4>>2];H[g>>2]=H[b>>2];H[g+4>>2]=c;g=g+8|0;if((a|0)!=(g|0)){continue}break}}else{a=g}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];g=H[b+4>>2];c=d;b=2;while(1){H[c>>2]=e;H[c+4>>2]=g;c=c+8|0;b=b-1|0;if(b){continue}break}break a}ua();X()}H[a+4>>2]=d+16}function Cb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=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}j=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;i=i-1|0;if(i){continue}break}}if(j>>>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;f=(g>>>2|0)+1&7;if(f){while(1){H[d>>2]=c;d=d+4|0;f=f-1|0;if(f){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 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[1830]|I[1831]<<8|(I[1832]<<16|I[1833]<<24);d=I[1826]|I[1827]<<8|(I[1828]<<16|I[1829]<<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[1824]|I[1825]<<8|(I[1826]<<16|I[1827]<<24);d=I[1820]|I[1821]<<8|(I[1822]<<16|I[1823]<<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=hb(a,e,-1);if(F[e+11|0]<=-1){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[1845]|I[1846]<<8|(I[1847]<<16|I[1848]<<24);d=I[1841]|I[1842]<<8|(I[1843]<<16|I[1844]<<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[1839]|I[1840]<<8|(I[1841]<<16|I[1842]<<24);d=I[1835]|I[1836]<<8|(I[1837]<<16|I[1838]<<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=hb(a,e,-1);if(F[e+11|0]<=-1){qa(H[e>>2])}da=e+16|0;a=(a|0)>(f|0)?a:f;return(a|0)==-1?5:a}function Ae(a){var b=0,c=0,d=0,e=0,f=0;a:{b:{c:{b=H[a+4>>2];d:{if(b>>>0>2]){H[a+4>>2]=b+1;b=I[b|0];break d}b=Ra(a)}switch(b-43|0){case 0:case 2:break b;default:break c}}d=b-48|0;break a}f=(b|0)==45;b=H[a+4>>2];e:{if(b>>>0>2]){H[a+4>>2]=b+1;b=I[b|0];break e}b=Ra(a)}d=b-48|0;if(!(d>>>0<10|!H[a+104>>2])){H[a+4>>2]=H[a+4>>2]-1}}f:{if(d>>>0<=9){d=0;while(1){c=(b+d|0)-48|0;d=(c|0)>214748363;b=H[a+4>>2];g:{if(b>>>0>2]){H[a+4>>2]=b+1;b=I[b|0];break g}b=Ra(a)}e=b-48|0;if(!(d|e>>>0>9)){d=N(c,10);continue}break}d=c;c=c>>31;h:{if(e>>>0>=10){break h}while(1){c=el(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];i:{if(b>>>0>2]){H[a+4>>2]=b+1;b=I[b|0];break i}b=Ra(a)}e=b-48|0;if(e>>>0>9){break h}if((c|0)<21474836?1:(c|0)<=21474836?d>>>0<2061584302:0){continue}break}}if(e>>>0<10){while(1){b=H[a+4>>2];j:{if(b>>>0>2]){H[a+4>>2]=b+1;b=I[b|0];break j}b=Ra(a)}if(b-48>>>0<10){continue}break}}if(H[a+104>>2]){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 f}d=0;c=-2147483648;if(!H[a+104>>2]){break f}H[a+4>>2]=H[a+4>>2]-1;ea=-2147483648;return 0}ea=c;return d}function Yd(a,b){var c=0,d=0,e=0,f=0;d=da-16|0;da=d;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;a:{if(b){if(b>>>0>=1073741824){break a}c=b<<2;e=ra(c);H[a+104>>2]=e;f=c+e|0;H[a+112>>2]=f;ta(e,0,c);H[a+108>>2]=f}H[a+116>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;if(b){c=b<<2;e=ra(c);H[a+116>>2]=e;f=c+e|0;H[a+124>>2]=f;ta(e,0,c);H[a+120>>2]=f}H[a+128>>2]=0;H[a+132>>2]=0;H[a+136>>2]=0;if(b){c=b<<2;e=ra(c);H[a+128>>2]=e;f=c+e|0;H[a+136>>2]=f;ta(e,0,c);H[a+132>>2]=f}H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;if(b){c=b<<2;e=ra(c);H[d>>2]=e;f=c+e|0;H[d+8>>2]=f;ta(e,0,c);H[d+4>>2]=f}e=b<<5|1;Ob(a+140|0,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}Ob(a+152|0,e,d);b=H[d>>2];if(b){H[d+4>>2]=b;qa(b)}da=d+16|0;return a}ua();X()}function Ub(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{f=H[a+124>>2];c:{if(!f){break c}e=H[a+120>>2];i=hl(f);h=f-1&d;d:{if(i>>>0<=1){break d}h=d;if(d>>>0>>0){break d}h=(d>>>0)%(f>>>0)|0}g=H[e+(h<<2)>>2];if(!g){break c}e=H[g>>2];if(!e){break c}e:{if(i>>>0<=1){g=f-1|0;while(1){f=H[e+4>>2];f:{if((f|0)!=(d|0)){if((h|0)==(f&g)){break f}break c}if(H[e+8>>2]==(d|0)){break e}}e=H[e>>2];if(e){continue}break}break c}while(1){g=H[e+4>>2];g:{if((g|0)!=(d|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((g|0)==(h|0)){break g}break c}if(H[e+8>>2]==(d|0)){break e}}e=H[e>>2];if(e){continue}break}break c}f=H[e+12>>2];if((f|0)==-1){break c}i=c&1;c=H[a+112>>2];if((c|0)!=H[a+116>>2]){F[c+8|0]=i;H[c+4>>2]=b;H[c>>2]=f;H[a+112>>2]=c+12;return}g=H[a+108>>2];h=c-g|0;d=(h|0)/12|0;e=d+1|0;if(e>>>0>=357913942){break b}c=d<<1;e=d>>>0<178956970?c>>>0>>0?e:c:357913941;c=0;h:{if(!e){break h}if(e>>>0>=357913942){break a}c=ra(N(e,12))}d=c+N(d,12)|0;F[d+8|0]=i;H[d+4>>2]=b;H[d>>2]=f;b=d+N((h|0)/-12|0,12)|0;if((h|0)>=1){sa(b,g,h)}H[a+116>>2]=c+N(e,12);H[a+112>>2]=d+12;H[a+108>>2]=b;if(!g){break c}qa(g)}return}ua();X()}wa(11712);X()}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|0)<1){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 Kf(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=11196;d=H[a+280>>2];H[a+280>>2]=0;if(d){c=d-4|0;b=H[c>>2];if(b){b=(b<<5)+d|0;while(1){b=za(b-32|0);if((d|0)!=(b|0)){continue}break}}qa(c)}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){b=H[a+176>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=H[b-20>>2];if(c){H[b-16>>2]=c;qa(c)}c=H[b-32>>2];if(c){H[b-28>>2]=c;qa(c)}ac(b-132|0);c=b-136|0;b=c;if((d|0)!=(b|0)){continue}break}c=H[a+172>>2]}H[a+176>>2]=d;qa(c)}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){d=H[b>>2];qa(b);b=d;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){sb(b)}return a|0}function Va(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}f=b<<2;d=e;g=(b<<2)-4|0;b=(g>>>2|0)+1&7;if(b){while(1){H[d>>2]=H[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}e=e+f|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];j=e-g|0;i=j>>2;d=i+b|0;if(d>>>0<1073741824){f=f-g|0;h=f>>1;h=f>>2>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;e=0;c:{if(!h){break c}if(h>>>0>=1073741824){break b}e=ra(h<<2)}f=e+(i<<2)|0;d=f;i=b<<2;k=i-4|0;b=(k>>>2|0)+1&7;if(b){d=f;while(1){H[d>>2]=H[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}b=f+i|0;if(k>>>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((j|0)>=1){sa(e,g,j)}H[a+8>>2]=e+(h<<2);H[a+4>>2]=b;H[a>>2]=e;if(g){qa(g)}return}ua();X()}wa(1352);X()}function Bb(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}f=b<<2;d=e;g=(b<<2)-4|0;b=(g>>>2|0)+1&7;if(b){while(1){H[d>>2]=H[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}e=e+f|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];j=e-g|0;i=j>>2;d=i+b|0;if(d>>>0<1073741824){f=f-g|0;h=f>>1;h=f>>2>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;e=0;c:{if(!h){break c}if(h>>>0>=1073741824){break b}e=ra(h<<2)}f=e+(i<<2)|0;d=f;i=b<<2;k=i-4|0;b=(k>>>2|0)+1&7;if(b){d=f;while(1){H[d>>2]=H[c>>2];d=d+4|0;b=b-1|0;if(b){continue}break}}b=f+i|0;if(k>>>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((j|0)>=1){sa(e,g,j)}H[a+8>>2]=e+(h<<2);H[a+4>>2]=b;H[a>>2]=e;if(g){qa(g)}return}ua();X()}wa(1520);X()}function _a(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=da-48|0;da=f;h=da-32|0;da=h;d=h+21|0;e=h+32|0;if(!((d|0)==(e|0)|(c|0)>-1)){F[d|0]=45;d=d+1|0;c=0-c|0}m=h;a:{b:{i=e-d|0;if((i|0)<=9){g=N(32-Q(c|1)|0,1233)>>>12|0;if((i|0)<((g-(K[(g<<2)+18416>>2]>c>>>0)|0)+1|0)){break b}}g=h;c:{if(c>>>0<=99999999){d:{if(c>>>0<=9999){c=oe(d,c);break d}e=d;d=(c>>>0)/1e4|0;c=lc(oe(e,d),c-N(d,1e4)|0)}break c}i=(c>>>0)/1e8|0;c=c-N(i,1e8)|0;e=(c>>>0)/1e4|0;c=lc(lc(pe(d,i),e),c-N(e,1e4)|0)}H[g+8>>2]=c;c=0;break a}H[h+8>>2]=e;c=61}H[m+12>>2]=c;e=da-16|0;da=e;l=da-16|0;da=l;c=f+8|0;e:{i=H[h+8>>2];k=h+21|0;j=i-k|0;if(j>>>0<=4294967279){f:{if(j>>>0<=10){F[c+11|0]=j;d=c;break f}m=c;if(j>>>0>=11){g=j+16&-16;d=g-1|0;d=(d|0)==11?g:d}else{d=10}g=d+1|0;d=ra(g);H[m>>2]=d;H[c+8>>2]=g|-2147483648;H[c+4>>2]=j}while(1){if((i|0)!=(k|0)){F[d|0]=I[k|0];d=d+1|0;k=k+1|0;continue}break}F[l+15|0]=0;F[d|0]=I[l+15|0];da=l+16|0;break e}lb();X()}da=e+16|0;da=h+32|0;H[f+32>>2]=b;Id(f+40|0,a,b,f+32|0);b=H[f+40>>2];if(F[b+39|0]<=-1){qa(H[b+28>>2])}a=H[f+12>>2];H[b+28>>2]=H[f+8>>2];H[b+32>>2]=a;H[b+36>>2]=H[f+16>>2];da=f+48|0}function Xe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[a+8>>2];d=H[a+4>>2];if(e-d>>2>>>0>=b>>>0){a:{if(!b){break a}e=b<<2;c=d;f=(b<<2)-4|0;b=(f>>>2|0)+1&7;if(b){while(1){H[c>>2]=H[4108];c=c+4|0;b=b-1|0;if(b){continue}break}}d=d+e|0;if(f>>>0<28){break a}while(1){H[c>>2]=H[4108];H[c+4>>2]=H[4108];H[c+8>>2]=H[4108];H[c+12>>2]=H[4108];H[c+16>>2]=H[4108];H[c+20>>2]=H[4108];H[c+24>>2]=H[4108];H[c+28>>2]=H[4108];c=c+32|0;if((d|0)!=(c|0)){continue}break}}H[a+4>>2]=d;return}b:{f=H[a>>2];i=d-f|0;h=i>>2;c=h+b|0;if(c>>>0<1073741824){e=e-f|0;g=e>>1;g=e>>2>>>0<536870911?c>>>0>g>>>0?c:g:1073741823;d=0;c:{if(!g){break c}if(g>>>0>=1073741824){break b}d=ra(g<<2)}e=d+(h<<2)|0;c=e;h=b<<2;j=h-4|0;b=(j>>>2|0)+1&7;if(b){c=e;while(1){H[c>>2]=H[4108];c=c+4|0;b=b-1|0;if(b){continue}break}}b=e+h|0;if(j>>>0>=28){while(1){H[c>>2]=H[4108];H[c+4>>2]=H[4108];H[c+8>>2]=H[4108];H[c+12>>2]=H[4108];H[c+16>>2]=H[4108];H[c+20>>2]=H[4108];H[c+24>>2]=H[4108];H[c+28>>2]=H[4108];c=c+32|0;if((b|0)!=(c|0)){continue}break}}if((i|0)>=1){sa(d,f,i)}H[a+8>>2]=d+(g<<2);H[a+4>>2]=b;H[a>>2]=d;if(f){qa(f)}return}ua();X()}wa(16436);X()}function vi(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);$d(c,b);H[c+36>>2]=0;H[c+40>>2]=0;H[c>>2]=1596;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}bc(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;g=h+1|0;if(g>>>0>=1073741824){break b}a=f>>1;g=h>>>0<536870911?a>>>0>>0?g:a:1073741823;a=0;f:{if(!g){break f}if(g>>>0>=1073741824){break a}a=ra(g<<2)}h=a+(h<<2)|0;H[h>>2]=b;if((f|0)>=1){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;g:{if((e|0)>(b|0)){break g}H[d+12>>2]=-1;f=b+1|0;if(f>>>0>e>>>0){Bb(c+16|0,f-e|0,d+12|0);a=H[c+16>>2];break g}if(e>>>0<=f>>>0){break g}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(13952);X()}function gl(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;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{f=b;if(f){e=c;if(!e){break k}g=d;if(!d){break j}e=Q(g)-Q(f)|0;if(e>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(c>>>0)|0;ea=0;break a}e=d;if(!a){break h}if(!e){break g}if(e-1&e){break g}a=f>>>jl(e)|0;ea=0;break a}if(!(e-1&e)){break f}f=(Q(e)+33|0)-Q(f)|0;h=0-f|0;break d}f=e+1|0;h=63-e|0;break d}a=(f>>>0)/(e>>>0)|0;ea=0;break a}e=Q(e)-Q(f)|0;if(e>>>0<31){break e}break c}if((e|0)==1){break b}d=jl(e);c=d&31;if((d&63)>>>0>=32){g=0;a=b>>>c|0}else{g=b>>>c|0;a=((1<>>c}ea=g;break a}f=e+1|0;h=63-e|0}e=b;g=f&63;i=g&31;if(g>>>0>=32){g=0;i=e>>>i|0}else{g=e>>>i|0;i=((1<>>i}h=h&63;e=h&31;if(h>>>0>=32){b=a<>>32-e|b<>>31;k=j;g=g<<1|i>>>31;j=h-(g+(e>>>0>>0)|0)|0;l=j>>31;m=c&l;i=k-m|0;g=g-((j>>31&d)+(k>>>0>>0)|0)|0;b=b<<1|a>>>31;a=n|a<<1;j=l&1;n=j;f=f-1|0;if(f){continue}break}}ea=b<<1|a>>>31;a=j|a<<1;break a}a=0;b=0}ea=b}return a}function Vd(a,b){var c=0,d=0,e=0,f=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;a:{if(b){if(b>>>0>=1073741824){break a}c=b<<2;e=ra(c);H[a+92>>2]=e;f=c+e|0;H[a+100>>2]=f;ta(e,0,c);H[a+96>>2]=f}H[a+104>>2]=0;H[a+108>>2]=0;H[a+112>>2]=0;if(b){c=b<<2;e=ra(c);H[a+104>>2]=e;f=c+e|0;H[a+112>>2]=f;ta(e,0,c);H[a+108>>2]=f}H[a+116>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;if(b){c=b<<2;e=ra(c);H[a+116>>2]=e;f=c+e|0;H[a+124>>2]=f;ta(e,0,c);H[a+120>>2]=f}H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;if(b){c=b<<2;e=ra(c);H[d>>2]=e;f=c+e|0;H[d+8>>2]=f;ta(e,0,c);H[d+4>>2]=f}e=b<<5|1;Ob(a+128|0,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}Ob(a+140|0,e,d);b=H[d>>2];if(b){H[d+4>>2]=b;qa(b)}da=d+16|0;return a}ua();X()}function jc(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)<=-1){break c}}b=Ca(c,g,f);if(!b){break e}if((b|0)<=-1){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)<=-1){break g}}b=Ca(c,g,f);if(!b){break i}if((b|0)<=-1){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 Nb(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;d=f+1|0;if(d>>>0>=1073741824){break c}h=e>>1;d=f>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;b=0;f:{if(!d){break f}if(d>>>0>=1073741824){break b}b=ra(d<<2)}f=b+(f<<2)|0;H[f>>2]=g;if((e|0)>=1){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];g:{if((b|0)!=H[a+8>>2]){H[b>>2]=g;H[a+4>>2]=b+4;break g}c=H[a>>2];e=b-c|0;f=e>>2;d=f+1|0;if(d>>>0>=1073741824){break c}b=e>>1;d=f>>>0<536870911?b>>>0>>0?d:b:1073741823;b=0;h:{if(!d){break h}if(d>>>0>=1073741824){break a}b=ra(d<<2)}f=b+(f<<2)|0;H[f>>2]=g;if((e|0)>=1){sa(b,c,e)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=f+4;H[a>>2]=b;if(!c){break g}qa(c)}H[a+12>>2]=h<<32-H[a+16>>2]}return}ua();X()}wa(1752);X()}wa(1752);X()}function ui(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]=13436;H[b+4>>2]=0;H[d>>2]=b;c=Jc(c,d,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}bc(a+8|0,d+8|0)}a=H[d+8>>2];H[d+8>>2]=0;if(a){fa[H[H[a>>2]+4>>2]](a)}a=H[d>>2];H[d>>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;g=h+1|0;if(g>>>0>=1073741824){break b}a=f>>1;g=h>>>0<536870911?a>>>0>>0?g:a:1073741823;a=0;f:{if(!g){break f}if(g>>>0>=1073741824){break a}a=ra(g<<2)}h=a+(h<<2)|0;H[h>>2]=b;if((f|0)>=1){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;g:{if((e|0)>(b|0)){break g}H[d+12>>2]=-1;f=b+1|0;if(f>>>0>e>>>0){Bb(c+16|0,f-e|0,d+12|0);a=H[c+16>>2];break g}if(e>>>0<=f>>>0){break g}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(14132);X()}function Ei(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]=13436;H[b+4>>2]=0;H[d>>2]=b;c=Jc(c,d,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}bc(a+8|0,d+8|0)}a=H[d+8>>2];H[d+8>>2]=0;if(a){fa[H[H[a>>2]+4>>2]](a)}a=H[d>>2];H[d>>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;g=h+1|0;if(g>>>0>=1073741824){break b}a=f>>1;g=h>>>0<536870911?a>>>0>>0?g:a:1073741823;a=0;f:{if(!g){break f}if(g>>>0>=1073741824){break a}a=ra(g<<2)}h=a+(h<<2)|0;H[h>>2]=b;if((f|0)>=1){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;g:{if((e|0)>(b|0)){break g}H[d+12>>2]=-1;f=b+1|0;if(f>>>0>e>>>0){Bb(c+16|0,f-e|0,d+12|0);a=H[c+16>>2];break g}if(e>>>0<=f>>>0){break g}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(13360);X()}function Uf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=d-c|0;if((h|0)<1){return}a:{j=h>>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)>=1){break a}return}b:{k=H[a>>2];f=j+(i-k>>2)|0;if(f>>>0<1073741824){g=e-k|0;e=g>>1;g=g>>2>>>0<536870911?e>>>0>>0?f:e:1073741823;d=0;c:{if(!g){break c}if(g>>>0>=1073741824){break b}d=ra(g<<2)}e=b-k|0;f=c;c=(h|0)>-1?h:-1;c=sa(d+(e>>2<<2)|0,f,N(h>>>2|0,(c|0)<1?c:1)<<2);if((e|0)>=1){sa(d,k,e)}e=c+(j<<2)|0;c=i-b|0;if((c|0)>=1){e=sa(e,b,c)+c|0}H[a+8>>2]=d+(g<<2);H[a+4>>2]=e;H[a>>2]=d;if(k){qa(k)}return}ua();X()}wa(11712);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;if(j){while(1){e=e-4|0;f=f-4|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 Te(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{g=da-16|0;da=g;b:{d=Pe(b);c:{if(!d){H[a>>2]=0;break c}e=H[b+100>>2];f=H[b+96>>2];H[g+8>>2]=0;H[g>>2]=0;H[g+4>>2]=0;h=e-f|0;b=(h|0)/12|0;d:{if(!h){break d}if(b>>>0>=357913942){break b}c=ra(h);H[g>>2]=c;H[g+8>>2]=c+N(b,12);e=0;i=c;c=N((h-12>>>0)/12|0,12)+12|0;h=ta(i,0,c);H[g+4>>2]=c+h;if(I[d+84|0]){d=b>>>0>1?b:1;i=d&1;if(b>>>0>=2){b=d&-2;while(1){c=N(e,12);d=c+f|0;j=H[d+4>>2];k=H[d>>2];c=c+h|0;H[c+8>>2]=H[d+8>>2];H[c>>2]=k;H[c+4>>2]=j;c=N(e|1,12);d=c+f|0;j=H[d+8>>2];k=H[d+4>>2];c=c+h|0;H[c>>2]=H[d>>2];H[c+4>>2]=k;H[c+8>>2]=j;e=e+2|0;b=b-2|0;if(b){continue}break}}if(!i){break d}b=f;f=N(e,12);b=b+f|0;e=H[b+4>>2];d=H[b>>2];f=f+h|0;H[f+8>>2]=H[b+8>>2];H[f>>2]=d;H[f+4>>2]=e;break d}i=b>>>0>1?b:1;e=H[d+68>>2];b=0;while(1){c=N(b,12);d=c+f|0;j=H[e+(H[d>>2]<<2)>>2];k=H[e+(H[d+4>>2]<<2)>>2];c=c+h|0;H[c+8>>2]=H[e+(H[d+8>>2]<<2)>>2];H[c+4>>2]=k;H[c>>2]=j;b=b+1|0;if((i|0)!=(b|0)){continue}break}}Ye(a,g);a=H[g>>2];if(!a){break c}H[g+4>>2]=a;qa(a)}da=g+16|0;break a}ua();X()}}function tc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=-1;a:{if((b|0)==-1){h=H[a+12>>2];j=h+12|0;d=1;e=-1;break a}h=H[a+12>>2];e=h;j=e+12|0;d=((b>>>0)%3|0?-1:2)+b|0;b:{if((d|0)==-1){d=1;break b}e=H[e+12>>2];while(1){g=d;f=H[e+(d<<2)>>2];if((f|0)!=-1){g=-1;d=f+1|0;d=(d>>>0)%3|0?d:f-2|0;if((d|0)!=-1){continue}}break}d=(f|0)!=-1;e=-1;if((b|0)==-1){break a}}e=H[H[h>>2]+(b<<2)>>2]}b=0;if(c){b=H[a+84>>2]+(e>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2]+(e<<2)>>2];c=H[a+140>>2]+(f>>>3&536870908)|0;H[c>>2]=H[c>>2]|1<>>0)%3|0?-1:2)+g|0;c=-1;if((d|0)==-1){break c}c=H[H[h>>2]+(d<<2)>>2]}if((f|0)!=(c|0)){k=H[a+84>>2];while(1){a=g;g=k+(c>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>>0)%3|0?d:a-2|0;if((d|0)==-1){break d}f=H[j>>2];while(1){i=H[(d<<2)+f>>2];if((i|0)!=-1){a=i+1|0;d=(a>>>0)%3|0?a:i-2|0;if((d|0)!=-1){continue}break d}break}a=((d>>>0)%3|0?-1:2)+d|0;if((a|0)!=-1){c=H[H[h>>2]+(a<<2)>>2]}g=d}b=b+1|0;if((c|0)!=(e|0)){continue}break}}}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;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);e=a+8|0;d=F[b+24|0];f=H[a+8>>2];g=H[a+12>>2]-f>>2;a:{if(d>>>0>g>>>0){Qg(e,d-g|0);d=F[b+24|0];break a}if(d>>>0>=g>>>0){break a}H[a+12>>2]=f+(d<<2)}j=1;g=H[c+8>>2];b:{if((d|0)<1){b=4;break b}f=d&3;e=H[e>>2];c:{if(d-1>>>0<3){b=4;d=0;break c}i=d&-4;d=0;b=4;while(1){h=d<<2;c=b+g|0;L[h+e>>2]=(x(2,I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24)),B());L[e+(h|4)>>2]=(x(2,I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24)),B());L[e+(h|8)>>2]=(x(2,I[c+8|0]|I[c+9|0]<<8|(I[c+10|0]<<16|I[c+11|0]<<24)),B());L[e+(h|12)>>2]=(x(2,I[c+12|0]|I[c+13|0]<<8|(I[c+14|0]<<16|I[c+15|0]<<24)),B());d=d+4|0;b=b+16|0;i=i-4|0;if(i){continue}break}}if(!f){break b}while(1){c=b+g|0;L[e+(d<<2)>>2]=(x(2,I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24)),B());d=d+1|0;b=b+4|0;f=f-1|0;if(f){continue}break}}c=a;a=b+g|0;L[c+20>>2]=(x(2,I[a|0]|I[a+1|0]<<8|(I[a+2|0]<<16|I[a+3|0]<<24)),B())}return j|0}function yb(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];if((d|0)==(e|0)){e=H[c+4>>2];if(!(!e|I[e+12|0])){break b}c:{if(H[d>>2]==(b|0)){b=d;break c}b=H[d+4>>2];e=H[b>>2];H[d+4>>2]=e;a=b;if(e){H[e+8>>2]=d;c=H[d+8>>2]}H[a+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;H[c+8>>2]=a;return}if(!(I[e+12|0]|!e)){break b}d:{if(H[d>>2]!=(b|0)){b=d;break d}e=H[b+4>>2];H[d>>2]=e;a=b;if(e){H[e+8>>2]=d;c=H[d+8>>2]}H[a+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;H[c+8>>2]=a;break a}F[d+12|0]=1;F[c+12|0]=(a|0)==(c|0);F[e+12|0]=1;b=c;if((b|0)!=(a|0)){continue}break}}}function ve(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;g=da-32|0;da=g;e=d&2147483647;h=e;f=e-1006698496|0;e=e-1140785152|0;i=c;a:{if((f|0)==(e|0)&c>>>0>c>>>0|e>>>0>f>>>0){e=d<<4|c>>>28;c=c<<4|b>>>28;b=b&268435455;h=b;if((b|0)==134217728&a>>>0>=1|b>>>0>134217728){e=e+1073741824|0;a=c+1|0;e=a>>>0<1?e+1|0:e;f=a;break a}f=c;e=e+1073741824|0;if(a|h^134217728){break a}b=c&1;a=b+f|0;e=a>>>0>>0?e+1|0:e;f=a;break a}if(!(!i&(h|0)==2147418112?!(a|b):h>>>0<2147418112)){f=c;c=d<<4|c>>>28;f=f<<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;Za(g+16|0,a,b,c,e,h-15233|0);Rb(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;c=a;b=H[g>>2]|((H[g+16>>2]|H[g+24>>2])!=0|(H[g+20>>2]|H[g+28>>2])!=0);if((a|0)==134217728&b>>>0>=1|a>>>0>134217728){a=f+1|0;e=a>>>0<1?e+1|0:e;f=a;break a}if(b|c^134217728){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 wf(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;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}i=h;f=m>>31;n=f+m^f;g=T(k*l+.5);c:{if(P(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;i=i-(n+(f+b^b)|0)|0;b=(i|0)<0?0:i;e=e?0-b|0:b;f=f+(i>>31&((f|0)>0?i:0-i|0))|0;d:{if((m|0)>=0){b=f+h|0;e=e+h|0;break d}b=(f|0)>=0?H[a+8>>2]-b|0:b;if((e|0)<=-1){e=f>>31;e=e+f^e;break d}e=f>>31;e=H[a+8>>2]-(e+f^e)|0}e:{if(!(b|e)){e=H[a+8>>2];a=e;break e}f=H[a+8>>2];f:{g:{h:{i:{if(!b){if((e|0)==(f|0)){a=e;break e}a=0;if(e|f){break i}e=0;break e}if((b|0)!=(f|0)|e){break h}e=b;a=b;break e}if((e|0)>(h|0)){e=(h<<1)-e|0;break e}if(f){break f}break g}if((b|0)!=(f|0)){break f}}f=b;if((e|0)>=(h|0)){break f}e=(h<<1)-e|0;a=b;break e}if(!((e|0)!=(f|0)|(b|0)>=(h|0))){a=(h<<1)-b|0;break e}if(e){a=b;break e}e=0;if((b|0)<=(h|0)){a=b;break e}a=(h<<1)-b|0}H[c>>2]=a;H[d>>2]=e}function mc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=da-16|0;da=h;ze(h,a,b,0);e=H[h>>2];i=H[h+4>>2];a=H[h+12>>2];b=a;f=da-32|0;da=f;a=a&2147483647;c=a;j=a-1065418752|0;a=a-1082064896|0;g=H[h+8>>2];d=g;a:{if((j|0)==(a|0)&d>>>0>>0|a>>>0>j>>>0){c=(b&33554431)<<7|g>>>25;a=0;j=a;d=g&33554431;if(!(!a&(d|0)==16777216?!(e|i):!a&d>>>0<16777216)){a=c+1073741825|0;break a}a=c+1073741824|0;if(d^16777216|e|(i|j)){break a}a=(c&1)+a|0;break a}if(!(!d&(c|0)==2147418112?!(e|i):c>>>0<2147418112)){a=((b&33554431)<<7|g>>>25)&4194303|2143289344;break a}a=2139095040;if(c>>>0>1082064895){break a}a=0;c=c>>>16|0;if(c>>>0<16145){break a}a=g;d=b&65535|65536;Za(f+16|0,e,i,a,d,c-16129|0);Rb(f,e,i,a,d,16257-c|0);e=H[f+8>>2];a=(H[f+12>>2]&33554431)<<7|e>>>25;i=H[f+4>>2];d=i;c=0;j=c;g=H[f>>2]|((H[f+16>>2]|H[f+24>>2])!=0|(H[f+20>>2]|H[f+28>>2])!=0);e=e&33554431;if(!(!c&(e|0)==16777216?!(d|g):!c&e>>>0<16777216)){a=a+1|0;break a}if(e^16777216|g|(d|j)){break a}a=(a&1)+a|0}da=f+32|0;da=h+16|0;return x(2,b&-2147483648|a),B()}function Sc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{d=a;e=H[a+4>>2];b:{if(I[a+11|0]>>>7|0){break b}e=I[d+11|0]}if(e>>>0>>0){i=da-16|0;da=i;h=b-e|0;if(h){e=I[d+11|0]>>>7|0?(H[d+8>>2]&2147483647)-1|0:10;if(I[d+11|0]>>>7|0){b=H[a+4>>2]}else{b=I[a+11|0]}j=b+h|0;if(e-b>>>0>>0){c:{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}d:{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 d}c=-18}f=c+1|0;c=ra(f);if(b){Pb(c,d,b)}if((e|0)!=10){qa(d)}H[a>>2]=c;H[a+8>>2]=f|-2147483648;da=g+16|0;break c}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)}e:{if(I[a+11|0]>>>7|0){H[a+4>>2]=j;break e}F[a+11|0]=j}F[i+15|0]=0;F[b+j|0]=I[i+15|0]}da=i+16|0;break a}a=da-16|0;da=a;f:{if(I[d+11|0]>>>7|0){e=H[d>>2];F[a+15|0]=0;F[b+e|0]=I[a+15|0];H[d+4>>2]=b;break f}F[a+14|0]=0;F[b+d|0]=I[a+14|0];F[d+11|0]=b}da=a+16|0}}function gg(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;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)<1){break c}k=b&3;e=0;if(b-1>>>0>=3){l=b&-4;while(1){g=e<<2;i=(H[g+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;i=(H[(g|4)+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;i=(H[(g|8)+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;g=(H[(g|12)+a>>2]<<2)+h|0;H[g>>2]=H[g>>2]+1;e=e+4|0;l=l-4|0;if(l){continue}break}}if(!k){break c}while(1){g=(H[(e<<2)+a>>2]<<2)+h|0;H[g>>2]=H[g>>2]+1;e=e+1|0;k=k-1|0;if(k){continue}break}}e=0;if((c|0)<0){a=0;break a}m=+(b|0);a=0;while(1){b=H[(e<<2)+h>>2];if((b|0)>=1){n=f;f=+(b|0);f=n+ya(f/m)*f;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)}f=-f;d:{if(P(f)<0x8000000000000000){b=P(f)>=1?f>0?~~R(T(f*2.3283064365386963e-10),4294967295)>>>0:~~U((f-+(~~f>>>0>>>0))*2.3283064365386963e-10)>>>0:0;a=~~f>>>0;break d}b=-2147483648;a=0}da=j+16|0;ea=b;return a}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;hc(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;hc(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;hc(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;Pd(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;Pd(a,b+8|0);c=H[a+4>>2];H[b+8>>2]=H[c>>2];H[a+4>>2]=c+4;hc(a,b+8|0);break a}wa(1752);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 yi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=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){c=c+1|0;b=H[a+4>>2];b=H[b+12>>2]-H[b+8>>2]>>2;if((c|0)<(b|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){La(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}c=a>>31;b=(c+a^c)>>>2|0;a=(a|0)>-1?a:-1;a=N(b,(a|0)<1?a:1);j=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=a>>31;d=(d+a^d)>>>2|0;a=(a|0)>-1?a:-1;a=N(d,(a|0)<1?a:1);e=a>>>0>1?a:1;f=e&3;d=H[h>>2];a=0;if(e-1>>>0>=3){g=e&-4;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(g){continue}break}}if(!f){break c}while(1){H[d+(H[b+(a<<2)>>2]<<2)>>2]=c;a=a+1|0;f=f-1|0;if(f){continue}break}}c=c+1|0;if((j|0)!=(c|0)){continue}break}return 1}function rb(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];f=H[H[a+12>>2]+4>>2];d=H[f+4>>2];a:{if((d|0)!=H[f+8>>2]){H[d>>2]=g;H[f+4>>2]=d+4;break a}b:{h=H[f>>2];i=d-h|0;j=i>>2;e=j+1|0;if(e>>>0<1073741824){d=i>>1;e=j>>>0<536870911?d>>>0>>0?e:d:1073741823;d=0;c:{if(!e){break c}if(e>>>0>=1073741824){break b}d=ra(e<<2)}j=d+(j<<2)|0;H[j>>2]=g;if((i|0)>=1){sa(d,h,i)}H[f+8>>2]=d+(e<<2);H[f+4>>2]=j+4;H[f>>2]=d;if(h){qa(h)}break a}ua();X()}wa(11712);X()}f=H[a+4>>2];d=H[f+4>>2];d:{e:{f:{if((d|0)!=H[f+8>>2]){H[d>>2]=c;H[f+4>>2]=d+4;break f}h=H[f>>2];i=d-h|0;g=i>>2;e=g+1|0;if(e>>>0>=1073741824){break e}j=i>>1;e=g>>>0<536870911?e>>>0>j>>>0?e:j:1073741823;d=0;g:{if(!e){break g}if(e>>>0>=1073741824){break d}d=ra(e<<2)}g=d+(g<<2)|0;H[g>>2]=c;if((i|0)>=1){sa(d,h,i)}H[f+8>>2]=d+(e<<2);H[f+4>>2]=g+4;H[f>>2]=d;if(!h){break f}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(11712);X()}function Lc(a){var b=0,c=0,d=0,e=0;d=H[a+1176>>2];if(d){b=H[a+1180>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b-12|0;e=H[c>>2];if(e){H[b-8>>2]=e;qa(e)}b=c;if((d|0)!=(b|0)){continue}break}c=H[a+1176>>2]}H[a+1180>>2]=d;qa(c)}d=H[a+1164>>2];if(d){b=H[a+1168>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b-12|0;e=H[c>>2];if(e){H[b-8>>2]=e;qa(e)}b=c;if((d|0)!=(b|0)){continue}break}c=H[a+1164>>2]}H[a+1168>>2]=d;qa(c)}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)}zb(a+1108|0);zb(a+1088|0);zb(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 ai(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=ub(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)<=-1){break b}f=e<<2;c=ra(f);H[a>>2]=c;e=c+(e<<2)|0;H[a+8>>2]=e;sa(c,d,f);H[a+4>>2]=e}c=da-48|0;da=c;d=a+16|0;e=gb(b,d);if((e|0)!=(b+4|0)){pc(b,e)}H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;e=H[a+4>>2]-H[a>>2]|0;ib(c,e);sa(H[c>>2],H[a>>2],e);d=Ja(c+16|0,d);H[c+36>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;ib(c+28|0,H[c+4>>2]-H[c>>2]|0);e=H[c>>2];sa(H[c+28>>2],e,H[c+4>>2]-e|0);oc(c+40|0,b,d,c+16|0);d=H[c+28>>2];if(d){H[c+32>>2]=d;qa(d)}if(F[c+27|0]<=-1){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]>-1){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 Ra(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=H[a+116>>2];c=b;a:{d=H[a+112>>2];b:{if(b|d){b=H[a+124>>2];if((b|0)>(c|0)?1:(c|0)<=(b|0)?d>>>0<=K[a+120>>2]:0){break b}}c=da-16|0;da=c;g=-1;b=I[a+74|0];F[a+74|0]=b-1|b;if(K[a+20>>2]>K[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];c:{if(b&4){H[a>>2]=b|32;b=-1;break c}d=H[a+44>>2]+H[a+48>>2]|0;H[a+8>>2]=d;H[a+4>>2]=d;b=b<<27>>31}d:{if(b){break d}if((fa[H[a+32>>2]](a,c+15|0,1)|0)!=1){break d}g=I[c+15|0]}da=c+16|0;if((g|0)>-1){break a}}H[a+104>>2]=0;return-1}i=a;b=H[a+116>>2];h=b;c=H[a+8>>2];d=c;e=H[a+112>>2];e:{if(!(b|e)){break e}d=c;f=H[a+120>>2]^-1;e=f+e|0;b=(H[a+124>>2]^-1)+h|0;b=e>>>0>>0?b+1|0:b;h=H[a+4>>2];f=c-h|0;j=e>>>0>=f>>>0;f=f>>31;if((b|0)>(f|0)?1:(f|0)<=(b|0)?j:0){break e}d=e+h|0}H[i+104>>2]=d;d=H[a+4>>2];if(c){b=a;i=(c-d|0)+1|0;e=i;c=e+H[a+120>>2]|0;a=H[a+124>>2]+(e>>31)|0;H[b+120>>2]=c;H[b+124>>2]=c>>>0>>0?a+1|0:a}a=d-1|0;if(I[a|0]!=(g|0)){F[a|0]=g}return g}function hk(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),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=da-16|0;da=m;if(H[c+28>>2]==9){g=H[a+4>>2];h=F[c+24|0];e=h<<2;f=ra((h&1073741823)!=(h|0)?-1:e);n=m+8|0;H[n>>2]=1065353216;j=n;k=L[a+20>>2];g=-1<=1){L[j>>2]=k/O(g|0)}p=(g|0)>0;a:{if(!p){break a}l=H[c+80>>2];if(!l){break a}if((h|0)<=0){if((l|0)!=1){b=l&-2;while(1){sa(H[H[c+64>>2]>>2]+d|0,f,e);a=d+e|0;sa(a+H[H[c+64>>2]>>2]|0,f,e);d=a+e|0;b=b-2|0;if(b){continue}break}}if(!(l&1)){break a}sa(H[H[c+64>>2]>>2]+d|0,f,e);break a}q=H[H[b>>2]>>2]+H[b+48>>2]|0;g=h&-2;u=h&1;while(1){o=H[a+8>>2];k=L[n>>2];b=0;j=g;if((h|0)!=1){while(1){i=b<<2;r=(d<<2)+q|0;L[i+f>>2]=O(k*O(H[r>>2]))+L[i+o>>2];i=i|4;L[i+f>>2]=O(k*O(H[r+4>>2]))+L[i+o>>2];b=b+2|0;d=d+2|0;j=j-2|0;if(j){continue}break}}if(u){b=b<<2;L[b+f>>2]=O(k*O(H[(d<<2)+q>>2]))+L[b+o>>2];d=d+1|0}sa(H[H[c+64>>2]>>2]+s|0,f,e);s=e+s|0;t=t+1|0;if((t|0)!=(l|0)){continue}break}}qa(f)}da=m+16|0;return p|0}function _f(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=da+-64|0;da=f;e=ra(80);j=H[b+8>>2];H[e+12>>2]=0;H[e+16>>2]=0;H[e>>2]=12604;H[e+4>>2]=0;H[e+20>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+76>>2]=0;H[e+72>>2]=c;H[e+68>>2]=j;H[e- -64>>2]=0;k=e+56|0;d=k;H[d>>2]=0;H[d+4>>2]=0;H[e+8>>2]=12768;h=H[b+12>>2];H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;l=f+24|0;d=l;H[d>>2]=0;H[d+4>>2]=0;d=f;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[d+56>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d>>2]=12768;H[d+4>>2]=h;i=H[h>>2];g=H[h+4>>2];F[d+63|0]=0;Sa(l,(g-i>>2>>>0)/3|0,d+63|0);g=H[d+4>>2];i=H[g+28>>2];g=H[g+24>>2];F[d+63|0]=0;Sa(d+36|0,i-g>>2,d+63|0);H[d+20>>2]=e;H[d+16>>2]=j;H[d+12>>2]=c;H[d+8>>2]=h;H[e+76>>2]=b+72;vc(e+8|0,d);Vb(k,H[d+48>>2],H[d+52>>2]);H[a>>2]=e;H[d>>2]=12768;a=H[d+48>>2];if(a){H[f+52>>2]=a;qa(a)}H[f>>2]=12584;a=H[f+36>>2];if(a){qa(a)}a=H[f+24>>2];if(a){qa(a)}da=f- -64|0}function oc(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];h=g<<24>>24<0;f=h?H[c>>2]:c;h=h?H[c+4>>2]:g;g=b+4|0;while(1){c=I[e+27|0];i=c<<24>>24<0;c=i?H[e+20>>2]:c;l=c>>>0>>0;c:{d:{e:{f:{g:{k=l?c:h;h:{if(k){j=e+16|0;i=i?H[j>>2]:j;j=Ca(f,i,k);if(!j){if(c>>>0>h>>>0){break h}break g}if((j|0)>-1){break g}break h}if(c>>>0<=h>>>0){break f}}c=H[e>>2];if(c){break c}break b}c=Ca(i,f,k);if(c){break e}}if(l){break d}break a}if((c|0)>-1){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}h=a;c=H[g>>2];if(c){b=0}else{c=ra(40);H[c+24>>2]=H[d+8>>2];f=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=f;H[d>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[c+36>>2]=0;f=c+28|0;H[f>>2]=0;H[f+4>>2]=0;ib(f,H[d+16>>2]-H[d+12>>2]|0);i=H[f>>2];f=H[d+12>>2];sa(i,f,H[d+16>>2]-f|0);H[c+8>>2]=e;H[c>>2]=0;H[c+4>>2]=0;H[g>>2]=c;e=H[H[b>>2]>>2];d=c;i:{if(!e){break i}H[b>>2]=e;d=H[g>>2]}yb(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[h+4|0]=b;H[a>>2]=c}function dg(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;h=H[d+80>>2];e=da-48|0;da=e;a=H[a+4>>2];a:{if(a-2>>>0>28){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);f=H[c>>2];if((f|0)!=H[c+4>>2]){a=0;d=0;while(1){g=H[(d<<2)+f>>2];h=e+36|0;l=H[H[b>>2]>>2];m=H[b+48>>2];f=H[b+44>>2];k=H[b+40>>2];j=k;if(!I[b+84|0]){g=H[H[b+68>>2]+(g<<2)>>2]}g=el(j,f,g,0)+m|0;sa(h,g+l|0,k);wf(e+16|0,e+36|0,e+12|0,e+8|0);f=a<<2;H[f+i>>2]=H[e+12>>2];H[(f|4)+i>>2]=H[e+8>>2];g=1;a=a+2|0;d=d+1|0;f=H[c>>2];if(d>>>0>2]-f>>2>>>0){continue}break}break a}if(!h){g=1;break a}d=0;a=0;while(1){c=H[H[b>>2]>>2];j=H[b+40>>2];f=H[b+48>>2]+el(j,H[b+44>>2],I[b+84|0]?a:H[H[b+68>>2]+(a<<2)>>2],0)|0;sa(e+36|0,c+f|0,j);wf(e+16|0,e+36|0,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;g=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}da=e+48|0;return g|0}function Ia(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:Ta(a,a+4|0,a+8|0,b-4|0,c);return 1;case 5:Fa(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 Ke(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;e=H[c>>2];n=H[c+4>>2];if((e|0)!=(n|0)){o=H[b>>2];while(1){c=H[e>>2];f=c<<2;i=H[f+o>>2];if(i>>>0>=d>>>0){j=H[a+8>>2];b=H[a+12>>2]-j|0;d=(b|0)<1;a:{if(d){break a}b=N(b>>>2|0,d?b:1);k=(b|0)>1?b:1;p=k&1;d=0;if((b|0)>=2){k=k&2147483646;while(1){l=d<<2;g=H[l+j>>2];h=H[g+68>>2];b=c;b=I[g+84|0]?b:H[f+h>>2];g=h;h=i<<2;H[g+h>>2]=b;b=c;g=h;h=H[(l|4)+j>>2];l=H[h+68>>2];g=g+l|0;if(!I[h+84|0]){b=H[f+l>>2]}H[g>>2]=b;d=d+2|0;k=k-2|0;if(k){continue}break}}if(!p){break a}b=H[(d<<2)+j>>2];d=H[b+68>>2];j=d+(i<<2)|0;if(!I[b+84|0]){c=H[d+f>>2]}H[j>>2]=c}d=i+1|0}e=e+4|0;if((n|0)!=(e|0)){continue}break}}e=H[a+12>>2];b=H[a+8>>2];if((e-b|0)>0){while(1){c=H[(m<<2)+b>>2];F[c+84|0]=0;i=H[c+68>>2];f=H[c+72>>2]-i>>2;b:{if(f>>>0>>0){Va(c+68|0,d-f|0,16848);b=H[a+8>>2];e=H[a+12>>2];break b}if(d>>>0>=f>>>0){break b}H[c+72>>2]=i+(d<<2)}m=m+1|0;if((m|0)>2){continue}break}}}function Cj(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;f=H[a+12>>2];h=H[a+8>>2];d=f-h>>2;b=F[b+24|0];a:{if(d>>>0>>0){Qg(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];g=H[c+16>>2];e=f-h|0;f=e;d=e;j=g+d|0;k=H[c+12>>2];i=d>>>0>j>>>0?i+1|0:i;b:{if((i|0)>(k|0)?1:(k|0)<=(i|0)?j>>>0>K[c+8>>2]:0){break b}sa(h,g+H[c>>2]|0,e);d=H[c+20>>2];g=f+H[c+16>>2]|0;d=g>>>0>>0?d+1|0:d;H[c+16>>2]=g;H[c+20>>2]=d;e=H[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if((d|0)>(e|0)?1:(d|0)>=(e|0)?f>>>0>K[c+8>>2]: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);e=H[c+20>>2];f=e;j=H[c+16>>2];g=j+4|0;e=g>>>0<4?e+1|0:e;d=c;H[d+16>>2]=g;H[d+20>>2]=e;d=H[d+12>>2];if((d|0)<(e|0)?1:(e|0)>=(d|0)?g>>>0>=K[c+8>>2]:0){break b}e=I[g+H[c>>2]|0];d=f;f=j+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 Wi(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){Va(b+68|0,e-d|0,12336);c=H[a+108>>2];e=H[c+80>>2];break a}if(d>>>0<=e>>>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){c:{if((c|0)==1431655765){break c}d=H[l>>2]+(N(c,3)<<2)|0;h=H[d>>2];if((h|0)==-1){break c}f=N(c,12)+k|0;g=H[f>>2];if(g>>>0>=e>>>0){break c}j=H[H[a+112>>2]+12>>2];i=H[j+(h<<2)>>2];if(i>>>0>=e>>>0){break c}h=H[b+68>>2];H[h+(g<<2)>>2]=i;g=H[d+4>>2];if((g|0)==-1){break c}i=H[f+4>>2];if(i>>>0>=e>>>0){break c}g=H[(g<<2)+j>>2];if(g>>>0>=e>>>0){break c}H[h+(i<<2)>>2]=g;d=H[d+8>>2];if((d|0)==-1){break c}f=H[f+8>>2];if(f>>>0>=e>>>0){break c}d=H[(d<<2)+j>>2];if(d>>>0>=e>>>0){break c}H[h+(f<<2)>>2]=d;d=1;c=c+1|0;if((m|0)!=(c|0)){continue}break b}break}d=0}return d|0}function Oi(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){Va(b+68|0,e-d|0,12336);c=H[a+68>>2];e=H[c+80>>2];break a}if(d>>>0<=e>>>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){c:{if((c|0)==1431655765){break c}d=H[l>>2]+(N(c,3)<<2)|0;h=H[d>>2];if((h|0)==-1){break c}f=N(c,12)+k|0;g=H[f>>2];if(g>>>0>=e>>>0){break c}j=H[H[a+72>>2]+12>>2];i=H[j+(h<<2)>>2];if(i>>>0>=e>>>0){break c}h=H[b+68>>2];H[h+(g<<2)>>2]=i;g=H[d+4>>2];if((g|0)==-1){break c}i=H[f+4>>2];if(i>>>0>=e>>>0){break c}g=H[(g<<2)+j>>2];if(g>>>0>=e>>>0){break c}H[h+(i<<2)>>2]=g;d=H[d+8>>2];if((d|0)==-1){break c}f=H[f+8>>2];if(f>>>0>=e>>>0){break c}d=H[(d<<2)+j>>2];if(d>>>0>=e>>>0){break c}H[h+(f<<2)>>2]=d;d=1;c=c+1|0;if((m|0)!=(c|0)){continue}break b}break}d=0}return d|0}function Vi(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)<=-1){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)>=1){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){Bb(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=If(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>>>0)/3|0;if(a>>>0<1){break d}b=0;while(1){d=If(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(11712);X()}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,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){Va(b+68|0,e-d|0,12336);c=H[a+68>>2];e=H[c+80>>2];break a}if(d>>>0<=e>>>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){c:{d=(N(c,3)<<2)+m|0;g=H[d>>2];if((g|0)==-1){break c}h=N(c,12)+k|0;i=H[h>>2];if(i>>>0>=e>>>0){break c}f=g<<2;g=H[H[a+72>>2]+12>>2];f=H[f+g>>2];if(f>>>0>=e>>>0){break c}j=i<<2;i=H[b+68>>2];H[j+i>>2]=f;f=H[d+4>>2];if((f|0)==-1){break c}j=H[h+4>>2];if(j>>>0>=e>>>0){break c}f=H[g+(f<<2)>>2];if(f>>>0>=e>>>0){break c}H[i+(j<<2)>>2]=f;d=H[d+8>>2];if((d|0)==-1){break c}h=H[h+8>>2];if(h>>>0>=e>>>0){break c}d=H[g+(d<<2)>>2];if(d>>>0>=e>>>0){break c}H[i+(h<<2)>>2]=d;d=1;c=c+1|0;if((l|0)!=(c|0)){continue}break b}break}d=0}return d|0}function cc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=da-32|0;da=h;e=H[b>>2]+H[a+40>>2]|0;c=H[a+32>>2];d=c-4194304|0;a:{if(d>>>0<=63){F[H[a+24>>2]+H[a+28>>2]|0]=d;d=H[a+28>>2]+1|0;break a}if(d>>>0<=16383){d=H[a+24>>2]+H[a+28>>2]|0;c=c-4177920|0;F[d|0]=c;F[d+1|0]=c>>>8;d=H[a+28>>2]+2|0;break a}if(d>>>0<=4194303){d=H[a+24>>2]+H[a+28>>2]|0;c=c+4194304|0;F[d+2|0]=c>>>16;F[d+1|0]=c>>>8;F[d|0]=c;d=H[a+28>>2]+3|0;break a}if(d>>>0<=1073741823){d=H[a+24>>2]+H[a+28>>2]|0;c=c-1077936128|0;F[d|0]=c;F[d+1|0]=c>>>8;F[d+2|0]=c>>>16;F[d+3|0]=c>>>24;d=H[a+28>>2]+4|0;break a}d=H[a+28>>2]}c=h;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=d>>31;g=c;Db(d,f,c);i=H[c+4>>2]-H[c>>2]|0;Ha(i+e|0,e,d);sa(e,H[c>>2],i);c=H[a+44>>2];e=b;j=H[a+40>>2];a=d;b=a+i|0;f=a>>>0>b>>>0?f+1|0:f;a=b;b=j+a|0;Pa(e,b);a=H[g+12>>2];H[g+12>>2]=0;if(a){qa(a)}a=H[g>>2];if(a){H[g+4>>2]=a;qa(a)}da=h+32|0}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;a:{g=H[a+8>>2];b:{if((g|0)<0){break b}e=H[a+4>>2];c=H[e>>2];f=H[e+4>>2]-c>>2;c:{if(f>>>0>>0){d:{c=g-f|0;h=H[e+8>>2];b=H[e+4>>2];if(c>>>0<=h-b>>2>>>0){if(c){d=b;b=c<<2;b=ta(d,0,b)+b|0}H[e+4>>2]=b;break d}e:{f=H[e>>2];i=b-f|0;j=i>>2;d=c+j|0;if(d>>>0<1073741824){b=0;h=h-f|0;k=h>>1;d=h>>2>>>0<536870911?d>>>0>k>>>0?d:k:1073741823;if(d){if(d>>>0>=1073741824){break e}b=ra(d<<2)}c=c<<2;c=ta((j<<2)+b|0,0,c)+c|0;if((i|0)>=1){sa(b,f,i)}H[e+8>>2]=(d<<2)+b;H[e+4>>2]=c;H[e>>2]=b;if(f){qa(f)}break d}ua();X()}wa(13360);X()}d=H[a+8>>2];break c}b=g;d=b;if(b>>>0>=f>>>0){break c}H[e+4>>2]=c+(g<<2);d=g}b=d;if((b|0)<1){break b}a=H[a+4>>2];e=H[a>>2];a=H[a+4>>2]-e|0;c=(a|0)>-1?a:-1;d=a;a=a>>31;c=N((c|0)<1?c:1,(d+a^a)>>>2|0);a=0;while(1){if((a|0)==(c|0)){break a}H[e+(a<<2)>>2]=a;a=a+1|0;if((b|0)!=(a|0)){continue}break}}return(g^-1)>>>31|0}xa();X()}function Eb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=da-32|0;da=h;f=H[b>>2]+H[a+40>>2]|0;e=H[a+32>>2];c=e-16384|0;a:{if(c>>>0<=63){F[H[a+24>>2]+H[a+28>>2]|0]=c;d=H[a+28>>2]+1|0;break a}if(c>>>0<=16383){c=H[a+24>>2]+H[a+28>>2]|0;F[c|0]=e;F[c+1|0]=e>>>8;d=H[a+28>>2]+2|0;break a}if(c>>>0<=4194303){d=H[a+24>>2]+H[a+28>>2]|0;c=e+8372224|0;F[d+2|0]=c>>>16;F[d+1|0]=c>>>8;F[d|0]=c;d=H[a+28>>2]+3|0;break a}if(c>>>0<=1073741823){d=H[a+24>>2]+H[a+28>>2]|0;c=e-1073758208|0;F[d|0]=c;F[d+1|0]=c>>>8;F[d+2|0]=c>>>16;F[d+3|0]=c>>>24;d=H[a+28>>2]+4|0;break a}d=H[a+28>>2]}c=h;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;e=d>>31;g=c;Db(d,e,c);i=H[c+4>>2]-H[c>>2]|0;Ha(i+f|0,f,d);sa(f,H[c>>2],i);c=H[a+44>>2];f=b;j=H[a+40>>2];a=d;b=a+i|0;e=a>>>0>b>>>0?e+1|0:e;a=b;b=j+a|0;Pa(f,b);a=H[g+12>>2];H[g+12>>2]=0;if(a){qa(a)}a=H[g>>2];if(a){H[g+4>>2]=a;qa(a)}da=h+32|0}function wh(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-2>>>0>28){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(k*O(H[a>>2]))+O(-1));f=O(O(k*O(H[a+4>>2]))+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=(C(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=(C(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 Zf(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;a:{b:{e=H[H[a+4>>2]+44>>2];d=H[e+20>>2];if((d|0)<0?1:(d|0)<=0?!H[e+16>>2]:0){va(e,H[e+4>>2],c+15|0,c+16|0);b=I[c+15|0]}c:{if(b<<24>>24<=-1){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((d|0)>0?1:(d|0)>=0?H[b+16>>2]: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((d|0)>0?1:(d|0)>=0?H[b+16>>2]: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((b|0)<0?1:(b|0)<=0?!H[a+16>>2]:0){va(a,H[a+4>>2],c+12|0,c+13|0)}da=c+16|0;return 1}function vc(a,b){var c=0,d=0,e=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)){e=a;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)<=-1){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]}Ha(d,H[b+24>>2],(c-1>>>3&536870908)+4|0);c=H[b+28>>2]}else{c=0}H[e+28>>2]=c;e=a;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)<=-1){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]}Ha(d,H[b+36>>2],(c-1>>>3&536870908)+4|0);a=H[b+40>>2]}else{a=0}H[e+40>>2]=a}return}ua();X()}ua();X()}function va(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=d-c|0;if((h|0)<1){return}a:{f=H[a+8>>2];i=H[a+4>>2];if((f-i|0)>=(h|0)){j=i-b|0;if((j|0)>=(h|0)){f=i;g=d;break a}f=i;g=c+j|0;if((g|0)!=(d|0)){e=g;while(1){F[f|0]=I[e|0];f=f+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=f;if((j|0)>=1){break a}return}g=H[a>>2];d=(i-g|0)+h|0;if((d|0)>-1){j=b-g|0;k=j;e=f-g|0;f=e<<1;e=e>>>0<1073741823?d>>>0>f>>>0?d:f:2147483647;d=0;b:{if(!e){break b}d=ra(e)}c=sa(k+d|0,c,h);if((j|0)>=1){sa(d,g,j)}c=c+h|0;f=i-b|0;if((f|0)>=1){c=sa(c,b,f)+f|0}H[a+8>>2]=d+e;H[a+4>>2]=c;H[a>>2]=d;if(g){qa(g)}return}ua();X()}e=f;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=f-(b+h|0)|0;if(a){Ha(f-a|0,b,a)}if((c|0)==(g|0)){return}e=b;while(1){F[e|0]=I[c|0];e=e+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}function _k(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)>=1){while(1){d=Xb(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}f=H[a+16>>2];h=c-f|0;g=h>>2;e=g+1|0;if(e>>>0>=1073741824){break b}c=h>>1;e=g>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;d:{if(!e){break d}if(e>>>0>=1073741824){break a}c=ra(e<<2)}g=c+(g<<2)|0;H[g>>2]=d;if((h|0)>=1){sa(c,f,h)}H[a+24>>2]=c+(e<<2);H[a+20>>2]=g+4;H[a+16>>2]=c;if(!f){break c}qa(f)}c=H[a+4>>2];e:{if((d|0)<0){break e}f=H[c+4>>2];if(H[f+12>>2]-H[f+8>>2]>>2<=(d|0)){break e}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(1956);X()}function Xc(a,b,c){var d=0,e=0,f=0,g=0;Ga(H[c+8>>2],b);d=H[c>>2];g=c+4|0;if((d|0)!=(g|0)){while(1){f=d;if(!Re(b,d+16|0)){return}d=H[f+32>>2]-H[f+28>>2]|0;Ga(d,b);e=H[b+20>>2];if((e|0)<0?1:(e|0)<=0?!H[b+16>>2]: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}}Ga(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(!Re(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 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);b=v(1)|0;c=v(0)|0;a:{b:{c:{d:{if((b|0)>0?1:(b|0)>=0){e=b;if(b>>>0>1048575){break d}}if(!(b&2147483647|c)){return-1/(a*a)}if((b|0)>-1){break c}return(a-a)/0}if(e>>>0>2146435071){break a}b=1072693248;j=-1023;if((e|0)!=1072693248){b=e;break b}if(c){break b}return 0}A(+(a*0x40000000000000));b=v(1)|0;c=v(0)|0;j=-1077}x(0,c|0);c=b+614242|0;x(1,(c&1048575)+1072079006|0);d=+z()+-1;f=d*(d*.5);g=d/(d+2);h=g*g;a=h*h;A(+(d-f));b=v(1)|0;v(0)|0;x(0,0);x(1,b|0);i=+z();k=i*1.4426950407214463;l=+((c>>>20|0)+j|0);m=k+l;a=d-i-f+g*(f+(a*(a*(a*.15313837699209373+.22222198432149784)+.3999999999940942)+h*(a*(a*(a*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));a=m+(k+(l-m)+(a*1.4426950407214463+(a+i)*1.6751713164886512e-10))}return a}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){f=I[c+11|0];g=f<<24>>24<0;k=g?H[c>>2]:c;g=g?H[c+4>>2]:f;f=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:{j=l?c:g;h:{if(j){i=e+16|0;h=h?H[i>>2]:i;i=Ca(k,h,j);if(!i){if(c>>>0>g>>>0){break h}break g}if((i|0)>-1){break g}break h}if(c>>>0<=g>>>0){break f}}c=H[e>>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)>-1){break a}}f=e+4|0;c=H[e+4>>2];if(!c){break a}e=f}f=e;e=c;continue}}e=b+4|0}f=e}g=a;c=H[f>>2];if(c){b=0}else{c=ra(40);Ja(c+16|0,H[d>>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[f>>2]=c;e=H[H[b>>2]>>2];d=c;i:{if(!e){break i}H[b>>2]=e;d=H[f>>2]}yb(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[g+4|0]=b;H[a>>2]=c}function $h(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,f=0,g=0,h=0,i=0;g=da-16|0;da=g;a:{b:{c:{if(!b){break c}e=ub(c);if(e>>>0>=4294967280){break b}d:{e:{if(e>>>0>=11){i=e+16&-16;a=ra(i);H[g+8>>2]=i|-2147483648;H[g>>2]=a;H[g+4>>2]=e;break e}F[g+11|0]=e;a=g;if(!e){break d}}sa(a,c,e)}F[a+e|0]=0;e=da-16|0;da=e;M[e+8>>3]=d;f=da-32|0;da=f;a=gb(b,g);if((a|0)!=(b+4|0)){pc(b,a)}c=H[e+8>>2];a=H[e+12>>2];i=Ja(f,g);H[f+20>>2]=0;H[f+12>>2]=0;H[f+16>>2]=0;ib(f+12|0,8);h=H[f+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;oc(f+24|0,b,i,f);a=H[f+12>>2];if(a){H[f+16>>2]=a;qa(a)}if(F[f+11|0]<=-1){qa(H[f>>2])}da=f+32|0;da=e+16|0;if(F[g+11|0]>-1){break c}qa(H[g>>2])}da=g+16|0;a=(b|0)!=0;break a}lb();X()}return a|0}function jb(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;e=d+1|0;if(e>>>0>=1073741824){break b}c=h>>1;e=d>>>0<536870911?c>>>0>>0?e:c:1073741823;c=0;d:{if(!e){break d}if(e>>>0>=1073741824){break a}c=ra(e<<2)}d=c+(d<<2)|0;H[d>>2]=H[a+12>>2];d=d+4|0;if((h|0)>=1){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];e:{if((c|0)>0?1:(c|0)>=0?H[b+16>>2]:0){break e}va(b,H[b+4>>2],f+12|0,f+16|0);d=H[a>>2];c=H[b+20>>2];if((c|0)>0?1:(c|0)>=0?H[b+16>>2]:0){break e}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(9968);X()}function Fk(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;e=H[b+4>>2]-H[b>>2]>>2;h=H[a+8>>2];i=F[h+24|0];d=i;f=da-80|0;da=f;g=wc(f+16|0);d=N(d,H[4068]);nd(g,H[H[a+8>>2]+56>>2],0,i,5,d,d>>31);d=ra(96);g=Pf(d,g);H[f+8>>2]=d;ld(g,e);H[f+8>>2]=0;e=H[a+32>>2];H[a+32>>2]=d;if(e){Ma(e)}a:{if(!c){break a}d=H[a+32>>2];F[d+84|0]=0;g=H[d+68>>2];e=H[d+72>>2]-g>>2;if(e>>>0>>0){Va(d+68|0,c-e|0,2396);break a}if(c>>>0>=e>>>0){break a}H[d+72>>2]=g+(c<<2)}c=H[f+8>>2];H[f+8>>2]=0;if(c){Ma(c)}da=f+80|0;c=H[b>>2];d=H[b+4>>2];if((c|0)==(d|0)){return 1}a=H[a+32>>2];e=H[H[a>>2]>>2]+H[a+48>>2]|0;b=0;while(1){a=H[c>>2];f=h;if(!I[f+84|0]){a=H[H[h+68>>2]+(a<<2)>>2]}a=Mc(f,a,F[h+24|0],e+(b<<2)|0);if(a){b=b+i|0;c=c+4|0;if((d|0)!=(c|0)){continue}}break}return a|0}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(!(!Md(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[6044];c=I[6040]|I[6041]<<8|(I[6042]<<16|I[6043]<<24);d=I[6036]|I[6037]<<8|(I[6038]<<16|I[6039]<<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[6032]|I[6033]<<8|(I[6034]<<16|I[6035]<<24);d=I[6028]|I[6029]<<8|(I[6030]<<16|I[6031]<<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=Ac(f,e+12|0,e,-1);if(F[e+11|0]<=-1){qa(H[e>>2])}if((b|0)>=1){H[a+44>>2]=b}d=(b|0)>0}da=e+16|0;return d|0}function Se(a,b){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;d=H[b+100>>2];h=H[b+96>>2];H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;g=d-h|0;d=(g|0)/12|0;a:{b:{if(!g){break b}if(d>>>0>=357913942){break a}c=ra(g);H[f>>2]=c;H[f+8>>2]=c+N(d,12);b=0;i=c;c=N((g-12>>>0)/12|0,12)+12|0;g=ta(i,0,c);H[f+4>>2]=c+g;c=d>>>0>1?d:1;i=c&1;if(d>>>0>=2){d=c&-2;while(1){e=N(b,12);c=e+h|0;j=H[c+4>>2];k=H[c>>2];e=e+g|0;H[e+8>>2]=H[c+8>>2];H[e>>2]=k;H[e+4>>2]=j;e=N(b|1,12);c=e+h|0;j=H[c+8>>2];k=H[c+4>>2];e=e+g|0;H[e>>2]=H[c>>2];H[e+4>>2]=k;H[e+8>>2]=j;b=b+2|0;d=d-2|0;if(d){continue}break}}if(!i){break b}d=N(b,12);b=d+h|0;h=H[b+4>>2];c=H[b>>2];d=d+g|0;H[d+8>>2]=H[b+8>>2];H[d>>2]=c;H[d+4>>2]=h}Ye(a,f);a=H[f>>2];if(a){H[f+4>>2]=a;qa(a)}da=f+16|0;return}ua();X()}function Ea(a,b){var c=0,d=0,e=0,f=0;d=H[a>>2];a:{if(b){b=d;c=H[b+12>>2];d=H[b+8>>2]+1|0;c=d>>>0<1?c+1|0:c;H[b+8>>2]=d;H[b+12>>2]=c;b=H[a+28>>2];H[a+24>>2]=H[a+24>>2]|1<>2];d=H[b>>2]+1|0;c=d>>>0<1?c+1|0:c;H[b>>2]=d;H[b+4>>2]=c;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;e=f+1|0;if(e>>>0>=1073741824){break c}b=c>>1;e=f>>>0<536870911?b>>>0>>0?e:b:1073741823;b=0;e:{if(!e){break e}if(e>>>0>=1073741824){break b}b=ra(e<<2)}f=b+(f<<2)|0;H[f>>2]=H[a+24>>2];if((c|0)>=1){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}ua();X()}wa(10036);X()}function Ha(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 _d(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=da-16|0;da=d;Ga(H[a+8>>2]-H[a+4>>2]>>2,b);c=H[a+4>>2];if((c|0)!=H[a+8>>2]){h=d+13|0;i=d+14|0;j=d+15|0;k=d+16|0;while(1){f=H[H[H[a+32>>2]+8>>2]+(H[(g<<2)+c>>2]<<2)>>2];F[d+15|0]=H[f+56>>2];c=H[b+20>>2];e=H[b+16>>2];if((c|0)<0?1:(c|0)<=0?!e:0){va(b,H[b+4>>2],d+15|0,k);e=H[b+16>>2];c=H[b+20>>2]}F[d+14|0]=H[f+28>>2];if((c|0)<0?1:(c|0)<=0?!e:0){va(b,H[b+4>>2],d+14|0,j);e=H[b+16>>2];c=H[b+20>>2]}F[d+13|0]=I[f+24|0];if((c|0)<0?1:(c|0)<=0?!e:0){va(b,H[b+4>>2],d+13|0,i);e=H[b+16>>2];c=H[b+20>>2]}F[d+12|0]=I[f+32|0];if((c|0)<0?1:(c|0)<=0?!e:0){va(b,H[b+4>>2],d+12|0,h)}Ga(H[f+60>>2],b);g=g+1|0;c=H[a+4>>2];if(g>>>0>2]-c>>2>>>0){continue}break}}da=d+16|0;return 1}function ta(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}f=a+c|0;F[f-1|0]=b;F[a|0]=b;if(c>>>0<3){break a}F[f-2|0]=b;F[a+1|0]=b;F[f-3|0]=b;F[a+2|0]=b;if(c>>>0<7){break a}F[f-4|0]=b;F[a+3|0]=b;if(c>>>0<9){break a}f=0-a&3;e=f+a|0;d=N(b&255,16843009);H[e>>2]=d;b=c-f&-4;c=b+e|0;H[c-4>>2]=d;if(b>>>0<9){break a}H[e+8>>2]=d;H[e+4>>2]=d;H[c-8>>2]=d;H[c-12>>2]=d;if(b>>>0<25){break a}H[e+24>>2]=d;H[e+20>>2]=d;H[e+16>>2]=d;H[e+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=e&4|24;c=c-b|0;if(c>>>0<32){break a}d=el(d,0,1,1);f=ea;b=b+e|0;while(1){H[b+24>>2]=d;e=f;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,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,65536);d=H[g+72>>2];e=H[g+76>>2];b=H[g+64>>2];c=H[g+68>>2];if((f|0)>-32765){f=f+16382|0;break a}Ka(g+48|0,b,c,d,e,0,0,0,65536);f=((f|0)>-49146?f:-49146)+32764|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 Wf(a,b,c){var d=0,e=0,f=0;a:{b:{c:{b=N(b,3);if((b|0)==-1){break c}e=H[a+12>>2];f=H[e+12>>2];d=b<<2;if(H[f+d>>2]==-1){break b}a=H[a+152>>2];e=H[e>>2];if(H[a+(H[e+d>>2]<<2)>>2]!=-1){break a}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break c}d=b<<2;if(H[d+f>>2]==-1){break b}if(H[a+(H[d+e>>2]<<2)>>2]!=-1){break a}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break c}d=b<<2;if(H[d+f>>2]==-1){break b}if(H[a+(H[d+e>>2]<<2)>>2]!=-1){break a}a=b+1|0;H[c>>2]=(a>>>0)%3|0?a:b-2|0;return 1}b=-1}H[c>>2]=b;return 0}while(1){d:{a=b;b=((b>>>0)%3|0?-1:2)+b|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}function Ii(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)<=-1){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)>=1){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=Gf(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>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){c=Gf(e,N(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(11712);X()}function Ee(a,b,c){a:{if(b>>>0>20){break a}b:{switch(b-9|0){case 0:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];return;case 1: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:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];H[a+4>>2]=0;return;case 3: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;return;case 4: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 5:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=J[b>>1];H[a+4>>2]=0;return;case 6: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 7:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=I[b|0];H[a+4>>2]=0;return;case 8:b=H[c>>2]+7&-8;H[c>>2]=b+8;M[a>>3]=M[b>>3];return;case 9:break b;default:break a}}fa[369](a,c)}}function bi(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-16|0;da=f;a:{b:{c:{if(!b){break c}e=ub(c);if(e>>>0>=4294967280){break b}d:{e:{if(e>>>0>=11){g=e+16&-16;a=ra(g);H[f+8>>2]=g|-2147483648;H[f>>2]=a;H[f+4>>2]=e;break e}F[f+11|0]=e;a=f;if(!e){break d}}sa(a,c,e)}F[a+e|0]=0;e=da-16|0;da=e;H[e+12>>2]=d;a=da-32|0;da=a;c=gb(b,f);if((c|0)!=(b+4|0)){pc(b,c)}c=H[e+12>>2];g=Ja(a,f);H[a+20>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;ib(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;oc(a+24|0,b,g,a);c=H[a+12>>2];if(c){H[a+16>>2]=c;qa(c)}if(F[a+11|0]<=-1){qa(H[a>>2])}da=a+32|0;da=e+16|0;if(F[f+11|0]>-1){break c}qa(H[f>>2])}da=f+16|0;a=(b|0)!=0;break a}lb();X()}return a|0}function ag(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;f=g+1|0;if(f>>>0>=1073741824){break b}c=e>>1;f=g>>>0<536870911?c>>>0>>0?f:c:1073741823;c=0;d:{if(!f){break d}if(f>>>0>=1073741824){break a}c=ra(f<<2)}g=c+(g<<2)|0;H[g>>2]=b;if((e|0)>=1){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;e:{if((d|0)>(b|0)){break e}H[h+12>>2]=-1;e=b+1|0;if(e>>>0>d>>>0){Bb(a+16|0,e-d|0,h+12|0);c=H[a+16>>2];break e}if(d>>>0<=e>>>0){break e}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(11712);X()} +function Sf(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;b=(d|0)/12|0;Ga(b,H[H[a+4>>2]+44>>2]);if(d){f=b>>>0>1?b:1;d=0;while(1){c=H[a+108>>2]+N(d,12)|0;Ga(H[c+4>>2]-g|0,H[H[a+4>>2]+44>>2]);Ga(H[c+4>>2]-H[c>>2]|0,H[H[a+4>>2]+44>>2]);g=H[c+4>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}d=0;gd(H[H[a+4>>2]+44>>2],b,0,0);f=b>>>0>1?b:1;while(1){b=H[H[a+4>>2]+44>>2];c=H[b+20>>2];if((c|0)>0?1:(c|0)>=0?K[b+16>>2]>=1:0){g=I[(H[a+108>>2]+N(d,12)|0)+8|0];b=H[b+12>>2];e=H[b+4>>2];c=e>>>3|0;h=c+H[b>>2]|0;i=I[h|0];e=e&7;j=h,k=il(-2,e)&i,F[j|0]=k;c=c+H[b>>2]|0;F[c|0]=I[c|0]|(g&1)<>2]=H[b+4>>2]+1}d=d+1|0;if((f|0)!=(d|0)){continue}break}fd(H[H[a+4>>2]+44>>2])}return 1}function Ni(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)<=-1){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)>=1){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=Hf(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>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){c=Hf(e,N(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(11712);X()}function sg(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=da-16|0;da=f;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;e=a+16|0;H[e>>2]=0;H[e+4>>2]=0;H[a+12>>2]=e;e=a+24|0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=e+4;if((a|0)!=(b+4|0)){Wb(a,H[b+4>>2],b+8|0)}if((e|0)!=(b+28|0)){Wb(e,H[b+28>>2],b+32|0)}H[f+12>>2]=0;a:{d=H[c+8>>2];if((H[c+12>>2]-d|0)<1){break a}e=b+20|0;while(1){b=H[e>>2];b:{if(!b){break b}g=H[H[d>>2]+56>>2];d=e;while(1){h=H[b+16>>2]<(g|0);d=h?d:b;b=H[(h<<2)+b>>2];if(b){continue}break}if((d|0)==(e|0)|H[d+16>>2]>(g|0)){break b}b=Fb(a,f+12|0);if((b|0)==(d+20|0)){break b}Wb(b,H[d+20>>2],d+24|0)}d=H[f+12>>2]+1|0;H[f+12>>2]=d;b=H[c+8>>2];if((d|0)>=H[c+12>>2]-b>>2){break a}d=b+(d<<2)|0;continue}}da=f+16|0}function Ac(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)<=-1){break b}}b=Ca(i,h,k);if(!b){break d}if((b|0)<=-1){break c}return hb(g,c,d)}if(b>>>0>f>>>0){break b}}if(l){break c}return hb(g,c,d)}e=e+4|0}e=H[e>>2];if(e){continue}break}}return hb(a,c,d)}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- -64>>2];c=H[b+20>>2];if((c|0)<0?1:(c|0)<=0?!H[b+16>>2]:0){va(b,H[b+4>>2],d+40|0,d+44|0)}f=d+8|0;c=f;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){c=1;while(1){g=c;c=H[H[a+60>>2]+(e>>>3&536870908)>>2]>>>e|0;Ea(f,(g^c^-1)&1);c=c&1;e=e+1|0;if((e|0)>2]){continue}break}}Aa(f,b);H[d+44>>2]=H[a+12>>2];e=H[b+20>>2];c=e;e=H[b+16>>2];if((c|0)<0?1:(c|0)<=0?!e:0){va(b,H[b+4>>2],d+44|0,d+48|0);e=H[b+16>>2];c=H[b+20>>2]}H[d+44>>2]=H[a+24>>2];if((c|0)<0?1:(c|0)<=0?!e:0){va(b,H[b+4>>2],d+44|0,d+48|0)}za(f);da=d+48|0;return 1}function Nh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=H[a>>2];d=da-16|0;da=d;H[d+12>>2]=b;a=ra(32);H[d>>2]=a;H[d+4>>2]=17;H[d+8>>2]=-2147483616;F[a+17|0]=0;F[a+16|0]=I[10560];b=I[10556]|I[10557]<<8|(I[10558]<<16|I[10559]<<24);e=I[10552]|I[10553]<<8|(I[10554]<<16|I[10555]<<24);F[a+8|0]=e;F[a+9|0]=e>>>8;F[a+10|0]=e>>>16;F[a+11|0]=e>>>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[10548]|I[10549]<<8|(I[10550]<<16|I[10551]<<24);e=I[10544]|I[10545]<<8|(I[10546]<<16|I[10547]<<24);F[a|0]=e;F[a+1|0]=e>>>8;F[a+2|0]=e>>>16;F[a+3|0]=e>>>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(Fb(f+4|0,d+12|0),d,c);if(F[d+11|0]<=-1){qa(H[d>>2])}da=d+16|0}function Ng(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((c|0)<0?1:(c|0)<=0?!H[b+16>>2]:0){va(b,H[b+4>>2],d+40|0,d+44|0)}f=d+8|0;c=f;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){c=1;while(1){g=c;c=H[H[a+76>>2]+(e>>>3&536870908)>>2]>>>e|0;Ea(f,(g^c^-1)&1);c=c&1;e=e+1|0;if((e|0)>2]){continue}break}}Aa(f,b);H[d+44>>2]=H[a+12>>2];e=H[b+20>>2];c=e;e=H[b+16>>2];if((c|0)<0?1:(c|0)<=0?!e:0){va(b,H[b+4>>2],d+44|0,d+48|0);e=H[b+16>>2];c=H[b+20>>2]}H[d+44>>2]=H[a+16>>2];if((c|0)<0?1:(c|0)<=0?!e:0){va(b,H[b+4>>2],d+44|0,d+48|0)}za(f);da=d+48|0;return 1}function ld(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(H[a+64>>2]){break a}c=ra(32);H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;d=H[a+64>>2];H[a+64>>2]=c;if(!d){break a}c=H[d>>2];if(c){H[d+4>>2]=c;qa(c)}qa(d)}c=H[a+64>>2];d=H[a+28>>2]-1|0;b:{if(d>>>0<=10){d=H[(d<<2)+16256>>2];break b}d=-1}d=N(d,F[a+24|0]);g=d;f=d>>31;e=el(d,f,b,0);d=0;c:{if((ea|0)<0){break c}ib(c,e);d=c;e=H[c+28>>2];c=H[c+24>>2]+1|0;e=c>>>0<1?e+1|0:e;H[d+24>>2]=c;H[d+28>>2]=e;d=1}if(d){c=H[a+64>>2];H[a>>2]=c;d=H[c+20>>2];H[a+8>>2]=H[c+16>>2];H[a+12>>2]=d;d=H[c+24>>2];c=H[c+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]=d;H[a+20>>2]=c;H[a+80>>2]=b}}function bc(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(11712);X()}H[a+8>>2]=d;H[a+4>>2]=g;H[a>>2]=e}if(b){qa(b)}}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 ug(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=Xb(H[b+4>>2],0),H[e+12>>2]=f;a=Pe(H[b+4>>2]);if(!a){break b}a=H[a+28>>2]-1|0;c:{if(a>>>0<=10){a=1279>>>a&1;break c}a=0}if(a){c=6;break a}b=H[b+48>>2];a=ec(d,9932);b=Ac(b,d+12|0,a,-1);if(F[a+11|0]<=-1){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}da=d+16|0;return K[H[b+4>>2]+80>>2]<40?1:4}da=d+16|0;return c}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;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[10144];e=I[10140]|I[10141]<<8|(I[10142]<<16|I[10143]<<24);f=I[10136]|I[10137]<<8|(I[10138]<<16|I[10139]<<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[10132]|I[10133]<<8|(I[10134]<<16|I[10135]<<24);f=I[10128]|I[10129]<<8|(I[10130]<<16|I[10131]<<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;_a(Fb(a+4|0,d+12|0),d,c);if(F[d+11|0]<=-1){qa(H[d>>2])}da=d+16|0}function Fa(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;i=Ta(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 Sa(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=da-16|0;da=e;H[a+4>>2]=0;a:{b:{if(!b){break b}f=H[a+8>>2];d=f<<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)<=-1){break a}h=e;if(d>>>0<=1073741822){g=b+31&-32;d=f<<6;d=d>>>0>>0?g:d}else{d=2147483647}Kb(h,d);d=H[a>>2];H[a>>2]=H[e>>2];H[e>>2]=d;f=H[a+4>>2];H[a+4>>2]=b;H[e+4>>2]=f;f=H[a+8>>2];H[a+8>>2]=H[e+8>>2];H[e+8>>2]=f;if(!d){break c}qa(d)}d=b>>>5|0;f=d<<2;a=H[a>>2];if(I[c|0]){a=ta(a,255,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;H[a>>2]=H[a>>2]|-1>>>32-b;break b}a=ta(a,0,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;H[a>>2]=H[a>>2]&(-1>>>32-b^-1)}da=e+16|0;return}ua();X()}function Mb(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0;j=1;i=d&2147483647;m=i;k=c;a:{if(!c&(i|0)==2147418112?a|b:(i|0)==2147418112&(c|0)!=0|i>>>0>2147418112){break a}l=h&2147483647;n=l;i=g;if(!g&(l|0)==2147418112?e|f:(l|0)==2147418112&(g|0)!=0|l>>>0>2147418112){break a}if(!(a|e|(i|k)|(b|f|(m|n)))){return 0}k=d&h;if((k|0)>0?1:(k|0)>=0){j=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>>0|b>>>0>>0:(d|0)<(h|0)?1:(d|0)<=(h|0)?c>>>0>>0:0){break a}return(a^e|c^g)!=0|(b^f|d^h)!=0}j=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>e>>>0|b>>>0>f>>>0:(d|0)>(h|0)?1:(d|0)>=(h|0)?c>>>0>g>>>0:0){break a}j=(a^e|c^g)!=0|(b^f|d^h)!=0}return j}function tk(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){sc(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){sc(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){sc(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 fd(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=da-32|0;da=e;b=H[a+20>>2];c=H[a+16>>2];if((b|0)>0?1:(b|0)>=0?c>>>0>=1:0){b=H[H[a+12>>2]+4>>2]+7|0;g=b>>>0<7?1:g;d=b;b=g>>>3|0;h=g<<29|d>>>3;g=h;d=b;i=a;if(I[a+24|0]){f=H[a+4>>2];F[e+24|0]=0;b=e;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b>>2]=0;H[b+4>>2]=0;Db(h,d,b);f=f-c|0;d=f-8|0;c=H[b+4>>2]-H[b>>2]|0;Ha(d+c|0,f,h);sa(d,H[b>>2],c);b=a;d=8-c|0;f=d+H[b+16>>2]|0;c=H[b+20>>2];H[b+16>>2]=f;H[b+20>>2]=f>>>0>>0?c+1|0:c;b=H[e+12>>2];H[e+12>>2]=0;if(b){qa(b)}b=H[e>>2];if(b){H[e+4>>2]=b;qa(b)}b=H[a+16>>2]}else{b=c}ib(i,g-b+(H[a+4>>2]-H[a>>2])|0);H[a+16>>2]=0;H[a+20>>2]=0}da=e+32|0}function Zc(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;e=H[a+8>>2];d=H[a>>2];if(f>>>0<=e-d>>>0){g=H[a+4>>2]-d|0;e=g+b|0;h=f>>>0>g>>>0?e:c;if((h|0)!=(b|0)){while(1){F[d|0]=I[b|0];d=d+1|0;b=b+1|0;if((h|0)!=(b|0)){continue}break}}if(f>>>0>g>>>0){b=H[a+4>>2];if((c|0)!=(h|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}a:{if((f|0)<=-1){break a}d=e<<1;e=e>>>0<1073741823?d>>>0>>0?f:d:2147483647;if((e|0)<=-1){break a}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 Oh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=H[a>>2];e=da-16|0;da=e;a=ra(16);H[e>>2]=a;H[e+4>>2]=15;H[e+8>>2]=-2147483632;F[a+15|0]=0;c=I[10539]|I[10540]<<8|(I[10541]<<16|I[10542]<<24);d=I[10535]|I[10536]<<8|(I[10537]<<16|I[10538]<<24);F[a+7|0]=d;F[a+8|0]=d>>>8;F[a+9|0]=d>>>16;F[a+10|0]=d>>>24;F[a+11|0]=c;F[a+12|0]=c>>>8;F[a+13|0]=c>>>16;F[a+14|0]=c>>>24;c=I[10532]|I[10533]<<8|(I[10534]<<16|I[10535]<<24);d=I[10528]|I[10529]<<8|(I[10530]<<16|I[10531]<<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;_a(f+4|0,e,b);if(F[e+11|0]<=-1){qa(H[e>>2])}da=e+16|0}function Gc(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){Ha(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)<=-1){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 Yh(a,b){a=a|0;b=b|0;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[10480]|I[10481]<<8|(I[10482]<<16|I[10483]<<24);e=I[10476]|I[10477]<<8|(I[10478]<<16|I[10479]<<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[10473]|I[10474]<<8|(I[10475]<<16|I[10476]<<24);e=I[10469]|I[10470]<<8|(I[10471]<<16|I[10472]<<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;_a(a+4|0,f,b);if(F[f+11|0]<=-1){qa(H[f>>2])}da=f+16|0}function Vb(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)>=1){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)<=-1){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|0)>=1){c=sa(c,b,f)+f|0}H[a+4>>2]=c;return}ua();X()}function Ij(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 _h(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){_e(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;_e(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 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;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)<1){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){Mg(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 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;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)<1){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){Hg(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 Pd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{f=H[a+4>>2];b:{if((f|0)!=H[a>>2]){c=f;break b}e=H[a+8>>2];c=H[a+12>>2];if(e>>>0>>0){d=((c-e>>2)+1|0)/2<<2;c=d+e|0;g=e-f|0;if(g){c=c-g|0;Ha(c,f,g);e=H[a+8>>2]}H[a+4>>2]=c;H[a+8>>2]=e+d;break b}c=c-f|0;d=c?c>>1:1;if(d>>>0>=1073741824){break a}c=d<<2;h=ra(c);g=h+c|0;c=(d+3&-4)+h|0;i=c;d=e-f|0;if(d){i=c+d|0;e=c;d=f;while(1){H[e>>2]=H[d>>2];d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}H[a+12>>2]=g;H[a+8>>2]=i;H[a+4>>2]=c;H[a>>2]=h;if(!f){break b}qa(f);c=H[a+4>>2]}H[c-4>>2]=H[b>>2];H[a+4>>2]=H[a+4>>2]-4;return}wa(1752);X()}function Wd(a){var b=0,c=0,d=0,e=0;d=H[a+152>>2];if(d){b=H[a+156>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b-12|0;e=H[c>>2];if(e){H[b-8>>2]=e;qa(e)}b=c;if((d|0)!=(b|0)){continue}break}c=H[a+152>>2]}H[a+156>>2]=d;qa(c)}d=H[a+140>>2];if(d){b=H[a+144>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b-12|0;e=H[c>>2];if(e){H[b-8>>2]=e;qa(e)}b=c;if((d|0)!=(b|0)){continue}break}c=H[a+140>>2]}H[a+144>>2]=d;qa(c)}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)}zb(a+84|0);zb(a- -64|0);zb(a+44|0);za(a+12|0)}function Td(a){var b=0,c=0,d=0,e=0;d=H[a+140>>2];if(d){b=H[a+144>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b-12|0;e=H[c>>2];if(e){H[b-8>>2]=e;qa(e)}b=c;if((d|0)!=(b|0)){continue}break}c=H[a+140>>2]}H[a+144>>2]=d;qa(c)}d=H[a+128>>2];if(d){b=H[a+132>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b-12|0;e=H[c>>2];if(e){H[b-8>>2]=e;qa(e)}b=c;if((d|0)!=(b|0)){continue}break}c=H[a+128>>2]}H[a+132>>2]=d;qa(c)}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)}zb(a+72|0);zb(a+52|0);zb(a+32|0);zb(a+12|0)}function lg(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)>-1){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)>-1){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 Ua(a,b,c){var d=0,e=0,f=0,g=0;if(!(I[a|0]&32)){a:{e=b;b=c;d=a;a=H[d+16>>2];b:{if(!a){a=I[d+74|0];F[d+74|0]=a-1|a;a=H[d>>2];c:{if(a&8){H[d>>2]=a|32;a=-1;break c}H[d+4>>2]=0;H[d+8>>2]=0;a=H[d+44>>2];H[d+28>>2]=a;H[d+20>>2]=a;H[d+16>>2]=a+H[d+48>>2];a=0}if(a){break b}a=H[d+16>>2]}g=H[d+20>>2];if(a-g>>>0>>0){fa[H[d+36>>2]](d,e,c)|0;break a}d:{if(F[d+75|0]>-1){a=c;while(1){b=a;f=c;if(!a){break d}a=b-1|0;if(I[e+a|0]!=10){continue}break}if(fa[H[d+36>>2]](d,e,b)>>>0>>0){break b}e=b+e|0;g=H[d+20>>2];f=c-b|0;break d}f=c}b=f;sa(g,e,b);H[d+20>>2]=b+H[d+20>>2]}}}}function hc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{e=H[a+8>>2];b:{if((e|0)!=H[a+12>>2]){break b}f=H[a+4>>2];g=H[a>>2];if(f>>>0>g>>>0){g=((f-g>>2)+1|0)/-2<<2;c=g+f|0;d=e-f|0;if(d){Ha(c,f,d);f=H[a+4>>2]}e=c+d|0;H[a+8>>2]=e;H[a+4>>2]=f+g;break b}c=e-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}d=c<<2;h=ra(d);i=h+d|0;d=e-f|0;c=(c&-4)+h|0;e=c;if(d){e=c+d|0;d=c;while(1){H[d>>2]=H[f>>2];f=f+4|0;d=d+4|0;if((e|0)!=(d|0)){continue}break}}H[a+12>>2]=i;H[a+8>>2]=e;H[a+4>>2]=c;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(1752);X()}function Pf(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 gb(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)>-1){break a}}c=g}return c}function me(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){Pb(c,k,e)}if(g){Pb(c+e|0,h,g)}d=d-(e+f|0)|0;if(d){Pb((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 ic(a,b){var c=0,d=0,e=0,f=0;d=H[a+16>>2];if(b){H[a+12>>2]=H[a+12>>2]|-2147483648>>>d}b=d+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}d=H[a>>2];f=b-d|0;e=f>>2;c=e+1|0;if(c>>>0>=1073741824){break b}b=f>>1;c=e>>>0<536870911?b>>>0>>0?c:b:1073741823;b=0;d:{if(!c){break d}if(c>>>0>=1073741824){break a}b=ra(c<<2)}e=b+(e<<2)|0;H[e>>2]=H[a+12>>2];if((f|0)>=1){sa(b,d,f)}H[a+8>>2]=b+(c<<2);H[a+4>>2]=e+4;H[a>>2]=b;if(!d){break c}qa(d)}H[a+12>>2]=0;H[a+16>>2]=0}return}ua();X()}wa(1752);X()}function Re(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=da-16|0;da=d;a:{b:{c=I[b+11|0];e=c<<24>>24;c:{if((e|0)<=-1){c=H[b+4>>2];if(c>>>0>255){break a}if(!c){break c}break b}if(e){break b}}F[d+15|0]=0;b=H[a+20>>2];if((b|0)<0?1:(b|0)<=0?!H[a+16>>2]:0){va(a,H[a+4>>2],d+15|0,d+16|0)}g=1;break a}F[d+14|0]=c;g=H[a+20>>2];c=g;f=H[a+16>>2];if((c|0)<0?1:(c|0)<=0?!f:0){va(a,H[a+4>>2],d+14|0,d+15|0);f=H[a+16>>2];c=H[a+20>>2];e=I[b+11|0]}g=1;if((c|0)>0?1:(c|0)>=0?f:0){break a}f=a;h=H[a+4>>2];a=e<<24>>24<0;c=a?H[b>>2]:b;va(f,h,c,c+(a?H[b+4>>2]:e&255)|0)}da=d+16|0;return g}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){Ha(e,b,h)}if(f>>>0>>0){b=H[a+4>>2];c=c-d|0;if((c|0)>=1){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)<=-1){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|0)>=1){c=sa(c,b,f)+f|0}H[a+4>>2]=c;return}ua();X()}function jh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(vb(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(vb(a,H[b>>2],e)){if(!(H[b+20>>2]!=(c|0)?H[b+16>>2]!=(c|0):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 xb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=da-16|0;da=f;A(+b);h=v(1)|0;e=v(0)|0;g=h&2147483647;c=g;d=e;g=c+-1048576|0;a:{if((g|0)==2145386495|g>>>0<2145386495){i=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){i=e<<28;c=h;e=c>>>4|0;c=(c&15)<<28|d>>>4;d=e|2147418112;break a}if(!(c|d)){c=0;d=0;break a}g=c;c=c>>>0<1?Q(e)+32|0:Q(c);Za(f,d,g,0,0,c+49|0);j=H[f>>2];i=H[f+4>>2];e=15372-c<<16;c=H[f+8>>2];d=e|H[f+12>>2]^65536}H[a>>2]=j;H[a+4>>2]=i;H[a+8>>2]=c;H[a+12>>2]=h&-2147483648|d;da=f+16|0}function Ob(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)<=-1){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 qg(a,b,c,d){var e=0,f=0,g=0,h=0;e=da-48|0;da=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;a:{if((d|0)<1){break a}Pc(e,L[c>>2]);f=I[e+11|0];g=f<<24>>24<0;Qc(e+16|0,g?H[e>>2]:e,g?H[e+4>>2]:f);if(F[e+11|0]<=-1){qa(H[e>>2])}f=1;if((d|0)==1){break a}while(1){Qc(e+16|0,10466,ub(10466));Pc(e,L[(f<<2)+c>>2]);g=I[e+11|0];h=g<<24>>24<0;Qc(e+16|0,h?H[e>>2]:e,h?H[e+4>>2]:g);if(F[e+11|0]<=-1){qa(H[e>>2])}f=f+1|0;if((f|0)!=(d|0)){continue}break}}H[e+40>>2]=b;Id(e,a,b,e+40|0);Rc(H[e>>2]+28|0,e+16|0);if(F[e+27|0]<=-1){qa(H[e+16>>2])}da=e+48|0}function Xf(a){var b=0,c=0,d=0,e=0;Ba(a);c=H[a+84>>2];a:{if((c|0)<1){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]<1){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 Qd(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=1596;b=H[a+60>>2];if(b){c=H[a- -64>>2];d=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;d=H[c>>2];H[c>>2]=0;if(d){Ma(d)}if((b|0)!=(c|0)){continue}break}d=H[a+60>>2]}H[a+64>>2]=b;qa(d)}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];d=b;b:{if((b|0)==(c|0)){break b}while(1){c=c-24|0;fa[H[H[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}d=H[a+36>>2]}H[a+40>>2]=b;qa(d)}H[a>>2]=1432;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 $k(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;d=H[a+8>>2];e=H[d+40>>2];h=ra((e|0)>-1?e:-1);a:{g=H[b>>2];i=H[b+4>>2];if((g|0)==(i|0)){break a}l=e+h|0;while(1){f=H[(j<<2)+g>>2];e=h;m=H[H[d>>2]>>2];n=H[d+48>>2];k=H[d+40>>2];o=k;p=H[d+44>>2];if(!I[d+84|0]){f=H[H[d+68>>2]+(f<<2)>>2]}d=e;e=el(o,p,f,0)+n|0;f=sa(d,e+m|0,k);e=H[c+20>>2];if((e|0)<0?1:(e|0)<=0?!H[c+16>>2]:0){va(c,H[c+4>>2],f,l);g=H[b>>2];i=H[b+4>>2]}j=j+1|0;if(j>>>0>=i-g>>2>>>0){break a}d=H[a+8>>2];continue}}qa(h);return 1}function ke(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(vb(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 Sh(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((Xb(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)}tg(f,a,b,e);a=H[f>>2];if(F[f+15|0]<=-1){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 Ta(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 Th(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((Xb(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);rg(e,a,b,d);a=H[e>>2];if(F[e+15|0]<=-1){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 Rb(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}h=e;i=d;j=64-f|0;g=j&31;if((j&63)>>>0>=32){h=i<>>32-g|h<>>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 Kb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=da-16|0;da=d;a:{b:{if(H[a+8>>2]<<5>>>0>=b>>>0){break b}H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;if((b|0)<=-1){break a}g=(b-1>>>5|0)+1|0;b=ra(g<<2);H[d+8>>2]=g;H[d>>2]=b;f=H[a>>2];c=H[a+4>>2];H[d+4>>2]=c;H[(c>>>0<33?b:b+(c-1>>>3&536870908)|0)>>2]=0;c:{if((c|0)<1){break c}h=c>>>5|0;e=h<<2;i=Ha(b,f,e);c=c-(h<<5)|0;if((c|0)<1){break c}e=e+i|0;c=-1>>>32-c|0;H[e>>2]=H[e>>2]&(c^-1)|c&H[(h<<2)+f>>2]}H[a+8>>2]=g;H[a>>2]=b;if(!f){break b}qa(f)}da=d+16|0;return}ua();X()}function af(a,b,c,d,e,f){var g=0,h=0,i=0;g=da-16|0;da=g;a:{if(!a){h=-1;break a}i=ra(96);md(uc(i),b,d<<24>>24,f,c);H[g>>2]=i;H[g+8>>2]=0;b=Vc(a,g);f=H[g>>2];H[g>>2]=0;if(f){Ma(f)}if(c){i=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[i+40>>2];sa(H[H[i>>2]>>2]+N(f,I[i+84|0]?h:H[H[i+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:{c:{if(!d){H[a+80>>2]=c;break c}a=-1;if((c|0)!=(d|0)){break b}}a=b}h=a;a=H[g+8>>2];H[g+8>>2]=0;if(!a){break a}Ma(a)}da=g+16|0;return h}function Yc(a,b,c,d,e,f){var g=0,h=0,i=0;g=da-16|0;da=g;a:{if(!a){h=-1;break a}i=ra(96);md(uc(i),b,d<<24>>24,f,c);H[g>>2]=i;H[g+8>>2]=0;b=Vc(a,g);f=H[g>>2];H[g>>2]=0;if(f){Ma(f)}if(c){i=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[i+40>>2];sa(H[H[i>>2]>>2]+N(f,I[i+84|0]?h:H[H[i+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:{c:{if(!d){H[a+80>>2]=c;break c}a=-1;if((c|0)!=(d|0)){break b}}a=b}h=a;a=H[g+8>>2];H[g+8>>2]=0;if(!a){break a}Ma(a)}da=g+16|0;return h}function Za(a,b,c,d,e,f){var g=0,h=0,i=0,j=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){f=0;d=d>>>e|0}else{f=d>>>e|0;d=((1<>>e}d=j|d;e=f|h;f=b;b=i&31;if((i&63)>>>0>=32){h=f<>>32-b|c<>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e}function cf(a,b,c,d,e,f){var g=0,h=0,i=0;g=da-16|0;da=g;a:{if(!a){h=-1;break a}i=ra(96);md(uc(i),b,d<<24>>24,f,c);H[g>>2]=i;H[g+8>>2]=0;b=Vc(a,g);f=H[g>>2];H[g>>2]=0;if(f){Ma(f)}if(c){i=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[i+40>>2];sa(H[H[i>>2]>>2]+N(f,I[i+84|0]?h:H[H[i+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:{c:{if(!d){H[a+80>>2]=c;break c}a=-1;if((c|0)!=(d|0)){break b}}a=b}h=a;a=H[g+8>>2];H[g+8>>2]=0;if(!a){break a}Ma(a)}da=g+16|0;return h}function Wa(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=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}j=i;k=(h<<3)+f|0;if(K[k>>2]>2]){while(1){b:{H[j>>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}j=c;if(K[k>>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 Jh(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]<=-1){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 Zk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;if((fa[H[H[b>>2]+20>>2]](b)|0)<=0){return 1}a:{while(1){d=Xb(H[H[a+4>>2]+4>>2],fa[H[H[b>>2]+24>>2]](b,e)|0);if((d|0)==-1){break a}h=b;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]](h,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 Rc(a,b){var c=0,d=0,e=0,f=0,g=0;if((a|0)!=(b|0)){if(I[b+11|0]>>>7|0){c=H[b>>2]}else{c=b}f=c;d=da-16|0;da=d;if(I[b+11|0]>>>7|0){c=H[b+4>>2]}else{c=I[b+11|0]}b=I[a+11|0]>>>7|0?(H[a+8>>2]&2147483647)-1|0:10;a:{if(c>>>0<=b>>>0){if(I[a+11|0]>>>7|0){b=H[a>>2]}else{b=a}e=b;if(c){Ha(e,f,c)}F[d+15|0]=0;F[b+c|0]=I[d+15|0];b:{if(I[a+11|0]>>>7|0){H[a+4>>2]=c;break b}F[a+11|0]=c}break a}e=a;g=b;b=c-b|0;if(I[a+11|0]>>>7|0){a=H[a+4>>2]}else{a=I[a+11|0]}me(e,g,b,a,0,a,c,f)}da=d+16|0}}function qc(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=16788;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){b=d;c=H[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){Ma(b)}if((c|0)!=(d|0)){continue}break}e=H[a+8>>2]}b=e;H[a+12>>2]=d;qa(b)}b=H[a+4>>2];H[a+4>>2]=0;if(b){$e(b)}return a|0}function Xg(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=2032;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){b=d;c=H[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=H[a+36>>2]}b=e;H[a+40>>2]=d;qa(b)}H[a>>2]=1432;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 Rd(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 Ie(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!H[H[4768]>>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:0)){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[4808]=25;a=-1}else{a=1}break a}F[a|0]=b;a=1}return a}function Ja(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=da-16|0;da=f;a:{if(!(I[b+11|0]>>>7|0)){H[a+8>>2]=H[b+8>>2];c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;break a}g=H[b>>2];e=da-16|0;da=e;b:{c=H[b+4>>2];if(c>>>0<=4294967279){c:{if(c>>>0<=10){F[a+11|0]=c;b=a;break c}h=a;if(c>>>0>=11){b=c+16&-16;d=b-1|0;b=(d|0)==11?b:d}else{b=10}d=b+1|0;b=ra(d);H[h>>2]=b;H[a+8>>2]=d|-2147483648;H[a+4>>2]=c}Pb(b,g,c);F[e+15|0]=0;F[b+c|0]=I[e+15|0];da=e+16|0;break b}lb();X()}}da=f+16|0;return a}function wg(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)<=-1){break a}}c=Ca(d,g,f);if(!c){break c}if((c|0)<=-1){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 Lf(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)>=1){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(11712);X()}function Qg(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)>=1){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(1244);X()}function La(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)>=1){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(2400);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>>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)>=1){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(10738);X()}function ye(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;h=-1;f=d&2147483647;i=f;g=c;a:{if(!c&(f|0)==2147418112?a|b:(f|0)==2147418112&(c|0)!=0|f>>>0>2147418112){break a}f=e&2147483647;j=f;if((f|0)==2147418112?0:f>>>0>2147418112){break a}if(!(a|g|(i|j|b))){return 0}g=d&e;if((g|0)>0?1:(g|0)>=0){if(!c&(d|0)==(e|0)?0:(d|0)<(e|0)){break a}return(a|c)!=0|(d^e|b)!=0}if(!c&(d|0)==(e|0)?a|b:(d|0)>(e|0)?1:(d|0)>=(e|0)?c:0){break a}h=(a|c)!=0|(d^e|b)!=0}return h}function ib(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)<=-1){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)>=1){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 vg(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((c|0)>0?1:(c|0)>=0?H[b+16>>2]:0){break a}va(b,H[b+4>>2],H[a+8>>2],H[a+12>>2]);c=H[b+20>>2];if((c|0)>0?1:(c|0)>=0?K[b+16>>2]>=1: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((c|0)>0?1:(c|0)>=0?f: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 Zb(a,b,c){var d=0,e=0,f=0;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;a:{b:{if(!b){break b}if((b|0)<=-1){break a}e=b-1>>>5|0;f=e+1|0;d=ra(f<<2);H[a+8>>2]=f;H[a>>2]=d;f=I[c|0];H[a+4>>2]=b;H[(b>>>0<33?d:d+(e<<2)|0)>>2]=0;c=b>>>5|0;e=c<<2;if(f){d=ta(d,255,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;H[c>>2]=H[c>>2]|-1>>>32-b;return a}d=ta(d,0,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;H[c>>2]=H[c>>2]&(-1>>>32-b^-1)}return a}ua();X()}function qj(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=10940;b=H[a+64>>2];H[a+64>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=13500;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){b=d;c=H[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=H[a+8>>2]}b=e;H[a+12>>2]=d;qa(b)}return a|0}function Me(a,b){var c=0,d=0,e=O(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b-1&b)){break a}c=Na(b)}d=H[a+4>>2];if(c>>>0>d>>>0){Je(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=O(U(O(O(K[a+12>>2])/L[a+20>>2])));c:{if(e=O(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(hl(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-Q(b-1|0);break d}b=Na(b)}b=b>>>0>c>>>0?b:c;if(b>>>0>=d>>>0){break b}Je(a,b)}}function pj(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=10940;b=H[a+64>>2];H[a+64>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=13500;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){b=d;c=H[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=H[a+8>>2]}b=e;H[a+12>>2]=d;qa(b)}qa(a)}function Sd(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 rg(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=ig(e+40|0,c);sg(e,b,c);hg(f,e);Oa(e+24|0,H[e+28>>2]);tb(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]<=-1){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]=10308;Oa(f+28|0,H[f+32>>2]);tb(f+16|0,H[f+20>>2]);Oa(f+4|0,H[f+8>>2]);da=e+96|0}function md(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=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;h=f;g=H[a+64>>2];H[a+64>>2]=f;i=a;j=b;if(g){b=H[g>>2];if(b){H[g+4>>2]=b;qa(b)}qa(g);h=H[a+64>>2]}k=h;f=c;g=d;h=g;d=g-1|0;a:{if(d>>>0<=10){b=H[(d<<2)+16256>>2];break a}b=-1}b=N(b,c);nd(i,j,k,f,h,b,b>>31);ld(a,e);F[a+84|0]=1;H[a+72>>2]=H[a+68>>2]}function Qc(a,b,c){var d=0,e=0,f=0,g=0;f=da-16|0;da=f;d=I[a+11|0]>>>7|0?(H[a+8>>2]&2147483647)-1|0:10;g=d;if(I[a+11|0]>>>7|0){e=H[a+4>>2]}else{e=I[a+11|0]}a:{if(g-e>>>0>=c>>>0){if(!c){break a}if(I[a+11|0]>>>7|0){d=H[a>>2]}else{d=a}Pb(d+e|0,b,c);b=c+e|0;c=b;b:{if(I[a+11|0]>>>7|0){H[a+4>>2]=c;break b}F[a+11|0]=c}F[f+15|0]=0;F[b+d|0]=I[f+15|0];break a}me(a,d,(c+e|0)-d|0,e,e,0,c,b)}da=f+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;d=da-16|0;da=d;f=_d(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((c|0)<0?1:(c|0)<=0?!H[b+16>>2]: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 Db(a,b,c){var d=0,e=0,f=0;e=da-16|0;da=e;d=a;F[e+15|0]=d&127;a:{if(!b&d>>>0>=128|b){F[e+15|0]=d|128;d=H[c+20>>2];f=0;if((d|0)>0?1:(d|0)>=0?K[c+16>>2]>=1:0){break a}va(c,H[c+4>>2],e+15|0,e+16|0);f=Db((b&127)<<25|a>>>7,b>>>7|0,c);break a}a=H[c+20>>2];b=a;d=H[c+16>>2];if((b|0)<0?1:(b|0)<=0?!d:0){va(c,H[c+4>>2],e+15|0,e+16|0)}f=(b|0)<0?1:(b|0)<=0?d>>>0<1:0}d=f;da=e+16|0;return d}function bg(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;if(!c){return a+40|0}a:{b:{c:{if(H[d>>2]==(b|0)){d=d+104|0;b=1;break c}f=e>>>0>1?e:1;c=1;while(1){if((c|0)==(f|0)){break b}if(H[N(c,136)+d>>2]!=(b|0)){c=c+1|0;continue}break}d=(N(c,136)+d|0)+104|0;b=c>>>0>>0}if(b){break a}return a+40|0}if(c>>>0>>0){break a}d=a+40|0}return d|0}function ah(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];Ga((c|0)>-1?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 xc(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;e=da+-64|0;da=e;f=fa[H[H[b>>2]+44>>2]](b,c)|0;b=fa[H[H[b>>2]+40>>2]](b,c)|0;g=wc(e);h=g;i=H[c+56>>2];j=f<<24>>24;c=b;b=b-1|0;a:{if(b>>>0<=10){b=H[(b<<2)+16256>>2];break a}b=-1}b=N(b,f);nd(h,i,0,j,c,b,b>>31);c=ra(96);b=Pf(c,g);H[a>>2]=c;ld(b,d);F[b+84|0]=1;H[b+72>>2]=H[b+68>>2];da=e- -64|0}function ih(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(vb(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(!vb(a,H[b>>2],e)){break a}if(!(H[b+20>>2]!=(c|0)?H[b+16>>2]!=(c|0):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 gd(a,b,c,d){var e=0;a:{if((c|0)<0?1:(c|0)<=0?b>>>0<1:0){break a}e=H[a+20>>2];if((e|0)>0?1:(e|0)>=0?H[a+16>>2]:0){break a}F[a+24|0]=d;b=b+7|0;c=b>>>0<7?c+1|0:c;c=fl(b,c,8,0);H[a+16>>2]=c;H[a+20>>2]=ea;e=c;b=H[a+4>>2]-H[a>>2]|0;c=b+8|0;c=d?c:b;b=e+c|0;ib(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 Ga(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;e=H[b+20>>2];d=0;if((e|0)>0?1:(e|0)>=0?K[b+16>>2]>=1:0){break a}va(b,H[b+4>>2],c+15|0,c+16|0);d=Ga(a>>>7|0,b);break a}a=H[b+20>>2];d=a;e=H[b+16>>2];if((a|0)<0?1:(a|0)<=0?!e:0){va(b,H[b+4>>2],c+15|0,c+16|0)}d=(d|0)<0?1:(d|0)<=0?e>>>0<1:0}da=c+16|0;return d}function nc(a){var b=0,c=0,d=0,e=0,f=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;f=e}d:{if(c-48>>>0>=10){break d}a=0;while(1){d=(a-F[b|0]|0)+48|0;if(F[b+1|0]-48>>>0>=10){break d}b=b+1|0;a=N(d,10);continue}}return f?d:0-d|0}function mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=da+-64|0;da=d;e=1;a:{if(vb(a,b,0)){break a}e=0;if(!b){break a}b=ke(b,18708,18756);e=0;if(!b){break a}ta(d+8|4,0,52);H[d+56>>2]=1;H[d+20>>2]=-1;H[d+16>>2]=a;H[d+8>>2]=b;fa[H[H[b>>2]+28>>2]](b,d+8|0,H[c>>2],1);a=H[d+32>>2];if((a|0)==1){H[c>>2]=H[d+24>>2]}e=(a|0)==1}a=e;da=d- -64|0;return a|0}function Gi(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=13500;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){b=d;c=H[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=H[a+8>>2]}b=e;H[a+12>>2]=d;qa(b)}return a|0}function ie(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];if(!c){H[a+36>>2]=1;H[a+24>>2]=d;H[a+16>>2]=b;if((d|0)!=1|H[a+48>>2]!=1){break a}F[a+54|0]=1;return}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|(c|0)!=1){break a}F[a+54|0]=1;return}F[a+54|0]=1;H[a+36>>2]=H[a+36>>2]+1}}function wb(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=e;e=0;i=e;f=c;c=0;e=el(h,e,f,c);j=ea;g=b;k=el(d,0,b,0);b=ea;d=el(d,l,f,c);c=b+d|0;b=ea;b=c>>>0>>0?b+1|0:b;f=b;d=b+e|0;b=j;b=d>>>0>>0?b+1|0:b;f=d;e=b;b=el(g,m,h,i)+c|0;d=ea;d=b>>>0>>0?d+1|0:d;g=d;d=d+f|0;H[a+8>>2]=d;H[a+12>>2]=d>>>0>>0?e+1|0:e;H[a>>2]=k;H[a+4>>2]=b}function id(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=13500;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){b=d;c=H[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}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((c|0)!=(d|0)){continue}break}e=H[a+8>>2]}b=e;H[a+12>>2]=d;qa(b)}qa(a)}function Wk(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 jj(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;Sa(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;Sa(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 $d(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]=1432;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;Bb(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 Ve(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 _i(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;Sa(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;Sa(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 rc(a,b){var c=0,d=0,e=0,f=0;a:{if((b|0)==-1){break a}b=N(b,3);if((b|0)==-1){break a}e=-1;f=H[a>>2];d=f+(b<<2)|0;a=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){a=H[(c<<2)+f>>2]}d=H[d>>2];c=(d|0)==(a|0);b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)!=-1){e=H[(b<<2)+f>>2]}return c|(e|0)==(d|0)|(a|0)==(e|0)}return 1}function Jg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];e=d;f=H[b+16>>2];if((d|0)<0?1:(d|0)<=0?!f:0){va(b,H[b+4>>2],c+12|0,c+16|0);f=H[b+16>>2];e=H[b+20>>2]}H[c+8>>2]=H[a+16>>2];if((e|0)<0?1:(e|0)<=0?!f:0){va(b,H[b+4>>2],c+8|0,c+12|0)}Aa(a+112|0,b);da=c+16|0;return 1}function yg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];e=d;f=H[b+16>>2];if((d|0)<0?1:(d|0)<=0?!f:0){va(b,H[b+4>>2],c+12|0,c+16|0);f=H[b+16>>2];e=H[b+20>>2]}H[c+8>>2]=H[a+24>>2];if((e|0)<0?1:(e|0)<=0?!f:0){va(b,H[b+4>>2],c+8|0,c+12|0)}Aa(a+96|0,b);da=c+16|0;return 1}function $e(a){var b=0,c=0,d=0,e=0;if(a){d=H[a+24>>2];if(d){b=d;c=H[a+28>>2];e=b;a:{if((c|0)==(b|0)){break a}while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){qb(b+12|0,H[b+16>>2]);pb(b,H[b+4>>2]);qa(b)}if((c|0)!=(d|0)){continue}break}e=H[a+24>>2]}b=e;H[a+28>>2]=d;qa(b)}qb(a+12|0,H[a+16>>2]);pb(a,H[a+4>>2]);qa(a)}}function db(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=da-16|0;da=d;g=a;h=a;a:{if(!b){b=0;break a}c=b>>31;e=c+b^c;c=Q(e);Za(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[h>>2]=b;H[g+4>>2]=c;H[a+8>>2]=e;H[a+12>>2]=f;da=d+16|0}function Nc(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.2250738585072014e-308;if((a|0)>-2045){a=a+1022|0;break a}b=0;a=((a|0)>-3066?a:-3066)+2044|0}x(0,0);x(1,a+1023<<20);return b*+z()}function ck(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];e=d;f=H[b+16>>2];if((d|0)<0?1:(d|0)<=0?!f:0){va(b,H[b+4>>2],c+12|0,c+16|0);f=H[b+16>>2];e=H[b+20>>2]}H[c+8>>2]=H[a+24>>2];if((e|0)<0?1:(e|0)<=0?!f:0){va(b,H[b+4>>2],c+8|0,c+12|0)}da=c+16|0;return 1}function _g(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((d|0)<(f|0)?1:(f|0)>=(d|0)?h>>>0>e>>>0:0){b=I[e+H[c>>2]|0];i=e+1|0;f=i>>>0<1?d+1|0:d;H[c+16>>2]=i;H[c+20>>2]=f;H[a+4>>2]=b}return((d|0)<(g|0)?1:(d|0)<=(g|0)?e>>>0>>0:0)|0}function Dk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];e=d;f=H[b+16>>2];if((d|0)<0?1:(d|0)<=0?!f:0){va(b,H[b+4>>2],c+12|0,c+16|0);f=H[b+16>>2];e=H[b+20>>2]}H[c+8>>2]=H[a+16>>2];if((e|0)<0?1:(e|0)<=0?!f:0){va(b,H[b+4>>2],c+8|0,c+12|0)}da=c+16|0;return 1}function Ch(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;Ke(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 ek(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=da-16|0;da=c;d=a+40|0;xc(c+8|0,d,H[a+8>>2],H[b+4>>2]-H[b>>2]>>2);d=dg(d,H[a+8>>2],b,H[c+8>>2]);a:{if(!d){break a}e=H[c+8>>2];H[c+8>>2]=0;b=H[a+32>>2];H[a+32>>2]=e;if(!b){break a}Ma(b)}a=H[c+8>>2];H[c+8>>2]=0;if(a){Ma(a)}da=c+16|0;return d|0}function Ph(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:{if(!a){break b}c=ke(a,16840,16556);if(!c){break b}d=ra(56);ig(d,c);a=H[b>>2];H[b>>2]=d;if(!a){break a}fa[H[H[a>>2]+4>>2]](a);break a}c=ra(56);kg(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 Fj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=da-16|0;da=c;d=a+40|0;xc(c+8|0,d,H[a+8>>2],H[b+4>>2]-H[b>>2]>>2);d=Kd(d,H[a+8>>2],b,H[c+8>>2]);a:{if(!d){break a}e=H[c+8>>2];H[c+8>>2]=0;b=H[a+32>>2];H[a+32>>2]=e;if(!b){break a}Ma(b)}a=H[c+8>>2];H[c+8>>2]=0;if(a){Ma(a)}da=c+16|0;return d|0}function Yi(a){a=a|0;var b=0;H[a+8>>2]=12348;H[a>>2]=12136;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]=12584;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}return a|0}function Qb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=da-16|0;da=c;g=a;h=a;a:{if(!b){b=0;e=0;break a}d=b;b=Q(b);Za(c,d,0,0,0,b+81|0);d=0+H[c+8>>2]|0;b=(H[c+12>>2]^65536)+(16414-b<<16)|0;b=d>>>0>>0?b+1|0:b;f=d;d=b;b=H[c+4>>2];e=H[c>>2]}H[h>>2]=e;H[g+4>>2]=b;H[a+8>>2]=f;H[a+12>>2]=d;da=c+16|0}function Xi(a){a=a|0;var b=0;H[a+8>>2]=12348;H[a>>2]=12136;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]=12584;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}qa(a)}function Sg(a){a=a|0;var b=0;H[a>>2]=3240;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]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Ig(a){a=a|0;var b=0;H[a>>2]=4804;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]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function ub(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 Hb(a){var b=0,c=0;c=H[a+8>>2];if((c|0)>=2){b=+(c|0);b=U(ya(b)*b-M[a>>3]);if(P(b)<0x8000000000000000){ea=P(b)>=1?b>0?~~R(T(b*2.3283064365386963e-10),4294967295)>>>0:~~U((b-+(~~b>>>0>>>0))*2.3283064365386963e-10)>>>0:0;return~~b>>>0}a=-2147483648}else{a=0}ea=a;return 0}function vb(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 Sb(a,b,c){var d=0,e=0,f=0;a:{if(b>>>0<1){d=a;break a}while(1){d=gl(a,b,10,0);e=ea;f=e;e=el(d,e,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 Zi(a){a=a|0;var b=0;H[a>>2]=12348;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]=12584;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function Ui(a){a=a|0;var b=0;H[a>>2]=12348;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]=12584;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function ng(a,b,c,d){var e=0;e=da-16|0;da=e;c=mg(a,b,e+12|0,e+8|0,c);if(!H[c>>2]){b=ra(40);Ja(b+16|0,d);Ja(b+28|0,d+12|0);H[b+8>>2]=H[e+12>>2];H[b>>2]=0;H[b+4>>2]=0;H[c>>2]=b;d=H[H[a>>2]>>2];if(d){H[a>>2]=d;b=H[c>>2]}yb(H[a+4>>2],b);H[a+8>>2]=H[a+8>>2]+1}da=e+16|0}function Ej(a){a=a|0;var b=0;H[a>>2]=9756;H[a+40>>2]=1140;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=2248;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=1860;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ma(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}return a|0}function tg(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=kg(e+40|0,c);sg(e,b,c);hg(f,e);Oa(e+24|0,H[e+28>>2]);tb(e+12|0,H[e+16>>2]);Oa(e,H[e+4>>2]);Hd(a,f,d);H[f>>2]=10308;Oa(f+28|0,H[f+32>>2]);tb(f+16|0,H[f+20>>2]);Oa(f+4|0,H[f+8>>2]);da=e+96|0}function se(a,b,c){var d=0,e=0,f=0,g=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);g=(e^-1)+b|0;b=e;e=K[H[d+12>>2]>>2]>2];b=e?g:b;a=e?H[d+12>>2]+4|0:a;continue}break}da=d+16|0;da=f+16|0;return a}function sb(a){var b=0;if(a){b=H[a+76>>2];if(b){H[a+80>>2]=b;qa(b)}b=H[a- -64>>2];if(b){H[a+68>>2]=b;qa(b)}b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}b=H[a+24>>2];if(b){H[a+28>>2]=b;qa(b)}b=H[a+12>>2];if(b){H[a+16>>2]=b;qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}qa(a)}}function ac(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 Dj(a){a=a|0;var b=0;H[a>>2]=9756;H[a+40>>2]=1140;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=2248;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=1860;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ma(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}qa(a)}function He(a,b){var c=0,d=0,e=0;A(+a);c=v(1)|0;d=v(0)|0;e=c;c=c>>>20&2047;if((c|0)!=2047){if(!c){c=b;if(a==0){b=0}else{a=He(a*0x10000000000000000,b);b=H[b>>2]+-64|0}H[c>>2]=b;return a}H[b>>2]=c-1022;x(0,d|0);x(1,e&-2146435073|1071644672);a=+z()}return a}function cg(a,b){a=a|0;b=b|0;var c=0,d=0;a:{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)){break a}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return 0}a=N(a,136)+c|0;return(I[a+100|0]?a+4|0:0)|0}function Uk(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 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 fl(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=b^d;h=e>>31;f=b>>31;a=a^f;i=a-f|0;g=b;b=b>>31;g=(g^b)-((a>>>0>>0)+b|0)|0;a=d>>31;b=c^a;c=d>>31;e=e>>31;a=gl(i,g,b-a|0,(c^d)-((a>>>0>b>>>0)+c|0)|0)^e;b=a-e|0;ea=(h^ea)-((a>>>0>>0)+h|0)|0;return b}function Sk(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 Nd(a){H[a+32>>2]=0;H[a+12>>2]=-1;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=1860;H[a+16>>2]=0;H[a+20>>2]=0;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]=2248;return a}function Cf(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((d|0)<0?1:(d|0)<=0?!H[b+16>>2]: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 Tk(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 ak(a){a=a|0;var b=0;H[a>>2]=6760;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 Rj(a){a=a|0;var b=0;H[a>>2]=8408;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 Ma(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 Rk(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 Vc(a,b){var c=0,d=0,e=0,f=0;c=da-16|0;da=c;d=H[a+12>>2];e=H[a+8>>2];f=H[b>>2];H[b>>2]=0;H[c+8>>2]=f;fa[H[H[a>>2]+8>>2]](a,d-e>>2,c+8|0);b=H[c+8>>2];H[c+8>>2]=0;if(b){Ma(b)}da=c+16|0;return(H[a+12>>2]-H[a+8>>2]>>2)-1|0}function Qj(a){a=a|0;var b=0;H[a>>2]=8408;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 $j(a){a=a|0;var b=0;H[a>>2]=6760;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 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 ec(a,b){var c=0,d=0,e=0;c=ub(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 ce(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((d|0)>0?1:(d|0)>=0?H[b+16>>2]: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 el(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 zf(a,b,c){var d=0;d=da-48|0;da=d;Pc(d+8|0,c);H[d+32>>2]=b;Id(d+40|0,a,b,d+32|0);a=H[d+40>>2];if(F[a+39|0]<=-1){qa(H[a+28>>2])}b=H[d+12>>2];H[a+28>>2]=H[d+8>>2];H[a+32>>2]=b;H[a+36>>2]=H[d+16>>2];da=d+48|0}function za(a){var b=0,c=0;c=da-16|0;da=c;H[c+8>>2]=0;H[c+12>>2]=0;Jd(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 je(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 xf(a,b){var c=O(0),d=0;b=gb(a,b);if((b|0)!=(a+4|0)){a=b+28|0;a=F[b+39|0]<=-1?H[a>>2]:a;b=da-16|0;da=b;ze(b,a,0,1);d=ve(H[b>>2],H[b+4>>2],H[b+8>>2],H[b+12>>2]);da=b+16|0;c=O(d)}else{c=O(1)}return c}function Wj(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){sc(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 Kk(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[a+16>>2];a:{if(H[a+20>>2]-d>>2<=(b|0)){break a}b=H[(b<<2)+d>>2];if((b|0)<0){break a}a=H[H[a+36>>2]+(b<<2)>>2];c=H[a+32>>2];if(c){break a}c=H[a+8>>2]}return c|0}function wa(a){var b=0,c=0,d=0,e=0,f=0;b=ca(8)|0;H[b>>2]=18512;H[b>>2]=18556;c=ub(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]=18604;ba(b|0,18636,13);X()}function $a(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){Ua(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}Ua(a,f,c)}da=f+256|0}function Nk(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 Mk(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 Jc(a,b,c){$d(a,c);H[a+36>>2]=0;H[a+40>>2]=0;H[a>>2]=2032;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;c=H[b>>2];H[b>>2]=0;H[a+72>>2]=c;return a}function Vg(a){a=a|0;var b=0;H[a>>2]=2248;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=1860;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ma(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}return a|0}function _b(a){H[a+52>>2]=0;H[a>>2]=13500;H[a+4>>2]=0;H[a+8>>2]=0;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 Ug(a){a=a|0;var b=0;H[a>>2]=2248;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=1860;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ma(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}qa(a)}function uc(a){wc(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 wc(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 oe(a,b){var c=0;if(b>>>0<=99){return pe(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)+18192>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}return lc(a,b)}function yh(a,b){a=a|0;b=b|0;var c=0,d=0;Ne(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){Ha(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}$e(c)}return a|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);b=H[j+4>>2];H[a>>2]=H[j>>2];H[a+4>>2]=b;b=H[j+12>>2];H[a+8>>2]=H[j+8>>2];H[a+12>>2]=b;da=j+16|0}function Fe(a){var b=0,c=0,d=0;a:{if(F[H[a>>2]]-48>>>0>=10){break a}while(1){c=H[a>>2];d=F[c|0];H[a>>2]=c+1;b=(b+d|0)-48|0;if(F[c+1|0]-48>>>0>=10){break a}b=N(b,10);continue}}return b}function Qi(a){a=a|0;var b=0;H[a+8>>2]=12768;H[a>>2]=12604;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=12584;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}return a|0}function Li(a){a=a|0;var b=0;H[a+8>>2]=11788;H[a>>2]=12896;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=12040;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}return a|0}function Lb(a){var b=0,c=0;b=H[4782];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[4782]=a;return b}H[4808]=48;return-1}function qb(a,b){if(b){qb(a,H[b>>2]);qb(a,H[b+4>>2]);a=H[b+28>>2];H[b+28>>2]=0;if(a){qb(a+12|0,H[a+16>>2]);pb(a,H[a+4>>2]);qa(a)}if(F[b+27|0]<=-1){qa(H[b+16>>2])}qa(b)}}function Pi(a){a=a|0;var b=0;H[a+8>>2]=12768;H[a>>2]=12604;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=12584;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}qa(a)}function Ki(a){a=a|0;var b=0;H[a+8>>2]=11788;H[a>>2]=12896;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=12040;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}qa(a)}function Ca(a,b,c){var d=0,e=0,f=0;a:{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}f=d-e|0}return f}function lc(a,b){var c=0,d=0;c=(b>>>0)/100|0;d=J[(c<<1)+18192>>1];F[a|0]=d;F[a+1|0]=d>>>8;a=a+2|0;b=J[(b-N(c,100)<<1)+18192>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}function dh(a,b){a=a|0;b=b|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}return fa[H[H[a>>2]+48>>2]](a,b)|0}return 0}function rj(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 dl(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 ij(a){a=a|0;var b=0;H[a>>2]=11788;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=12040;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function Ri(a){a=a|0;var b=0;H[a>>2]=12768;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=12584;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function bj(a){a=a|0;var b=0;H[a>>2]=11788;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=12040;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]=12768;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=12584;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function uf(a,b){a:{b=gb(a,b);if((b|0)==(a+4|0)){break a}a=b+28|0;if(F[b+39|0]<=-1){a=H[a>>2]}a=nc(a);if((a|0)==-1){break a}return(a|0)!=0}return 0}function hh(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(vb(a,H[b+8>>2],f)){ie(b,c,d,e);return}a=H[a+8>>2];fa[H[H[a>>2]+20>>2]](a,b,c,d,e,f)}function Lg(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 Tb(a,b,c){b=gb(a,b);a:{if((b|0)==(a+4|0)){break a}a=b+28|0;if(F[b+39|0]<=-1){a=H[a>>2]}a=nc(a);if((a|0)==-1){break a}c=(a|0)!=0}return c}function Ag(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 li(){var a=0;a=ra(108);Qe(a);H[a+84>>2]=0;H[a+88>>2]=0;H[a>>2]=16512;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;return a|0}function rh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=H[a+20>>2];d=H[a+16>>2]-e|0;d=c>>>0>>0?c:d;sa(e,b,d);H[a+20>>2]=d+H[a+20>>2];return c|0}function Xb(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)<1){break a}c=H[a>>2]}return c}function Pe(a){var b=0,c=0;b=H[a+20>>2];a:{if((H[a+24>>2]-b|0)<1){break a}b=H[b>>2];if((b|0)==-1){break a}c=H[H[a+8>>2]+(b<<2)>>2]}return c}function sh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b;b=H[b>>2]+15&-16;H[c>>2]=b+16;d=a,e=ve(H[b>>2],H[b+4>>2],H[b+8>>2],H[b+12>>2]),M[d>>3]=e}function Bh(a){a=a|0;var b=0;H[a>>2]=16512;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)}qc(a);return a|0}function Ba(a){var b=0;b=da-16|0;da=b;H[b+8>>2]=0;H[b+12>>2]=0;Jd(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 Ah(a){a=a|0;var b=0;H[a>>2]=16512;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)}qc(a);qa(a)}function pb(a,b){if(b){pb(a,H[b>>2]);pb(a,H[b+4>>2]);a=H[b+28>>2];if(a){H[b+32>>2]=a;qa(a)}if(F[b+27|0]<=-1){qa(H[b+16>>2])}qa(b)}}function yk(a){a=a|0;var b=0;H[a>>2]=3488;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3184;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]=5040;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Yk(a){a=a|0;var b=0;H[a>>2]=1860;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ma(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}return a|0}function eh(a){a=a|0;var b=0;H[a>>2]=1432;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 kh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(vb(a,H[b+8>>2],0)){je(b,c,d);return}a=H[a+8>>2];fa[H[H[a>>2]+28>>2]](a,b,c,d)}function ii(){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 Oa(a,b){if(b){Oa(a,H[b>>2]);Oa(a,H[b+4>>2]);if(F[b+39|0]<=-1){qa(H[b+28>>2])}if(F[b+27|0]<=-1){qa(H[b+16>>2])}qa(b)}}function xk(a){a=a|0;var b=0;H[a>>2]=3488;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3184;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]=5040;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function Xk(a){a=a|0;var b=0;H[a>>2]=1860;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ma(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=ge(a);if(b){break a}b=H[4825];if(b){fa[b|0]();continue}break}_();X()}return b}function Oc(a){a=a|0;var b=0,c=0;H[a>>2]=18556;b=H[a+4>>2]-12|0;c=H[b+8>>2]-1|0;H[b+8>>2]=c;if((c|0)<=-1){qa(b)}return a|0}function Fg(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 vk(a){a=a|0;var b=0;H[a>>2]=3724;za(a+112|0);H[a>>2]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function lk(a){a=a|0;var b=0;H[a>>2]=5264;za(a+112|0);H[a>>2]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function kg(a,b){H[a>>2]=10308;jg(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]=10496;return a}function ig(a,b){H[a>>2]=10308;jg(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]=10496;return a}function cl(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 De(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 sc(a,b){var c=0,d=0;ib(a,b);b=H[a+28>>2];c=b+1|0;d=b;b=H[a+24>>2]+1|0;H[a+24>>2]=b;H[a+28>>2]=b>>>0<1?c:d}function pe(a,b){if(b>>>0<=9){F[a|0]=b+48;return a+1|0}b=J[(b<<1)+18192>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}function Pg(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 Dg(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 Qh(a){a=a|0;if(a){H[a>>2]=10384;Oa(a+28|0,H[a+32>>2]);dc(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);qa(a)}}function uk(a){a=a|0;var b=0;H[a>>2]=3724;za(a+112|0);H[a>>2]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function kk(a){a=a|0;var b=0;H[a>>2]=5264;za(a+112|0);H[a>>2]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function Jb(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 zj(a){a=a|0;H[a>>2]=10384;Oa(a+28|0,H[a+32>>2]);dc(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);return a|0}function Bj(a){a=a|0;H[a>>2]=10308;Oa(a+28|0,H[a+32>>2]);tb(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);return a|0}function yf(a,b){b=gb(a,b);if((b|0)==(a+4|0)){return-1}a=b+28|0;if(F[b+39|0]<=-1){a=H[a>>2]}return nc(a)}function pg(a){a=a|0;H[a>>2]=10384;Oa(a+28|0,H[a+32>>2]);dc(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);qa(a)}function og(a){a=a|0;H[a>>2]=10308;Oa(a+28|0,H[a+32>>2]);tb(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);qa(a)}function aj(a){a=a|0;var b=0;H[a>>2]=12040;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function Ti(a){a=a|0;var b=0;H[a>>2]=12584;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function hb(a,b,c){b=gb(a,b);if((b|0)!=(a+4|0)){a=b+28|0;if(F[b+39|0]<=-1){a=H[a>>2]}c=nc(a)}return c}function zc(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 Ic(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 Si(a){a=a|0;var b=0;H[a>>2]=12584;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function $i(a){a=a|0;var b=0;H[a>>2]=12040;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function Kg(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 zg(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 zb(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 gh(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(vb(a,H[b+8>>2],f)){ie(b,c,d,e)}}function Og(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 Cg(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 re(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 Gh(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 Ek(a){a=a|0;var b=0;H[a>>2]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Aj(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 il(a,b){var c=0,d=0;c=b&31;d=(-1>>>c&a)<>>a}function Ci(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 nf(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 cf(b,c,d,e,f,1)|0}function mf(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 cf(b,c,d,e,f,2)|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;return af(b,c,d,e,f,3)|0}function kf(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 af(b,c,d,e,f,4)|0}function jf(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 hl(a){var b=0,c=0;while(1){c=b;if(a){a=a-1&a;b=b+1|0;continue}break}return c}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 Ld(a){a=a|0;var b=0;H[a>>2]=3184;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}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)}qa(a)}function tb(a,b){if(b){tb(a,H[b>>2]);tb(a,H[b+4>>2]);Oa(b+20|0,H[b+24>>2]);qa(b)}}function dc(a,b){if(b){dc(a,H[b>>2]);dc(a,H[b+4>>2]);Oa(b+20|0,H[b+24>>2]);qa(b)}}function tj(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 Oj(a){a=a|0;var b=0;H[a>>2]=8668;b=H[a+60>>2];if(b){qa(b)}return a|0} +function lh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(vb(a,H[b+8>>2],0)){je(b,c,d)}}function Zj(a){a=a|0;var b=0;H[a>>2]=7032;b=H[a+60>>2];if(b){qa(b)}return a|0}function vj(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 uj(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 nj(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 mj(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 Nf(a,b){a=a|0;b=b|0;return H[H[a+28>>2]+(b>>>3&536870908)>>2]>>>b&1}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 gi(){var a=0;a=ra(12);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;return a|0}function di(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 al(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 Yj(a){a=a|0;var b=0;H[a>>2]=7032;b=H[a+60>>2];if(b){qa(b)}qa(a)}function Nj(a){a=a|0;var b=0;H[a>>2]=8668;b=H[a+60>>2];if(b){qa(b)}qa(a)}function hi(a){a=a|0;if(a){qb(a+12|0,H[a+16>>2]);pb(a,H[a+4>>2]);qa(a)}}function fh(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 Cc(a,b){a=a|0;b=b|0;if(b>>>0<=1){H[a+28>>2]=b}return b>>>0<2|0}function Bi(a,b){a=a|0;b=b|0;F[b+84|0]=1;H[b+72>>2]=H[b+68>>2];return 1}function oj(a){a=a|0;a=H[a+64>>2];return fa[H[H[a>>2]+32>>2]](a)|0}function bl(a,b){a=a|0;b=b|0;H[a+12>>2]=-1;H[a+8>>2]=b;return 1}function Ef(a){_b(a);H[a+56>>2]=0;H[a+60>>2]=0;H[a>>2]=13076}function ki(a){a=a|0;return(H[a+100>>2]-H[a+96>>2]|0)/12|0}function Vj(a){a=a|0;H[a>>2]=7292;za(a+96|0);return a|0}function Lj(a){a=a|0;H[a>>2]=8916;za(a+96|0);return a|0}function jl(a){if(a){return 31-Q(a-1^a)|0}return 32} +function Qe(a){H[a>>2]=16788;ta(a+4|0,0,80);return a}function rf(a){a=a|0;return H[a+12>>2]-H[a+8>>2]>>2}function Di(a){a=a|0;H[a+52>>2]=H[H[a+56>>2]+80>>2]}function qf(a){a=a|0;if(a){fa[H[H[a>>2]+4>>2]](a)}}function fk(a,b){a=a|0;b=b|0;return ce(a+40|0,b)|0}function fi(a,b){a=a|0;b=b|0;return F[H[a>>2]+b|0]}function Uj(a){a=a|0;H[a>>2]=7292;za(a+96|0);qa(a)}function Kj(a){a=a|0;H[a>>2]=8916;za(a+96|0);qa(a)}function Gj(a,b){a=a|0;b=b|0;return vg(a+40|0,b)|0}function Bf(a){a=a|0;H[a+52>>2]=H[H[a+4>>2]+80>>2]}function ei(a){a=a|0;return H[a+4>>2]-H[a>>2]|0}function xj(a,b){a=a|0;b=b|0;return F[b+24|0]}function ch(a,b,c){a=a|0;b=b|0;c=c|0;return-1}function Ih(a){a=a|0;return H[H[a>>2]+40>>2]}function Hh(a){a=a|0;return H[H[a>>2]+44>>2]}function Kh(a,b){a=a|0;b=b|0;Ze(H[a>>2],b)}function ji(a,b){a=a|0;b=b|0;H[a+80>>2]=b}function tf(a){a=a|0;return H[a+40>>2]}function ri(a){a=a|0;return H[a+56>>2]}function oi(a){a=a|0;return H[a+48>>2]}function ni(a){a=a|0;return H[a+60>>2]}function fc(a){a=a|0;return H[a+28>>2]}function ed(a){a=a|0;return H[a+80>>2]}function Rh(a){a=a|0;return H[a+44>>2]}function Of(a){a=a|0;return H[a+12>>2]}function qi(a){a=a|0;return F[a+24|0]}function pi(a){a=a|0;return I[a+32|0]}function kc(a,b){a=a|0;b=b|0;return 1}function gc(a){a=a|0;return H[a+4>>2]}function bb(a,b){a=a|0;b=b|0;return 0}function Wg(a,b){a=a|0;b=b|0;return 6}function Tg(a,b){a=a|0;b=b|0;return-1}function Gk(a,b){a=a|0;b=b|0;return 2}function Uh(a,b){a=a|0;b=b|0;Ze(a,b)}function Pb(a,b,c){if(c){sa(a,b,c)}}function yc(a,b,c,d){fg(a,b,c,d,1)}function Ib(a,b,c,d){fg(a,b,c,d,0)}function ti(){return wc(ra(64))|0}function si(){return uc(ra(96))|0}function ph(a){a=a|0;return 18486}function mi(){return Qe(ra(84))|0}function Yb(a){a=a|0;if(a){qa(a)}}function nh(a){a=a|0;Oc(a);qa(a)}function Ab(a){a=a|0;return a|0}function uh(a){a=a|0;qa(qc(a))}function qk(a){a=a|0;qa(Ig(a))}function oh(a){a=a|0;qa(Oc(a))}function dj(a){a=a|0;qa(Kf(a))}function cj(a){a=a|0;qa(Jf(a))}function Zg(a){a=a|0;qa(Qd(a))}function Ok(a){a=a|0;qa(Xg(a))}function Ak(a){a=a|0;qa(Sg(a))}function nb(a){a=a|0;return 0}function Qa(a){a=a|0;return 1}function Od(a){a=a|0;return 2}function Hc(a){a=a|0;return 4}function Gg(a){a=a|0;return 3}function Fc(a){a=a|0;return 5}function Ec(a){a=a|0;return 6}function dd(){return ra(1)|0}function ua(){wa(17560);X()}function lb(){wa(18392);X()}function ob(a){a=a|0;qa(a)}function Pa(a,b){ib(a,b)}function Gb(a){a=a|0;X()}function xa(){ue();X()}function df(){return-1}function _c(){return 1}function Fh(){return 2}function Eh(){return 3}function Dh(){return 4}function $c(){return 0}function ue(){_();X()}function qe(a){a=a|0}function qh(){X()}function Yg(){} // EMSCRIPTEN_END_FUNCS -var I=Ap([null,ea,fa,ga,W,X,Y,$,ba,da,Aa,ha,ia,Lo,va,wa,xa,ja,la,ma,pa,ta,ua,ha,ya,Kb,Lb,Hb,Ib,Jo,Mb,Nb,Ob,Nb,Nb,xa,Pb,sc,tc,ga,Rb,Zb,Yb,Jc,Kc,Cc,Dc,Pb,Ec,Pb,Lc,Lc,Hc,Ic,Fc,Wc,Xc,Nc,Oc,Lc,Pc,Yc,Zc,_c,ad,Qc,Rc,Sc,Tc,Vc,nd,od,fd,gd,xa,jd,hd,ld,ud,vd,xa,wd,xd,Lc,yd,Nb,Lc,xa,zd,Ad,Lb,Lb,Cd,Dd,Ed,xd,Fd,Gd,Id,Jd,Kd,Ld,xa,Nb,Md,Nd,Od,Rd,Sd,Td,Ud,xa,Nb,Vd,Wd,Xd,ea,fa,Zd,_d,Yd,Lb,vd,xa,xd,ae,Lb,be,ce,Ed,xd,Fd,de,ee,fe,Kd,Ld,xa,Nb,Md,Nd,ge,ie,je,Td,Ud,xa,Nb,Vd,Wd,ke,ea,fa,Zd,_d,le,Lb,vd,Lc,xa,ne,nd,od,oe,pe,xa,re,se,qe,ea,fa,xa,wd,we,Lc,yd,Nb,xa,re,xe,ye,Ae,Be,Ed,we,Ce,De,Ee,Fe,Kd,Ge,xa,Nb,He,Ie,Je,Ke,Le,Td,Me,xa,Nb,Ne,Oe,Pe,ea,fa,Zd,_d,Yd,fa,xa,we,Qe,Re,Se,Ed,we,Ce,Te,Ue,Ve,Kd,Ge,xa,Nb,He,Ie,We,Xe,Ye,Td,Me,xa,Nb,Ne,Oe,Ze,ea,fa,Zd,_d,le,fa,Lc,xa,_e,df,ef,af,bf,xa,ga,cf,Hf,If,uf,Af,zf,Jf,If,Jf,Hh,Ih,xa,xa,Bh,xa,mj,Aj,Ej,Ch,Dh,Fj,Fh,Jh,Kh,Lh,Eh,Gh,Ei,Fi,Nh,Oh,Ph,Qh,$h,ai,qi,ri,wd,Gi,Hi,ti,Oh,Ph,ui,$h,vi,qi,ri,wd,_h,Ii,Zh,Ji,Ki,Oi,Pi,Qi,Ri,Ni,Vi,Li,Wi,Xi,Zi,_i,$i,aj,Yi,cj,dj,ej,fj,gj,nj,Lb,xa,Pb,Lc,Nb,Nb,tj,Lc,qj,rj,oj,sj,ea,fa,uj,vj,Lb,Lc,Ij,tj,xa,Jj,Kj,Lj,tj,Lc,Jj,Mj,Lj,Ul,Wl,Xl,Zl,Hm,Em,Tl,Vl,Im,Am,Cm,Gm,_m,$m,Qn,ea,fa,Ko,No,Oo,Po,ea,fa,Zn,Zn,Ro,$o,Zo,Uo,fa,_o,Yo,Vo]);function Ip(){return f.byteLength/65536|0}function Jp(Tp){Tp=Tp|0;var J=Ip()|0;var K=J+Tp|0;if(J=0;--P){O[48+P]=52+P;O[65+P]=P;O[97+P]=26+P}O[43]=62;O[47]=63;function Kp(Up,Vp,Wp){var Q,R,P=0,S=Vp,T=Wp.length,U=Vp+(T*3>>2)-(Wp[T-2]=="=")-(Wp[T-1]=="=");for(;P>4;if(S>2;if(S=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;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 STACK_BASE=5262688;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;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 preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.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+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="draco_encoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(wasmBinaryFile);if(binary){return binary}if(readBinary){return readBinary(wasmBinaryFile)}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)&&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()})}return Promise.resolve().then(getBinary)}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"];removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).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(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}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){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function demangle(func){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+"]"})}function dynCallLegacy(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}return Module["dynCall_"+sig].call(null,ptr)}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()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>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+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function _abort(){abort()}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}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){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;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(minHeapSize,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();preMain();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()()}}noExitRuntime=true;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 __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;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 preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.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+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var 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 receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){var result=WebAssembly.instantiate(binary,info);return result}).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(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}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){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>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+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>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();preMain();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;in?Math.max(C+n,0):Math.min(n,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(nr;)--k in this?this[--n]=this[k]:delete this[--n];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"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(n){var q=0;return function(){return q>>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:q})))}; +$jscomp.polyfill("Promise",function(n){function q(){this.batch_=null}function m(h){return h instanceof k?h:new k(function(p,v){p(h)})}if(n&&(!($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 n;q.prototype.asyncExecute=function(h){if(null==this.batch_){this.batch_=[];var p=this;this.asyncExecuteFunction(function(){p.executeBatch_()})}this.batch_.push(h)}; +var r=$jscomp.global.setTimeout;q.prototype.asyncExecuteFunction=function(h){r(h,0)};q.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var h=this.batch_;this.batch_=[];for(var p=0;pm?Math.max(D+m,0):Math.min(m,D);r=0>r?Math.max(D+r,0):Math.min(r,D);k=0>k?Math.max(D+k,0):Math.min(k,D);if(mr;)--k in this?this[--m]=this[k]:delete this[--m];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 DracoEncoderModule=function(){var l="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(l=l||__filename);return function(p){function n(f){return a.locateFile?a.locateFile(f,N):N+f}function r(f,b){f||h("Assertion failed: "+b)}function k(f,b){0>2]=b};this.get_type=function(){return L[this.ptr+H.TYPE_OFFSET>>2]};this.set_destructor=function(b){L[this.ptr+H.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return L[this.ptr+H.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){L[this.ptr+H.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){R[this.ptr+H.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=R[this.ptr+H.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){R[this.ptr+H.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown= -function(){return 0!=R[this.ptr+H.RETHROWN_OFFSET>>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(){L[this.ptr+H.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=L[this.ptr+H.REFCOUNT_OFFSET>>2];L[this.ptr+H.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function I(){return 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=m.alloc(b,R);m.copy(b,R,f);return f}return f}function ka(f){if("object"===typeof f){var b=m.alloc(f,R);m.copy(f,R,b);return b}return f}function la(f){if("object"===typeof f){var b=m.alloc(f,ma);m.copy(f,ma,b);return b}return f}function W(f){if("object"===typeof f){var b=m.alloc(f,L);m.copy(f,L,b);return b}return f}function ba(f){if("object"===typeof f){var b=m.alloc(f, -oa);m.copy(f,oa,b);return b}return f}function S(){throw"cannot construct a VoidPtr, no constructor in IDL";}function P(){this.ptr=Ea();D(P)[this.ptr]=this}function z(){this.ptr=Fa();D(z)[this.ptr]=this}function J(){this.ptr=Ga();D(J)[this.ptr]=this}function E(){this.ptr=Ha();D(E)[this.ptr]=this}function Q(){this.ptr=Ia();D(Q)[this.ptr]=this}function K(){this.ptr=Ja();D(K)[this.ptr]=this}function F(){this.ptr=Ka();D(F)[this.ptr]=this}function w(){this.ptr=La();D(w)[this.ptr]=this}function u(){this.ptr= -Ma();D(u)[this.ptr]=this}function x(){this.ptr=Na();D(x)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Oa(f);D(A)[this.ptr]=this}p=p||{};var a="undefined"!==typeof p?p:{},Ba,pa;a.ready=new Promise(function(f,b){Ba=f;pa=b});var Pa=!1,Qa=!1;a.onRuntimeInitialized=function(){Pa=!0;if(Qa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Qa=!0;if(Pa&&"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;var b=na.length;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,f+100663296);d=Math.min(2147483648,k(Math.max(16777216, -f,d),65536));a:{try{da.grow(d-fa.byteLength+65535>>>16);C(da.buffer);var e=1;break a}catch(g){}e=void 0}if(e)return!0}return!1},memory:da};(function(){function f(e,g){a.asm=e.exports;qa=a.asm.__indirect_function_table;V--;a.monitorRunDependencies&&a.monitorRunDependencies(V);0==V&&(null!==wa&&(clearInterval(wa),wa=null),ea&&(e=ea,ea=null,e()))}function b(e){f(e.instance)}function c(e){return B().then(function(g){return WebAssembly.instantiate(g,d)}).then(e,function(g){Y("failed to asynchronously prepare wasm: "+ -g);h(g)})}var d={env:Va,wasi_snapshot_preview1:Va};V++;a.monitorRunDependencies&&a.monitorRunDependencies(V);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||q(O,"data:application/octet-stream;base64,")||q(O,"file://")||"function"!==typeof fetch?c(b):fetch(O,{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(pa);return{}})();var Ta=a.___wasm_call_ctors=function(){return(Ta=a.___wasm_call_ctors=a.asm.__wasm_call_ctors).apply(null,arguments)};a.___em_js__array_bounds_check_error=function(){return(a.___em_js__array_bounds_check_error=a.asm.__em_js__array_bounds_check_error).apply(null,arguments)};var Wa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Wa=a._emscripten_bind_VoidPtr___destroy___0= -a.asm.emscripten_bind_VoidPtr___destroy___0).apply(null,arguments)},Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.emscripten_bind_GeometryAttribute_GeometryAttribute_0).apply(null,arguments)},Xa=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Xa=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.emscripten_bind_GeometryAttribute___destroy___0).apply(null,arguments)},Fa=a._emscripten_bind_PointAttribute_PointAttribute_0= -function(){return(Fa=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.emscripten_bind_PointAttribute_PointAttribute_0).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_size_0=function(){return(Ya=a._emscripten_bind_PointAttribute_size_0=a.asm.emscripten_bind_PointAttribute_size_0).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Za=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.emscripten_bind_PointAttribute_attribute_type_0).apply(null, -arguments)},$a=a._emscripten_bind_PointAttribute_data_type_0=function(){return($a=a._emscripten_bind_PointAttribute_data_type_0=a.asm.emscripten_bind_PointAttribute_data_type_0).apply(null,arguments)},ab=a._emscripten_bind_PointAttribute_num_components_0=function(){return(ab=a._emscripten_bind_PointAttribute_num_components_0=a.asm.emscripten_bind_PointAttribute_num_components_0).apply(null,arguments)},bb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(bb=a._emscripten_bind_PointAttribute_normalized_0= -a.asm.emscripten_bind_PointAttribute_normalized_0).apply(null,arguments)},cb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(cb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.emscripten_bind_PointAttribute_byte_stride_0).apply(null,arguments)},db=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(db=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.emscripten_bind_PointAttribute_byte_offset_0).apply(null,arguments)},eb=a._emscripten_bind_PointAttribute_unique_id_0= -function(){return(eb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.emscripten_bind_PointAttribute_unique_id_0).apply(null,arguments)},fb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(fb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.emscripten_bind_PointAttribute___destroy___0).apply(null,arguments)},Ga=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ga=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.emscripten_bind_PointCloud_PointCloud_0).apply(null, -arguments)},gb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(gb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.emscripten_bind_PointCloud_num_attributes_0).apply(null,arguments)},hb=a._emscripten_bind_PointCloud_num_points_0=function(){return(hb=a._emscripten_bind_PointCloud_num_points_0=a.asm.emscripten_bind_PointCloud_num_points_0).apply(null,arguments)},ib=a._emscripten_bind_PointCloud___destroy___0=function(){return(ib=a._emscripten_bind_PointCloud___destroy___0=a.asm.emscripten_bind_PointCloud___destroy___0).apply(null, -arguments)},Ha=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ha=a._emscripten_bind_Mesh_Mesh_0=a.asm.emscripten_bind_Mesh_Mesh_0).apply(null,arguments)},jb=a._emscripten_bind_Mesh_num_faces_0=function(){return(jb=a._emscripten_bind_Mesh_num_faces_0=a.asm.emscripten_bind_Mesh_num_faces_0).apply(null,arguments)},kb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(kb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.emscripten_bind_Mesh_num_attributes_0).apply(null,arguments)},lb=a._emscripten_bind_Mesh_num_points_0= -function(){return(lb=a._emscripten_bind_Mesh_num_points_0=a.asm.emscripten_bind_Mesh_num_points_0).apply(null,arguments)},mb=a._emscripten_bind_Mesh_set_num_points_1=function(){return(mb=a._emscripten_bind_Mesh_set_num_points_1=a.asm.emscripten_bind_Mesh_set_num_points_1).apply(null,arguments)},nb=a._emscripten_bind_Mesh___destroy___0=function(){return(nb=a._emscripten_bind_Mesh___destroy___0=a.asm.emscripten_bind_Mesh___destroy___0).apply(null,arguments)},Ia=a._emscripten_bind_Metadata_Metadata_0= -function(){return(Ia=a._emscripten_bind_Metadata_Metadata_0=a.asm.emscripten_bind_Metadata_Metadata_0).apply(null,arguments)},ob=a._emscripten_bind_Metadata___destroy___0=function(){return(ob=a._emscripten_bind_Metadata___destroy___0=a.asm.emscripten_bind_Metadata___destroy___0).apply(null,arguments)},Ja=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ja=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.emscripten_bind_DracoInt8Array_DracoInt8Array_0).apply(null,arguments)}, -pb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(pb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.emscripten_bind_DracoInt8Array_GetValue_1).apply(null,arguments)},qb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(qb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.emscripten_bind_DracoInt8Array_size_0).apply(null,arguments)},rb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(rb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.emscripten_bind_DracoInt8Array___destroy___0).apply(null, -arguments)},Ka=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Ka=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.emscripten_bind_MetadataBuilder_MetadataBuilder_0).apply(null,arguments)},sb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=function(){return(sb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.emscripten_bind_MetadataBuilder_AddStringEntry_3).apply(null,arguments)},tb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(tb= -a._emscripten_bind_MetadataBuilder_AddIntEntry_3=a.asm.emscripten_bind_MetadataBuilder_AddIntEntry_3).apply(null,arguments)},ub=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=function(){return(ub=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.emscripten_bind_MetadataBuilder_AddIntEntryArray_4).apply(null,arguments)},vb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(vb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=a.asm.emscripten_bind_MetadataBuilder_AddDoubleEntry_3).apply(null, -arguments)},wb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(wb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.emscripten_bind_MetadataBuilder___destroy___0).apply(null,arguments)},La=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(La=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.emscripten_bind_PointCloudBuilder_PointCloudBuilder_0).apply(null,arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(xb= -a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddFloatAttribute_5).apply(null,arguments)},yb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(yb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddInt8Attribute_5).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(zb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5).apply(null, -arguments)},Ab=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(Ab=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddInt16Attribute_5).apply(null,arguments)},Bb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(Bb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5).apply(null,arguments)},Cb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5= -function(){return(Cb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddInt32Attribute_5).apply(null,arguments)},Db=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(Db=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5).apply(null,arguments)},Eb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(Eb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2= -a.asm.emscripten_bind_PointCloudBuilder_AddMetadata_2).apply(null,arguments)},Fb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(Fb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm.emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3).apply(null,arguments)},Gb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(Gb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.emscripten_bind_PointCloudBuilder___destroy___0).apply(null, -arguments)},Ma=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(Ma=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.emscripten_bind_MeshBuilder_MeshBuilder_0).apply(null,arguments)},Hb=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=a.asm.emscripten_bind_MeshBuilder_AddFacesToMesh_3).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5= -a.asm.emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Kb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=a.asm.emscripten_bind_MeshBuilder_AddMetadataToMesh_2).apply(null,arguments)}, -Lb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.emscripten_bind_MeshBuilder_AddFloatAttribute_5).apply(null,arguments)},Mb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Mb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddInt8Attribute_5).apply(null,arguments)},Nb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Nb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5= -a.asm.emscripten_bind_MeshBuilder_AddUInt8Attribute_5).apply(null,arguments)},Ob=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Ob=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddInt16Attribute_5).apply(null,arguments)},Pb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Pb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddUInt16Attribute_5).apply(null,arguments)},Qb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5= -function(){return(Qb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddInt32Attribute_5).apply(null,arguments)},Rb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=function(){return(Rb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddUInt32Attribute_5).apply(null,arguments)},Sb=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Sb=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.emscripten_bind_MeshBuilder_AddMetadata_2).apply(null, -arguments)},Tb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Tb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.emscripten_bind_MeshBuilder_SetMetadataForAttribute_3).apply(null,arguments)},Ub=a._emscripten_bind_MeshBuilder___destroy___0=function(){return(Ub=a._emscripten_bind_MeshBuilder___destroy___0=a.asm.emscripten_bind_MeshBuilder___destroy___0).apply(null,arguments)},Na=a._emscripten_bind_Encoder_Encoder_0=function(){return(Na=a._emscripten_bind_Encoder_Encoder_0= -a.asm.emscripten_bind_Encoder_Encoder_0).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Vb=a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.emscripten_bind_Encoder_SetEncodingMethod_1).apply(null,arguments)},Wb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Wb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=a.asm.emscripten_bind_Encoder_SetAttributeQuantization_2).apply(null,arguments)},Xb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5= -function(){return(Xb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.emscripten_bind_Encoder_SetAttributeExplicitQuantization_5).apply(null,arguments)},Yb=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Yb=a._emscripten_bind_Encoder_SetSpeedOptions_2=a.asm.emscripten_bind_Encoder_SetSpeedOptions_2).apply(null,arguments)},Zb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Zb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.emscripten_bind_Encoder_SetTrackEncodedProperties_1).apply(null, -arguments)},$b=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return($b=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2).apply(null,arguments)},ac=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(ac=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=a.asm.emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3).apply(null,arguments)},bc=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0= -function(){return(bc=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.emscripten_bind_Encoder_GetNumberOfEncodedPoints_0).apply(null,arguments)},cc=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(cc=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.emscripten_bind_Encoder_GetNumberOfEncodedFaces_0).apply(null,arguments)},dc=a._emscripten_bind_Encoder___destroy___0=function(){return(dc=a._emscripten_bind_Encoder___destroy___0=a.asm.emscripten_bind_Encoder___destroy___0).apply(null, -arguments)},Oa=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Oa=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.emscripten_bind_ExpertEncoder_ExpertEncoder_1).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=function(){return(ec=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=a.asm.emscripten_bind_ExpertEncoder_SetEncodingMethod_1).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(fc= -a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.emscripten_bind_ExpertEncoder_SetAttributeQuantization_2).apply(null,arguments)},gc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=function(){return(gc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5).apply(null,arguments)},hc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=function(){return(hc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2= -a.asm.emscripten_bind_ExpertEncoder_SetSpeedOptions_2).apply(null,arguments)},ic=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(ic=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1).apply(null,arguments)},jc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=function(){return(jc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2).apply(null, -arguments)},kc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=function(){return(kc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=a.asm.emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0).apply(null,arguments)},lc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(lc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0).apply(null,arguments)},mc=a._emscripten_bind_ExpertEncoder___destroy___0= -function(){return(mc=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.emscripten_bind_ExpertEncoder___destroy___0).apply(null,arguments)},nc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(nc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.emscripten_enum_draco_GeometryAttribute_Type_INVALID).apply(null,arguments)},oc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(oc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.emscripten_enum_draco_GeometryAttribute_Type_POSITION).apply(null, -arguments)},pc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(pc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.emscripten_enum_draco_GeometryAttribute_Type_NORMAL).apply(null,arguments)},qc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(qc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.emscripten_enum_draco_GeometryAttribute_Type_COLOR).apply(null,arguments)},rc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD= -function(){return(rc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD).apply(null,arguments)},sc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(sc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.emscripten_enum_draco_GeometryAttribute_Type_GENERIC).apply(null,arguments)},tc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(tc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE= -a.asm.emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE).apply(null,arguments)},uc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(uc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD).apply(null,arguments)},vc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(vc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH).apply(null, -arguments)},wc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=function(){return(wc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=a.asm.emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING).apply(null,arguments)},xc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(xc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING).apply(null, -arguments)};a.___errno_location=function(){return(a.___errno_location=a.asm.__errno_location).apply(null,arguments)};a.stackSave=function(){return(a.stackSave=a.asm.stackSave).apply(null,arguments)};a.stackRestore=function(){return(a.stackRestore=a.asm.stackRestore).apply(null,arguments)};a.stackAlloc=function(){return(a.stackAlloc=a.asm.stackAlloc).apply(null,arguments)};a._setThrew=function(){return(a._setThrew=a.asm.setThrew).apply(null,arguments)};a._free=function(){return(a._free=a.asm.free).apply(null, -arguments)};var Ua=a._malloc=function(){return(Ua=a._malloc=a.asm.malloc).apply(null,arguments)},ja;ea=function b(){ja||M();ja||(ea=b)};a.run=M;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=m.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>2]=b};this.get_type=function(){return L[this.ptr+G.TYPE_OFFSET>>2]};this.set_destructor=function(b){L[this.ptr+G.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return L[this.ptr+G.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){L[this.ptr+G.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){Q[this.ptr+G.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=Q[this.ptr+ +G.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){Q[this.ptr+G.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!=Q[this.ptr+G.RETHROWN_OFFSET>>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(){L[this.ptr+G.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=L[this.ptr+G.REFCOUNT_OFFSET>>2];L[this.ptr+G.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function U(f){function b(){if(!fa&& +(fa=!0,a.calledRun=!0,!wa)){ya=!0;B(za);B(pa);Aa(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ba.unshift(a.postRun.shift());B(Ba)}}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=l.alloc(b,Q);l.copy(b,Q,f);return f}return f}function ha(f){if("object"===typeof f){var b=l.alloc(f,Q);l.copy(f,Q,b);return b}return f}function ia(f){if("object"===typeof f){var b=l.alloc(f,ka);l.copy(f,ka,b);return b}return f}function X(f){if("object"===typeof f){var b=l.alloc(f, +L);l.copy(f,L,b);return b}return f}function aa(f){if("object"===typeof f){var b=l.alloc(f,ma);l.copy(f,ma,b);return b}return f}function R(){throw"cannot construct a VoidPtr, no constructor in IDL";}function N(){this.ptr=Da();C(N)[this.ptr]=this}function z(){this.ptr=Ea();C(z)[this.ptr]=this}function H(){this.ptr=Fa();C(H)[this.ptr]=this}function E(){this.ptr=Ga();C(E)[this.ptr]=this}function O(){this.ptr=Ha();C(O)[this.ptr]=this}function I(){this.ptr=Ia();C(I)[this.ptr]=this}function F(){this.ptr= +Ja();C(F)[this.ptr]=this}function x(){this.ptr=Ka();C(x)[this.ptr]=this}function u(){this.ptr=La();C(u)[this.ptr]=this}function y(){this.ptr=Ma();C(y)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Na(f);C(A)[this.ptr]=this}q=q||{};var a="undefined"!==typeof q?q:{},Aa,na;a.ready=new Promise(function(f,b){Aa=f;na=b});var Oa=!1,Pa=!1;a.onRuntimeInitialized=function(){Oa=!0;a.callRuntimeCallbacks(a.mainCallbacks);if(Pa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)}; +a.onModuleParsed=function(){Pa=!0;if(Oa&&"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);k(ja.buffer);var t=1;break a}catch(wc){}t=void 0}if(t)return!0}return!1}};(function(){function f(e,g){a.asm=e.exports;ja=a.asm.f;k(ja.buffer); +oa=a.asm.h;za.unshift(a.asm.g);W--;a.monitorRunDependencies&&a.monitorRunDependencies(W);0==W&&(null!==ua&&(clearInterval(ua),ua=null),ca&&(e=ca,ca=null,e()))}function b(e){f(e.instance)}function c(e){return v().then(function(g){return WebAssembly.instantiate(g,d)}).then(e,function(g){Y("failed to asynchronously prepare wasm: "+g);D(g)})}var d={a:vc};W++;a.monitorRunDependencies&&a.monitorRunDependencies(W);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||h(K,"data:application/octet-stream;base64,")||h(K,"file://")||"function"!==typeof fetch?c(b):fetch(K,{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 Sa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Sa=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Da=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Da=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.j).apply(null,arguments)},Ta=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Ta=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.k).apply(null,arguments)},Ea=a._emscripten_bind_PointAttribute_PointAttribute_0= +function(){return(Ea=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.l).apply(null,arguments)},Ua=a._emscripten_bind_PointAttribute_size_0=function(){return(Ua=a._emscripten_bind_PointAttribute_size_0=a.asm.m).apply(null,arguments)},Va=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Va=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.n).apply(null,arguments)},Wa=a._emscripten_bind_PointAttribute_data_type_0=function(){return(Wa=a._emscripten_bind_PointAttribute_data_type_0= +a.asm.o).apply(null,arguments)},Xa=a._emscripten_bind_PointAttribute_num_components_0=function(){return(Xa=a._emscripten_bind_PointAttribute_num_components_0=a.asm.p).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_normalized_0=function(){return(Ya=a._emscripten_bind_PointAttribute_normalized_0=a.asm.q).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(Za=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.r).apply(null,arguments)},$a=a._emscripten_bind_PointAttribute_byte_offset_0= +function(){return($a=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.s).apply(null,arguments)},ab=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(ab=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.t).apply(null,arguments)},bb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(bb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.u).apply(null,arguments)},Fa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Fa=a._emscripten_bind_PointCloud_PointCloud_0= +a.asm.v).apply(null,arguments)},cb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(cb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.w).apply(null,arguments)},db=a._emscripten_bind_PointCloud_num_points_0=function(){return(db=a._emscripten_bind_PointCloud_num_points_0=a.asm.x).apply(null,arguments)},eb=a._emscripten_bind_PointCloud___destroy___0=function(){return(eb=a._emscripten_bind_PointCloud___destroy___0=a.asm.y).apply(null,arguments)},Ga=a._emscripten_bind_Mesh_Mesh_0= +function(){return(Ga=a._emscripten_bind_Mesh_Mesh_0=a.asm.z).apply(null,arguments)},fb=a._emscripten_bind_Mesh_num_faces_0=function(){return(fb=a._emscripten_bind_Mesh_num_faces_0=a.asm.A).apply(null,arguments)},gb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(gb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.B).apply(null,arguments)},hb=a._emscripten_bind_Mesh_num_points_0=function(){return(hb=a._emscripten_bind_Mesh_num_points_0=a.asm.C).apply(null,arguments)},ib=a._emscripten_bind_Mesh_set_num_points_1= +function(){return(ib=a._emscripten_bind_Mesh_set_num_points_1=a.asm.D).apply(null,arguments)},jb=a._emscripten_bind_Mesh___destroy___0=function(){return(jb=a._emscripten_bind_Mesh___destroy___0=a.asm.E).apply(null,arguments)},Ha=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ha=a._emscripten_bind_Metadata_Metadata_0=a.asm.F).apply(null,arguments)},kb=a._emscripten_bind_Metadata___destroy___0=function(){return(kb=a._emscripten_bind_Metadata___destroy___0=a.asm.G).apply(null,arguments)},Ia= +a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ia=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.H).apply(null,arguments)},lb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(lb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.I).apply(null,arguments)},mb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(mb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.J).apply(null,arguments)},nb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(nb= +a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.K).apply(null,arguments)},Ja=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Ja=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.L).apply(null,arguments)},ob=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=function(){return(ob=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.M).apply(null,arguments)},pb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(pb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3= +a.asm.N).apply(null,arguments)},qb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=function(){return(qb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.O).apply(null,arguments)},rb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(rb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=a.asm.P).apply(null,arguments)},sb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(sb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.Q).apply(null,arguments)}, +Ka=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(Ka=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.R).apply(null,arguments)},tb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(tb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.S).apply(null,arguments)},ub=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(ub=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.T).apply(null,arguments)}, +vb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(vb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.U).apply(null,arguments)},wb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(wb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.V).apply(null,arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(xb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.W).apply(null,arguments)}, +yb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=function(){return(yb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.X).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(zb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.Y).apply(null,arguments)},Ab=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(Ab=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=a.asm.Z).apply(null,arguments)},Bb= +a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(Bb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm._).apply(null,arguments)},Cb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(Cb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.$).apply(null,arguments)},La=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(La=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.aa).apply(null,arguments)},Db=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3= +function(){return(Db=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=a.asm.ba).apply(null,arguments)},Eb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Eb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=a.asm.ca).apply(null,arguments)},Fb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=function(){return(Fb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.da).apply(null,arguments)},Gb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Gb= +a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=a.asm.ea).apply(null,arguments)},Hb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.fa).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.ga).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5= +a.asm.ha).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Kb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.ia).apply(null,arguments)},Lb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=a.asm.ja).apply(null,arguments)},Mb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=function(){return(Mb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.ka).apply(null,arguments)}, +Nb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=function(){return(Nb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.la).apply(null,arguments)},Ob=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Ob=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.ma).apply(null,arguments)},Pb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Pb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.na).apply(null,arguments)},Qb=a._emscripten_bind_MeshBuilder___destroy___0= +function(){return(Qb=a._emscripten_bind_MeshBuilder___destroy___0=a.asm.oa).apply(null,arguments)},Ma=a._emscripten_bind_Encoder_Encoder_0=function(){return(Ma=a._emscripten_bind_Encoder_Encoder_0=a.asm.pa).apply(null,arguments)},Rb=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Rb=a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.qa).apply(null,arguments)},Sb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Sb=a._emscripten_bind_Encoder_SetAttributeQuantization_2= +a.asm.ra).apply(null,arguments)},Tb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=function(){return(Tb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.sa).apply(null,arguments)},Ub=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Ub=a._emscripten_bind_Encoder_SetSpeedOptions_2=a.asm.ta).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Vb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.ua).apply(null, +arguments)},Wb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return(Wb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.va).apply(null,arguments)},Xb=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(Xb=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=a.asm.wa).apply(null,arguments)},Yb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=function(){return(Yb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.xa).apply(null, +arguments)},Zb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(Zb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.ya).apply(null,arguments)},$b=a._emscripten_bind_Encoder___destroy___0=function(){return($b=a._emscripten_bind_Encoder___destroy___0=a.asm.za).apply(null,arguments)},Na=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Na=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.Aa).apply(null,arguments)},ac=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1= +function(){return(ac=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=a.asm.Ba).apply(null,arguments)},bc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(bc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.Ca).apply(null,arguments)},cc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=function(){return(cc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.Da).apply(null,arguments)},dc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2= +function(){return(dc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=a.asm.Ea).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(ec=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.Fa).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=function(){return(fc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.Ga).apply(null,arguments)},gc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0= +function(){return(gc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=a.asm.Ha).apply(null,arguments)},hc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(hc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.Ia).apply(null,arguments)},ic=a._emscripten_bind_ExpertEncoder___destroy___0=function(){return(ic=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.Ja).apply(null,arguments)},jc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(jc= +a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.Ka).apply(null,arguments)},kc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(kc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.La).apply(null,arguments)},lc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(lc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.Ma).apply(null,arguments)},mc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(mc= +a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.Na).apply(null,arguments)},nc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(nc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.Oa).apply(null,arguments)},oc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(oc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.Pa).apply(null,arguments)},pc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(pc= +a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.Qa).apply(null,arguments)},qc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(qc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.Ra).apply(null,arguments)},rc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(rc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Sa).apply(null,arguments)},sc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING= +function(){return(sc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=a.asm.Ta).apply(null,arguments)},tc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(tc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.Ua).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Va).apply(null,arguments)};var Ra=a._malloc=function(){return(Ra=a._malloc=a.asm.Wa).apply(null,arguments)};a.callRuntimeCallbacks=B;var fa;ca=function b(){fa|| +U();fa||(ca=b)};a.run=U;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=l.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;em?Math.max(A+m,0):Math.min(m,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(mq;)--h in this?this[--m]=this[h]: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"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(m){var p=0;return function(){return p>>0,$jscomp.propertyToPolyfillSymbol[k]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(k):$jscomp.POLYFILL_PREFIX+l+"$"+k),$jscomp.defineProperty(q,$jscomp.propertyToPolyfillSymbol[k],{configurable:!0,writable:!0,value:p})))}; +$jscomp.polyfill("Promise",function(m){function p(){this.batch_=null}function l(g){return g instanceof k?g:new k(function(n,u){n(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;p.prototype.asyncExecute=function(g){if(null==this.batch_){this.batch_=[];var n=this;this.asyncExecuteFunction(function(){n.executeBatch_()})}this.batch_.push(g)}; +var q=$jscomp.global.setTimeout;p.prototype.asyncExecuteFunction=function(g){q(g,0)};p.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var g=this.batch_;this.batch_=[];for(var n=0;nl?Math.max(A+l,0):Math.min(l,A);q=0>q?Math.max(A+q,0):Math.min(q,A);k=0>k?Math.max(A+k,0):Math.min(k,A);if(lq;)--k in this?this[--l]=this[k]:delete this[--l];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"); $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 l="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(l=l||__filename);return function(n){function m(e){return a.locateFile?a.locateFile(e,V):V+e}function q(e,b){e||u("Assertion failed: "+b)}function h(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 A(e,b){return e?h(la,e,b):""}function g(e,b){0>2]=b}; -this.get_type=function(){return H[this.ptr+D.TYPE_OFFSET>>2]};this.set_destructor=function(b){H[this.ptr+D.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return H[this.ptr+D.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){H[this.ptr+D.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){Z[this.ptr+D.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=Z[this.ptr+D.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){Z[this.ptr+D.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!= -Z[this.ptr+D.RETHROWN_OFFSET>>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(){H[this.ptr+D.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=H[this.ptr+D.REFCOUNT_OFFSET>>2];H[this.ptr+D.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function ba(){return 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 ca=e.charCodeAt(++f);t=65536+((t&1023)<<10)|ca&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 xa(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 T(){this.ptr=Ma();z(T)[this.ptr]=this}function R(){this.ptr=Na();z(R)[this.ptr]=this}function X(){this.ptr=Oa();z(X)[this.ptr]=this}function w(){this.ptr= -Pa();z(w)[this.ptr]=this}function C(){this.ptr=Qa();z(C)[this.ptr]=this}function I(){this.ptr=Ra();z(I)[this.ptr]=this}function J(){this.ptr=Sa();z(J)[this.ptr]=this}function E(){this.ptr=Ta();z(E)[this.ptr]=this}function U(){this.ptr=Ua();z(U)[this.ptr]=this}function B(){throw"cannot construct a Status, no constructor in IDL";}function K(){this.ptr=Va();z(K)[this.ptr]=this}function L(){this.ptr=Wa();z(L)[this.ptr]=this}function M(){this.ptr=Xa();z(M)[this.ptr]=this}function N(){this.ptr=Ya();z(N)[this.ptr]= -this}function O(){this.ptr=Za();z(O)[this.ptr]=this}function P(){this.ptr=$a();z(P)[this.ptr]=this}function Q(){this.ptr=ab();z(Q)[this.ptr]=this}function y(){this.ptr=bb();z(y)[this.ptr]=this}function k(){this.ptr=cb();z(k)[this.ptr]=this}n=n||{};var a="undefined"!==typeof n?n:{},Ja,va;a.ready=new Promise(function(e,b){Ja=e;va=b});var db=!1,eb=!1;a.onRuntimeInitialized=function(){db=!0;if(eb&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){eb=!0;if(db&&"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 A(e)},get64:function(e,b){return e}};Ha.push({func:function(){hb()}});var kb={__cxa_allocate_exception:function(e){return ib(e+D.SIZE)+D.SIZE},__cxa_throw:function(e,b,c){(new Y(e)).init(b,c);"uncaught_exception"in ba?ba.uncaught_exceptions++:ba.uncaught_exceptions= -1;throw e;},abort:function(){u()},array_bounds_check_error:function(e,b){throw"Array index "+e+" out of bounds: [0,"+b+")";},emscripten_memcpy_big:function(e,b,c){la.copyWithin(e,b,b+c)},emscripten_resize_heap:function(e){e>>>=0;var b=la.length;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,e+100663296);d=Math.min(2147483648,g(Math.max(16777216,e,d),65536));a:{try{oa.grow(d-ra.byteLength+65535>>>16);p(oa.buffer);var f=1;break a}catch(t){}f=void 0}if(f)return!0}return!1}, -fd_close:function(e){return 0},fd_seek:function(e,b,c,d,f){},fd_write:function(e,b,c,d){for(var f=0,t=0;t>2],jb=H[b+(8*t+4)>>2],Da=0;Da>2]=f;return 0},memory:oa,setTempRet0:function(e){}};(function(){function e(f,t){a.asm=f.exports;wa=a.asm.__indirect_function_table;ia--;a.monitorRunDependencies&&a.monitorRunDependencies(ia);0==ia&&(null!==Ca&&(clearInterval(Ca),Ca=null),pa&&(f=pa,pa=null,f()))}function b(f){e(f.instance)}function c(f){return ka().then(function(t){return WebAssembly.instantiate(t, -d)}).then(f,function(t){ja("failed to asynchronously prepare wasm: "+t);u(t)})}var d={env:kb,wasi_snapshot_preview1:kb};ia++;a.monitorRunDependencies&&a.monitorRunDependencies(ia);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(f){return ja("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return ma||"function"!==typeof WebAssembly.instantiateStreaming||x(W,"data:application/octet-stream;base64,")||x(W,"file://")||"function"!==typeof fetch?c(b):fetch(W,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f, -d).then(b,function(t){ja("wasm streaming compile failed: "+t);ja("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(va);return{}})();var hb=a.___wasm_call_ctors=function(){return(hb=a.___wasm_call_ctors=a.asm.__wasm_call_ctors).apply(null,arguments)};a.___em_js__array_bounds_check_error=function(){return(a.___em_js__array_bounds_check_error=a.asm.__em_js__array_bounds_check_error).apply(null,arguments)};var lb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(lb=a._emscripten_bind_VoidPtr___destroy___0= -a.asm.emscripten_bind_VoidPtr___destroy___0).apply(null,arguments)},Ma=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ma=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.emscripten_bind_DecoderBuffer_DecoderBuffer_0).apply(null,arguments)},mb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(mb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.emscripten_bind_DecoderBuffer_Init_2).apply(null,arguments)},nb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(nb= -a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.emscripten_bind_DecoderBuffer___destroy___0).apply(null,arguments)},Na=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Na=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.emscripten_bind_AttributeTransformData_AttributeTransformData_0).apply(null,arguments)},ob=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(ob=a._emscripten_bind_AttributeTransformData_transform_type_0= -a.asm.emscripten_bind_AttributeTransformData_transform_type_0).apply(null,arguments)},pb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(pb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.emscripten_bind_AttributeTransformData___destroy___0).apply(null,arguments)},Oa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Oa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.emscripten_bind_GeometryAttribute_GeometryAttribute_0).apply(null, -arguments)},qb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(qb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.emscripten_bind_GeometryAttribute___destroy___0).apply(null,arguments)},Pa=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Pa=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.emscripten_bind_PointAttribute_PointAttribute_0).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_size_0=function(){return(rb=a._emscripten_bind_PointAttribute_size_0= -a.asm.emscripten_bind_PointAttribute_size_0).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(sb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.emscripten_bind_PointAttribute_GetAttributeTransformData_0).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(tb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.emscripten_bind_PointAttribute_attribute_type_0).apply(null,arguments)}, -ub=a._emscripten_bind_PointAttribute_data_type_0=function(){return(ub=a._emscripten_bind_PointAttribute_data_type_0=a.asm.emscripten_bind_PointAttribute_data_type_0).apply(null,arguments)},vb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(vb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.emscripten_bind_PointAttribute_num_components_0).apply(null,arguments)},wb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(wb=a._emscripten_bind_PointAttribute_normalized_0= -a.asm.emscripten_bind_PointAttribute_normalized_0).apply(null,arguments)},xb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(xb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.emscripten_bind_PointAttribute_byte_stride_0).apply(null,arguments)},yb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(yb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.emscripten_bind_PointAttribute_byte_offset_0).apply(null,arguments)},zb=a._emscripten_bind_PointAttribute_unique_id_0= -function(){return(zb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.emscripten_bind_PointAttribute_unique_id_0).apply(null,arguments)},Ab=a._emscripten_bind_PointAttribute___destroy___0=function(){return(Ab=a._emscripten_bind_PointAttribute___destroy___0=a.asm.emscripten_bind_PointAttribute___destroy___0).apply(null,arguments)},Qa=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Qa=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0= -a.asm.emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0).apply(null,arguments)},Bb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(Bb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1).apply(null,arguments)},Cb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(Cb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0= -a.asm.emscripten_bind_AttributeQuantizationTransform_quantization_bits_0).apply(null,arguments)},Db=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(Db=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.emscripten_bind_AttributeQuantizationTransform_min_value_1).apply(null,arguments)},Eb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(Eb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.emscripten_bind_AttributeQuantizationTransform_range_0).apply(null, -arguments)},Fb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(Fb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.emscripten_bind_AttributeQuantizationTransform___destroy___0).apply(null,arguments)},Ra=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Ra=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0).apply(null, -arguments)},Gb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(Gb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1).apply(null,arguments)},Hb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Hb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.emscripten_bind_AttributeOctahedronTransform_quantization_bits_0).apply(null, -arguments)},Ib=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Ib=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.emscripten_bind_AttributeOctahedronTransform___destroy___0).apply(null,arguments)},Sa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Sa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.emscripten_bind_PointCloud_PointCloud_0).apply(null,arguments)},Jb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Jb=a._emscripten_bind_PointCloud_num_attributes_0= -a.asm.emscripten_bind_PointCloud_num_attributes_0).apply(null,arguments)},Kb=a._emscripten_bind_PointCloud_num_points_0=function(){return(Kb=a._emscripten_bind_PointCloud_num_points_0=a.asm.emscripten_bind_PointCloud_num_points_0).apply(null,arguments)},Lb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Lb=a._emscripten_bind_PointCloud___destroy___0=a.asm.emscripten_bind_PointCloud___destroy___0).apply(null,arguments)},Ta=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ta=a._emscripten_bind_Mesh_Mesh_0= -a.asm.emscripten_bind_Mesh_Mesh_0).apply(null,arguments)},Mb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Mb=a._emscripten_bind_Mesh_num_faces_0=a.asm.emscripten_bind_Mesh_num_faces_0).apply(null,arguments)},Nb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Nb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.emscripten_bind_Mesh_num_attributes_0).apply(null,arguments)},Ob=a._emscripten_bind_Mesh_num_points_0=function(){return(Ob=a._emscripten_bind_Mesh_num_points_0=a.asm.emscripten_bind_Mesh_num_points_0).apply(null, -arguments)},Pb=a._emscripten_bind_Mesh___destroy___0=function(){return(Pb=a._emscripten_bind_Mesh___destroy___0=a.asm.emscripten_bind_Mesh___destroy___0).apply(null,arguments)},Ua=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ua=a._emscripten_bind_Metadata_Metadata_0=a.asm.emscripten_bind_Metadata_Metadata_0).apply(null,arguments)},Qb=a._emscripten_bind_Metadata___destroy___0=function(){return(Qb=a._emscripten_bind_Metadata___destroy___0=a.asm.emscripten_bind_Metadata___destroy___0).apply(null, -arguments)},Rb=a._emscripten_bind_Status_code_0=function(){return(Rb=a._emscripten_bind_Status_code_0=a.asm.emscripten_bind_Status_code_0).apply(null,arguments)},Sb=a._emscripten_bind_Status_ok_0=function(){return(Sb=a._emscripten_bind_Status_ok_0=a.asm.emscripten_bind_Status_ok_0).apply(null,arguments)},Tb=a._emscripten_bind_Status_error_msg_0=function(){return(Tb=a._emscripten_bind_Status_error_msg_0=a.asm.emscripten_bind_Status_error_msg_0).apply(null,arguments)},Ub=a._emscripten_bind_Status___destroy___0= -function(){return(Ub=a._emscripten_bind_Status___destroy___0=a.asm.emscripten_bind_Status___destroy___0).apply(null,arguments)},Va=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Va=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.emscripten_bind_DracoFloat32Array_DracoFloat32Array_0).apply(null,arguments)},Vb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Vb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.emscripten_bind_DracoFloat32Array_GetValue_1).apply(null, -arguments)},Wb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Wb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.emscripten_bind_DracoFloat32Array_size_0).apply(null,arguments)},Xb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Xb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.emscripten_bind_DracoFloat32Array___destroy___0).apply(null,arguments)},Wa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Wa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= -a.asm.emscripten_bind_DracoInt8Array_DracoInt8Array_0).apply(null,arguments)},Yb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Yb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.emscripten_bind_DracoInt8Array_GetValue_1).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Zb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.emscripten_bind_DracoInt8Array_size_0).apply(null,arguments)},$b=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return($b= -a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.emscripten_bind_DracoInt8Array___destroy___0).apply(null,arguments)},Xa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Xa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.emscripten_bind_DracoUInt8Array_DracoUInt8Array_0).apply(null,arguments)},ac=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(ac=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.emscripten_bind_DracoUInt8Array_GetValue_1).apply(null, -arguments)},bc=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(bc=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.emscripten_bind_DracoUInt8Array_size_0).apply(null,arguments)},cc=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(cc=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.emscripten_bind_DracoUInt8Array___destroy___0).apply(null,arguments)},Ya=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Ya=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0= -a.asm.emscripten_bind_DracoInt16Array_DracoInt16Array_0).apply(null,arguments)},dc=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(dc=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.emscripten_bind_DracoInt16Array_GetValue_1).apply(null,arguments)},ec=a._emscripten_bind_DracoInt16Array_size_0=function(){return(ec=a._emscripten_bind_DracoInt16Array_size_0=a.asm.emscripten_bind_DracoInt16Array_size_0).apply(null,arguments)},fc=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(fc= -a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.emscripten_bind_DracoInt16Array___destroy___0).apply(null,arguments)},Za=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Za=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.emscripten_bind_DracoUInt16Array_DracoUInt16Array_0).apply(null,arguments)},gc=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(gc=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.emscripten_bind_DracoUInt16Array_GetValue_1).apply(null, -arguments)},hc=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(hc=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.emscripten_bind_DracoUInt16Array_size_0).apply(null,arguments)},ic=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(ic=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.emscripten_bind_DracoUInt16Array___destroy___0).apply(null,arguments)},$a=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return($a=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0= -a.asm.emscripten_bind_DracoInt32Array_DracoInt32Array_0).apply(null,arguments)},jc=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(jc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.emscripten_bind_DracoInt32Array_GetValue_1).apply(null,arguments)},kc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(kc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.emscripten_bind_DracoInt32Array_size_0).apply(null,arguments)},lc=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(lc= -a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.emscripten_bind_DracoInt32Array___destroy___0).apply(null,arguments)},ab=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(ab=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.emscripten_bind_DracoUInt32Array_DracoUInt32Array_0).apply(null,arguments)},mc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(mc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.emscripten_bind_DracoUInt32Array_GetValue_1).apply(null, -arguments)},nc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(nc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.emscripten_bind_DracoUInt32Array_size_0).apply(null,arguments)},oc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(oc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.emscripten_bind_DracoUInt32Array___destroy___0).apply(null,arguments)},bb=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(bb=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= -a.asm.emscripten_bind_MetadataQuerier_MetadataQuerier_0).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(pc=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.emscripten_bind_MetadataQuerier_HasEntry_2).apply(null,arguments)},qc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(qc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetIntEntry_2).apply(null,arguments)},rc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= -function(){return(rc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.emscripten_bind_MetadataQuerier_GetIntEntryArray_3).apply(null,arguments)},sc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(sc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetDoubleEntry_2).apply(null,arguments)},tc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(tc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetStringEntry_2).apply(null, -arguments)},uc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(uc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.emscripten_bind_MetadataQuerier_NumEntries_1).apply(null,arguments)},vc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(vc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.emscripten_bind_MetadataQuerier_GetEntryName_2).apply(null,arguments)},wc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(wc=a._emscripten_bind_MetadataQuerier___destroy___0= -a.asm.emscripten_bind_MetadataQuerier___destroy___0).apply(null,arguments)},cb=a._emscripten_bind_Decoder_Decoder_0=function(){return(cb=a._emscripten_bind_Decoder_Decoder_0=a.asm.emscripten_bind_Decoder_Decoder_0).apply(null,arguments)},xc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(xc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.emscripten_bind_Decoder_DecodeArrayToPointCloud_3).apply(null,arguments)},yc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(yc= -a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.emscripten_bind_Decoder_DecodeArrayToMesh_3).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(zc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.emscripten_bind_Decoder_GetAttributeId_2).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(Ac=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.emscripten_bind_Decoder_GetAttributeIdByName_2).apply(null,arguments)}, -Bc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(Cc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.emscripten_bind_Decoder_GetAttribute_2).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2= -a.asm.emscripten_bind_Decoder_GetAttributeByUniqueId_2).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(Ec=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.emscripten_bind_Decoder_GetMetadata_1).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.emscripten_bind_Decoder_GetAttributeMetadata_2).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetFaceFromMesh_3= -function(){return(Gc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.emscripten_bind_Decoder_GetFaceFromMesh_3).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(Hc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.emscripten_bind_Decoder_GetTriangleStripsFromMesh_2).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Ic=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.emscripten_bind_Decoder_GetTrianglesUInt16Array_3).apply(null, -arguments)},Jc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Jc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.emscripten_bind_Decoder_GetTrianglesUInt32Array_3).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.emscripten_bind_Decoder_GetAttributeFloat_3).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3= -a.asm.emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeIntForAllPoints_3).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Nc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3).apply(null, -arguments)},Oc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Oc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Pc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= -function(){return(Qc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3).apply(null,arguments)},Rc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Rc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3).apply(null,arguments)},Sc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Sc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3= -a.asm.emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3).apply(null,arguments)},Tc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(Tc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5).apply(null,arguments)},Uc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Uc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.emscripten_bind_Decoder_SkipAttributeTransform_1).apply(null, -arguments)},Vc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Vc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1).apply(null,arguments)},Wc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(Wc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.emscripten_bind_Decoder_DecodeBufferToPointCloud_2).apply(null,arguments)},Xc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2= -function(){return(Xc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.emscripten_bind_Decoder_DecodeBufferToMesh_2).apply(null,arguments)},Yc=a._emscripten_bind_Decoder___destroy___0=function(){return(Yc=a._emscripten_bind_Decoder___destroy___0=a.asm.emscripten_bind_Decoder___destroy___0).apply(null,arguments)},Zc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Zc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM).apply(null, -arguments)},$c=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return($c=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM).apply(null,arguments)},ad=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(ad=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM).apply(null, -arguments)},bd=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(bd=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM).apply(null,arguments)},cd=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(cd=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.emscripten_enum_draco_GeometryAttribute_Type_INVALID).apply(null, -arguments)},dd=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(dd=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.emscripten_enum_draco_GeometryAttribute_Type_POSITION).apply(null,arguments)},ed=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ed=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.emscripten_enum_draco_GeometryAttribute_Type_NORMAL).apply(null,arguments)},fd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR= -function(){return(fd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.emscripten_enum_draco_GeometryAttribute_Type_COLOR).apply(null,arguments)},gd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(gd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD).apply(null,arguments)},hd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(hd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= -a.asm.emscripten_enum_draco_GeometryAttribute_Type_GENERIC).apply(null,arguments)},id=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(id=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE).apply(null,arguments)},jd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(jd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD).apply(null, -arguments)},kd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(kd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(ld=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.emscripten_enum_draco_DataType_DT_INVALID).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(md=a._emscripten_enum_draco_DataType_DT_INT8= -a.asm.emscripten_enum_draco_DataType_DT_INT8).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(nd=a._emscripten_enum_draco_DataType_DT_UINT8=a.asm.emscripten_enum_draco_DataType_DT_UINT8).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(od=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.emscripten_enum_draco_DataType_DT_INT16).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(pd=a._emscripten_enum_draco_DataType_DT_UINT16= -a.asm.emscripten_enum_draco_DataType_DT_UINT16).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(qd=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.emscripten_enum_draco_DataType_DT_INT32).apply(null,arguments)},rd=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return(rd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.emscripten_enum_draco_DataType_DT_UINT32).apply(null,arguments)},sd=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(sd= -a._emscripten_enum_draco_DataType_DT_INT64=a.asm.emscripten_enum_draco_DataType_DT_INT64).apply(null,arguments)},td=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(td=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.emscripten_enum_draco_DataType_DT_UINT64).apply(null,arguments)},ud=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(ud=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.emscripten_enum_draco_DataType_DT_FLOAT32).apply(null,arguments)},vd=a._emscripten_enum_draco_DataType_DT_FLOAT64= -function(){return(vd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.emscripten_enum_draco_DataType_DT_FLOAT64).apply(null,arguments)},wd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(wd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.emscripten_enum_draco_DataType_DT_BOOL).apply(null,arguments)},xd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(xd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.emscripten_enum_draco_DataType_DT_TYPES_COUNT).apply(null, -arguments)},yd=a._emscripten_enum_draco_StatusCode_OK=function(){return(yd=a._emscripten_enum_draco_StatusCode_OK=a.asm.emscripten_enum_draco_StatusCode_OK).apply(null,arguments)},zd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(zd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.emscripten_enum_draco_StatusCode_DRACO_ERROR).apply(null,arguments)},Ad=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(Ad=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.emscripten_enum_draco_StatusCode_IO_ERROR).apply(null, -arguments)},Bd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(Bd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=a.asm.emscripten_enum_draco_StatusCode_INVALID_PARAMETER).apply(null,arguments)},Cd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(Cd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION).apply(null,arguments)},Dd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(Dd= -a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.emscripten_enum_draco_StatusCode_UNKNOWN_VERSION).apply(null,arguments)};a.___errno_location=function(){return(a.___errno_location=a.asm.__errno_location).apply(null,arguments)};a.stackSave=function(){return(a.stackSave=a.asm.stackSave).apply(null,arguments)};a.stackRestore=function(){return(a.stackRestore=a.asm.stackRestore).apply(null,arguments)};a.stackAlloc=function(){return(a.stackAlloc=a.asm.stackAlloc).apply(null,arguments)};a._setThrew= -function(){return(a._setThrew=a.asm.setThrew).apply(null,arguments)};a._free=function(){return(a._free=a.asm.free).apply(null,arguments)};var ib=a._malloc=function(){return(ib=a._malloc=a.asm.malloc).apply(null,arguments)};a.dynCall_jiji=function(){return(a.dynCall_jiji=a.asm.dynCall_jiji).apply(null,arguments)};var ua;pa=function b(){ua||fa();ua||(pa=b)};a.run=fa;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 m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(p){function l(e){return a.locateFile?a.locateFile(e,X):X+e}function q(e,b){e||n("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 A(e,b){return e?k(ja,e,b):""}function g(e){Ea=e;a.HEAP8=ba=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 n(e){if(a.onAbort)a.onAbort(e);e+="";ia(e);Fa=!0;e=new WebAssembly.RuntimeError("abort("+e+"). Build with -s ASSERTIONS=1 for more info.");sa(e);throw e;}function u(e,b){return String.prototype.startsWith?e.startsWith(b):0===e.indexOf(b)}function z(e){try{if(e==Q&&ka)return new Uint8Array(ka);if(oa)return oa(e);throw"both async and sync fetching of the wasm failed";}catch(b){n(b)}}function P(){if(!ka&&(pa||fa)){if("function"===typeof fetch&&!u(Q,"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 z(Q)});if(Ga)return new Promise(function(e,b){Ga(Q,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return z(Q)})}function aa(e){for(;0>2]=b};this.get_type= +function(){return F[this.ptr+D.TYPE_OFFSET>>2]};this.set_destructor=function(b){F[this.ptr+D.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return F[this.ptr+D.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){F[this.ptr+D.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){ba[this.ptr+D.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=ba[this.ptr+D.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){ba[this.ptr+D.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!= +ba[this.ptr+D.RETHROWN_OFFSET>>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+D.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=F[this.ptr+D.REFCOUNT_OFFSET>>2];F[this.ptr+D.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function W(e){function b(){if(!qa&&(qa=!0,a.calledRun=!0,!Fa)){Ha=!0;aa(Ia);aa(ua);Ja(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"== +typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ka.unshift(a.postRun.shift());aa(Ka)}}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 Y=e.charCodeAt(++f);t=65536+((t&1023)<<10)|Y&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,ba);r.copy(b,ba,e);return e}return e}function va(e){if("object"===typeof e){var b=r.alloc(e,ba);r.copy(e,ba,b);return b}return e}function ca(){throw"cannot construct a VoidPtr, no constructor in IDL";}function T(){this.ptr=Ma();x(T)[this.ptr]=this}function R(){this.ptr=Na();x(R)[this.ptr]=this}function Z(){this.ptr=Oa();x(Z)[this.ptr]=this}function w(){this.ptr=Pa();x(w)[this.ptr]= +this}function C(){this.ptr=Qa();x(C)[this.ptr]=this}function G(){this.ptr=Ra();x(G)[this.ptr]=this}function H(){this.ptr=Sa();x(H)[this.ptr]=this}function E(){this.ptr=Ta();x(E)[this.ptr]=this}function U(){this.ptr=Ua();x(U)[this.ptr]=this}function B(){throw"cannot construct a Status, no constructor in IDL";}function I(){this.ptr=Va();x(I)[this.ptr]=this}function J(){this.ptr=Wa();x(J)[this.ptr]=this}function K(){this.ptr=Xa();x(K)[this.ptr]=this}function L(){this.ptr=Ya();x(L)[this.ptr]=this}function M(){this.ptr= +Za();x(M)[this.ptr]=this}function N(){this.ptr=$a();x(N)[this.ptr]=this}function O(){this.ptr=ab();x(O)[this.ptr]=this}function y(){this.ptr=bb();x(y)[this.ptr]=this}function h(){this.ptr=cb();x(h)[this.ptr]=this}p=p||{};var a="undefined"!==typeof p?p:{},Ja,sa;a.ready=new Promise(function(e,b){Ja=e;sa=b});var db=!1,eb=!1;a.onRuntimeInitialized=function(){db=!0;a.callRuntimeCallbacks(a.mainCallbacks);if(eb&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){eb=!0; +if(db&&"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 A(e)},get64:function(e,b){return e}},Cd={h:function(e){return gb(e+D.SIZE)+D.SIZE},g:function(e,b,c){(new V(e)).init(b,c);Bd++;throw e;},a:function(){n()},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 Y=1;break a}catch(Ba){}Y=void 0}if(Y)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],Ba=F[b+(8*t+4)>>2],Ca=0;Ca>2]=f;return 0}};(function(){function e(f,t){a.asm= +f.exports;ra=a.asm.i;g(ra.buffer);ta=a.asm.k;Ia.unshift(a.asm.j);ha--;a.monitorRunDependencies&&a.monitorRunDependencies(ha);0==ha&&(null!==Aa&&(clearInterval(Aa),Aa=null),ma&&(f=ma,ma=null,f()))}function b(f){e(f.instance)}function c(f){return P().then(function(t){return WebAssembly.instantiate(t,d)}).then(f,function(t){ia("failed to asynchronously prepare wasm: "+t);n(t)})}var d={a:Cd};ha++;a.monitorRunDependencies&&a.monitorRunDependencies(ha);if(a.instantiateWasm)try{return a.instantiateWasm(d, +e)}catch(f){return ia("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return ka||"function"!==typeof WebAssembly.instantiateStreaming||u(Q,"data:application/octet-stream;base64,")||u(Q,"file://")||"function"!==typeof fetch?c(b):fetch(Q,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,d).then(b,function(t){ia("wasm streaming compile failed: "+t);ia("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 hb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(hb=a._emscripten_bind_VoidPtr___destroy___0=a.asm.l).apply(null,arguments)},Ma=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ma=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.m).apply(null,arguments)},ib=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(ib=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.n).apply(null, +arguments)},jb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(jb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.o).apply(null,arguments)},Na=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Na=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.p).apply(null,arguments)},kb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(kb=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.q).apply(null, +arguments)},lb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(lb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.r).apply(null,arguments)},Oa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Oa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.s).apply(null,arguments)},mb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(mb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.t).apply(null,arguments)}, +Pa=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Pa=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.u).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_size_0=function(){return(nb=a._emscripten_bind_PointAttribute_size_0=a.asm.v).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(ob=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.w).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_attribute_type_0= +function(){return(pb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.x).apply(null,arguments)},qb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(qb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.y).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(rb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.z).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(sb=a._emscripten_bind_PointAttribute_normalized_0= +a.asm.A).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(tb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.B).apply(null,arguments)},ub=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(ub=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.C).apply(null,arguments)},vb=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(vb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.D).apply(null,arguments)},wb=a._emscripten_bind_PointAttribute___destroy___0= +function(){return(wb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.E).apply(null,arguments)},Qa=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Qa=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.F).apply(null,arguments)},xb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.G).apply(null, +arguments)},yb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(yb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.H).apply(null,arguments)},zb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(zb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.I).apply(null,arguments)},Ab=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(Ab=a._emscripten_bind_AttributeQuantizationTransform_range_0= +a.asm.J).apply(null,arguments)},Bb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(Bb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.K).apply(null,arguments)},Ra=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Ra=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.L).apply(null,arguments)},Cb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1= +function(){return(Cb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.M).apply(null,arguments)},Db=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Db=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.N).apply(null,arguments)},Eb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Eb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.O).apply(null,arguments)},Sa=a._emscripten_bind_PointCloud_PointCloud_0= +function(){return(Sa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.P).apply(null,arguments)},Fb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Fb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.Q).apply(null,arguments)},Gb=a._emscripten_bind_PointCloud_num_points_0=function(){return(Gb=a._emscripten_bind_PointCloud_num_points_0=a.asm.R).apply(null,arguments)},Hb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Hb=a._emscripten_bind_PointCloud___destroy___0=a.asm.S).apply(null, +arguments)},Ta=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ta=a._emscripten_bind_Mesh_Mesh_0=a.asm.T).apply(null,arguments)},Ib=a._emscripten_bind_Mesh_num_faces_0=function(){return(Ib=a._emscripten_bind_Mesh_num_faces_0=a.asm.U).apply(null,arguments)},Jb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Jb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.V).apply(null,arguments)},Kb=a._emscripten_bind_Mesh_num_points_0=function(){return(Kb=a._emscripten_bind_Mesh_num_points_0=a.asm.W).apply(null, +arguments)},Lb=a._emscripten_bind_Mesh___destroy___0=function(){return(Lb=a._emscripten_bind_Mesh___destroy___0=a.asm.X).apply(null,arguments)},Ua=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ua=a._emscripten_bind_Metadata_Metadata_0=a.asm.Y).apply(null,arguments)},Mb=a._emscripten_bind_Metadata___destroy___0=function(){return(Mb=a._emscripten_bind_Metadata___destroy___0=a.asm.Z).apply(null,arguments)},Nb=a._emscripten_bind_Status_code_0=function(){return(Nb=a._emscripten_bind_Status_code_0= +a.asm._).apply(null,arguments)},Ob=a._emscripten_bind_Status_ok_0=function(){return(Ob=a._emscripten_bind_Status_ok_0=a.asm.$).apply(null,arguments)},Pb=a._emscripten_bind_Status_error_msg_0=function(){return(Pb=a._emscripten_bind_Status_error_msg_0=a.asm.aa).apply(null,arguments)},Qb=a._emscripten_bind_Status___destroy___0=function(){return(Qb=a._emscripten_bind_Status___destroy___0=a.asm.ba).apply(null,arguments)},Va=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Va= +a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.ca).apply(null,arguments)},Rb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Rb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.da).apply(null,arguments)},Sb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Sb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ea).apply(null,arguments)},Tb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Tb=a._emscripten_bind_DracoFloat32Array___destroy___0= +a.asm.fa).apply(null,arguments)},Wa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Wa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.ga).apply(null,arguments)},Ub=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Ub=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ha).apply(null,arguments)},Vb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Vb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.ia).apply(null,arguments)},Wb=a._emscripten_bind_DracoInt8Array___destroy___0= +function(){return(Wb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.ja).apply(null,arguments)},Xa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Xa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ka).apply(null,arguments)},Xb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Xb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.la).apply(null,arguments)},Yb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Yb=a._emscripten_bind_DracoUInt8Array_size_0= +a.asm.ma).apply(null,arguments)},Zb=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(Zb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.na).apply(null,arguments)},Ya=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Ya=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.oa).apply(null,arguments)},$b=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return($b=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.pa).apply(null,arguments)},ac= +a._emscripten_bind_DracoInt16Array_size_0=function(){return(ac=a._emscripten_bind_DracoInt16Array_size_0=a.asm.qa).apply(null,arguments)},bc=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(bc=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.ra).apply(null,arguments)},Za=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Za=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.sa).apply(null,arguments)},cc=a._emscripten_bind_DracoUInt16Array_GetValue_1= +function(){return(cc=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.ta).apply(null,arguments)},dc=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(dc=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ua).apply(null,arguments)},ec=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(ec=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.va).apply(null,arguments)},$a=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return($a=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0= +a.asm.wa).apply(null,arguments)},fc=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(fc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.xa).apply(null,arguments)},gc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(gc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.ya).apply(null,arguments)},hc=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(hc=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.za).apply(null,arguments)},ab=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0= +function(){return(ab=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.Aa).apply(null,arguments)},ic=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(ic=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.Ba).apply(null,arguments)},jc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(jc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.Ca).apply(null,arguments)},kc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(kc=a._emscripten_bind_DracoUInt32Array___destroy___0= +a.asm.Da).apply(null,arguments)},bb=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(bb=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ea).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Fa).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(mc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Ga).apply(null,arguments)},nc= +a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(nc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.Ha).apply(null,arguments)},oc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(oc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Ia).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(pc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ja).apply(null,arguments)},qc=a._emscripten_bind_MetadataQuerier_NumEntries_1= +function(){return(qc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ka).apply(null,arguments)},rc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(rc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.La).apply(null,arguments)},sc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(sc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ma).apply(null,arguments)},cb=a._emscripten_bind_Decoder_Decoder_0=function(){return(cb=a._emscripten_bind_Decoder_Decoder_0= +a.asm.Na).apply(null,arguments)},tc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(tc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.Oa).apply(null,arguments)},uc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(uc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Pa).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Qa).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetAttributeIdByName_2= +function(){return(wc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.Ra).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(xc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Sa).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(yc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Ta).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(zc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2= +a.asm.Ua).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(Ac=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Va).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Wa).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(Cc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Xa).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2= +function(){return(Dc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Ya).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Ec=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Za).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Fc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm._a).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Gc= +a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.$a).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.ab).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm.bb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Jc= +a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.cb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.db).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.eb).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= +function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.fb).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Nc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.gb).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Oc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.hb).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5= +function(){return(Pc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.ib).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Qc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.jb).apply(null,arguments)},Rc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Rc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.kb).apply(null,arguments)},Sc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2= +function(){return(Sc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.lb).apply(null,arguments)},Tc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Tc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.mb).apply(null,arguments)},Uc=a._emscripten_bind_Decoder___destroy___0=function(){return(Uc=a._emscripten_bind_Decoder___destroy___0=a.asm.nb).apply(null,arguments)},Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= +a.asm.ob).apply(null,arguments)},Wc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Wc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.pb).apply(null,arguments)},Xc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Xc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.qb).apply(null,arguments)},Yc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM= +function(){return(Yc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.rb).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.sb).apply(null,arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.tb).apply(null,arguments)},ad=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL= +function(){return(ad=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.ub).apply(null,arguments)},bd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(bd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.vb).apply(null,arguments)},cd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(cd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.wb).apply(null,arguments)},dd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= +function(){return(dd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.xb).apply(null,arguments)},ed=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(ed=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.yb).apply(null,arguments)},fd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(fd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.zb).apply(null,arguments)},gd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= +function(){return(gd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Ab).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.Bb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(id=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.Cb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(jd=a._emscripten_enum_draco_DataType_DT_UINT8= +a.asm.Db).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(kd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Eb).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(ld=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Fb).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(md=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Gb).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_UINT32= +function(){return(nd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Hb).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(od=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Ib).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(pd=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Jb).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(qd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Kb).apply(null, +arguments)},rd=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(rd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Lb).apply(null,arguments)},sd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(sd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Mb).apply(null,arguments)},td=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(td=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Nb).apply(null,arguments)},ud=a._emscripten_enum_draco_StatusCode_OK=function(){return(ud= +a._emscripten_enum_draco_StatusCode_OK=a.asm.Ob).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(vd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Pb).apply(null,arguments)},wd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(wd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Qb).apply(null,arguments)},xd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(xd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= +a.asm.Rb).apply(null,arguments)},yd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(yd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Sb).apply(null,arguments)},zd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(zd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Tb).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Ub).apply(null,arguments)};var gb=a._malloc=function(){return(gb=a._malloc=a.asm.Vb).apply(null,arguments)}; +a.callRuntimeCallbacks=aa;var qa;ma=function b(){qa||W();qa||(ma=b)};a.run=W;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 p.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 84cb3e6..f8df535 100644 --- a/javascript/draco_wasm_wrapper_gltf.js +++ b/javascript/draco_wasm_wrapper_gltf.js @@ -1,130 +1,116 @@ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(l){var n=0;return function(){return nm?Math.max(C+m,0):Math.min(m,C);q=0>q?Math.max(C+q,0):Math.min(q,C);h=0>h?Math.max(C+h,0):Math.min(h,C);if(mq;)--h in this?this[--m]=this[h]: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"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(m){var p=0;return function(){return p>>0,$jscomp.propertyToPolyfillSymbol[k]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(k):$jscomp.POLYFILL_PREFIX+l+"$"+k),$jscomp.defineProperty(q,$jscomp.propertyToPolyfillSymbol[k],{configurable:!0,writable:!0,value:p})))}; +$jscomp.polyfill("Promise",function(m){function p(){this.batch_=null}function l(f){return f instanceof k?f:new k(function(n,u){n(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;p.prototype.asyncExecute=function(f){if(null==this.batch_){this.batch_=[];var n=this;this.asyncExecuteFunction(function(){n.executeBatch_()})}this.batch_.push(f)}; +var q=$jscomp.global.setTimeout;p.prototype.asyncExecuteFunction=function(f){q(f,0)};p.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var f=this.batch_;this.batch_=[];for(var n=0;nl?Math.max(B+l,0):Math.min(l,B);q=0>q?Math.max(B+q,0):Math.min(q,B);k=0>k?Math.max(B+k,0):Math.min(k,B);if(lq;)--k in this?this[--l]=this[k]:delete this[--l];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"); $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 l="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(l=l||__filename);return function(n){function m(e){return a.locateFile?a.locateFile(e,V):V+e}function q(e,b){e||p("Assertion failed: "+b)}function h(e,b){if(e){var c=oa;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 C(e,b){0>2]=b};this.get_type=function(){return W[this.ptr+ -D.TYPE_OFFSET>>2]};this.set_destructor=function(b){W[this.ptr+D.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return W[this.ptr+D.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){W[this.ptr+D.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){Z[this.ptr+D.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=Z[this.ptr+D.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){Z[this.ptr+D.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!=Z[this.ptr+D.RETHROWN_OFFSET>> -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(){W[this.ptr+D.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=W[this.ptr+D.REFCOUNT_OFFSET>>2];W[this.ptr+D.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function Q(){return 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=v){var ia=e.charCodeAt(++g);v=65536+((v&1023)<<10)|ia&1023}if(127>=v){if(c>=d)break;b[c++]=v}else{if(2047>=v){if(c+1>=d)break;b[c++]=192|v>>6}else{if(65535>=v){if(c+2>=d)break;b[c++]= -224|v>>12}else{if(c+3>=d)break;b[c++]=240|v>>18;b[c++]=128|v>>12&63}b[c++]=128|v>>6&63}b[c++]=128|v&63}}b[c]=0}e=r.alloc(b,Z);r.copy(b,Z,e);return e}return e}function va(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();z(S)[this.ptr]=this}function P(){this.ptr=Ka();z(P)[this.ptr]=this}function Y(){this.ptr=La();z(Y)[this.ptr]=this}function w(){this.ptr=Ma();z(w)[this.ptr]= -this}function B(){this.ptr=Na();z(B)[this.ptr]=this}function F(){this.ptr=Oa();z(F)[this.ptr]=this}function G(){this.ptr=Pa();z(G)[this.ptr]=this}function E(){this.ptr=Qa();z(E)[this.ptr]=this}function T(){this.ptr=Ra();z(T)[this.ptr]=this}function A(){throw"cannot construct a Status, no constructor in IDL";}function H(){this.ptr=Sa();z(H)[this.ptr]=this}function I(){this.ptr=Ta();z(I)[this.ptr]=this}function J(){this.ptr=Ua();z(J)[this.ptr]=this}function K(){this.ptr=Va();z(K)[this.ptr]=this}function L(){this.ptr= -Wa();z(L)[this.ptr]=this}function M(){this.ptr=Xa();z(M)[this.ptr]=this}function N(){this.ptr=Ya();z(N)[this.ptr]=this}function x(){this.ptr=Za();z(x)[this.ptr]=this}function k(){this.ptr=$a();z(k)[this.ptr]=this}n=n||{};var a="undefined"!==typeof n?n:{},Ga,ta;a.ready=new Promise(function(e,b){Ga=e;ta=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>>=0;var b=oa.length;if(2147483648=c;c*=2){var d=b*(1+.2/c); -d=Math.min(d,e+100663296);d=Math.min(2147483648,C(Math.max(16777216,e,d),65536));a:{try{ma.grow(d-pa.byteLength+65535>>>16);f(ma.buffer);var g=1;break a}catch(v){}g=void 0}if(g)return!0}return!1},memory:ma};(function(){function e(g,v){a.asm=g.exports;ua=a.asm.__indirect_function_table;ha--;a.monitorRunDependencies&&a.monitorRunDependencies(ha);0==ha&&(null!==Aa&&(clearInterval(Aa),Aa=null),na&&(g=na,na=null,g()))}function b(g){e(g.instance)}function c(g){return O().then(function(v){return WebAssembly.instantiate(v, -d)}).then(g,function(v){ja("failed to asynchronously prepare wasm: "+v);p(v)})}var d={env:gb,wasi_snapshot_preview1:gb};ha++;a.monitorRunDependencies&&a.monitorRunDependencies(ha);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(g){return ja("Module.instantiateWasm callback failed with error: "+g),!1}(function(){return ka||"function"!==typeof WebAssembly.instantiateStreaming||t(X,"data:application/octet-stream;base64,")||t(X,"file://")||"function"!==typeof fetch?c(b):fetch(X,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g, -d).then(b,function(v){ja("wasm streaming compile failed: "+v);ja("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ta);return{}})();var eb=a.___wasm_call_ctors=function(){return(eb=a.___wasm_call_ctors=a.asm.__wasm_call_ctors).apply(null,arguments)};a.___em_js__array_bounds_check_error=function(){return(a.___em_js__array_bounds_check_error=a.asm.__em_js__array_bounds_check_error).apply(null,arguments)};var hb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(hb=a._emscripten_bind_VoidPtr___destroy___0= -a.asm.emscripten_bind_VoidPtr___destroy___0).apply(null,arguments)},Ja=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ja=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.emscripten_bind_DecoderBuffer_DecoderBuffer_0).apply(null,arguments)},ib=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(ib=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.emscripten_bind_DecoderBuffer_Init_2).apply(null,arguments)},jb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(jb= -a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.emscripten_bind_DecoderBuffer___destroy___0).apply(null,arguments)},Ka=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ka=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.emscripten_bind_AttributeTransformData_AttributeTransformData_0).apply(null,arguments)},kb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(kb=a._emscripten_bind_AttributeTransformData_transform_type_0= -a.asm.emscripten_bind_AttributeTransformData_transform_type_0).apply(null,arguments)},lb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(lb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.emscripten_bind_AttributeTransformData___destroy___0).apply(null,arguments)},La=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(La=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.emscripten_bind_GeometryAttribute_GeometryAttribute_0).apply(null, -arguments)},mb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(mb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.emscripten_bind_GeometryAttribute___destroy___0).apply(null,arguments)},Ma=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ma=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.emscripten_bind_PointAttribute_PointAttribute_0).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_size_0=function(){return(nb=a._emscripten_bind_PointAttribute_size_0= -a.asm.emscripten_bind_PointAttribute_size_0).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(ob=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.emscripten_bind_PointAttribute_GetAttributeTransformData_0).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(pb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.emscripten_bind_PointAttribute_attribute_type_0).apply(null,arguments)}, -qb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(qb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.emscripten_bind_PointAttribute_data_type_0).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(rb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.emscripten_bind_PointAttribute_num_components_0).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(sb=a._emscripten_bind_PointAttribute_normalized_0= -a.asm.emscripten_bind_PointAttribute_normalized_0).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(tb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.emscripten_bind_PointAttribute_byte_stride_0).apply(null,arguments)},ub=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(ub=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.emscripten_bind_PointAttribute_byte_offset_0).apply(null,arguments)},vb=a._emscripten_bind_PointAttribute_unique_id_0= -function(){return(vb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.emscripten_bind_PointAttribute_unique_id_0).apply(null,arguments)},wb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(wb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.emscripten_bind_PointAttribute___destroy___0).apply(null,arguments)},Na=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Na=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0= -a.asm.emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0).apply(null,arguments)},xb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1).apply(null,arguments)},yb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(yb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0= -a.asm.emscripten_bind_AttributeQuantizationTransform_quantization_bits_0).apply(null,arguments)},zb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(zb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.emscripten_bind_AttributeQuantizationTransform_min_value_1).apply(null,arguments)},Ab=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(Ab=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.emscripten_bind_AttributeQuantizationTransform_range_0).apply(null, -arguments)},Bb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(Bb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.emscripten_bind_AttributeQuantizationTransform___destroy___0).apply(null,arguments)},Oa=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Oa=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0).apply(null, -arguments)},Cb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(Cb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1).apply(null,arguments)},Db=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Db=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.emscripten_bind_AttributeOctahedronTransform_quantization_bits_0).apply(null, -arguments)},Eb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Eb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.emscripten_bind_AttributeOctahedronTransform___destroy___0).apply(null,arguments)},Pa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Pa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.emscripten_bind_PointCloud_PointCloud_0).apply(null,arguments)},Fb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Fb=a._emscripten_bind_PointCloud_num_attributes_0= -a.asm.emscripten_bind_PointCloud_num_attributes_0).apply(null,arguments)},Gb=a._emscripten_bind_PointCloud_num_points_0=function(){return(Gb=a._emscripten_bind_PointCloud_num_points_0=a.asm.emscripten_bind_PointCloud_num_points_0).apply(null,arguments)},Hb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Hb=a._emscripten_bind_PointCloud___destroy___0=a.asm.emscripten_bind_PointCloud___destroy___0).apply(null,arguments)},Qa=a._emscripten_bind_Mesh_Mesh_0=function(){return(Qa=a._emscripten_bind_Mesh_Mesh_0= -a.asm.emscripten_bind_Mesh_Mesh_0).apply(null,arguments)},Ib=a._emscripten_bind_Mesh_num_faces_0=function(){return(Ib=a._emscripten_bind_Mesh_num_faces_0=a.asm.emscripten_bind_Mesh_num_faces_0).apply(null,arguments)},Jb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Jb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.emscripten_bind_Mesh_num_attributes_0).apply(null,arguments)},Kb=a._emscripten_bind_Mesh_num_points_0=function(){return(Kb=a._emscripten_bind_Mesh_num_points_0=a.asm.emscripten_bind_Mesh_num_points_0).apply(null, -arguments)},Lb=a._emscripten_bind_Mesh___destroy___0=function(){return(Lb=a._emscripten_bind_Mesh___destroy___0=a.asm.emscripten_bind_Mesh___destroy___0).apply(null,arguments)},Ra=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ra=a._emscripten_bind_Metadata_Metadata_0=a.asm.emscripten_bind_Metadata_Metadata_0).apply(null,arguments)},Mb=a._emscripten_bind_Metadata___destroy___0=function(){return(Mb=a._emscripten_bind_Metadata___destroy___0=a.asm.emscripten_bind_Metadata___destroy___0).apply(null, -arguments)},Nb=a._emscripten_bind_Status_code_0=function(){return(Nb=a._emscripten_bind_Status_code_0=a.asm.emscripten_bind_Status_code_0).apply(null,arguments)},Ob=a._emscripten_bind_Status_ok_0=function(){return(Ob=a._emscripten_bind_Status_ok_0=a.asm.emscripten_bind_Status_ok_0).apply(null,arguments)},Pb=a._emscripten_bind_Status_error_msg_0=function(){return(Pb=a._emscripten_bind_Status_error_msg_0=a.asm.emscripten_bind_Status_error_msg_0).apply(null,arguments)},Qb=a._emscripten_bind_Status___destroy___0= -function(){return(Qb=a._emscripten_bind_Status___destroy___0=a.asm.emscripten_bind_Status___destroy___0).apply(null,arguments)},Sa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Sa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.emscripten_bind_DracoFloat32Array_DracoFloat32Array_0).apply(null,arguments)},Rb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Rb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.emscripten_bind_DracoFloat32Array_GetValue_1).apply(null, -arguments)},Sb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Sb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.emscripten_bind_DracoFloat32Array_size_0).apply(null,arguments)},Tb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Tb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.emscripten_bind_DracoFloat32Array___destroy___0).apply(null,arguments)},Ta=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ta=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= -a.asm.emscripten_bind_DracoInt8Array_DracoInt8Array_0).apply(null,arguments)},Ub=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Ub=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.emscripten_bind_DracoInt8Array_GetValue_1).apply(null,arguments)},Vb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Vb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.emscripten_bind_DracoInt8Array_size_0).apply(null,arguments)},Wb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Wb= -a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.emscripten_bind_DracoInt8Array___destroy___0).apply(null,arguments)},Ua=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Ua=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.emscripten_bind_DracoUInt8Array_DracoUInt8Array_0).apply(null,arguments)},Xb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Xb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.emscripten_bind_DracoUInt8Array_GetValue_1).apply(null, -arguments)},Yb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Yb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.emscripten_bind_DracoUInt8Array_size_0).apply(null,arguments)},Zb=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(Zb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.emscripten_bind_DracoUInt8Array___destroy___0).apply(null,arguments)},Va=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Va=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0= -a.asm.emscripten_bind_DracoInt16Array_DracoInt16Array_0).apply(null,arguments)},$b=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return($b=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.emscripten_bind_DracoInt16Array_GetValue_1).apply(null,arguments)},ac=a._emscripten_bind_DracoInt16Array_size_0=function(){return(ac=a._emscripten_bind_DracoInt16Array_size_0=a.asm.emscripten_bind_DracoInt16Array_size_0).apply(null,arguments)},bc=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(bc= -a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.emscripten_bind_DracoInt16Array___destroy___0).apply(null,arguments)},Wa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Wa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.emscripten_bind_DracoUInt16Array_DracoUInt16Array_0).apply(null,arguments)},cc=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(cc=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.emscripten_bind_DracoUInt16Array_GetValue_1).apply(null, -arguments)},dc=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(dc=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.emscripten_bind_DracoUInt16Array_size_0).apply(null,arguments)},ec=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(ec=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.emscripten_bind_DracoUInt16Array___destroy___0).apply(null,arguments)},Xa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Xa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0= -a.asm.emscripten_bind_DracoInt32Array_DracoInt32Array_0).apply(null,arguments)},fc=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(fc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.emscripten_bind_DracoInt32Array_GetValue_1).apply(null,arguments)},gc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(gc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.emscripten_bind_DracoInt32Array_size_0).apply(null,arguments)},hc=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(hc= -a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.emscripten_bind_DracoInt32Array___destroy___0).apply(null,arguments)},Ya=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Ya=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.emscripten_bind_DracoUInt32Array_DracoUInt32Array_0).apply(null,arguments)},ic=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(ic=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.emscripten_bind_DracoUInt32Array_GetValue_1).apply(null, -arguments)},jc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(jc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.emscripten_bind_DracoUInt32Array_size_0).apply(null,arguments)},kc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(kc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.emscripten_bind_DracoUInt32Array___destroy___0).apply(null,arguments)},Za=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(Za=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= -a.asm.emscripten_bind_MetadataQuerier_MetadataQuerier_0).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.emscripten_bind_MetadataQuerier_HasEntry_2).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(mc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetIntEntry_2).apply(null,arguments)},nc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= -function(){return(nc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.emscripten_bind_MetadataQuerier_GetIntEntryArray_3).apply(null,arguments)},oc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(oc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetDoubleEntry_2).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(pc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetStringEntry_2).apply(null, -arguments)},qc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(qc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.emscripten_bind_MetadataQuerier_NumEntries_1).apply(null,arguments)},rc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(rc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.emscripten_bind_MetadataQuerier_GetEntryName_2).apply(null,arguments)},sc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(sc=a._emscripten_bind_MetadataQuerier___destroy___0= -a.asm.emscripten_bind_MetadataQuerier___destroy___0).apply(null,arguments)},$a=a._emscripten_bind_Decoder_Decoder_0=function(){return($a=a._emscripten_bind_Decoder_Decoder_0=a.asm.emscripten_bind_Decoder_Decoder_0).apply(null,arguments)},tc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(tc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.emscripten_bind_Decoder_DecodeArrayToPointCloud_3).apply(null,arguments)},uc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(uc= -a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.emscripten_bind_Decoder_DecodeArrayToMesh_3).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.emscripten_bind_Decoder_GetAttributeId_2).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(wc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.emscripten_bind_Decoder_GetAttributeIdByName_2).apply(null,arguments)}, -xc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(xc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(yc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.emscripten_bind_Decoder_GetAttribute_2).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(zc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2= -a.asm.emscripten_bind_Decoder_GetAttributeByUniqueId_2).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(Ac=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.emscripten_bind_Decoder_GetMetadata_1).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.emscripten_bind_Decoder_GetAttributeMetadata_2).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetFaceFromMesh_3= -function(){return(Cc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.emscripten_bind_Decoder_GetFaceFromMesh_3).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(Dc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.emscripten_bind_Decoder_GetTriangleStripsFromMesh_2).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Ec=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.emscripten_bind_Decoder_GetTrianglesUInt16Array_3).apply(null, -arguments)},Fc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Fc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.emscripten_bind_Decoder_GetTrianglesUInt32Array_3).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.emscripten_bind_Decoder_GetAttributeFloat_3).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3= -a.asm.emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeIntForAllPoints_3).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Jc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3).apply(null, -arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= -function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Nc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Oc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3= -a.asm.emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(Pc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Qc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.emscripten_bind_Decoder_SkipAttributeTransform_1).apply(null, -arguments)},Rc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Rc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1).apply(null,arguments)},Sc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(Sc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.emscripten_bind_Decoder_DecodeBufferToPointCloud_2).apply(null,arguments)},Tc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2= -function(){return(Tc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.emscripten_bind_Decoder_DecodeBufferToMesh_2).apply(null,arguments)},Uc=a._emscripten_bind_Decoder___destroy___0=function(){return(Uc=a._emscripten_bind_Decoder___destroy___0=a.asm.emscripten_bind_Decoder___destroy___0).apply(null,arguments)},Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM).apply(null, -arguments)},Wc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Wc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM).apply(null,arguments)},Xc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Xc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM).apply(null, -arguments)},Yc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(Yc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.emscripten_enum_draco_GeometryAttribute_Type_INVALID).apply(null, -arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.emscripten_enum_draco_GeometryAttribute_Type_POSITION).apply(null,arguments)},ad=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ad=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.emscripten_enum_draco_GeometryAttribute_Type_NORMAL).apply(null,arguments)},bd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR= -function(){return(bd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.emscripten_enum_draco_GeometryAttribute_Type_COLOR).apply(null,arguments)},cd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(cd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD).apply(null,arguments)},dd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(dd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= -a.asm.emscripten_enum_draco_GeometryAttribute_Type_GENERIC).apply(null,arguments)},ed=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(ed=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE).apply(null,arguments)},fd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(fd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD).apply(null, -arguments)},gd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(gd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.emscripten_enum_draco_DataType_DT_INVALID).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(id=a._emscripten_enum_draco_DataType_DT_INT8= -a.asm.emscripten_enum_draco_DataType_DT_INT8).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(jd=a._emscripten_enum_draco_DataType_DT_UINT8=a.asm.emscripten_enum_draco_DataType_DT_UINT8).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(kd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.emscripten_enum_draco_DataType_DT_INT16).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(ld=a._emscripten_enum_draco_DataType_DT_UINT16= -a.asm.emscripten_enum_draco_DataType_DT_UINT16).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(md=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.emscripten_enum_draco_DataType_DT_INT32).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return(nd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.emscripten_enum_draco_DataType_DT_UINT32).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(od= -a._emscripten_enum_draco_DataType_DT_INT64=a.asm.emscripten_enum_draco_DataType_DT_INT64).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(pd=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.emscripten_enum_draco_DataType_DT_UINT64).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(qd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.emscripten_enum_draco_DataType_DT_FLOAT32).apply(null,arguments)},rd=a._emscripten_enum_draco_DataType_DT_FLOAT64= -function(){return(rd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.emscripten_enum_draco_DataType_DT_FLOAT64).apply(null,arguments)},sd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(sd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.emscripten_enum_draco_DataType_DT_BOOL).apply(null,arguments)},td=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(td=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.emscripten_enum_draco_DataType_DT_TYPES_COUNT).apply(null, -arguments)},ud=a._emscripten_enum_draco_StatusCode_OK=function(){return(ud=a._emscripten_enum_draco_StatusCode_OK=a.asm.emscripten_enum_draco_StatusCode_OK).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(vd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.emscripten_enum_draco_StatusCode_DRACO_ERROR).apply(null,arguments)},wd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(wd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.emscripten_enum_draco_StatusCode_IO_ERROR).apply(null, -arguments)},xd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(xd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=a.asm.emscripten_enum_draco_StatusCode_INVALID_PARAMETER).apply(null,arguments)},yd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(yd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION).apply(null,arguments)},zd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(zd= -a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.emscripten_enum_draco_StatusCode_UNKNOWN_VERSION).apply(null,arguments)};a.___errno_location=function(){return(a.___errno_location=a.asm.__errno_location).apply(null,arguments)};a.stackSave=function(){return(a.stackSave=a.asm.stackSave).apply(null,arguments)};a.stackRestore=function(){return(a.stackRestore=a.asm.stackRestore).apply(null,arguments)};a.stackAlloc=function(){return(a.stackAlloc=a.asm.stackAlloc).apply(null,arguments)};a._setThrew= -function(){return(a._setThrew=a.asm.setThrew).apply(null,arguments)};a._free=function(){return(a._free=a.asm.free).apply(null,arguments)};var fb=a._malloc=function(){return(fb=a._malloc=a.asm.malloc).apply(null,arguments)},sa;na=function b(){sa||ea();sa||(na=b)};a.run=ea;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;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); +var DracoDecoderModule=function(){var m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(p){function l(e){return a.locateFile?a.locateFile(e,V):V+e}function q(e,b){e||f("Assertion failed: "+b)}function k(e,b){if(e){var c=la;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 B(e){Aa=e;a.HEAP8=Z=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=W=new Int32Array(e);a.HEAPU8=la=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+="";ha(e);Ba=!0;e=new WebAssembly.RuntimeError("abort("+e+"). Build with -s ASSERTIONS=1 for more info.");qa(e);throw e;}function n(e,b){return String.prototype.startsWith?e.startsWith(b):0===e.indexOf(b)}function u(e){try{if(e==R&&ia)return new Uint8Array(ia);if(ma)return ma(e);throw"both async and sync fetching of the wasm failed";}catch(b){f(b)}}function z(){if(!ia&&(na||da)){if("function"===typeof fetch&&!n(R,"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 u(R)});if(Ca)return new Promise(function(e,b){Ca(R,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return u(R)})}function D(e){for(;0>2]=b};this.get_type= +function(){return W[this.ptr+F.TYPE_OFFSET>>2]};this.set_destructor=function(b){W[this.ptr+F.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return W[this.ptr+F.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){W[this.ptr+F.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){Z[this.ptr+F.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=Z[this.ptr+F.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){Z[this.ptr+F.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!= +Z[this.ptr+F.RETHROWN_OFFSET>>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(){W[this.ptr+F.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=W[this.ptr+F.REFCOUNT_OFFSET>>2];W[this.ptr+F.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function Q(e){function b(){if(!oa&&(oa=!0,a.calledRun=!0,!Ba)){Da=!0;D(Ea);D(sa);Fa(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"== +typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ga.unshift(a.postRun.shift());D(Ga)}}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=v){var Y=e.charCodeAt(++g);v=65536+((v&1023)<<10)|Y&1023}if(127>=v){if(c>=d)break;b[c++]=v}else{if(2047>=v){if(c+1>=d)break;b[c++]=192|v>>6}else{if(65535>=v){if(c+2>=d)break;b[c++]=224| +v>>12}else{if(c+3>=d)break;b[c++]=240|v>>18;b[c++]=128|v>>12&63}b[c++]=128|v>>6&63}b[c++]=128|v&63}}b[c]=0}e=r.alloc(b,Z);r.copy(b,Z,e);return e}return e}function ta(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 T(){this.ptr=Ia();x(T)[this.ptr]=this}function S(){this.ptr=Ja();x(S)[this.ptr]=this}function X(){this.ptr=Ka();x(X)[this.ptr]=this}function w(){this.ptr=La();x(w)[this.ptr]=this} +function C(){this.ptr=Ma();x(C)[this.ptr]=this}function H(){this.ptr=Na();x(H)[this.ptr]=this}function I(){this.ptr=Oa();x(I)[this.ptr]=this}function G(){this.ptr=Pa();x(G)[this.ptr]=this}function U(){this.ptr=Qa();x(U)[this.ptr]=this}function A(){throw"cannot construct a Status, no constructor in IDL";}function J(){this.ptr=Ra();x(J)[this.ptr]=this}function K(){this.ptr=Sa();x(K)[this.ptr]=this}function L(){this.ptr=Ta();x(L)[this.ptr]=this}function M(){this.ptr=Ua();x(M)[this.ptr]=this}function N(){this.ptr= +Va();x(N)[this.ptr]=this}function O(){this.ptr=Wa();x(O)[this.ptr]=this}function P(){this.ptr=Xa();x(P)[this.ptr]=this}function y(){this.ptr=Ya();x(y)[this.ptr]=this}function h(){this.ptr=Za();x(h)[this.ptr]=this}p=p||{};var a="undefined"!==typeof p?p:{},Fa,qa;a.ready=new Promise(function(e,b){Fa=e;qa=b});var $a=!1,ab=!1;a.onRuntimeInitialized=function(){$a=!0;a.callRuntimeCallbacks(a.mainCallbacks);if(ab&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){ab=!0; +if($a&&"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,v=g.min;d=Math.max(e,d);0>>16);B(pa.buffer);var Y=1;break a}catch(yd){}Y=void 0}if(Y)return!0}return!1}}; +(function(){function e(g,v){a.asm=g.exports;pa=a.asm.f;B(pa.buffer);ra=a.asm.h;Ea.unshift(a.asm.g);ea--;a.monitorRunDependencies&&a.monitorRunDependencies(ea);0==ea&&(null!==ya&&(clearInterval(ya),ya=null),ka&&(g=ka,ka=null,g()))}function b(g){e(g.instance)}function c(g){return z().then(function(v){return WebAssembly.instantiate(v,d)}).then(g,function(v){ha("failed to asynchronously prepare wasm: "+v);f(v)})}var d={a:xd};ea++;a.monitorRunDependencies&&a.monitorRunDependencies(ea);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||n(R,"data:application/octet-stream;base64,")||n(R,"file://")||"function"!==typeof fetch?c(b):fetch(R,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g,d).then(b,function(v){ha("wasm streaming compile failed: "+v);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 db=a._emscripten_bind_VoidPtr___destroy___0=function(){return(db=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Ia=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ia=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.j).apply(null,arguments)},eb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(eb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.k).apply(null, +arguments)},fb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(fb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.l).apply(null,arguments)},Ja=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ja=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.m).apply(null,arguments)},gb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(gb=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.n).apply(null, +arguments)},hb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(hb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.o).apply(null,arguments)},Ka=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Ka=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.p).apply(null,arguments)},ib=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(ib=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.q).apply(null,arguments)}, +La=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(La=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.r).apply(null,arguments)},jb=a._emscripten_bind_PointAttribute_size_0=function(){return(jb=a._emscripten_bind_PointAttribute_size_0=a.asm.s).apply(null,arguments)},kb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(kb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.t).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_attribute_type_0= +function(){return(lb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.u).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(mb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.v).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(nb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.w).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_normalized_0=function(){return(ob=a._emscripten_bind_PointAttribute_normalized_0= +a.asm.x).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(pb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.y).apply(null,arguments)},qb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(qb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.z).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(rb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.A).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute___destroy___0= +function(){return(sb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.B).apply(null,arguments)},Ma=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Ma=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.C).apply(null,arguments)},tb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(tb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.D).apply(null, +arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.E).apply(null,arguments)},vb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(vb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.F).apply(null,arguments)},wb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(wb=a._emscripten_bind_AttributeQuantizationTransform_range_0= +a.asm.G).apply(null,arguments)},xb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.H).apply(null,arguments)},Na=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Na=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.I).apply(null,arguments)},yb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1= +function(){return(yb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.J).apply(null,arguments)},zb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(zb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.K).apply(null,arguments)},Ab=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Ab=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.L).apply(null,arguments)},Oa=a._emscripten_bind_PointCloud_PointCloud_0= +function(){return(Oa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.M).apply(null,arguments)},Bb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Bb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.N).apply(null,arguments)},Cb=a._emscripten_bind_PointCloud_num_points_0=function(){return(Cb=a._emscripten_bind_PointCloud_num_points_0=a.asm.O).apply(null,arguments)},Db=a._emscripten_bind_PointCloud___destroy___0=function(){return(Db=a._emscripten_bind_PointCloud___destroy___0=a.asm.P).apply(null, +arguments)},Pa=a._emscripten_bind_Mesh_Mesh_0=function(){return(Pa=a._emscripten_bind_Mesh_Mesh_0=a.asm.Q).apply(null,arguments)},Eb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Eb=a._emscripten_bind_Mesh_num_faces_0=a.asm.R).apply(null,arguments)},Fb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Fb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.S).apply(null,arguments)},Gb=a._emscripten_bind_Mesh_num_points_0=function(){return(Gb=a._emscripten_bind_Mesh_num_points_0=a.asm.T).apply(null, +arguments)},Hb=a._emscripten_bind_Mesh___destroy___0=function(){return(Hb=a._emscripten_bind_Mesh___destroy___0=a.asm.U).apply(null,arguments)},Qa=a._emscripten_bind_Metadata_Metadata_0=function(){return(Qa=a._emscripten_bind_Metadata_Metadata_0=a.asm.V).apply(null,arguments)},Ib=a._emscripten_bind_Metadata___destroy___0=function(){return(Ib=a._emscripten_bind_Metadata___destroy___0=a.asm.W).apply(null,arguments)},Jb=a._emscripten_bind_Status_code_0=function(){return(Jb=a._emscripten_bind_Status_code_0= +a.asm.X).apply(null,arguments)},Kb=a._emscripten_bind_Status_ok_0=function(){return(Kb=a._emscripten_bind_Status_ok_0=a.asm.Y).apply(null,arguments)},Lb=a._emscripten_bind_Status_error_msg_0=function(){return(Lb=a._emscripten_bind_Status_error_msg_0=a.asm.Z).apply(null,arguments)},Mb=a._emscripten_bind_Status___destroy___0=function(){return(Mb=a._emscripten_bind_Status___destroy___0=a.asm._).apply(null,arguments)},Ra=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Ra=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0= +a.asm.$).apply(null,arguments)},Nb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Nb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.aa).apply(null,arguments)},Ob=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Ob=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ba).apply(null,arguments)},Pb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Pb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.ca).apply(null,arguments)},Sa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= +function(){return(Sa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.da).apply(null,arguments)},Qb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Qb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ea).apply(null,arguments)},Rb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Rb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.fa).apply(null,arguments)},Sb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Sb=a._emscripten_bind_DracoInt8Array___destroy___0= +a.asm.ga).apply(null,arguments)},Ta=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Ta=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ha).apply(null,arguments)},Tb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Tb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.ia).apply(null,arguments)},Ub=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Ub=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ja).apply(null,arguments)},Vb=a._emscripten_bind_DracoUInt8Array___destroy___0= +function(){return(Vb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.ka).apply(null,arguments)},Ua=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Ua=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.la).apply(null,arguments)},Wb=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(Wb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.ma).apply(null,arguments)},Xb=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Xb=a._emscripten_bind_DracoInt16Array_size_0= +a.asm.na).apply(null,arguments)},Yb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Yb=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.oa).apply(null,arguments)},Va=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Va=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.pa).apply(null,arguments)},Zb=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(Zb=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.qa).apply(null,arguments)}, +$b=a._emscripten_bind_DracoUInt16Array_size_0=function(){return($b=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ra).apply(null,arguments)},ac=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(ac=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.sa).apply(null,arguments)},Wa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Wa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.ta).apply(null,arguments)},bc=a._emscripten_bind_DracoInt32Array_GetValue_1= +function(){return(bc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.ua).apply(null,arguments)},cc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(cc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.va).apply(null,arguments)},dc=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(dc=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.wa).apply(null,arguments)},Xa=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Xa=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0= +a.asm.xa).apply(null,arguments)},ec=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(ec=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.ya).apply(null,arguments)},fc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(fc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.za).apply(null,arguments)},gc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(gc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Aa).apply(null,arguments)},Ya=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= +function(){return(Ya=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ba).apply(null,arguments)},hc=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(hc=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Ca).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Da).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(jc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= +a.asm.Ea).apply(null,arguments)},kc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Fa).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ga).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(mc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ha).apply(null,arguments)}, +nc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(nc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.Ia).apply(null,arguments)},oc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(oc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ja).apply(null,arguments)},Za=a._emscripten_bind_Decoder_Decoder_0=function(){return(Za=a._emscripten_bind_Decoder_Decoder_0=a.asm.Ka).apply(null,arguments)},pc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(pc= +a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.La).apply(null,arguments)},qc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(qc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Ma).apply(null,arguments)},rc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(rc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Na).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeIdByName_2= +a.asm.Oa).apply(null,arguments)},tc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(tc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Pa).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(uc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Qa).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ra).apply(null,arguments)}, +wc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(wc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Sa).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(xc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Ta).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(yc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Ua).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2= +function(){return(zc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Va).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Ac=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Wa).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Bc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.Xa).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Cc= +a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.Ya).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.Za).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm._a).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Fc= +a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.$a).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.ab).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.bb).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= +function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.cb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Jc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.db).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.eb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5= +function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.fb).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Mc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.gb).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Nc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.hb).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2= +function(){return(Oc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.ib).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Pc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.jb).apply(null,arguments)},Qc=a._emscripten_bind_Decoder___destroy___0=function(){return(Qc=a._emscripten_bind_Decoder___destroy___0=a.asm.kb).apply(null,arguments)},Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= +a.asm.lb).apply(null,arguments)},Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.mb).apply(null,arguments)},Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.nb).apply(null,arguments)},Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM= +function(){return(Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.ob).apply(null,arguments)},Vc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Vc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.pb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.qb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL= +function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.rb).apply(null,arguments)},Yc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(Yc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.sb).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.tb).apply(null,arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= +function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.ub).apply(null,arguments)},ad=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(ad=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.vb).apply(null,arguments)},bd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(bd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.wb).apply(null,arguments)},cd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= +function(){return(cd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.xb).apply(null,arguments)},dd=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(dd=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.yb).apply(null,arguments)},ed=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(ed=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.zb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(fd=a._emscripten_enum_draco_DataType_DT_UINT8= +a.asm.Ab).apply(null,arguments)},gd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(gd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Bb).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(hd=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Cb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(id=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Db).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_UINT32= +function(){return(jd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Eb).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(kd=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Fb).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(ld=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Gb).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(md=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Hb).apply(null, +arguments)},nd=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(nd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Ib).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(od=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Jb).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(pd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Kb).apply(null,arguments)},qd=a._emscripten_enum_draco_StatusCode_OK=function(){return(qd= +a._emscripten_enum_draco_StatusCode_OK=a.asm.Lb).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(rd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Mb).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(sd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Nb).apply(null,arguments)},td=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(td=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= +a.asm.Ob).apply(null,arguments)},ud=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(ud=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Pb).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(vd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Qb).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Rb).apply(null,arguments)};var cb=a._malloc=function(){return(cb=a._malloc=a.asm.Sb).apply(null,arguments)}; +a.callRuntimeCallbacks=D;var oa;ka=function b(){oa||Q();oa||(ka=b)};a.run=Q;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;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 p.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 d0e849d..ec38a82 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.1/README.md) +Check out the [README](https://github.com/google/draco/blob/1.4.3/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 9caca27..c24ca54 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 cc317e0..f57f857 100644 --- a/javascript/npm/draco3d/draco_decoder_nodejs.js +++ b/javascript/npm/draco3d/draco_decoder_nodejs.js @@ -1,132 +1,117 @@ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(l){var n=0;return function(){return nm?Math.max(A+m,0):Math.min(m,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(mq;)--h in this?this[--m]=this[h]: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"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(m){var p=0;return function(){return p>>0,$jscomp.propertyToPolyfillSymbol[k]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(k):$jscomp.POLYFILL_PREFIX+l+"$"+k),$jscomp.defineProperty(q,$jscomp.propertyToPolyfillSymbol[k],{configurable:!0,writable:!0,value:p})))}; +$jscomp.polyfill("Promise",function(m){function p(){this.batch_=null}function l(g){return g instanceof k?g:new k(function(n,u){n(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;p.prototype.asyncExecute=function(g){if(null==this.batch_){this.batch_=[];var n=this;this.asyncExecuteFunction(function(){n.executeBatch_()})}this.batch_.push(g)}; +var q=$jscomp.global.setTimeout;p.prototype.asyncExecuteFunction=function(g){q(g,0)};p.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var g=this.batch_;this.batch_=[];for(var n=0;nl?Math.max(A+l,0):Math.min(l,A);q=0>q?Math.max(A+q,0):Math.min(q,A);k=0>k?Math.max(A+k,0):Math.min(k,A);if(lq;)--k in this?this[--l]=this[k]:delete this[--l];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"); $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 l="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(l=l||__filename);return function(n){function m(e){return a.locateFile?a.locateFile(e,V):V+e}function q(e,b){e||u("Assertion failed: "+b)}function h(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 A(e,b){return e?h(la,e,b):""}function g(e,b){0>2]=b}; -this.get_type=function(){return H[this.ptr+D.TYPE_OFFSET>>2]};this.set_destructor=function(b){H[this.ptr+D.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return H[this.ptr+D.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){H[this.ptr+D.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){Z[this.ptr+D.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=Z[this.ptr+D.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){Z[this.ptr+D.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!= -Z[this.ptr+D.RETHROWN_OFFSET>>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(){H[this.ptr+D.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=H[this.ptr+D.REFCOUNT_OFFSET>>2];H[this.ptr+D.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function ba(){return 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 ca=e.charCodeAt(++f);t=65536+((t&1023)<<10)|ca&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 xa(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 T(){this.ptr=Ma();z(T)[this.ptr]=this}function R(){this.ptr=Na();z(R)[this.ptr]=this}function X(){this.ptr=Oa();z(X)[this.ptr]=this}function w(){this.ptr= -Pa();z(w)[this.ptr]=this}function C(){this.ptr=Qa();z(C)[this.ptr]=this}function I(){this.ptr=Ra();z(I)[this.ptr]=this}function J(){this.ptr=Sa();z(J)[this.ptr]=this}function E(){this.ptr=Ta();z(E)[this.ptr]=this}function U(){this.ptr=Ua();z(U)[this.ptr]=this}function B(){throw"cannot construct a Status, no constructor in IDL";}function K(){this.ptr=Va();z(K)[this.ptr]=this}function L(){this.ptr=Wa();z(L)[this.ptr]=this}function M(){this.ptr=Xa();z(M)[this.ptr]=this}function N(){this.ptr=Ya();z(N)[this.ptr]= -this}function O(){this.ptr=Za();z(O)[this.ptr]=this}function P(){this.ptr=$a();z(P)[this.ptr]=this}function Q(){this.ptr=ab();z(Q)[this.ptr]=this}function y(){this.ptr=bb();z(y)[this.ptr]=this}function k(){this.ptr=cb();z(k)[this.ptr]=this}n=n||{};var a="undefined"!==typeof n?n:{},Ja,va;a.ready=new Promise(function(e,b){Ja=e;va=b});var db=!1,eb=!1;a.onRuntimeInitialized=function(){db=!0;if(eb&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){eb=!0;if(db&&"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 A(e)},get64:function(e,b){return e}};Ha.push({func:function(){hb()}});var kb={__cxa_allocate_exception:function(e){return ib(e+D.SIZE)+D.SIZE},__cxa_throw:function(e,b,c){(new Y(e)).init(b,c);"uncaught_exception"in ba?ba.uncaught_exceptions++:ba.uncaught_exceptions= -1;throw e;},abort:function(){u()},array_bounds_check_error:function(e,b){throw"Array index "+e+" out of bounds: [0,"+b+")";},emscripten_memcpy_big:function(e,b,c){la.copyWithin(e,b,b+c)},emscripten_resize_heap:function(e){e>>>=0;var b=la.length;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,e+100663296);d=Math.min(2147483648,g(Math.max(16777216,e,d),65536));a:{try{oa.grow(d-ra.byteLength+65535>>>16);p(oa.buffer);var f=1;break a}catch(t){}f=void 0}if(f)return!0}return!1}, -fd_close:function(e){return 0},fd_seek:function(e,b,c,d,f){},fd_write:function(e,b,c,d){for(var f=0,t=0;t>2],jb=H[b+(8*t+4)>>2],Da=0;Da>2]=f;return 0},memory:oa,setTempRet0:function(e){}};(function(){function e(f,t){a.asm=f.exports;wa=a.asm.__indirect_function_table;ia--;a.monitorRunDependencies&&a.monitorRunDependencies(ia);0==ia&&(null!==Ca&&(clearInterval(Ca),Ca=null),pa&&(f=pa,pa=null,f()))}function b(f){e(f.instance)}function c(f){return ka().then(function(t){return WebAssembly.instantiate(t, -d)}).then(f,function(t){ja("failed to asynchronously prepare wasm: "+t);u(t)})}var d={env:kb,wasi_snapshot_preview1:kb};ia++;a.monitorRunDependencies&&a.monitorRunDependencies(ia);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(f){return ja("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return ma||"function"!==typeof WebAssembly.instantiateStreaming||x(W,"data:application/octet-stream;base64,")||x(W,"file://")||"function"!==typeof fetch?c(b):fetch(W,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f, -d).then(b,function(t){ja("wasm streaming compile failed: "+t);ja("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(va);return{}})();var hb=a.___wasm_call_ctors=function(){return(hb=a.___wasm_call_ctors=a.asm.__wasm_call_ctors).apply(null,arguments)};a.___em_js__array_bounds_check_error=function(){return(a.___em_js__array_bounds_check_error=a.asm.__em_js__array_bounds_check_error).apply(null,arguments)};var lb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(lb=a._emscripten_bind_VoidPtr___destroy___0= -a.asm.emscripten_bind_VoidPtr___destroy___0).apply(null,arguments)},Ma=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ma=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.emscripten_bind_DecoderBuffer_DecoderBuffer_0).apply(null,arguments)},mb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(mb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.emscripten_bind_DecoderBuffer_Init_2).apply(null,arguments)},nb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(nb= -a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.emscripten_bind_DecoderBuffer___destroy___0).apply(null,arguments)},Na=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Na=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.emscripten_bind_AttributeTransformData_AttributeTransformData_0).apply(null,arguments)},ob=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(ob=a._emscripten_bind_AttributeTransformData_transform_type_0= -a.asm.emscripten_bind_AttributeTransformData_transform_type_0).apply(null,arguments)},pb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(pb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.emscripten_bind_AttributeTransformData___destroy___0).apply(null,arguments)},Oa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Oa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.emscripten_bind_GeometryAttribute_GeometryAttribute_0).apply(null, -arguments)},qb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(qb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.emscripten_bind_GeometryAttribute___destroy___0).apply(null,arguments)},Pa=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Pa=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.emscripten_bind_PointAttribute_PointAttribute_0).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_size_0=function(){return(rb=a._emscripten_bind_PointAttribute_size_0= -a.asm.emscripten_bind_PointAttribute_size_0).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(sb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.emscripten_bind_PointAttribute_GetAttributeTransformData_0).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(tb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.emscripten_bind_PointAttribute_attribute_type_0).apply(null,arguments)}, -ub=a._emscripten_bind_PointAttribute_data_type_0=function(){return(ub=a._emscripten_bind_PointAttribute_data_type_0=a.asm.emscripten_bind_PointAttribute_data_type_0).apply(null,arguments)},vb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(vb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.emscripten_bind_PointAttribute_num_components_0).apply(null,arguments)},wb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(wb=a._emscripten_bind_PointAttribute_normalized_0= -a.asm.emscripten_bind_PointAttribute_normalized_0).apply(null,arguments)},xb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(xb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.emscripten_bind_PointAttribute_byte_stride_0).apply(null,arguments)},yb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(yb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.emscripten_bind_PointAttribute_byte_offset_0).apply(null,arguments)},zb=a._emscripten_bind_PointAttribute_unique_id_0= -function(){return(zb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.emscripten_bind_PointAttribute_unique_id_0).apply(null,arguments)},Ab=a._emscripten_bind_PointAttribute___destroy___0=function(){return(Ab=a._emscripten_bind_PointAttribute___destroy___0=a.asm.emscripten_bind_PointAttribute___destroy___0).apply(null,arguments)},Qa=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Qa=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0= -a.asm.emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0).apply(null,arguments)},Bb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(Bb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1).apply(null,arguments)},Cb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(Cb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0= -a.asm.emscripten_bind_AttributeQuantizationTransform_quantization_bits_0).apply(null,arguments)},Db=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(Db=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.emscripten_bind_AttributeQuantizationTransform_min_value_1).apply(null,arguments)},Eb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(Eb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.emscripten_bind_AttributeQuantizationTransform_range_0).apply(null, -arguments)},Fb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(Fb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.emscripten_bind_AttributeQuantizationTransform___destroy___0).apply(null,arguments)},Ra=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Ra=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0).apply(null, -arguments)},Gb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(Gb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1).apply(null,arguments)},Hb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Hb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.emscripten_bind_AttributeOctahedronTransform_quantization_bits_0).apply(null, -arguments)},Ib=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Ib=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.emscripten_bind_AttributeOctahedronTransform___destroy___0).apply(null,arguments)},Sa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Sa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.emscripten_bind_PointCloud_PointCloud_0).apply(null,arguments)},Jb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Jb=a._emscripten_bind_PointCloud_num_attributes_0= -a.asm.emscripten_bind_PointCloud_num_attributes_0).apply(null,arguments)},Kb=a._emscripten_bind_PointCloud_num_points_0=function(){return(Kb=a._emscripten_bind_PointCloud_num_points_0=a.asm.emscripten_bind_PointCloud_num_points_0).apply(null,arguments)},Lb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Lb=a._emscripten_bind_PointCloud___destroy___0=a.asm.emscripten_bind_PointCloud___destroy___0).apply(null,arguments)},Ta=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ta=a._emscripten_bind_Mesh_Mesh_0= -a.asm.emscripten_bind_Mesh_Mesh_0).apply(null,arguments)},Mb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Mb=a._emscripten_bind_Mesh_num_faces_0=a.asm.emscripten_bind_Mesh_num_faces_0).apply(null,arguments)},Nb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Nb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.emscripten_bind_Mesh_num_attributes_0).apply(null,arguments)},Ob=a._emscripten_bind_Mesh_num_points_0=function(){return(Ob=a._emscripten_bind_Mesh_num_points_0=a.asm.emscripten_bind_Mesh_num_points_0).apply(null, -arguments)},Pb=a._emscripten_bind_Mesh___destroy___0=function(){return(Pb=a._emscripten_bind_Mesh___destroy___0=a.asm.emscripten_bind_Mesh___destroy___0).apply(null,arguments)},Ua=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ua=a._emscripten_bind_Metadata_Metadata_0=a.asm.emscripten_bind_Metadata_Metadata_0).apply(null,arguments)},Qb=a._emscripten_bind_Metadata___destroy___0=function(){return(Qb=a._emscripten_bind_Metadata___destroy___0=a.asm.emscripten_bind_Metadata___destroy___0).apply(null, -arguments)},Rb=a._emscripten_bind_Status_code_0=function(){return(Rb=a._emscripten_bind_Status_code_0=a.asm.emscripten_bind_Status_code_0).apply(null,arguments)},Sb=a._emscripten_bind_Status_ok_0=function(){return(Sb=a._emscripten_bind_Status_ok_0=a.asm.emscripten_bind_Status_ok_0).apply(null,arguments)},Tb=a._emscripten_bind_Status_error_msg_0=function(){return(Tb=a._emscripten_bind_Status_error_msg_0=a.asm.emscripten_bind_Status_error_msg_0).apply(null,arguments)},Ub=a._emscripten_bind_Status___destroy___0= -function(){return(Ub=a._emscripten_bind_Status___destroy___0=a.asm.emscripten_bind_Status___destroy___0).apply(null,arguments)},Va=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Va=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.emscripten_bind_DracoFloat32Array_DracoFloat32Array_0).apply(null,arguments)},Vb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Vb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.emscripten_bind_DracoFloat32Array_GetValue_1).apply(null, -arguments)},Wb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Wb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.emscripten_bind_DracoFloat32Array_size_0).apply(null,arguments)},Xb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Xb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.emscripten_bind_DracoFloat32Array___destroy___0).apply(null,arguments)},Wa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Wa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= -a.asm.emscripten_bind_DracoInt8Array_DracoInt8Array_0).apply(null,arguments)},Yb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Yb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.emscripten_bind_DracoInt8Array_GetValue_1).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Zb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.emscripten_bind_DracoInt8Array_size_0).apply(null,arguments)},$b=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return($b= -a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.emscripten_bind_DracoInt8Array___destroy___0).apply(null,arguments)},Xa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Xa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.emscripten_bind_DracoUInt8Array_DracoUInt8Array_0).apply(null,arguments)},ac=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(ac=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.emscripten_bind_DracoUInt8Array_GetValue_1).apply(null, -arguments)},bc=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(bc=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.emscripten_bind_DracoUInt8Array_size_0).apply(null,arguments)},cc=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(cc=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.emscripten_bind_DracoUInt8Array___destroy___0).apply(null,arguments)},Ya=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Ya=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0= -a.asm.emscripten_bind_DracoInt16Array_DracoInt16Array_0).apply(null,arguments)},dc=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(dc=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.emscripten_bind_DracoInt16Array_GetValue_1).apply(null,arguments)},ec=a._emscripten_bind_DracoInt16Array_size_0=function(){return(ec=a._emscripten_bind_DracoInt16Array_size_0=a.asm.emscripten_bind_DracoInt16Array_size_0).apply(null,arguments)},fc=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(fc= -a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.emscripten_bind_DracoInt16Array___destroy___0).apply(null,arguments)},Za=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Za=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.emscripten_bind_DracoUInt16Array_DracoUInt16Array_0).apply(null,arguments)},gc=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(gc=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.emscripten_bind_DracoUInt16Array_GetValue_1).apply(null, -arguments)},hc=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(hc=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.emscripten_bind_DracoUInt16Array_size_0).apply(null,arguments)},ic=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(ic=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.emscripten_bind_DracoUInt16Array___destroy___0).apply(null,arguments)},$a=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return($a=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0= -a.asm.emscripten_bind_DracoInt32Array_DracoInt32Array_0).apply(null,arguments)},jc=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(jc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.emscripten_bind_DracoInt32Array_GetValue_1).apply(null,arguments)},kc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(kc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.emscripten_bind_DracoInt32Array_size_0).apply(null,arguments)},lc=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(lc= -a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.emscripten_bind_DracoInt32Array___destroy___0).apply(null,arguments)},ab=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(ab=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.emscripten_bind_DracoUInt32Array_DracoUInt32Array_0).apply(null,arguments)},mc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(mc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.emscripten_bind_DracoUInt32Array_GetValue_1).apply(null, -arguments)},nc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(nc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.emscripten_bind_DracoUInt32Array_size_0).apply(null,arguments)},oc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(oc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.emscripten_bind_DracoUInt32Array___destroy___0).apply(null,arguments)},bb=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(bb=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= -a.asm.emscripten_bind_MetadataQuerier_MetadataQuerier_0).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(pc=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.emscripten_bind_MetadataQuerier_HasEntry_2).apply(null,arguments)},qc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(qc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetIntEntry_2).apply(null,arguments)},rc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= -function(){return(rc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.emscripten_bind_MetadataQuerier_GetIntEntryArray_3).apply(null,arguments)},sc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(sc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetDoubleEntry_2).apply(null,arguments)},tc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(tc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetStringEntry_2).apply(null, -arguments)},uc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(uc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.emscripten_bind_MetadataQuerier_NumEntries_1).apply(null,arguments)},vc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(vc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.emscripten_bind_MetadataQuerier_GetEntryName_2).apply(null,arguments)},wc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(wc=a._emscripten_bind_MetadataQuerier___destroy___0= -a.asm.emscripten_bind_MetadataQuerier___destroy___0).apply(null,arguments)},cb=a._emscripten_bind_Decoder_Decoder_0=function(){return(cb=a._emscripten_bind_Decoder_Decoder_0=a.asm.emscripten_bind_Decoder_Decoder_0).apply(null,arguments)},xc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(xc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.emscripten_bind_Decoder_DecodeArrayToPointCloud_3).apply(null,arguments)},yc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(yc= -a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.emscripten_bind_Decoder_DecodeArrayToMesh_3).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(zc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.emscripten_bind_Decoder_GetAttributeId_2).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(Ac=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.emscripten_bind_Decoder_GetAttributeIdByName_2).apply(null,arguments)}, -Bc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(Cc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.emscripten_bind_Decoder_GetAttribute_2).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2= -a.asm.emscripten_bind_Decoder_GetAttributeByUniqueId_2).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(Ec=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.emscripten_bind_Decoder_GetMetadata_1).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.emscripten_bind_Decoder_GetAttributeMetadata_2).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetFaceFromMesh_3= -function(){return(Gc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.emscripten_bind_Decoder_GetFaceFromMesh_3).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(Hc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.emscripten_bind_Decoder_GetTriangleStripsFromMesh_2).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Ic=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.emscripten_bind_Decoder_GetTrianglesUInt16Array_3).apply(null, -arguments)},Jc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Jc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.emscripten_bind_Decoder_GetTrianglesUInt32Array_3).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.emscripten_bind_Decoder_GetAttributeFloat_3).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3= -a.asm.emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeIntForAllPoints_3).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Nc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3).apply(null, -arguments)},Oc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Oc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Pc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= -function(){return(Qc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3).apply(null,arguments)},Rc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Rc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3).apply(null,arguments)},Sc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Sc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3= -a.asm.emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3).apply(null,arguments)},Tc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(Tc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5).apply(null,arguments)},Uc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Uc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.emscripten_bind_Decoder_SkipAttributeTransform_1).apply(null, -arguments)},Vc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Vc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1).apply(null,arguments)},Wc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(Wc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.emscripten_bind_Decoder_DecodeBufferToPointCloud_2).apply(null,arguments)},Xc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2= -function(){return(Xc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.emscripten_bind_Decoder_DecodeBufferToMesh_2).apply(null,arguments)},Yc=a._emscripten_bind_Decoder___destroy___0=function(){return(Yc=a._emscripten_bind_Decoder___destroy___0=a.asm.emscripten_bind_Decoder___destroy___0).apply(null,arguments)},Zc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Zc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM).apply(null, -arguments)},$c=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return($c=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM).apply(null,arguments)},ad=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(ad=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM).apply(null, -arguments)},bd=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(bd=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM).apply(null,arguments)},cd=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(cd=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.emscripten_enum_draco_GeometryAttribute_Type_INVALID).apply(null, -arguments)},dd=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(dd=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.emscripten_enum_draco_GeometryAttribute_Type_POSITION).apply(null,arguments)},ed=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ed=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.emscripten_enum_draco_GeometryAttribute_Type_NORMAL).apply(null,arguments)},fd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR= -function(){return(fd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.emscripten_enum_draco_GeometryAttribute_Type_COLOR).apply(null,arguments)},gd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(gd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD).apply(null,arguments)},hd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(hd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= -a.asm.emscripten_enum_draco_GeometryAttribute_Type_GENERIC).apply(null,arguments)},id=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(id=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE).apply(null,arguments)},jd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(jd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD).apply(null, -arguments)},kd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(kd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(ld=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.emscripten_enum_draco_DataType_DT_INVALID).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(md=a._emscripten_enum_draco_DataType_DT_INT8= -a.asm.emscripten_enum_draco_DataType_DT_INT8).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(nd=a._emscripten_enum_draco_DataType_DT_UINT8=a.asm.emscripten_enum_draco_DataType_DT_UINT8).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(od=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.emscripten_enum_draco_DataType_DT_INT16).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(pd=a._emscripten_enum_draco_DataType_DT_UINT16= -a.asm.emscripten_enum_draco_DataType_DT_UINT16).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(qd=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.emscripten_enum_draco_DataType_DT_INT32).apply(null,arguments)},rd=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return(rd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.emscripten_enum_draco_DataType_DT_UINT32).apply(null,arguments)},sd=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(sd= -a._emscripten_enum_draco_DataType_DT_INT64=a.asm.emscripten_enum_draco_DataType_DT_INT64).apply(null,arguments)},td=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(td=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.emscripten_enum_draco_DataType_DT_UINT64).apply(null,arguments)},ud=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(ud=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.emscripten_enum_draco_DataType_DT_FLOAT32).apply(null,arguments)},vd=a._emscripten_enum_draco_DataType_DT_FLOAT64= -function(){return(vd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.emscripten_enum_draco_DataType_DT_FLOAT64).apply(null,arguments)},wd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(wd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.emscripten_enum_draco_DataType_DT_BOOL).apply(null,arguments)},xd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(xd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.emscripten_enum_draco_DataType_DT_TYPES_COUNT).apply(null, -arguments)},yd=a._emscripten_enum_draco_StatusCode_OK=function(){return(yd=a._emscripten_enum_draco_StatusCode_OK=a.asm.emscripten_enum_draco_StatusCode_OK).apply(null,arguments)},zd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(zd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.emscripten_enum_draco_StatusCode_DRACO_ERROR).apply(null,arguments)},Ad=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(Ad=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.emscripten_enum_draco_StatusCode_IO_ERROR).apply(null, -arguments)},Bd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(Bd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=a.asm.emscripten_enum_draco_StatusCode_INVALID_PARAMETER).apply(null,arguments)},Cd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(Cd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION).apply(null,arguments)},Dd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(Dd= -a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.emscripten_enum_draco_StatusCode_UNKNOWN_VERSION).apply(null,arguments)};a.___errno_location=function(){return(a.___errno_location=a.asm.__errno_location).apply(null,arguments)};a.stackSave=function(){return(a.stackSave=a.asm.stackSave).apply(null,arguments)};a.stackRestore=function(){return(a.stackRestore=a.asm.stackRestore).apply(null,arguments)};a.stackAlloc=function(){return(a.stackAlloc=a.asm.stackAlloc).apply(null,arguments)};a._setThrew= -function(){return(a._setThrew=a.asm.setThrew).apply(null,arguments)};a._free=function(){return(a._free=a.asm.free).apply(null,arguments)};var ib=a._malloc=function(){return(ib=a._malloc=a.asm.malloc).apply(null,arguments)};a.dynCall_jiji=function(){return(a.dynCall_jiji=a.asm.dynCall_jiji).apply(null,arguments)};var ua;pa=function b(){ua||fa();ua||(pa=b)};a.run=fa;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 m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(p){function l(e){return a.locateFile?a.locateFile(e,X):X+e}function q(e,b){e||n("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 A(e,b){return e?k(ja,e,b):""}function g(e){Ea=e;a.HEAP8=ba=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 n(e){if(a.onAbort)a.onAbort(e);e+="";ia(e);Fa=!0;e=new WebAssembly.RuntimeError("abort("+e+"). Build with -s ASSERTIONS=1 for more info.");sa(e);throw e;}function u(e,b){return String.prototype.startsWith?e.startsWith(b):0===e.indexOf(b)}function z(e){try{if(e==Q&&ka)return new Uint8Array(ka);if(oa)return oa(e);throw"both async and sync fetching of the wasm failed";}catch(b){n(b)}}function P(){if(!ka&&(pa||fa)){if("function"===typeof fetch&&!u(Q,"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 z(Q)});if(Ga)return new Promise(function(e,b){Ga(Q,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return z(Q)})}function aa(e){for(;0>2]=b};this.get_type= +function(){return F[this.ptr+D.TYPE_OFFSET>>2]};this.set_destructor=function(b){F[this.ptr+D.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return F[this.ptr+D.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){F[this.ptr+D.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){ba[this.ptr+D.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=ba[this.ptr+D.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){ba[this.ptr+D.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!= +ba[this.ptr+D.RETHROWN_OFFSET>>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+D.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=F[this.ptr+D.REFCOUNT_OFFSET>>2];F[this.ptr+D.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function W(e){function b(){if(!qa&&(qa=!0,a.calledRun=!0,!Fa)){Ha=!0;aa(Ia);aa(ua);Ja(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"== +typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ka.unshift(a.postRun.shift());aa(Ka)}}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 Y=e.charCodeAt(++f);t=65536+((t&1023)<<10)|Y&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,ba);r.copy(b,ba,e);return e}return e}function va(e){if("object"===typeof e){var b=r.alloc(e,ba);r.copy(e,ba,b);return b}return e}function ca(){throw"cannot construct a VoidPtr, no constructor in IDL";}function T(){this.ptr=Ma();x(T)[this.ptr]=this}function R(){this.ptr=Na();x(R)[this.ptr]=this}function Z(){this.ptr=Oa();x(Z)[this.ptr]=this}function w(){this.ptr=Pa();x(w)[this.ptr]= +this}function C(){this.ptr=Qa();x(C)[this.ptr]=this}function G(){this.ptr=Ra();x(G)[this.ptr]=this}function H(){this.ptr=Sa();x(H)[this.ptr]=this}function E(){this.ptr=Ta();x(E)[this.ptr]=this}function U(){this.ptr=Ua();x(U)[this.ptr]=this}function B(){throw"cannot construct a Status, no constructor in IDL";}function I(){this.ptr=Va();x(I)[this.ptr]=this}function J(){this.ptr=Wa();x(J)[this.ptr]=this}function K(){this.ptr=Xa();x(K)[this.ptr]=this}function L(){this.ptr=Ya();x(L)[this.ptr]=this}function M(){this.ptr= +Za();x(M)[this.ptr]=this}function N(){this.ptr=$a();x(N)[this.ptr]=this}function O(){this.ptr=ab();x(O)[this.ptr]=this}function y(){this.ptr=bb();x(y)[this.ptr]=this}function h(){this.ptr=cb();x(h)[this.ptr]=this}p=p||{};var a="undefined"!==typeof p?p:{},Ja,sa;a.ready=new Promise(function(e,b){Ja=e;sa=b});var db=!1,eb=!1;a.onRuntimeInitialized=function(){db=!0;a.callRuntimeCallbacks(a.mainCallbacks);if(eb&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){eb=!0; +if(db&&"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 A(e)},get64:function(e,b){return e}},Cd={h:function(e){return gb(e+D.SIZE)+D.SIZE},g:function(e,b,c){(new V(e)).init(b,c);Bd++;throw e;},a:function(){n()},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 Y=1;break a}catch(Ba){}Y=void 0}if(Y)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],Ba=F[b+(8*t+4)>>2],Ca=0;Ca>2]=f;return 0}};(function(){function e(f,t){a.asm= +f.exports;ra=a.asm.i;g(ra.buffer);ta=a.asm.k;Ia.unshift(a.asm.j);ha--;a.monitorRunDependencies&&a.monitorRunDependencies(ha);0==ha&&(null!==Aa&&(clearInterval(Aa),Aa=null),ma&&(f=ma,ma=null,f()))}function b(f){e(f.instance)}function c(f){return P().then(function(t){return WebAssembly.instantiate(t,d)}).then(f,function(t){ia("failed to asynchronously prepare wasm: "+t);n(t)})}var d={a:Cd};ha++;a.monitorRunDependencies&&a.monitorRunDependencies(ha);if(a.instantiateWasm)try{return a.instantiateWasm(d, +e)}catch(f){return ia("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return ka||"function"!==typeof WebAssembly.instantiateStreaming||u(Q,"data:application/octet-stream;base64,")||u(Q,"file://")||"function"!==typeof fetch?c(b):fetch(Q,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,d).then(b,function(t){ia("wasm streaming compile failed: "+t);ia("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 hb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(hb=a._emscripten_bind_VoidPtr___destroy___0=a.asm.l).apply(null,arguments)},Ma=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ma=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.m).apply(null,arguments)},ib=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(ib=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.n).apply(null, +arguments)},jb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(jb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.o).apply(null,arguments)},Na=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Na=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.p).apply(null,arguments)},kb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(kb=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.q).apply(null, +arguments)},lb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(lb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.r).apply(null,arguments)},Oa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Oa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.s).apply(null,arguments)},mb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(mb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.t).apply(null,arguments)}, +Pa=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Pa=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.u).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_size_0=function(){return(nb=a._emscripten_bind_PointAttribute_size_0=a.asm.v).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(ob=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.w).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_attribute_type_0= +function(){return(pb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.x).apply(null,arguments)},qb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(qb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.y).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(rb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.z).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(sb=a._emscripten_bind_PointAttribute_normalized_0= +a.asm.A).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(tb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.B).apply(null,arguments)},ub=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(ub=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.C).apply(null,arguments)},vb=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(vb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.D).apply(null,arguments)},wb=a._emscripten_bind_PointAttribute___destroy___0= +function(){return(wb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.E).apply(null,arguments)},Qa=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Qa=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.F).apply(null,arguments)},xb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.G).apply(null, +arguments)},yb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(yb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.H).apply(null,arguments)},zb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(zb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.I).apply(null,arguments)},Ab=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(Ab=a._emscripten_bind_AttributeQuantizationTransform_range_0= +a.asm.J).apply(null,arguments)},Bb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(Bb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.K).apply(null,arguments)},Ra=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Ra=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.L).apply(null,arguments)},Cb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1= +function(){return(Cb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.M).apply(null,arguments)},Db=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Db=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.N).apply(null,arguments)},Eb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Eb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.O).apply(null,arguments)},Sa=a._emscripten_bind_PointCloud_PointCloud_0= +function(){return(Sa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.P).apply(null,arguments)},Fb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Fb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.Q).apply(null,arguments)},Gb=a._emscripten_bind_PointCloud_num_points_0=function(){return(Gb=a._emscripten_bind_PointCloud_num_points_0=a.asm.R).apply(null,arguments)},Hb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Hb=a._emscripten_bind_PointCloud___destroy___0=a.asm.S).apply(null, +arguments)},Ta=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ta=a._emscripten_bind_Mesh_Mesh_0=a.asm.T).apply(null,arguments)},Ib=a._emscripten_bind_Mesh_num_faces_0=function(){return(Ib=a._emscripten_bind_Mesh_num_faces_0=a.asm.U).apply(null,arguments)},Jb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Jb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.V).apply(null,arguments)},Kb=a._emscripten_bind_Mesh_num_points_0=function(){return(Kb=a._emscripten_bind_Mesh_num_points_0=a.asm.W).apply(null, +arguments)},Lb=a._emscripten_bind_Mesh___destroy___0=function(){return(Lb=a._emscripten_bind_Mesh___destroy___0=a.asm.X).apply(null,arguments)},Ua=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ua=a._emscripten_bind_Metadata_Metadata_0=a.asm.Y).apply(null,arguments)},Mb=a._emscripten_bind_Metadata___destroy___0=function(){return(Mb=a._emscripten_bind_Metadata___destroy___0=a.asm.Z).apply(null,arguments)},Nb=a._emscripten_bind_Status_code_0=function(){return(Nb=a._emscripten_bind_Status_code_0= +a.asm._).apply(null,arguments)},Ob=a._emscripten_bind_Status_ok_0=function(){return(Ob=a._emscripten_bind_Status_ok_0=a.asm.$).apply(null,arguments)},Pb=a._emscripten_bind_Status_error_msg_0=function(){return(Pb=a._emscripten_bind_Status_error_msg_0=a.asm.aa).apply(null,arguments)},Qb=a._emscripten_bind_Status___destroy___0=function(){return(Qb=a._emscripten_bind_Status___destroy___0=a.asm.ba).apply(null,arguments)},Va=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Va= +a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.ca).apply(null,arguments)},Rb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Rb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.da).apply(null,arguments)},Sb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Sb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ea).apply(null,arguments)},Tb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Tb=a._emscripten_bind_DracoFloat32Array___destroy___0= +a.asm.fa).apply(null,arguments)},Wa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Wa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.ga).apply(null,arguments)},Ub=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Ub=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ha).apply(null,arguments)},Vb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Vb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.ia).apply(null,arguments)},Wb=a._emscripten_bind_DracoInt8Array___destroy___0= +function(){return(Wb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.ja).apply(null,arguments)},Xa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Xa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ka).apply(null,arguments)},Xb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Xb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.la).apply(null,arguments)},Yb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Yb=a._emscripten_bind_DracoUInt8Array_size_0= +a.asm.ma).apply(null,arguments)},Zb=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(Zb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.na).apply(null,arguments)},Ya=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Ya=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.oa).apply(null,arguments)},$b=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return($b=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.pa).apply(null,arguments)},ac= +a._emscripten_bind_DracoInt16Array_size_0=function(){return(ac=a._emscripten_bind_DracoInt16Array_size_0=a.asm.qa).apply(null,arguments)},bc=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(bc=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.ra).apply(null,arguments)},Za=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Za=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.sa).apply(null,arguments)},cc=a._emscripten_bind_DracoUInt16Array_GetValue_1= +function(){return(cc=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.ta).apply(null,arguments)},dc=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(dc=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ua).apply(null,arguments)},ec=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(ec=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.va).apply(null,arguments)},$a=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return($a=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0= +a.asm.wa).apply(null,arguments)},fc=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(fc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.xa).apply(null,arguments)},gc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(gc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.ya).apply(null,arguments)},hc=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(hc=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.za).apply(null,arguments)},ab=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0= +function(){return(ab=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.Aa).apply(null,arguments)},ic=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(ic=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.Ba).apply(null,arguments)},jc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(jc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.Ca).apply(null,arguments)},kc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(kc=a._emscripten_bind_DracoUInt32Array___destroy___0= +a.asm.Da).apply(null,arguments)},bb=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(bb=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ea).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Fa).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(mc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Ga).apply(null,arguments)},nc= +a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(nc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.Ha).apply(null,arguments)},oc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(oc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Ia).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(pc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ja).apply(null,arguments)},qc=a._emscripten_bind_MetadataQuerier_NumEntries_1= +function(){return(qc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ka).apply(null,arguments)},rc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(rc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.La).apply(null,arguments)},sc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(sc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ma).apply(null,arguments)},cb=a._emscripten_bind_Decoder_Decoder_0=function(){return(cb=a._emscripten_bind_Decoder_Decoder_0= +a.asm.Na).apply(null,arguments)},tc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(tc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.Oa).apply(null,arguments)},uc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(uc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Pa).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Qa).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetAttributeIdByName_2= +function(){return(wc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.Ra).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(xc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Sa).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(yc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Ta).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(zc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2= +a.asm.Ua).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(Ac=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Va).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Wa).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(Cc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Xa).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2= +function(){return(Dc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Ya).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Ec=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Za).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Fc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm._a).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Gc= +a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.$a).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.ab).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm.bb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Jc= +a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.cb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.db).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.eb).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= +function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.fb).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Nc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.gb).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Oc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.hb).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5= +function(){return(Pc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.ib).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Qc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.jb).apply(null,arguments)},Rc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Rc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.kb).apply(null,arguments)},Sc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2= +function(){return(Sc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.lb).apply(null,arguments)},Tc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Tc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.mb).apply(null,arguments)},Uc=a._emscripten_bind_Decoder___destroy___0=function(){return(Uc=a._emscripten_bind_Decoder___destroy___0=a.asm.nb).apply(null,arguments)},Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= +a.asm.ob).apply(null,arguments)},Wc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Wc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.pb).apply(null,arguments)},Xc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Xc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.qb).apply(null,arguments)},Yc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM= +function(){return(Yc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.rb).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.sb).apply(null,arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.tb).apply(null,arguments)},ad=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL= +function(){return(ad=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.ub).apply(null,arguments)},bd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(bd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.vb).apply(null,arguments)},cd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(cd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.wb).apply(null,arguments)},dd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= +function(){return(dd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.xb).apply(null,arguments)},ed=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(ed=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.yb).apply(null,arguments)},fd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(fd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.zb).apply(null,arguments)},gd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= +function(){return(gd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Ab).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.Bb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(id=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.Cb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(jd=a._emscripten_enum_draco_DataType_DT_UINT8= +a.asm.Db).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(kd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Eb).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(ld=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Fb).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(md=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Gb).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_UINT32= +function(){return(nd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Hb).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(od=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Ib).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(pd=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Jb).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(qd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Kb).apply(null, +arguments)},rd=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(rd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Lb).apply(null,arguments)},sd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(sd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Mb).apply(null,arguments)},td=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(td=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Nb).apply(null,arguments)},ud=a._emscripten_enum_draco_StatusCode_OK=function(){return(ud= +a._emscripten_enum_draco_StatusCode_OK=a.asm.Ob).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(vd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Pb).apply(null,arguments)},wd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(wd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Qb).apply(null,arguments)},xd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(xd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= +a.asm.Rb).apply(null,arguments)},yd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(yd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Sb).apply(null,arguments)},zd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(zd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Tb).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Ub).apply(null,arguments)};var gb=a._malloc=function(){return(gb=a._malloc=a.asm.Vb).apply(null,arguments)}; +a.callRuntimeCallbacks=aa;var qa;ma=function b(){qa||W();qa||(ma=b)};a.run=W;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 p.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 51398a3..caef53b 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 436dcc9..f7d2097 100644 --- a/javascript/npm/draco3d/draco_encoder_nodejs.js +++ b/javascript/npm/draco3d/draco_encoder_nodejs.js @@ -1,107 +1,97 @@ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(l){var p=0;return function(){return pn?Math.max(C+n,0):Math.min(n,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(nr;)--k in this?this[--n]=this[k]:delete this[--n];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"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(n){var q=0;return function(){return q>>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:q})))}; +$jscomp.polyfill("Promise",function(n){function q(){this.batch_=null}function m(h){return h instanceof k?h:new k(function(p,v){p(h)})}if(n&&(!($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 n;q.prototype.asyncExecute=function(h){if(null==this.batch_){this.batch_=[];var p=this;this.asyncExecuteFunction(function(){p.executeBatch_()})}this.batch_.push(h)}; +var r=$jscomp.global.setTimeout;q.prototype.asyncExecuteFunction=function(h){r(h,0)};q.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var h=this.batch_;this.batch_=[];for(var p=0;pm?Math.max(D+m,0):Math.min(m,D);r=0>r?Math.max(D+r,0):Math.min(r,D);k=0>k?Math.max(D+k,0):Math.min(k,D);if(mr;)--k in this?this[--m]=this[k]:delete this[--m];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 DracoEncoderModule=function(){var l="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(l=l||__filename);return function(p){function n(f){return a.locateFile?a.locateFile(f,N):N+f}function r(f,b){f||h("Assertion failed: "+b)}function k(f,b){0>2]=b};this.get_type=function(){return L[this.ptr+H.TYPE_OFFSET>>2]};this.set_destructor=function(b){L[this.ptr+H.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return L[this.ptr+H.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){L[this.ptr+H.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){R[this.ptr+H.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=R[this.ptr+H.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){R[this.ptr+H.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown= -function(){return 0!=R[this.ptr+H.RETHROWN_OFFSET>>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(){L[this.ptr+H.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=L[this.ptr+H.REFCOUNT_OFFSET>>2];L[this.ptr+H.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function I(){return 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=m.alloc(b,R);m.copy(b,R,f);return f}return f}function ka(f){if("object"===typeof f){var b=m.alloc(f,R);m.copy(f,R,b);return b}return f}function la(f){if("object"===typeof f){var b=m.alloc(f,ma);m.copy(f,ma,b);return b}return f}function W(f){if("object"===typeof f){var b=m.alloc(f,L);m.copy(f,L,b);return b}return f}function ba(f){if("object"===typeof f){var b=m.alloc(f, -oa);m.copy(f,oa,b);return b}return f}function S(){throw"cannot construct a VoidPtr, no constructor in IDL";}function P(){this.ptr=Ea();D(P)[this.ptr]=this}function z(){this.ptr=Fa();D(z)[this.ptr]=this}function J(){this.ptr=Ga();D(J)[this.ptr]=this}function E(){this.ptr=Ha();D(E)[this.ptr]=this}function Q(){this.ptr=Ia();D(Q)[this.ptr]=this}function K(){this.ptr=Ja();D(K)[this.ptr]=this}function F(){this.ptr=Ka();D(F)[this.ptr]=this}function w(){this.ptr=La();D(w)[this.ptr]=this}function u(){this.ptr= -Ma();D(u)[this.ptr]=this}function x(){this.ptr=Na();D(x)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Oa(f);D(A)[this.ptr]=this}p=p||{};var a="undefined"!==typeof p?p:{},Ba,pa;a.ready=new Promise(function(f,b){Ba=f;pa=b});var Pa=!1,Qa=!1;a.onRuntimeInitialized=function(){Pa=!0;if(Qa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Qa=!0;if(Pa&&"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;var b=na.length;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,f+100663296);d=Math.min(2147483648,k(Math.max(16777216, -f,d),65536));a:{try{da.grow(d-fa.byteLength+65535>>>16);C(da.buffer);var e=1;break a}catch(g){}e=void 0}if(e)return!0}return!1},memory:da};(function(){function f(e,g){a.asm=e.exports;qa=a.asm.__indirect_function_table;V--;a.monitorRunDependencies&&a.monitorRunDependencies(V);0==V&&(null!==wa&&(clearInterval(wa),wa=null),ea&&(e=ea,ea=null,e()))}function b(e){f(e.instance)}function c(e){return B().then(function(g){return WebAssembly.instantiate(g,d)}).then(e,function(g){Y("failed to asynchronously prepare wasm: "+ -g);h(g)})}var d={env:Va,wasi_snapshot_preview1:Va};V++;a.monitorRunDependencies&&a.monitorRunDependencies(V);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||q(O,"data:application/octet-stream;base64,")||q(O,"file://")||"function"!==typeof fetch?c(b):fetch(O,{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(pa);return{}})();var Ta=a.___wasm_call_ctors=function(){return(Ta=a.___wasm_call_ctors=a.asm.__wasm_call_ctors).apply(null,arguments)};a.___em_js__array_bounds_check_error=function(){return(a.___em_js__array_bounds_check_error=a.asm.__em_js__array_bounds_check_error).apply(null,arguments)};var Wa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Wa=a._emscripten_bind_VoidPtr___destroy___0= -a.asm.emscripten_bind_VoidPtr___destroy___0).apply(null,arguments)},Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.emscripten_bind_GeometryAttribute_GeometryAttribute_0).apply(null,arguments)},Xa=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Xa=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.emscripten_bind_GeometryAttribute___destroy___0).apply(null,arguments)},Fa=a._emscripten_bind_PointAttribute_PointAttribute_0= -function(){return(Fa=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.emscripten_bind_PointAttribute_PointAttribute_0).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_size_0=function(){return(Ya=a._emscripten_bind_PointAttribute_size_0=a.asm.emscripten_bind_PointAttribute_size_0).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Za=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.emscripten_bind_PointAttribute_attribute_type_0).apply(null, -arguments)},$a=a._emscripten_bind_PointAttribute_data_type_0=function(){return($a=a._emscripten_bind_PointAttribute_data_type_0=a.asm.emscripten_bind_PointAttribute_data_type_0).apply(null,arguments)},ab=a._emscripten_bind_PointAttribute_num_components_0=function(){return(ab=a._emscripten_bind_PointAttribute_num_components_0=a.asm.emscripten_bind_PointAttribute_num_components_0).apply(null,arguments)},bb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(bb=a._emscripten_bind_PointAttribute_normalized_0= -a.asm.emscripten_bind_PointAttribute_normalized_0).apply(null,arguments)},cb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(cb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.emscripten_bind_PointAttribute_byte_stride_0).apply(null,arguments)},db=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(db=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.emscripten_bind_PointAttribute_byte_offset_0).apply(null,arguments)},eb=a._emscripten_bind_PointAttribute_unique_id_0= -function(){return(eb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.emscripten_bind_PointAttribute_unique_id_0).apply(null,arguments)},fb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(fb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.emscripten_bind_PointAttribute___destroy___0).apply(null,arguments)},Ga=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ga=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.emscripten_bind_PointCloud_PointCloud_0).apply(null, -arguments)},gb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(gb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.emscripten_bind_PointCloud_num_attributes_0).apply(null,arguments)},hb=a._emscripten_bind_PointCloud_num_points_0=function(){return(hb=a._emscripten_bind_PointCloud_num_points_0=a.asm.emscripten_bind_PointCloud_num_points_0).apply(null,arguments)},ib=a._emscripten_bind_PointCloud___destroy___0=function(){return(ib=a._emscripten_bind_PointCloud___destroy___0=a.asm.emscripten_bind_PointCloud___destroy___0).apply(null, -arguments)},Ha=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ha=a._emscripten_bind_Mesh_Mesh_0=a.asm.emscripten_bind_Mesh_Mesh_0).apply(null,arguments)},jb=a._emscripten_bind_Mesh_num_faces_0=function(){return(jb=a._emscripten_bind_Mesh_num_faces_0=a.asm.emscripten_bind_Mesh_num_faces_0).apply(null,arguments)},kb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(kb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.emscripten_bind_Mesh_num_attributes_0).apply(null,arguments)},lb=a._emscripten_bind_Mesh_num_points_0= -function(){return(lb=a._emscripten_bind_Mesh_num_points_0=a.asm.emscripten_bind_Mesh_num_points_0).apply(null,arguments)},mb=a._emscripten_bind_Mesh_set_num_points_1=function(){return(mb=a._emscripten_bind_Mesh_set_num_points_1=a.asm.emscripten_bind_Mesh_set_num_points_1).apply(null,arguments)},nb=a._emscripten_bind_Mesh___destroy___0=function(){return(nb=a._emscripten_bind_Mesh___destroy___0=a.asm.emscripten_bind_Mesh___destroy___0).apply(null,arguments)},Ia=a._emscripten_bind_Metadata_Metadata_0= -function(){return(Ia=a._emscripten_bind_Metadata_Metadata_0=a.asm.emscripten_bind_Metadata_Metadata_0).apply(null,arguments)},ob=a._emscripten_bind_Metadata___destroy___0=function(){return(ob=a._emscripten_bind_Metadata___destroy___0=a.asm.emscripten_bind_Metadata___destroy___0).apply(null,arguments)},Ja=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ja=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.emscripten_bind_DracoInt8Array_DracoInt8Array_0).apply(null,arguments)}, -pb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(pb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.emscripten_bind_DracoInt8Array_GetValue_1).apply(null,arguments)},qb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(qb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.emscripten_bind_DracoInt8Array_size_0).apply(null,arguments)},rb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(rb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.emscripten_bind_DracoInt8Array___destroy___0).apply(null, -arguments)},Ka=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Ka=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.emscripten_bind_MetadataBuilder_MetadataBuilder_0).apply(null,arguments)},sb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=function(){return(sb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.emscripten_bind_MetadataBuilder_AddStringEntry_3).apply(null,arguments)},tb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(tb= -a._emscripten_bind_MetadataBuilder_AddIntEntry_3=a.asm.emscripten_bind_MetadataBuilder_AddIntEntry_3).apply(null,arguments)},ub=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=function(){return(ub=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.emscripten_bind_MetadataBuilder_AddIntEntryArray_4).apply(null,arguments)},vb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(vb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=a.asm.emscripten_bind_MetadataBuilder_AddDoubleEntry_3).apply(null, -arguments)},wb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(wb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.emscripten_bind_MetadataBuilder___destroy___0).apply(null,arguments)},La=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(La=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.emscripten_bind_PointCloudBuilder_PointCloudBuilder_0).apply(null,arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(xb= -a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddFloatAttribute_5).apply(null,arguments)},yb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(yb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddInt8Attribute_5).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(zb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5).apply(null, -arguments)},Ab=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(Ab=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddInt16Attribute_5).apply(null,arguments)},Bb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(Bb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5).apply(null,arguments)},Cb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5= -function(){return(Cb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddInt32Attribute_5).apply(null,arguments)},Db=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(Db=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5).apply(null,arguments)},Eb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(Eb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2= -a.asm.emscripten_bind_PointCloudBuilder_AddMetadata_2).apply(null,arguments)},Fb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(Fb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm.emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3).apply(null,arguments)},Gb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(Gb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.emscripten_bind_PointCloudBuilder___destroy___0).apply(null, -arguments)},Ma=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(Ma=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.emscripten_bind_MeshBuilder_MeshBuilder_0).apply(null,arguments)},Hb=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=a.asm.emscripten_bind_MeshBuilder_AddFacesToMesh_3).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5= -a.asm.emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Kb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=a.asm.emscripten_bind_MeshBuilder_AddMetadataToMesh_2).apply(null,arguments)}, -Lb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.emscripten_bind_MeshBuilder_AddFloatAttribute_5).apply(null,arguments)},Mb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Mb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddInt8Attribute_5).apply(null,arguments)},Nb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Nb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5= -a.asm.emscripten_bind_MeshBuilder_AddUInt8Attribute_5).apply(null,arguments)},Ob=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Ob=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddInt16Attribute_5).apply(null,arguments)},Pb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Pb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddUInt16Attribute_5).apply(null,arguments)},Qb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5= -function(){return(Qb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddInt32Attribute_5).apply(null,arguments)},Rb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=function(){return(Rb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddUInt32Attribute_5).apply(null,arguments)},Sb=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Sb=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.emscripten_bind_MeshBuilder_AddMetadata_2).apply(null, -arguments)},Tb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Tb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.emscripten_bind_MeshBuilder_SetMetadataForAttribute_3).apply(null,arguments)},Ub=a._emscripten_bind_MeshBuilder___destroy___0=function(){return(Ub=a._emscripten_bind_MeshBuilder___destroy___0=a.asm.emscripten_bind_MeshBuilder___destroy___0).apply(null,arguments)},Na=a._emscripten_bind_Encoder_Encoder_0=function(){return(Na=a._emscripten_bind_Encoder_Encoder_0= -a.asm.emscripten_bind_Encoder_Encoder_0).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Vb=a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.emscripten_bind_Encoder_SetEncodingMethod_1).apply(null,arguments)},Wb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Wb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=a.asm.emscripten_bind_Encoder_SetAttributeQuantization_2).apply(null,arguments)},Xb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5= -function(){return(Xb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.emscripten_bind_Encoder_SetAttributeExplicitQuantization_5).apply(null,arguments)},Yb=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Yb=a._emscripten_bind_Encoder_SetSpeedOptions_2=a.asm.emscripten_bind_Encoder_SetSpeedOptions_2).apply(null,arguments)},Zb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Zb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.emscripten_bind_Encoder_SetTrackEncodedProperties_1).apply(null, -arguments)},$b=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return($b=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2).apply(null,arguments)},ac=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(ac=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=a.asm.emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3).apply(null,arguments)},bc=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0= -function(){return(bc=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.emscripten_bind_Encoder_GetNumberOfEncodedPoints_0).apply(null,arguments)},cc=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(cc=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.emscripten_bind_Encoder_GetNumberOfEncodedFaces_0).apply(null,arguments)},dc=a._emscripten_bind_Encoder___destroy___0=function(){return(dc=a._emscripten_bind_Encoder___destroy___0=a.asm.emscripten_bind_Encoder___destroy___0).apply(null, -arguments)},Oa=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Oa=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.emscripten_bind_ExpertEncoder_ExpertEncoder_1).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=function(){return(ec=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=a.asm.emscripten_bind_ExpertEncoder_SetEncodingMethod_1).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(fc= -a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.emscripten_bind_ExpertEncoder_SetAttributeQuantization_2).apply(null,arguments)},gc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=function(){return(gc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5).apply(null,arguments)},hc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=function(){return(hc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2= -a.asm.emscripten_bind_ExpertEncoder_SetSpeedOptions_2).apply(null,arguments)},ic=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(ic=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1).apply(null,arguments)},jc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=function(){return(jc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2).apply(null, -arguments)},kc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=function(){return(kc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=a.asm.emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0).apply(null,arguments)},lc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(lc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0).apply(null,arguments)},mc=a._emscripten_bind_ExpertEncoder___destroy___0= -function(){return(mc=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.emscripten_bind_ExpertEncoder___destroy___0).apply(null,arguments)},nc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(nc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.emscripten_enum_draco_GeometryAttribute_Type_INVALID).apply(null,arguments)},oc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(oc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.emscripten_enum_draco_GeometryAttribute_Type_POSITION).apply(null, -arguments)},pc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(pc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.emscripten_enum_draco_GeometryAttribute_Type_NORMAL).apply(null,arguments)},qc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(qc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.emscripten_enum_draco_GeometryAttribute_Type_COLOR).apply(null,arguments)},rc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD= -function(){return(rc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD).apply(null,arguments)},sc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(sc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.emscripten_enum_draco_GeometryAttribute_Type_GENERIC).apply(null,arguments)},tc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(tc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE= -a.asm.emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE).apply(null,arguments)},uc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(uc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD).apply(null,arguments)},vc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(vc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH).apply(null, -arguments)},wc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=function(){return(wc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=a.asm.emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING).apply(null,arguments)},xc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(xc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING).apply(null, -arguments)};a.___errno_location=function(){return(a.___errno_location=a.asm.__errno_location).apply(null,arguments)};a.stackSave=function(){return(a.stackSave=a.asm.stackSave).apply(null,arguments)};a.stackRestore=function(){return(a.stackRestore=a.asm.stackRestore).apply(null,arguments)};a.stackAlloc=function(){return(a.stackAlloc=a.asm.stackAlloc).apply(null,arguments)};a._setThrew=function(){return(a._setThrew=a.asm.setThrew).apply(null,arguments)};a._free=function(){return(a._free=a.asm.free).apply(null, -arguments)};var Ua=a._malloc=function(){return(Ua=a._malloc=a.asm.malloc).apply(null,arguments)},ja;ea=function b(){ja||M();ja||(ea=b)};a.run=M;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=m.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>2]=b};this.get_type=function(){return L[this.ptr+G.TYPE_OFFSET>>2]};this.set_destructor=function(b){L[this.ptr+G.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return L[this.ptr+G.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){L[this.ptr+G.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){Q[this.ptr+G.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=Q[this.ptr+ +G.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){Q[this.ptr+G.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!=Q[this.ptr+G.RETHROWN_OFFSET>>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(){L[this.ptr+G.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=L[this.ptr+G.REFCOUNT_OFFSET>>2];L[this.ptr+G.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function U(f){function b(){if(!fa&& +(fa=!0,a.calledRun=!0,!wa)){ya=!0;B(za);B(pa);Aa(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ba.unshift(a.postRun.shift());B(Ba)}}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=l.alloc(b,Q);l.copy(b,Q,f);return f}return f}function ha(f){if("object"===typeof f){var b=l.alloc(f,Q);l.copy(f,Q,b);return b}return f}function ia(f){if("object"===typeof f){var b=l.alloc(f,ka);l.copy(f,ka,b);return b}return f}function X(f){if("object"===typeof f){var b=l.alloc(f, +L);l.copy(f,L,b);return b}return f}function aa(f){if("object"===typeof f){var b=l.alloc(f,ma);l.copy(f,ma,b);return b}return f}function R(){throw"cannot construct a VoidPtr, no constructor in IDL";}function N(){this.ptr=Da();C(N)[this.ptr]=this}function z(){this.ptr=Ea();C(z)[this.ptr]=this}function H(){this.ptr=Fa();C(H)[this.ptr]=this}function E(){this.ptr=Ga();C(E)[this.ptr]=this}function O(){this.ptr=Ha();C(O)[this.ptr]=this}function I(){this.ptr=Ia();C(I)[this.ptr]=this}function F(){this.ptr= +Ja();C(F)[this.ptr]=this}function x(){this.ptr=Ka();C(x)[this.ptr]=this}function u(){this.ptr=La();C(u)[this.ptr]=this}function y(){this.ptr=Ma();C(y)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Na(f);C(A)[this.ptr]=this}q=q||{};var a="undefined"!==typeof q?q:{},Aa,na;a.ready=new Promise(function(f,b){Aa=f;na=b});var Oa=!1,Pa=!1;a.onRuntimeInitialized=function(){Oa=!0;a.callRuntimeCallbacks(a.mainCallbacks);if(Pa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)}; +a.onModuleParsed=function(){Pa=!0;if(Oa&&"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);k(ja.buffer);var t=1;break a}catch(wc){}t=void 0}if(t)return!0}return!1}};(function(){function f(e,g){a.asm=e.exports;ja=a.asm.f;k(ja.buffer); +oa=a.asm.h;za.unshift(a.asm.g);W--;a.monitorRunDependencies&&a.monitorRunDependencies(W);0==W&&(null!==ua&&(clearInterval(ua),ua=null),ca&&(e=ca,ca=null,e()))}function b(e){f(e.instance)}function c(e){return v().then(function(g){return WebAssembly.instantiate(g,d)}).then(e,function(g){Y("failed to asynchronously prepare wasm: "+g);D(g)})}var d={a:vc};W++;a.monitorRunDependencies&&a.monitorRunDependencies(W);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||h(K,"data:application/octet-stream;base64,")||h(K,"file://")||"function"!==typeof fetch?c(b):fetch(K,{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 Sa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Sa=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Da=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Da=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.j).apply(null,arguments)},Ta=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Ta=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.k).apply(null,arguments)},Ea=a._emscripten_bind_PointAttribute_PointAttribute_0= +function(){return(Ea=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.l).apply(null,arguments)},Ua=a._emscripten_bind_PointAttribute_size_0=function(){return(Ua=a._emscripten_bind_PointAttribute_size_0=a.asm.m).apply(null,arguments)},Va=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Va=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.n).apply(null,arguments)},Wa=a._emscripten_bind_PointAttribute_data_type_0=function(){return(Wa=a._emscripten_bind_PointAttribute_data_type_0= +a.asm.o).apply(null,arguments)},Xa=a._emscripten_bind_PointAttribute_num_components_0=function(){return(Xa=a._emscripten_bind_PointAttribute_num_components_0=a.asm.p).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_normalized_0=function(){return(Ya=a._emscripten_bind_PointAttribute_normalized_0=a.asm.q).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(Za=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.r).apply(null,arguments)},$a=a._emscripten_bind_PointAttribute_byte_offset_0= +function(){return($a=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.s).apply(null,arguments)},ab=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(ab=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.t).apply(null,arguments)},bb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(bb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.u).apply(null,arguments)},Fa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Fa=a._emscripten_bind_PointCloud_PointCloud_0= +a.asm.v).apply(null,arguments)},cb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(cb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.w).apply(null,arguments)},db=a._emscripten_bind_PointCloud_num_points_0=function(){return(db=a._emscripten_bind_PointCloud_num_points_0=a.asm.x).apply(null,arguments)},eb=a._emscripten_bind_PointCloud___destroy___0=function(){return(eb=a._emscripten_bind_PointCloud___destroy___0=a.asm.y).apply(null,arguments)},Ga=a._emscripten_bind_Mesh_Mesh_0= +function(){return(Ga=a._emscripten_bind_Mesh_Mesh_0=a.asm.z).apply(null,arguments)},fb=a._emscripten_bind_Mesh_num_faces_0=function(){return(fb=a._emscripten_bind_Mesh_num_faces_0=a.asm.A).apply(null,arguments)},gb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(gb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.B).apply(null,arguments)},hb=a._emscripten_bind_Mesh_num_points_0=function(){return(hb=a._emscripten_bind_Mesh_num_points_0=a.asm.C).apply(null,arguments)},ib=a._emscripten_bind_Mesh_set_num_points_1= +function(){return(ib=a._emscripten_bind_Mesh_set_num_points_1=a.asm.D).apply(null,arguments)},jb=a._emscripten_bind_Mesh___destroy___0=function(){return(jb=a._emscripten_bind_Mesh___destroy___0=a.asm.E).apply(null,arguments)},Ha=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ha=a._emscripten_bind_Metadata_Metadata_0=a.asm.F).apply(null,arguments)},kb=a._emscripten_bind_Metadata___destroy___0=function(){return(kb=a._emscripten_bind_Metadata___destroy___0=a.asm.G).apply(null,arguments)},Ia= +a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ia=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.H).apply(null,arguments)},lb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(lb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.I).apply(null,arguments)},mb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(mb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.J).apply(null,arguments)},nb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(nb= +a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.K).apply(null,arguments)},Ja=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Ja=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.L).apply(null,arguments)},ob=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=function(){return(ob=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.M).apply(null,arguments)},pb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(pb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3= +a.asm.N).apply(null,arguments)},qb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=function(){return(qb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.O).apply(null,arguments)},rb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(rb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=a.asm.P).apply(null,arguments)},sb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(sb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.Q).apply(null,arguments)}, +Ka=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(Ka=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.R).apply(null,arguments)},tb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(tb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.S).apply(null,arguments)},ub=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(ub=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.T).apply(null,arguments)}, +vb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(vb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.U).apply(null,arguments)},wb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(wb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.V).apply(null,arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(xb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.W).apply(null,arguments)}, +yb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=function(){return(yb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.X).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(zb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.Y).apply(null,arguments)},Ab=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(Ab=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=a.asm.Z).apply(null,arguments)},Bb= +a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(Bb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm._).apply(null,arguments)},Cb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(Cb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.$).apply(null,arguments)},La=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(La=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.aa).apply(null,arguments)},Db=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3= +function(){return(Db=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=a.asm.ba).apply(null,arguments)},Eb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Eb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=a.asm.ca).apply(null,arguments)},Fb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=function(){return(Fb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.da).apply(null,arguments)},Gb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Gb= +a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=a.asm.ea).apply(null,arguments)},Hb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.fa).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.ga).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5= +a.asm.ha).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Kb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.ia).apply(null,arguments)},Lb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=a.asm.ja).apply(null,arguments)},Mb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=function(){return(Mb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.ka).apply(null,arguments)}, +Nb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=function(){return(Nb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.la).apply(null,arguments)},Ob=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Ob=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.ma).apply(null,arguments)},Pb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Pb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.na).apply(null,arguments)},Qb=a._emscripten_bind_MeshBuilder___destroy___0= +function(){return(Qb=a._emscripten_bind_MeshBuilder___destroy___0=a.asm.oa).apply(null,arguments)},Ma=a._emscripten_bind_Encoder_Encoder_0=function(){return(Ma=a._emscripten_bind_Encoder_Encoder_0=a.asm.pa).apply(null,arguments)},Rb=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Rb=a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.qa).apply(null,arguments)},Sb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Sb=a._emscripten_bind_Encoder_SetAttributeQuantization_2= +a.asm.ra).apply(null,arguments)},Tb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=function(){return(Tb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.sa).apply(null,arguments)},Ub=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Ub=a._emscripten_bind_Encoder_SetSpeedOptions_2=a.asm.ta).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Vb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.ua).apply(null, +arguments)},Wb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return(Wb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.va).apply(null,arguments)},Xb=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(Xb=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=a.asm.wa).apply(null,arguments)},Yb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=function(){return(Yb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.xa).apply(null, +arguments)},Zb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(Zb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.ya).apply(null,arguments)},$b=a._emscripten_bind_Encoder___destroy___0=function(){return($b=a._emscripten_bind_Encoder___destroy___0=a.asm.za).apply(null,arguments)},Na=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Na=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.Aa).apply(null,arguments)},ac=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1= +function(){return(ac=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=a.asm.Ba).apply(null,arguments)},bc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(bc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.Ca).apply(null,arguments)},cc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=function(){return(cc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.Da).apply(null,arguments)},dc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2= +function(){return(dc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=a.asm.Ea).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(ec=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.Fa).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=function(){return(fc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.Ga).apply(null,arguments)},gc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0= +function(){return(gc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=a.asm.Ha).apply(null,arguments)},hc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(hc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.Ia).apply(null,arguments)},ic=a._emscripten_bind_ExpertEncoder___destroy___0=function(){return(ic=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.Ja).apply(null,arguments)},jc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(jc= +a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.Ka).apply(null,arguments)},kc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(kc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.La).apply(null,arguments)},lc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(lc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.Ma).apply(null,arguments)},mc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(mc= +a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.Na).apply(null,arguments)},nc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(nc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.Oa).apply(null,arguments)},oc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(oc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.Pa).apply(null,arguments)},pc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(pc= +a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.Qa).apply(null,arguments)},qc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(qc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.Ra).apply(null,arguments)},rc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(rc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Sa).apply(null,arguments)},sc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING= +function(){return(sc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=a.asm.Ta).apply(null,arguments)},tc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(tc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.Ua).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Va).apply(null,arguments)};var Ra=a._malloc=function(){return(Ra=a._malloc=a.asm.Wa).apply(null,arguments)};a.callRuntimeCallbacks=B;var fa;ca=function b(){fa|| +U();fa||(ca=b)};a.run=U;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=l.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;em?Math.max(C+m,0):Math.min(m,C);q=0>q?Math.max(C+q,0):Math.min(q,C);h=0>h?Math.max(C+h,0):Math.min(h,C);if(mq;)--h in this?this[--m]=this[h]: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"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(m){var p=0;return function(){return p>>0,$jscomp.propertyToPolyfillSymbol[k]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(k):$jscomp.POLYFILL_PREFIX+l+"$"+k),$jscomp.defineProperty(q,$jscomp.propertyToPolyfillSymbol[k],{configurable:!0,writable:!0,value:p})))}; +$jscomp.polyfill("Promise",function(m){function p(){this.batch_=null}function l(f){return f instanceof k?f:new k(function(n,u){n(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;p.prototype.asyncExecute=function(f){if(null==this.batch_){this.batch_=[];var n=this;this.asyncExecuteFunction(function(){n.executeBatch_()})}this.batch_.push(f)}; +var q=$jscomp.global.setTimeout;p.prototype.asyncExecuteFunction=function(f){q(f,0)};p.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var f=this.batch_;this.batch_=[];for(var n=0;nl?Math.max(B+l,0):Math.min(l,B);q=0>q?Math.max(B+q,0):Math.min(q,B);k=0>k?Math.max(B+k,0):Math.min(k,B);if(lq;)--k in this?this[--l]=this[k]:delete this[--l];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"); $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 l="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(l=l||__filename);return function(n){function m(e){return a.locateFile?a.locateFile(e,V):V+e}function q(e,b){e||p("Assertion failed: "+b)}function h(e,b){if(e){var c=oa;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 C(e,b){0>2]=b};this.get_type=function(){return W[this.ptr+ -D.TYPE_OFFSET>>2]};this.set_destructor=function(b){W[this.ptr+D.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return W[this.ptr+D.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){W[this.ptr+D.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){Z[this.ptr+D.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=Z[this.ptr+D.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){Z[this.ptr+D.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!=Z[this.ptr+D.RETHROWN_OFFSET>> -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(){W[this.ptr+D.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=W[this.ptr+D.REFCOUNT_OFFSET>>2];W[this.ptr+D.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function Q(){return 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=v){var ia=e.charCodeAt(++g);v=65536+((v&1023)<<10)|ia&1023}if(127>=v){if(c>=d)break;b[c++]=v}else{if(2047>=v){if(c+1>=d)break;b[c++]=192|v>>6}else{if(65535>=v){if(c+2>=d)break;b[c++]= -224|v>>12}else{if(c+3>=d)break;b[c++]=240|v>>18;b[c++]=128|v>>12&63}b[c++]=128|v>>6&63}b[c++]=128|v&63}}b[c]=0}e=r.alloc(b,Z);r.copy(b,Z,e);return e}return e}function va(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();z(S)[this.ptr]=this}function P(){this.ptr=Ka();z(P)[this.ptr]=this}function Y(){this.ptr=La();z(Y)[this.ptr]=this}function w(){this.ptr=Ma();z(w)[this.ptr]= -this}function B(){this.ptr=Na();z(B)[this.ptr]=this}function F(){this.ptr=Oa();z(F)[this.ptr]=this}function G(){this.ptr=Pa();z(G)[this.ptr]=this}function E(){this.ptr=Qa();z(E)[this.ptr]=this}function T(){this.ptr=Ra();z(T)[this.ptr]=this}function A(){throw"cannot construct a Status, no constructor in IDL";}function H(){this.ptr=Sa();z(H)[this.ptr]=this}function I(){this.ptr=Ta();z(I)[this.ptr]=this}function J(){this.ptr=Ua();z(J)[this.ptr]=this}function K(){this.ptr=Va();z(K)[this.ptr]=this}function L(){this.ptr= -Wa();z(L)[this.ptr]=this}function M(){this.ptr=Xa();z(M)[this.ptr]=this}function N(){this.ptr=Ya();z(N)[this.ptr]=this}function x(){this.ptr=Za();z(x)[this.ptr]=this}function k(){this.ptr=$a();z(k)[this.ptr]=this}n=n||{};var a="undefined"!==typeof n?n:{},Ga,ta;a.ready=new Promise(function(e,b){Ga=e;ta=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>>=0;var b=oa.length;if(2147483648=c;c*=2){var d=b*(1+.2/c); -d=Math.min(d,e+100663296);d=Math.min(2147483648,C(Math.max(16777216,e,d),65536));a:{try{ma.grow(d-pa.byteLength+65535>>>16);f(ma.buffer);var g=1;break a}catch(v){}g=void 0}if(g)return!0}return!1},memory:ma};(function(){function e(g,v){a.asm=g.exports;ua=a.asm.__indirect_function_table;ha--;a.monitorRunDependencies&&a.monitorRunDependencies(ha);0==ha&&(null!==Aa&&(clearInterval(Aa),Aa=null),na&&(g=na,na=null,g()))}function b(g){e(g.instance)}function c(g){return O().then(function(v){return WebAssembly.instantiate(v, -d)}).then(g,function(v){ja("failed to asynchronously prepare wasm: "+v);p(v)})}var d={env:gb,wasi_snapshot_preview1:gb};ha++;a.monitorRunDependencies&&a.monitorRunDependencies(ha);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(g){return ja("Module.instantiateWasm callback failed with error: "+g),!1}(function(){return ka||"function"!==typeof WebAssembly.instantiateStreaming||t(X,"data:application/octet-stream;base64,")||t(X,"file://")||"function"!==typeof fetch?c(b):fetch(X,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g, -d).then(b,function(v){ja("wasm streaming compile failed: "+v);ja("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ta);return{}})();var eb=a.___wasm_call_ctors=function(){return(eb=a.___wasm_call_ctors=a.asm.__wasm_call_ctors).apply(null,arguments)};a.___em_js__array_bounds_check_error=function(){return(a.___em_js__array_bounds_check_error=a.asm.__em_js__array_bounds_check_error).apply(null,arguments)};var hb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(hb=a._emscripten_bind_VoidPtr___destroy___0= -a.asm.emscripten_bind_VoidPtr___destroy___0).apply(null,arguments)},Ja=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ja=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.emscripten_bind_DecoderBuffer_DecoderBuffer_0).apply(null,arguments)},ib=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(ib=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.emscripten_bind_DecoderBuffer_Init_2).apply(null,arguments)},jb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(jb= -a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.emscripten_bind_DecoderBuffer___destroy___0).apply(null,arguments)},Ka=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ka=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.emscripten_bind_AttributeTransformData_AttributeTransformData_0).apply(null,arguments)},kb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(kb=a._emscripten_bind_AttributeTransformData_transform_type_0= -a.asm.emscripten_bind_AttributeTransformData_transform_type_0).apply(null,arguments)},lb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(lb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.emscripten_bind_AttributeTransformData___destroy___0).apply(null,arguments)},La=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(La=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.emscripten_bind_GeometryAttribute_GeometryAttribute_0).apply(null, -arguments)},mb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(mb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.emscripten_bind_GeometryAttribute___destroy___0).apply(null,arguments)},Ma=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ma=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.emscripten_bind_PointAttribute_PointAttribute_0).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_size_0=function(){return(nb=a._emscripten_bind_PointAttribute_size_0= -a.asm.emscripten_bind_PointAttribute_size_0).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(ob=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.emscripten_bind_PointAttribute_GetAttributeTransformData_0).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(pb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.emscripten_bind_PointAttribute_attribute_type_0).apply(null,arguments)}, -qb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(qb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.emscripten_bind_PointAttribute_data_type_0).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(rb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.emscripten_bind_PointAttribute_num_components_0).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(sb=a._emscripten_bind_PointAttribute_normalized_0= -a.asm.emscripten_bind_PointAttribute_normalized_0).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(tb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.emscripten_bind_PointAttribute_byte_stride_0).apply(null,arguments)},ub=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(ub=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.emscripten_bind_PointAttribute_byte_offset_0).apply(null,arguments)},vb=a._emscripten_bind_PointAttribute_unique_id_0= -function(){return(vb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.emscripten_bind_PointAttribute_unique_id_0).apply(null,arguments)},wb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(wb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.emscripten_bind_PointAttribute___destroy___0).apply(null,arguments)},Na=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Na=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0= -a.asm.emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0).apply(null,arguments)},xb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1).apply(null,arguments)},yb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(yb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0= -a.asm.emscripten_bind_AttributeQuantizationTransform_quantization_bits_0).apply(null,arguments)},zb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(zb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.emscripten_bind_AttributeQuantizationTransform_min_value_1).apply(null,arguments)},Ab=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(Ab=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.emscripten_bind_AttributeQuantizationTransform_range_0).apply(null, -arguments)},Bb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(Bb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.emscripten_bind_AttributeQuantizationTransform___destroy___0).apply(null,arguments)},Oa=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Oa=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0).apply(null, -arguments)},Cb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(Cb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1).apply(null,arguments)},Db=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Db=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.emscripten_bind_AttributeOctahedronTransform_quantization_bits_0).apply(null, -arguments)},Eb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Eb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.emscripten_bind_AttributeOctahedronTransform___destroy___0).apply(null,arguments)},Pa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Pa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.emscripten_bind_PointCloud_PointCloud_0).apply(null,arguments)},Fb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Fb=a._emscripten_bind_PointCloud_num_attributes_0= -a.asm.emscripten_bind_PointCloud_num_attributes_0).apply(null,arguments)},Gb=a._emscripten_bind_PointCloud_num_points_0=function(){return(Gb=a._emscripten_bind_PointCloud_num_points_0=a.asm.emscripten_bind_PointCloud_num_points_0).apply(null,arguments)},Hb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Hb=a._emscripten_bind_PointCloud___destroy___0=a.asm.emscripten_bind_PointCloud___destroy___0).apply(null,arguments)},Qa=a._emscripten_bind_Mesh_Mesh_0=function(){return(Qa=a._emscripten_bind_Mesh_Mesh_0= -a.asm.emscripten_bind_Mesh_Mesh_0).apply(null,arguments)},Ib=a._emscripten_bind_Mesh_num_faces_0=function(){return(Ib=a._emscripten_bind_Mesh_num_faces_0=a.asm.emscripten_bind_Mesh_num_faces_0).apply(null,arguments)},Jb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Jb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.emscripten_bind_Mesh_num_attributes_0).apply(null,arguments)},Kb=a._emscripten_bind_Mesh_num_points_0=function(){return(Kb=a._emscripten_bind_Mesh_num_points_0=a.asm.emscripten_bind_Mesh_num_points_0).apply(null, -arguments)},Lb=a._emscripten_bind_Mesh___destroy___0=function(){return(Lb=a._emscripten_bind_Mesh___destroy___0=a.asm.emscripten_bind_Mesh___destroy___0).apply(null,arguments)},Ra=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ra=a._emscripten_bind_Metadata_Metadata_0=a.asm.emscripten_bind_Metadata_Metadata_0).apply(null,arguments)},Mb=a._emscripten_bind_Metadata___destroy___0=function(){return(Mb=a._emscripten_bind_Metadata___destroy___0=a.asm.emscripten_bind_Metadata___destroy___0).apply(null, -arguments)},Nb=a._emscripten_bind_Status_code_0=function(){return(Nb=a._emscripten_bind_Status_code_0=a.asm.emscripten_bind_Status_code_0).apply(null,arguments)},Ob=a._emscripten_bind_Status_ok_0=function(){return(Ob=a._emscripten_bind_Status_ok_0=a.asm.emscripten_bind_Status_ok_0).apply(null,arguments)},Pb=a._emscripten_bind_Status_error_msg_0=function(){return(Pb=a._emscripten_bind_Status_error_msg_0=a.asm.emscripten_bind_Status_error_msg_0).apply(null,arguments)},Qb=a._emscripten_bind_Status___destroy___0= -function(){return(Qb=a._emscripten_bind_Status___destroy___0=a.asm.emscripten_bind_Status___destroy___0).apply(null,arguments)},Sa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Sa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.emscripten_bind_DracoFloat32Array_DracoFloat32Array_0).apply(null,arguments)},Rb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Rb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.emscripten_bind_DracoFloat32Array_GetValue_1).apply(null, -arguments)},Sb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Sb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.emscripten_bind_DracoFloat32Array_size_0).apply(null,arguments)},Tb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Tb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.emscripten_bind_DracoFloat32Array___destroy___0).apply(null,arguments)},Ta=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ta=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= -a.asm.emscripten_bind_DracoInt8Array_DracoInt8Array_0).apply(null,arguments)},Ub=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Ub=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.emscripten_bind_DracoInt8Array_GetValue_1).apply(null,arguments)},Vb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Vb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.emscripten_bind_DracoInt8Array_size_0).apply(null,arguments)},Wb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Wb= -a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.emscripten_bind_DracoInt8Array___destroy___0).apply(null,arguments)},Ua=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Ua=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.emscripten_bind_DracoUInt8Array_DracoUInt8Array_0).apply(null,arguments)},Xb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Xb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.emscripten_bind_DracoUInt8Array_GetValue_1).apply(null, -arguments)},Yb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Yb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.emscripten_bind_DracoUInt8Array_size_0).apply(null,arguments)},Zb=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(Zb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.emscripten_bind_DracoUInt8Array___destroy___0).apply(null,arguments)},Va=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Va=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0= -a.asm.emscripten_bind_DracoInt16Array_DracoInt16Array_0).apply(null,arguments)},$b=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return($b=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.emscripten_bind_DracoInt16Array_GetValue_1).apply(null,arguments)},ac=a._emscripten_bind_DracoInt16Array_size_0=function(){return(ac=a._emscripten_bind_DracoInt16Array_size_0=a.asm.emscripten_bind_DracoInt16Array_size_0).apply(null,arguments)},bc=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(bc= -a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.emscripten_bind_DracoInt16Array___destroy___0).apply(null,arguments)},Wa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Wa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.emscripten_bind_DracoUInt16Array_DracoUInt16Array_0).apply(null,arguments)},cc=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(cc=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.emscripten_bind_DracoUInt16Array_GetValue_1).apply(null, -arguments)},dc=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(dc=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.emscripten_bind_DracoUInt16Array_size_0).apply(null,arguments)},ec=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(ec=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.emscripten_bind_DracoUInt16Array___destroy___0).apply(null,arguments)},Xa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Xa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0= -a.asm.emscripten_bind_DracoInt32Array_DracoInt32Array_0).apply(null,arguments)},fc=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(fc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.emscripten_bind_DracoInt32Array_GetValue_1).apply(null,arguments)},gc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(gc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.emscripten_bind_DracoInt32Array_size_0).apply(null,arguments)},hc=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(hc= -a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.emscripten_bind_DracoInt32Array___destroy___0).apply(null,arguments)},Ya=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Ya=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.emscripten_bind_DracoUInt32Array_DracoUInt32Array_0).apply(null,arguments)},ic=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(ic=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.emscripten_bind_DracoUInt32Array_GetValue_1).apply(null, -arguments)},jc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(jc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.emscripten_bind_DracoUInt32Array_size_0).apply(null,arguments)},kc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(kc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.emscripten_bind_DracoUInt32Array___destroy___0).apply(null,arguments)},Za=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(Za=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= -a.asm.emscripten_bind_MetadataQuerier_MetadataQuerier_0).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.emscripten_bind_MetadataQuerier_HasEntry_2).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(mc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetIntEntry_2).apply(null,arguments)},nc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= -function(){return(nc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.emscripten_bind_MetadataQuerier_GetIntEntryArray_3).apply(null,arguments)},oc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(oc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetDoubleEntry_2).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(pc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.emscripten_bind_MetadataQuerier_GetStringEntry_2).apply(null, -arguments)},qc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(qc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.emscripten_bind_MetadataQuerier_NumEntries_1).apply(null,arguments)},rc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(rc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.emscripten_bind_MetadataQuerier_GetEntryName_2).apply(null,arguments)},sc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(sc=a._emscripten_bind_MetadataQuerier___destroy___0= -a.asm.emscripten_bind_MetadataQuerier___destroy___0).apply(null,arguments)},$a=a._emscripten_bind_Decoder_Decoder_0=function(){return($a=a._emscripten_bind_Decoder_Decoder_0=a.asm.emscripten_bind_Decoder_Decoder_0).apply(null,arguments)},tc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(tc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.emscripten_bind_Decoder_DecodeArrayToPointCloud_3).apply(null,arguments)},uc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(uc= -a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.emscripten_bind_Decoder_DecodeArrayToMesh_3).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.emscripten_bind_Decoder_GetAttributeId_2).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(wc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.emscripten_bind_Decoder_GetAttributeIdByName_2).apply(null,arguments)}, -xc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(xc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(yc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.emscripten_bind_Decoder_GetAttribute_2).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(zc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2= -a.asm.emscripten_bind_Decoder_GetAttributeByUniqueId_2).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(Ac=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.emscripten_bind_Decoder_GetMetadata_1).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.emscripten_bind_Decoder_GetAttributeMetadata_2).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetFaceFromMesh_3= -function(){return(Cc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.emscripten_bind_Decoder_GetFaceFromMesh_3).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(Dc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.emscripten_bind_Decoder_GetTriangleStripsFromMesh_2).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Ec=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.emscripten_bind_Decoder_GetTrianglesUInt16Array_3).apply(null, -arguments)},Fc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Fc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.emscripten_bind_Decoder_GetTrianglesUInt32Array_3).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.emscripten_bind_Decoder_GetAttributeFloat_3).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3= -a.asm.emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeIntForAllPoints_3).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Jc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3).apply(null, -arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= -function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Nc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Oc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3= -a.asm.emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(Pc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Qc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.emscripten_bind_Decoder_SkipAttributeTransform_1).apply(null, -arguments)},Rc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Rc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1).apply(null,arguments)},Sc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(Sc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.emscripten_bind_Decoder_DecodeBufferToPointCloud_2).apply(null,arguments)},Tc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2= -function(){return(Tc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.emscripten_bind_Decoder_DecodeBufferToMesh_2).apply(null,arguments)},Uc=a._emscripten_bind_Decoder___destroy___0=function(){return(Uc=a._emscripten_bind_Decoder___destroy___0=a.asm.emscripten_bind_Decoder___destroy___0).apply(null,arguments)},Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM).apply(null, -arguments)},Wc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Wc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM).apply(null,arguments)},Xc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Xc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM).apply(null, -arguments)},Yc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(Yc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.emscripten_enum_draco_GeometryAttribute_Type_INVALID).apply(null, -arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.emscripten_enum_draco_GeometryAttribute_Type_POSITION).apply(null,arguments)},ad=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ad=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.emscripten_enum_draco_GeometryAttribute_Type_NORMAL).apply(null,arguments)},bd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR= -function(){return(bd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.emscripten_enum_draco_GeometryAttribute_Type_COLOR).apply(null,arguments)},cd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(cd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD).apply(null,arguments)},dd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(dd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= -a.asm.emscripten_enum_draco_GeometryAttribute_Type_GENERIC).apply(null,arguments)},ed=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(ed=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE).apply(null,arguments)},fd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(fd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD).apply(null, -arguments)},gd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(gd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.emscripten_enum_draco_DataType_DT_INVALID).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(id=a._emscripten_enum_draco_DataType_DT_INT8= -a.asm.emscripten_enum_draco_DataType_DT_INT8).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(jd=a._emscripten_enum_draco_DataType_DT_UINT8=a.asm.emscripten_enum_draco_DataType_DT_UINT8).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(kd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.emscripten_enum_draco_DataType_DT_INT16).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(ld=a._emscripten_enum_draco_DataType_DT_UINT16= -a.asm.emscripten_enum_draco_DataType_DT_UINT16).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(md=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.emscripten_enum_draco_DataType_DT_INT32).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return(nd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.emscripten_enum_draco_DataType_DT_UINT32).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(od= -a._emscripten_enum_draco_DataType_DT_INT64=a.asm.emscripten_enum_draco_DataType_DT_INT64).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(pd=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.emscripten_enum_draco_DataType_DT_UINT64).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(qd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.emscripten_enum_draco_DataType_DT_FLOAT32).apply(null,arguments)},rd=a._emscripten_enum_draco_DataType_DT_FLOAT64= -function(){return(rd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.emscripten_enum_draco_DataType_DT_FLOAT64).apply(null,arguments)},sd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(sd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.emscripten_enum_draco_DataType_DT_BOOL).apply(null,arguments)},td=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(td=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.emscripten_enum_draco_DataType_DT_TYPES_COUNT).apply(null, -arguments)},ud=a._emscripten_enum_draco_StatusCode_OK=function(){return(ud=a._emscripten_enum_draco_StatusCode_OK=a.asm.emscripten_enum_draco_StatusCode_OK).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(vd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.emscripten_enum_draco_StatusCode_DRACO_ERROR).apply(null,arguments)},wd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(wd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.emscripten_enum_draco_StatusCode_IO_ERROR).apply(null, -arguments)},xd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(xd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=a.asm.emscripten_enum_draco_StatusCode_INVALID_PARAMETER).apply(null,arguments)},yd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(yd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION).apply(null,arguments)},zd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(zd= -a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.emscripten_enum_draco_StatusCode_UNKNOWN_VERSION).apply(null,arguments)};a.___errno_location=function(){return(a.___errno_location=a.asm.__errno_location).apply(null,arguments)};a.stackSave=function(){return(a.stackSave=a.asm.stackSave).apply(null,arguments)};a.stackRestore=function(){return(a.stackRestore=a.asm.stackRestore).apply(null,arguments)};a.stackAlloc=function(){return(a.stackAlloc=a.asm.stackAlloc).apply(null,arguments)};a._setThrew= -function(){return(a._setThrew=a.asm.setThrew).apply(null,arguments)};a._free=function(){return(a._free=a.asm.free).apply(null,arguments)};var fb=a._malloc=function(){return(fb=a._malloc=a.asm.malloc).apply(null,arguments)},sa;na=function b(){sa||ea();sa||(na=b)};a.run=ea;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;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); +var DracoDecoderModule=function(){var m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(p){function l(e){return a.locateFile?a.locateFile(e,V):V+e}function q(e,b){e||f("Assertion failed: "+b)}function k(e,b){if(e){var c=la;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 B(e){Aa=e;a.HEAP8=Z=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=W=new Int32Array(e);a.HEAPU8=la=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+="";ha(e);Ba=!0;e=new WebAssembly.RuntimeError("abort("+e+"). Build with -s ASSERTIONS=1 for more info.");qa(e);throw e;}function n(e,b){return String.prototype.startsWith?e.startsWith(b):0===e.indexOf(b)}function u(e){try{if(e==R&&ia)return new Uint8Array(ia);if(ma)return ma(e);throw"both async and sync fetching of the wasm failed";}catch(b){f(b)}}function z(){if(!ia&&(na||da)){if("function"===typeof fetch&&!n(R,"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 u(R)});if(Ca)return new Promise(function(e,b){Ca(R,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return u(R)})}function D(e){for(;0>2]=b};this.get_type= +function(){return W[this.ptr+F.TYPE_OFFSET>>2]};this.set_destructor=function(b){W[this.ptr+F.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return W[this.ptr+F.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){W[this.ptr+F.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){Z[this.ptr+F.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=Z[this.ptr+F.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){Z[this.ptr+F.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!= +Z[this.ptr+F.RETHROWN_OFFSET>>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(){W[this.ptr+F.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=W[this.ptr+F.REFCOUNT_OFFSET>>2];W[this.ptr+F.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function Q(e){function b(){if(!oa&&(oa=!0,a.calledRun=!0,!Ba)){Da=!0;D(Ea);D(sa);Fa(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"== +typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ga.unshift(a.postRun.shift());D(Ga)}}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=v){var Y=e.charCodeAt(++g);v=65536+((v&1023)<<10)|Y&1023}if(127>=v){if(c>=d)break;b[c++]=v}else{if(2047>=v){if(c+1>=d)break;b[c++]=192|v>>6}else{if(65535>=v){if(c+2>=d)break;b[c++]=224| +v>>12}else{if(c+3>=d)break;b[c++]=240|v>>18;b[c++]=128|v>>12&63}b[c++]=128|v>>6&63}b[c++]=128|v&63}}b[c]=0}e=r.alloc(b,Z);r.copy(b,Z,e);return e}return e}function ta(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 T(){this.ptr=Ia();x(T)[this.ptr]=this}function S(){this.ptr=Ja();x(S)[this.ptr]=this}function X(){this.ptr=Ka();x(X)[this.ptr]=this}function w(){this.ptr=La();x(w)[this.ptr]=this} +function C(){this.ptr=Ma();x(C)[this.ptr]=this}function H(){this.ptr=Na();x(H)[this.ptr]=this}function I(){this.ptr=Oa();x(I)[this.ptr]=this}function G(){this.ptr=Pa();x(G)[this.ptr]=this}function U(){this.ptr=Qa();x(U)[this.ptr]=this}function A(){throw"cannot construct a Status, no constructor in IDL";}function J(){this.ptr=Ra();x(J)[this.ptr]=this}function K(){this.ptr=Sa();x(K)[this.ptr]=this}function L(){this.ptr=Ta();x(L)[this.ptr]=this}function M(){this.ptr=Ua();x(M)[this.ptr]=this}function N(){this.ptr= +Va();x(N)[this.ptr]=this}function O(){this.ptr=Wa();x(O)[this.ptr]=this}function P(){this.ptr=Xa();x(P)[this.ptr]=this}function y(){this.ptr=Ya();x(y)[this.ptr]=this}function h(){this.ptr=Za();x(h)[this.ptr]=this}p=p||{};var a="undefined"!==typeof p?p:{},Fa,qa;a.ready=new Promise(function(e,b){Fa=e;qa=b});var $a=!1,ab=!1;a.onRuntimeInitialized=function(){$a=!0;a.callRuntimeCallbacks(a.mainCallbacks);if(ab&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){ab=!0; +if($a&&"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,v=g.min;d=Math.max(e,d);0>>16);B(pa.buffer);var Y=1;break a}catch(yd){}Y=void 0}if(Y)return!0}return!1}}; +(function(){function e(g,v){a.asm=g.exports;pa=a.asm.f;B(pa.buffer);ra=a.asm.h;Ea.unshift(a.asm.g);ea--;a.monitorRunDependencies&&a.monitorRunDependencies(ea);0==ea&&(null!==ya&&(clearInterval(ya),ya=null),ka&&(g=ka,ka=null,g()))}function b(g){e(g.instance)}function c(g){return z().then(function(v){return WebAssembly.instantiate(v,d)}).then(g,function(v){ha("failed to asynchronously prepare wasm: "+v);f(v)})}var d={a:xd};ea++;a.monitorRunDependencies&&a.monitorRunDependencies(ea);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||n(R,"data:application/octet-stream;base64,")||n(R,"file://")||"function"!==typeof fetch?c(b):fetch(R,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g,d).then(b,function(v){ha("wasm streaming compile failed: "+v);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 db=a._emscripten_bind_VoidPtr___destroy___0=function(){return(db=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Ia=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ia=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.j).apply(null,arguments)},eb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(eb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.k).apply(null, +arguments)},fb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(fb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.l).apply(null,arguments)},Ja=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ja=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.m).apply(null,arguments)},gb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(gb=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.n).apply(null, +arguments)},hb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(hb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.o).apply(null,arguments)},Ka=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Ka=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.p).apply(null,arguments)},ib=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(ib=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.q).apply(null,arguments)}, +La=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(La=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.r).apply(null,arguments)},jb=a._emscripten_bind_PointAttribute_size_0=function(){return(jb=a._emscripten_bind_PointAttribute_size_0=a.asm.s).apply(null,arguments)},kb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(kb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.t).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_attribute_type_0= +function(){return(lb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.u).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(mb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.v).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(nb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.w).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_normalized_0=function(){return(ob=a._emscripten_bind_PointAttribute_normalized_0= +a.asm.x).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(pb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.y).apply(null,arguments)},qb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(qb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.z).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(rb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.A).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute___destroy___0= +function(){return(sb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.B).apply(null,arguments)},Ma=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Ma=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.C).apply(null,arguments)},tb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(tb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.D).apply(null, +arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.E).apply(null,arguments)},vb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(vb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.F).apply(null,arguments)},wb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(wb=a._emscripten_bind_AttributeQuantizationTransform_range_0= +a.asm.G).apply(null,arguments)},xb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.H).apply(null,arguments)},Na=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Na=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.I).apply(null,arguments)},yb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1= +function(){return(yb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.J).apply(null,arguments)},zb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(zb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.K).apply(null,arguments)},Ab=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Ab=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.L).apply(null,arguments)},Oa=a._emscripten_bind_PointCloud_PointCloud_0= +function(){return(Oa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.M).apply(null,arguments)},Bb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Bb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.N).apply(null,arguments)},Cb=a._emscripten_bind_PointCloud_num_points_0=function(){return(Cb=a._emscripten_bind_PointCloud_num_points_0=a.asm.O).apply(null,arguments)},Db=a._emscripten_bind_PointCloud___destroy___0=function(){return(Db=a._emscripten_bind_PointCloud___destroy___0=a.asm.P).apply(null, +arguments)},Pa=a._emscripten_bind_Mesh_Mesh_0=function(){return(Pa=a._emscripten_bind_Mesh_Mesh_0=a.asm.Q).apply(null,arguments)},Eb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Eb=a._emscripten_bind_Mesh_num_faces_0=a.asm.R).apply(null,arguments)},Fb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Fb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.S).apply(null,arguments)},Gb=a._emscripten_bind_Mesh_num_points_0=function(){return(Gb=a._emscripten_bind_Mesh_num_points_0=a.asm.T).apply(null, +arguments)},Hb=a._emscripten_bind_Mesh___destroy___0=function(){return(Hb=a._emscripten_bind_Mesh___destroy___0=a.asm.U).apply(null,arguments)},Qa=a._emscripten_bind_Metadata_Metadata_0=function(){return(Qa=a._emscripten_bind_Metadata_Metadata_0=a.asm.V).apply(null,arguments)},Ib=a._emscripten_bind_Metadata___destroy___0=function(){return(Ib=a._emscripten_bind_Metadata___destroy___0=a.asm.W).apply(null,arguments)},Jb=a._emscripten_bind_Status_code_0=function(){return(Jb=a._emscripten_bind_Status_code_0= +a.asm.X).apply(null,arguments)},Kb=a._emscripten_bind_Status_ok_0=function(){return(Kb=a._emscripten_bind_Status_ok_0=a.asm.Y).apply(null,arguments)},Lb=a._emscripten_bind_Status_error_msg_0=function(){return(Lb=a._emscripten_bind_Status_error_msg_0=a.asm.Z).apply(null,arguments)},Mb=a._emscripten_bind_Status___destroy___0=function(){return(Mb=a._emscripten_bind_Status___destroy___0=a.asm._).apply(null,arguments)},Ra=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Ra=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0= +a.asm.$).apply(null,arguments)},Nb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Nb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.aa).apply(null,arguments)},Ob=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Ob=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ba).apply(null,arguments)},Pb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Pb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.ca).apply(null,arguments)},Sa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= +function(){return(Sa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.da).apply(null,arguments)},Qb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Qb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ea).apply(null,arguments)},Rb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Rb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.fa).apply(null,arguments)},Sb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Sb=a._emscripten_bind_DracoInt8Array___destroy___0= +a.asm.ga).apply(null,arguments)},Ta=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Ta=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ha).apply(null,arguments)},Tb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Tb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.ia).apply(null,arguments)},Ub=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Ub=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ja).apply(null,arguments)},Vb=a._emscripten_bind_DracoUInt8Array___destroy___0= +function(){return(Vb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.ka).apply(null,arguments)},Ua=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Ua=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.la).apply(null,arguments)},Wb=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(Wb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.ma).apply(null,arguments)},Xb=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Xb=a._emscripten_bind_DracoInt16Array_size_0= +a.asm.na).apply(null,arguments)},Yb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Yb=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.oa).apply(null,arguments)},Va=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Va=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.pa).apply(null,arguments)},Zb=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(Zb=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.qa).apply(null,arguments)}, +$b=a._emscripten_bind_DracoUInt16Array_size_0=function(){return($b=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ra).apply(null,arguments)},ac=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(ac=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.sa).apply(null,arguments)},Wa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Wa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.ta).apply(null,arguments)},bc=a._emscripten_bind_DracoInt32Array_GetValue_1= +function(){return(bc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.ua).apply(null,arguments)},cc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(cc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.va).apply(null,arguments)},dc=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(dc=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.wa).apply(null,arguments)},Xa=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Xa=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0= +a.asm.xa).apply(null,arguments)},ec=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(ec=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.ya).apply(null,arguments)},fc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(fc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.za).apply(null,arguments)},gc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(gc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Aa).apply(null,arguments)},Ya=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= +function(){return(Ya=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ba).apply(null,arguments)},hc=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(hc=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Ca).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Da).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(jc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= +a.asm.Ea).apply(null,arguments)},kc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Fa).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ga).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(mc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ha).apply(null,arguments)}, +nc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(nc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.Ia).apply(null,arguments)},oc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(oc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ja).apply(null,arguments)},Za=a._emscripten_bind_Decoder_Decoder_0=function(){return(Za=a._emscripten_bind_Decoder_Decoder_0=a.asm.Ka).apply(null,arguments)},pc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(pc= +a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.La).apply(null,arguments)},qc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(qc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Ma).apply(null,arguments)},rc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(rc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Na).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeIdByName_2= +a.asm.Oa).apply(null,arguments)},tc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(tc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Pa).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(uc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Qa).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ra).apply(null,arguments)}, +wc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(wc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Sa).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(xc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Ta).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(yc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Ua).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2= +function(){return(zc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Va).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Ac=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Wa).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Bc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.Xa).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Cc= +a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.Ya).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.Za).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm._a).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Fc= +a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.$a).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.ab).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.bb).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= +function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.cb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Jc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.db).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.eb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5= +function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.fb).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Mc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.gb).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Nc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.hb).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2= +function(){return(Oc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.ib).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Pc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.jb).apply(null,arguments)},Qc=a._emscripten_bind_Decoder___destroy___0=function(){return(Qc=a._emscripten_bind_Decoder___destroy___0=a.asm.kb).apply(null,arguments)},Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= +a.asm.lb).apply(null,arguments)},Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.mb).apply(null,arguments)},Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.nb).apply(null,arguments)},Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM= +function(){return(Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.ob).apply(null,arguments)},Vc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Vc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.pb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.qb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL= +function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.rb).apply(null,arguments)},Yc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(Yc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.sb).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.tb).apply(null,arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= +function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.ub).apply(null,arguments)},ad=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(ad=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.vb).apply(null,arguments)},bd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(bd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.wb).apply(null,arguments)},cd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= +function(){return(cd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.xb).apply(null,arguments)},dd=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(dd=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.yb).apply(null,arguments)},ed=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(ed=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.zb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(fd=a._emscripten_enum_draco_DataType_DT_UINT8= +a.asm.Ab).apply(null,arguments)},gd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(gd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Bb).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(hd=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Cb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(id=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Db).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_UINT32= +function(){return(jd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Eb).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(kd=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Fb).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(ld=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Gb).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(md=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Hb).apply(null, +arguments)},nd=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(nd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Ib).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(od=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Jb).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(pd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Kb).apply(null,arguments)},qd=a._emscripten_enum_draco_StatusCode_OK=function(){return(qd= +a._emscripten_enum_draco_StatusCode_OK=a.asm.Lb).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(rd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Mb).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(sd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Nb).apply(null,arguments)},td=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(td=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= +a.asm.Ob).apply(null,arguments)},ud=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(ud=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Pb).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(vd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Qb).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Rb).apply(null,arguments)};var cb=a._malloc=function(){return(cb=a._malloc=a.asm.Sb).apply(null,arguments)}; +a.callRuntimeCallbacks=D;var oa;ka=function b(){oa||Q();oa||(ka=b)};a.run=Q;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;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 p.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 51398a3..caef53b 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 436dcc9..f7d2097 100644 --- a/javascript/npm/draco3dgltf/draco_encoder_gltf_nodejs.js +++ b/javascript/npm/draco3dgltf/draco_encoder_gltf_nodejs.js @@ -1,107 +1,97 @@ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(l){var p=0;return function(){return pn?Math.max(C+n,0):Math.min(n,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(nr;)--k in this?this[--n]=this[k]:delete this[--n];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"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(n){var q=0;return function(){return q>>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:q})))}; +$jscomp.polyfill("Promise",function(n){function q(){this.batch_=null}function m(h){return h instanceof k?h:new k(function(p,v){p(h)})}if(n&&(!($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 n;q.prototype.asyncExecute=function(h){if(null==this.batch_){this.batch_=[];var p=this;this.asyncExecuteFunction(function(){p.executeBatch_()})}this.batch_.push(h)}; +var r=$jscomp.global.setTimeout;q.prototype.asyncExecuteFunction=function(h){r(h,0)};q.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var h=this.batch_;this.batch_=[];for(var p=0;pm?Math.max(D+m,0):Math.min(m,D);r=0>r?Math.max(D+r,0):Math.min(r,D);k=0>k?Math.max(D+k,0):Math.min(k,D);if(mr;)--k in this?this[--m]=this[k]:delete this[--m];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 DracoEncoderModule=function(){var l="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(l=l||__filename);return function(p){function n(f){return a.locateFile?a.locateFile(f,N):N+f}function r(f,b){f||h("Assertion failed: "+b)}function k(f,b){0>2]=b};this.get_type=function(){return L[this.ptr+H.TYPE_OFFSET>>2]};this.set_destructor=function(b){L[this.ptr+H.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return L[this.ptr+H.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){L[this.ptr+H.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){R[this.ptr+H.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=R[this.ptr+H.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){R[this.ptr+H.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown= -function(){return 0!=R[this.ptr+H.RETHROWN_OFFSET>>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(){L[this.ptr+H.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=L[this.ptr+H.REFCOUNT_OFFSET>>2];L[this.ptr+H.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function I(){return 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=m.alloc(b,R);m.copy(b,R,f);return f}return f}function ka(f){if("object"===typeof f){var b=m.alloc(f,R);m.copy(f,R,b);return b}return f}function la(f){if("object"===typeof f){var b=m.alloc(f,ma);m.copy(f,ma,b);return b}return f}function W(f){if("object"===typeof f){var b=m.alloc(f,L);m.copy(f,L,b);return b}return f}function ba(f){if("object"===typeof f){var b=m.alloc(f, -oa);m.copy(f,oa,b);return b}return f}function S(){throw"cannot construct a VoidPtr, no constructor in IDL";}function P(){this.ptr=Ea();D(P)[this.ptr]=this}function z(){this.ptr=Fa();D(z)[this.ptr]=this}function J(){this.ptr=Ga();D(J)[this.ptr]=this}function E(){this.ptr=Ha();D(E)[this.ptr]=this}function Q(){this.ptr=Ia();D(Q)[this.ptr]=this}function K(){this.ptr=Ja();D(K)[this.ptr]=this}function F(){this.ptr=Ka();D(F)[this.ptr]=this}function w(){this.ptr=La();D(w)[this.ptr]=this}function u(){this.ptr= -Ma();D(u)[this.ptr]=this}function x(){this.ptr=Na();D(x)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Oa(f);D(A)[this.ptr]=this}p=p||{};var a="undefined"!==typeof p?p:{},Ba,pa;a.ready=new Promise(function(f,b){Ba=f;pa=b});var Pa=!1,Qa=!1;a.onRuntimeInitialized=function(){Pa=!0;if(Qa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Qa=!0;if(Pa&&"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;var b=na.length;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,f+100663296);d=Math.min(2147483648,k(Math.max(16777216, -f,d),65536));a:{try{da.grow(d-fa.byteLength+65535>>>16);C(da.buffer);var e=1;break a}catch(g){}e=void 0}if(e)return!0}return!1},memory:da};(function(){function f(e,g){a.asm=e.exports;qa=a.asm.__indirect_function_table;V--;a.monitorRunDependencies&&a.monitorRunDependencies(V);0==V&&(null!==wa&&(clearInterval(wa),wa=null),ea&&(e=ea,ea=null,e()))}function b(e){f(e.instance)}function c(e){return B().then(function(g){return WebAssembly.instantiate(g,d)}).then(e,function(g){Y("failed to asynchronously prepare wasm: "+ -g);h(g)})}var d={env:Va,wasi_snapshot_preview1:Va};V++;a.monitorRunDependencies&&a.monitorRunDependencies(V);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||q(O,"data:application/octet-stream;base64,")||q(O,"file://")||"function"!==typeof fetch?c(b):fetch(O,{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(pa);return{}})();var Ta=a.___wasm_call_ctors=function(){return(Ta=a.___wasm_call_ctors=a.asm.__wasm_call_ctors).apply(null,arguments)};a.___em_js__array_bounds_check_error=function(){return(a.___em_js__array_bounds_check_error=a.asm.__em_js__array_bounds_check_error).apply(null,arguments)};var Wa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Wa=a._emscripten_bind_VoidPtr___destroy___0= -a.asm.emscripten_bind_VoidPtr___destroy___0).apply(null,arguments)},Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.emscripten_bind_GeometryAttribute_GeometryAttribute_0).apply(null,arguments)},Xa=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Xa=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.emscripten_bind_GeometryAttribute___destroy___0).apply(null,arguments)},Fa=a._emscripten_bind_PointAttribute_PointAttribute_0= -function(){return(Fa=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.emscripten_bind_PointAttribute_PointAttribute_0).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_size_0=function(){return(Ya=a._emscripten_bind_PointAttribute_size_0=a.asm.emscripten_bind_PointAttribute_size_0).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Za=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.emscripten_bind_PointAttribute_attribute_type_0).apply(null, -arguments)},$a=a._emscripten_bind_PointAttribute_data_type_0=function(){return($a=a._emscripten_bind_PointAttribute_data_type_0=a.asm.emscripten_bind_PointAttribute_data_type_0).apply(null,arguments)},ab=a._emscripten_bind_PointAttribute_num_components_0=function(){return(ab=a._emscripten_bind_PointAttribute_num_components_0=a.asm.emscripten_bind_PointAttribute_num_components_0).apply(null,arguments)},bb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(bb=a._emscripten_bind_PointAttribute_normalized_0= -a.asm.emscripten_bind_PointAttribute_normalized_0).apply(null,arguments)},cb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(cb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.emscripten_bind_PointAttribute_byte_stride_0).apply(null,arguments)},db=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(db=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.emscripten_bind_PointAttribute_byte_offset_0).apply(null,arguments)},eb=a._emscripten_bind_PointAttribute_unique_id_0= -function(){return(eb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.emscripten_bind_PointAttribute_unique_id_0).apply(null,arguments)},fb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(fb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.emscripten_bind_PointAttribute___destroy___0).apply(null,arguments)},Ga=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ga=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.emscripten_bind_PointCloud_PointCloud_0).apply(null, -arguments)},gb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(gb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.emscripten_bind_PointCloud_num_attributes_0).apply(null,arguments)},hb=a._emscripten_bind_PointCloud_num_points_0=function(){return(hb=a._emscripten_bind_PointCloud_num_points_0=a.asm.emscripten_bind_PointCloud_num_points_0).apply(null,arguments)},ib=a._emscripten_bind_PointCloud___destroy___0=function(){return(ib=a._emscripten_bind_PointCloud___destroy___0=a.asm.emscripten_bind_PointCloud___destroy___0).apply(null, -arguments)},Ha=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ha=a._emscripten_bind_Mesh_Mesh_0=a.asm.emscripten_bind_Mesh_Mesh_0).apply(null,arguments)},jb=a._emscripten_bind_Mesh_num_faces_0=function(){return(jb=a._emscripten_bind_Mesh_num_faces_0=a.asm.emscripten_bind_Mesh_num_faces_0).apply(null,arguments)},kb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(kb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.emscripten_bind_Mesh_num_attributes_0).apply(null,arguments)},lb=a._emscripten_bind_Mesh_num_points_0= -function(){return(lb=a._emscripten_bind_Mesh_num_points_0=a.asm.emscripten_bind_Mesh_num_points_0).apply(null,arguments)},mb=a._emscripten_bind_Mesh_set_num_points_1=function(){return(mb=a._emscripten_bind_Mesh_set_num_points_1=a.asm.emscripten_bind_Mesh_set_num_points_1).apply(null,arguments)},nb=a._emscripten_bind_Mesh___destroy___0=function(){return(nb=a._emscripten_bind_Mesh___destroy___0=a.asm.emscripten_bind_Mesh___destroy___0).apply(null,arguments)},Ia=a._emscripten_bind_Metadata_Metadata_0= -function(){return(Ia=a._emscripten_bind_Metadata_Metadata_0=a.asm.emscripten_bind_Metadata_Metadata_0).apply(null,arguments)},ob=a._emscripten_bind_Metadata___destroy___0=function(){return(ob=a._emscripten_bind_Metadata___destroy___0=a.asm.emscripten_bind_Metadata___destroy___0).apply(null,arguments)},Ja=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ja=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.emscripten_bind_DracoInt8Array_DracoInt8Array_0).apply(null,arguments)}, -pb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(pb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.emscripten_bind_DracoInt8Array_GetValue_1).apply(null,arguments)},qb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(qb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.emscripten_bind_DracoInt8Array_size_0).apply(null,arguments)},rb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(rb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.emscripten_bind_DracoInt8Array___destroy___0).apply(null, -arguments)},Ka=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Ka=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.emscripten_bind_MetadataBuilder_MetadataBuilder_0).apply(null,arguments)},sb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=function(){return(sb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.emscripten_bind_MetadataBuilder_AddStringEntry_3).apply(null,arguments)},tb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(tb= -a._emscripten_bind_MetadataBuilder_AddIntEntry_3=a.asm.emscripten_bind_MetadataBuilder_AddIntEntry_3).apply(null,arguments)},ub=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=function(){return(ub=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.emscripten_bind_MetadataBuilder_AddIntEntryArray_4).apply(null,arguments)},vb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(vb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=a.asm.emscripten_bind_MetadataBuilder_AddDoubleEntry_3).apply(null, -arguments)},wb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(wb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.emscripten_bind_MetadataBuilder___destroy___0).apply(null,arguments)},La=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(La=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.emscripten_bind_PointCloudBuilder_PointCloudBuilder_0).apply(null,arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(xb= -a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddFloatAttribute_5).apply(null,arguments)},yb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(yb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddInt8Attribute_5).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(zb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5).apply(null, -arguments)},Ab=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(Ab=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddInt16Attribute_5).apply(null,arguments)},Bb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(Bb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5).apply(null,arguments)},Cb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5= -function(){return(Cb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddInt32Attribute_5).apply(null,arguments)},Db=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(Db=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5).apply(null,arguments)},Eb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(Eb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2= -a.asm.emscripten_bind_PointCloudBuilder_AddMetadata_2).apply(null,arguments)},Fb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(Fb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm.emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3).apply(null,arguments)},Gb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(Gb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.emscripten_bind_PointCloudBuilder___destroy___0).apply(null, -arguments)},Ma=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(Ma=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.emscripten_bind_MeshBuilder_MeshBuilder_0).apply(null,arguments)},Hb=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=a.asm.emscripten_bind_MeshBuilder_AddFacesToMesh_3).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5= -a.asm.emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Kb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=a.asm.emscripten_bind_MeshBuilder_AddMetadataToMesh_2).apply(null,arguments)}, -Lb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.emscripten_bind_MeshBuilder_AddFloatAttribute_5).apply(null,arguments)},Mb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Mb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddInt8Attribute_5).apply(null,arguments)},Nb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Nb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5= -a.asm.emscripten_bind_MeshBuilder_AddUInt8Attribute_5).apply(null,arguments)},Ob=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Ob=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddInt16Attribute_5).apply(null,arguments)},Pb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Pb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddUInt16Attribute_5).apply(null,arguments)},Qb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5= -function(){return(Qb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddInt32Attribute_5).apply(null,arguments)},Rb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=function(){return(Rb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.emscripten_bind_MeshBuilder_AddUInt32Attribute_5).apply(null,arguments)},Sb=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Sb=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.emscripten_bind_MeshBuilder_AddMetadata_2).apply(null, -arguments)},Tb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Tb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.emscripten_bind_MeshBuilder_SetMetadataForAttribute_3).apply(null,arguments)},Ub=a._emscripten_bind_MeshBuilder___destroy___0=function(){return(Ub=a._emscripten_bind_MeshBuilder___destroy___0=a.asm.emscripten_bind_MeshBuilder___destroy___0).apply(null,arguments)},Na=a._emscripten_bind_Encoder_Encoder_0=function(){return(Na=a._emscripten_bind_Encoder_Encoder_0= -a.asm.emscripten_bind_Encoder_Encoder_0).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Vb=a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.emscripten_bind_Encoder_SetEncodingMethod_1).apply(null,arguments)},Wb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Wb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=a.asm.emscripten_bind_Encoder_SetAttributeQuantization_2).apply(null,arguments)},Xb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5= -function(){return(Xb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.emscripten_bind_Encoder_SetAttributeExplicitQuantization_5).apply(null,arguments)},Yb=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Yb=a._emscripten_bind_Encoder_SetSpeedOptions_2=a.asm.emscripten_bind_Encoder_SetSpeedOptions_2).apply(null,arguments)},Zb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Zb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.emscripten_bind_Encoder_SetTrackEncodedProperties_1).apply(null, -arguments)},$b=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return($b=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2).apply(null,arguments)},ac=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(ac=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=a.asm.emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3).apply(null,arguments)},bc=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0= -function(){return(bc=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.emscripten_bind_Encoder_GetNumberOfEncodedPoints_0).apply(null,arguments)},cc=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(cc=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.emscripten_bind_Encoder_GetNumberOfEncodedFaces_0).apply(null,arguments)},dc=a._emscripten_bind_Encoder___destroy___0=function(){return(dc=a._emscripten_bind_Encoder___destroy___0=a.asm.emscripten_bind_Encoder___destroy___0).apply(null, -arguments)},Oa=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Oa=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.emscripten_bind_ExpertEncoder_ExpertEncoder_1).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=function(){return(ec=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=a.asm.emscripten_bind_ExpertEncoder_SetEncodingMethod_1).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(fc= -a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.emscripten_bind_ExpertEncoder_SetAttributeQuantization_2).apply(null,arguments)},gc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=function(){return(gc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5).apply(null,arguments)},hc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=function(){return(hc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2= -a.asm.emscripten_bind_ExpertEncoder_SetSpeedOptions_2).apply(null,arguments)},ic=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(ic=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1).apply(null,arguments)},jc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=function(){return(jc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2).apply(null, -arguments)},kc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=function(){return(kc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=a.asm.emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0).apply(null,arguments)},lc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(lc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0).apply(null,arguments)},mc=a._emscripten_bind_ExpertEncoder___destroy___0= -function(){return(mc=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.emscripten_bind_ExpertEncoder___destroy___0).apply(null,arguments)},nc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(nc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.emscripten_enum_draco_GeometryAttribute_Type_INVALID).apply(null,arguments)},oc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(oc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.emscripten_enum_draco_GeometryAttribute_Type_POSITION).apply(null, -arguments)},pc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(pc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.emscripten_enum_draco_GeometryAttribute_Type_NORMAL).apply(null,arguments)},qc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(qc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.emscripten_enum_draco_GeometryAttribute_Type_COLOR).apply(null,arguments)},rc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD= -function(){return(rc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD).apply(null,arguments)},sc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(sc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.emscripten_enum_draco_GeometryAttribute_Type_GENERIC).apply(null,arguments)},tc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(tc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE= -a.asm.emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE).apply(null,arguments)},uc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(uc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD).apply(null,arguments)},vc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(vc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH).apply(null, -arguments)},wc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=function(){return(wc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=a.asm.emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING).apply(null,arguments)},xc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(xc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING).apply(null, -arguments)};a.___errno_location=function(){return(a.___errno_location=a.asm.__errno_location).apply(null,arguments)};a.stackSave=function(){return(a.stackSave=a.asm.stackSave).apply(null,arguments)};a.stackRestore=function(){return(a.stackRestore=a.asm.stackRestore).apply(null,arguments)};a.stackAlloc=function(){return(a.stackAlloc=a.asm.stackAlloc).apply(null,arguments)};a._setThrew=function(){return(a._setThrew=a.asm.setThrew).apply(null,arguments)};a._free=function(){return(a._free=a.asm.free).apply(null, -arguments)};var Ua=a._malloc=function(){return(Ua=a._malloc=a.asm.malloc).apply(null,arguments)},ja;ea=function b(){ja||M();ja||(ea=b)};a.run=M;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=m.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>2]=b};this.get_type=function(){return L[this.ptr+G.TYPE_OFFSET>>2]};this.set_destructor=function(b){L[this.ptr+G.DESTRUCTOR_OFFSET>>2]=b};this.get_destructor=function(){return L[this.ptr+G.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(b){L[this.ptr+G.REFCOUNT_OFFSET>>2]=b};this.set_caught=function(b){Q[this.ptr+G.CAUGHT_OFFSET>>0]=b?1:0};this.get_caught=function(){return 0!=Q[this.ptr+ +G.CAUGHT_OFFSET>>0]};this.set_rethrown=function(b){Q[this.ptr+G.RETHROWN_OFFSET>>0]=b?1:0};this.get_rethrown=function(){return 0!=Q[this.ptr+G.RETHROWN_OFFSET>>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(){L[this.ptr+G.REFCOUNT_OFFSET>>2]+=1};this.release_ref=function(){var b=L[this.ptr+G.REFCOUNT_OFFSET>>2];L[this.ptr+G.REFCOUNT_OFFSET>>2]=b-1;return 1===b}}function U(f){function b(){if(!fa&& +(fa=!0,a.calledRun=!0,!wa)){ya=!0;B(za);B(pa);Aa(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ba.unshift(a.postRun.shift());B(Ba)}}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=l.alloc(b,Q);l.copy(b,Q,f);return f}return f}function ha(f){if("object"===typeof f){var b=l.alloc(f,Q);l.copy(f,Q,b);return b}return f}function ia(f){if("object"===typeof f){var b=l.alloc(f,ka);l.copy(f,ka,b);return b}return f}function X(f){if("object"===typeof f){var b=l.alloc(f, +L);l.copy(f,L,b);return b}return f}function aa(f){if("object"===typeof f){var b=l.alloc(f,ma);l.copy(f,ma,b);return b}return f}function R(){throw"cannot construct a VoidPtr, no constructor in IDL";}function N(){this.ptr=Da();C(N)[this.ptr]=this}function z(){this.ptr=Ea();C(z)[this.ptr]=this}function H(){this.ptr=Fa();C(H)[this.ptr]=this}function E(){this.ptr=Ga();C(E)[this.ptr]=this}function O(){this.ptr=Ha();C(O)[this.ptr]=this}function I(){this.ptr=Ia();C(I)[this.ptr]=this}function F(){this.ptr= +Ja();C(F)[this.ptr]=this}function x(){this.ptr=Ka();C(x)[this.ptr]=this}function u(){this.ptr=La();C(u)[this.ptr]=this}function y(){this.ptr=Ma();C(y)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Na(f);C(A)[this.ptr]=this}q=q||{};var a="undefined"!==typeof q?q:{},Aa,na;a.ready=new Promise(function(f,b){Aa=f;na=b});var Oa=!1,Pa=!1;a.onRuntimeInitialized=function(){Oa=!0;a.callRuntimeCallbacks(a.mainCallbacks);if(Pa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)}; +a.onModuleParsed=function(){Pa=!0;if(Oa&&"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);k(ja.buffer);var t=1;break a}catch(wc){}t=void 0}if(t)return!0}return!1}};(function(){function f(e,g){a.asm=e.exports;ja=a.asm.f;k(ja.buffer); +oa=a.asm.h;za.unshift(a.asm.g);W--;a.monitorRunDependencies&&a.monitorRunDependencies(W);0==W&&(null!==ua&&(clearInterval(ua),ua=null),ca&&(e=ca,ca=null,e()))}function b(e){f(e.instance)}function c(e){return v().then(function(g){return WebAssembly.instantiate(g,d)}).then(e,function(g){Y("failed to asynchronously prepare wasm: "+g);D(g)})}var d={a:vc};W++;a.monitorRunDependencies&&a.monitorRunDependencies(W);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||h(K,"data:application/octet-stream;base64,")||h(K,"file://")||"function"!==typeof fetch?c(b):fetch(K,{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 Sa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Sa=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Da=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Da=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.j).apply(null,arguments)},Ta=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Ta=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.k).apply(null,arguments)},Ea=a._emscripten_bind_PointAttribute_PointAttribute_0= +function(){return(Ea=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.l).apply(null,arguments)},Ua=a._emscripten_bind_PointAttribute_size_0=function(){return(Ua=a._emscripten_bind_PointAttribute_size_0=a.asm.m).apply(null,arguments)},Va=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Va=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.n).apply(null,arguments)},Wa=a._emscripten_bind_PointAttribute_data_type_0=function(){return(Wa=a._emscripten_bind_PointAttribute_data_type_0= +a.asm.o).apply(null,arguments)},Xa=a._emscripten_bind_PointAttribute_num_components_0=function(){return(Xa=a._emscripten_bind_PointAttribute_num_components_0=a.asm.p).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_normalized_0=function(){return(Ya=a._emscripten_bind_PointAttribute_normalized_0=a.asm.q).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(Za=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.r).apply(null,arguments)},$a=a._emscripten_bind_PointAttribute_byte_offset_0= +function(){return($a=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.s).apply(null,arguments)},ab=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(ab=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.t).apply(null,arguments)},bb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(bb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.u).apply(null,arguments)},Fa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Fa=a._emscripten_bind_PointCloud_PointCloud_0= +a.asm.v).apply(null,arguments)},cb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(cb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.w).apply(null,arguments)},db=a._emscripten_bind_PointCloud_num_points_0=function(){return(db=a._emscripten_bind_PointCloud_num_points_0=a.asm.x).apply(null,arguments)},eb=a._emscripten_bind_PointCloud___destroy___0=function(){return(eb=a._emscripten_bind_PointCloud___destroy___0=a.asm.y).apply(null,arguments)},Ga=a._emscripten_bind_Mesh_Mesh_0= +function(){return(Ga=a._emscripten_bind_Mesh_Mesh_0=a.asm.z).apply(null,arguments)},fb=a._emscripten_bind_Mesh_num_faces_0=function(){return(fb=a._emscripten_bind_Mesh_num_faces_0=a.asm.A).apply(null,arguments)},gb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(gb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.B).apply(null,arguments)},hb=a._emscripten_bind_Mesh_num_points_0=function(){return(hb=a._emscripten_bind_Mesh_num_points_0=a.asm.C).apply(null,arguments)},ib=a._emscripten_bind_Mesh_set_num_points_1= +function(){return(ib=a._emscripten_bind_Mesh_set_num_points_1=a.asm.D).apply(null,arguments)},jb=a._emscripten_bind_Mesh___destroy___0=function(){return(jb=a._emscripten_bind_Mesh___destroy___0=a.asm.E).apply(null,arguments)},Ha=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ha=a._emscripten_bind_Metadata_Metadata_0=a.asm.F).apply(null,arguments)},kb=a._emscripten_bind_Metadata___destroy___0=function(){return(kb=a._emscripten_bind_Metadata___destroy___0=a.asm.G).apply(null,arguments)},Ia= +a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ia=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.H).apply(null,arguments)},lb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(lb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.I).apply(null,arguments)},mb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(mb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.J).apply(null,arguments)},nb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(nb= +a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.K).apply(null,arguments)},Ja=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Ja=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.L).apply(null,arguments)},ob=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=function(){return(ob=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.M).apply(null,arguments)},pb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(pb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3= +a.asm.N).apply(null,arguments)},qb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=function(){return(qb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.O).apply(null,arguments)},rb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(rb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=a.asm.P).apply(null,arguments)},sb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(sb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.Q).apply(null,arguments)}, +Ka=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(Ka=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.R).apply(null,arguments)},tb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(tb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.S).apply(null,arguments)},ub=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(ub=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.T).apply(null,arguments)}, +vb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(vb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.U).apply(null,arguments)},wb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(wb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.V).apply(null,arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(xb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.W).apply(null,arguments)}, +yb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=function(){return(yb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.X).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(zb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.Y).apply(null,arguments)},Ab=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(Ab=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=a.asm.Z).apply(null,arguments)},Bb= +a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(Bb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm._).apply(null,arguments)},Cb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(Cb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.$).apply(null,arguments)},La=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(La=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.aa).apply(null,arguments)},Db=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3= +function(){return(Db=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=a.asm.ba).apply(null,arguments)},Eb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Eb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=a.asm.ca).apply(null,arguments)},Fb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=function(){return(Fb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.da).apply(null,arguments)},Gb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Gb= +a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=a.asm.ea).apply(null,arguments)},Hb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.fa).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.ga).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5= +a.asm.ha).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Kb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.ia).apply(null,arguments)},Lb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=a.asm.ja).apply(null,arguments)},Mb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=function(){return(Mb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.ka).apply(null,arguments)}, +Nb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=function(){return(Nb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.la).apply(null,arguments)},Ob=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Ob=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.ma).apply(null,arguments)},Pb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Pb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.na).apply(null,arguments)},Qb=a._emscripten_bind_MeshBuilder___destroy___0= +function(){return(Qb=a._emscripten_bind_MeshBuilder___destroy___0=a.asm.oa).apply(null,arguments)},Ma=a._emscripten_bind_Encoder_Encoder_0=function(){return(Ma=a._emscripten_bind_Encoder_Encoder_0=a.asm.pa).apply(null,arguments)},Rb=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Rb=a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.qa).apply(null,arguments)},Sb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Sb=a._emscripten_bind_Encoder_SetAttributeQuantization_2= +a.asm.ra).apply(null,arguments)},Tb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=function(){return(Tb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.sa).apply(null,arguments)},Ub=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Ub=a._emscripten_bind_Encoder_SetSpeedOptions_2=a.asm.ta).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Vb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.ua).apply(null, +arguments)},Wb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return(Wb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.va).apply(null,arguments)},Xb=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(Xb=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=a.asm.wa).apply(null,arguments)},Yb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=function(){return(Yb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.xa).apply(null, +arguments)},Zb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(Zb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.ya).apply(null,arguments)},$b=a._emscripten_bind_Encoder___destroy___0=function(){return($b=a._emscripten_bind_Encoder___destroy___0=a.asm.za).apply(null,arguments)},Na=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Na=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.Aa).apply(null,arguments)},ac=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1= +function(){return(ac=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=a.asm.Ba).apply(null,arguments)},bc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(bc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.Ca).apply(null,arguments)},cc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=function(){return(cc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.Da).apply(null,arguments)},dc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2= +function(){return(dc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=a.asm.Ea).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(ec=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.Fa).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=function(){return(fc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.Ga).apply(null,arguments)},gc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0= +function(){return(gc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=a.asm.Ha).apply(null,arguments)},hc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(hc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.Ia).apply(null,arguments)},ic=a._emscripten_bind_ExpertEncoder___destroy___0=function(){return(ic=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.Ja).apply(null,arguments)},jc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(jc= +a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.Ka).apply(null,arguments)},kc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(kc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.La).apply(null,arguments)},lc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(lc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.Ma).apply(null,arguments)},mc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(mc= +a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.Na).apply(null,arguments)},nc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(nc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.Oa).apply(null,arguments)},oc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(oc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.Pa).apply(null,arguments)},pc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(pc= +a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.Qa).apply(null,arguments)},qc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(qc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.Ra).apply(null,arguments)},rc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(rc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Sa).apply(null,arguments)},sc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING= +function(){return(sc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=a.asm.Ta).apply(null,arguments)},tc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(tc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.Ua).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Va).apply(null,arguments)};var Ra=a._malloc=function(){return(Ra=a._malloc=a.asm.Wa).apply(null,arguments)};a.callRuntimeCallbacks=B;var fa;ca=function b(){fa|| +U();fa||(ca=b)};a.run=U;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=l.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(i); + } return keyframe_animation_.SetTimestamps(timestamps_); } @@ -35,8 +36,9 @@ class KeyframeAnimationEncodingTest : public ::testing::Test { uint32_t num_components) { // Create and add animation data with. animation_data_.resize(num_frames * num_components); - for (int i = 0; i < animation_data_.size(); ++i) + for (int i = 0; i < animation_data_.size(); ++i) { animation_data_[i] = static_cast(i); + } return keyframe_animation_.AddKeyframes(draco::DT_FLOAT32, num_components, animation_data_); } @@ -49,7 +51,7 @@ class KeyframeAnimationEncodingTest : public ::testing::Test { ASSERT_EQ(animation0.num_animations(), animation1.num_animations()); if (quantized) { - // TODO(hemmer) : Add test for stable quantization. + // TODO(b/199760123) : Add test for stable quantization. // Quantization will result in slightly different values. // Skip comparing values. return; @@ -109,9 +111,8 @@ class KeyframeAnimationEncodingTest : public ::testing::Test { } } - ASSERT_TRUE( - encoder.EncodeKeyframeAnimation(keyframe_animation_, options, &buffer) - .ok()); + DRACO_ASSERT_OK( + encoder.EncodeKeyframeAnimation(keyframe_animation_, options, &buffer)); draco::DecoderBuffer dec_decoder; draco::KeyframeAnimationDecoder decoder; @@ -122,8 +123,8 @@ class KeyframeAnimationEncodingTest : public ::testing::Test { std::unique_ptr decoded_animation( new KeyframeAnimation()); DecoderOptions dec_options; - ASSERT_TRUE( - decoder.Decode(dec_options, &dec_buffer, decoded_animation.get()).ok()); + DRACO_ASSERT_OK( + decoder.Decode(dec_options, &dec_buffer, decoded_animation.get())); // Verify if animation before and after compression is identical. CompareAnimationData(keyframe_animation_, diff --git a/src/draco/animation/keyframe_animation_test.cc b/src/draco/animation/keyframe_animation_test.cc index bc92b25..9456697 100644 --- a/src/draco/animation/keyframe_animation_test.cc +++ b/src/draco/animation/keyframe_animation_test.cc @@ -24,8 +24,9 @@ class KeyframeAnimationTest : public ::testing::Test { bool CreateAndAddTimestamps(int32_t num_frames) { timestamps_.resize(num_frames); - for (int i = 0; i < timestamps_.size(); ++i) + for (int i = 0; i < timestamps_.size(); ++i) { timestamps_[i] = static_cast(i); + } return keyframe_animation_.SetTimestamps(timestamps_); } @@ -33,8 +34,9 @@ class KeyframeAnimationTest : public ::testing::Test { uint32_t num_components) { // Create and add animation data with. animation_data_.resize(num_frames * num_components); - for (int i = 0; i < animation_data_.size(); ++i) + for (int i = 0; i < animation_data_.size(); ++i) { animation_data_[i] = static_cast(i); + } return keyframe_animation_.AddKeyframes(draco::DT_FLOAT32, num_components, animation_data_); } diff --git a/src/draco/compression/attributes/kd_tree_attributes_decoder.cc b/src/draco/compression/attributes/kd_tree_attributes_decoder.cc index e4d5348..c7c96d7 100644 --- a/src/draco/compression/attributes/kd_tree_attributes_decoder.cc +++ b/src/draco/compression/attributes/kd_tree_attributes_decoder.cc @@ -72,7 +72,7 @@ class PointAttributeVectorOutputIterator { Self &operator*() { return *this; } // Still needed in some cases. - // TODO(hemmer): remove. + // TODO(b/199760123): Remove. // hardcoded to 3 based on legacy usage. const Self &operator=(const VectorD &val) { DRACO_DCHECK_EQ(attributes_.size(), 1); // Expect only ONE attribute. @@ -376,7 +376,7 @@ bool KdTreeAttributesDecoder::DecodeDataNeededByPortableTransforms( GetDecoder()->point_cloud()->attribute(att_id); attr->Reset(num_points); attr->SetIdentityMapping(); - }; + } PointAttributeVectorOutputIterator out_it(atts); diff --git a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_transform_test.cc b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_transform_test.cc index 8c8932f..298758d 100644 --- a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_transform_test.cc +++ b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_canonicalized_transform_test.cc @@ -25,10 +25,10 @@ class PredictionSchemeNormalOctahedronCanonicalizedTransformTest Transform; typedef Transform::Point2 Point2; - void TestComputeCorrection(const Transform &transform, const int32_t &ox, - const int32_t &oy, const int32_t &px, - const int32_t &py, const int32_t &cx, - const int32_t &cy) { + void TestComputeCorrection(const Transform &transform, const int32_t ox, + const int32_t oy, const int32_t px, + const int32_t py, const int32_t cx, + const int32_t cy) { const int32_t o[2] = {ox + 7, oy + 7}; const int32_t p[2] = {px + 7, py + 7}; int32_t corr[2] = {500, 500}; @@ -38,7 +38,7 @@ class PredictionSchemeNormalOctahedronCanonicalizedTransformTest } void TestGetRotationCount(const Transform &transform, const Point2 &pred, - const int32_t &rot_dir) { + const int32_t rot_dir) { const int32_t rotation_count = transform.GetRotationCount(pred); ASSERT_EQ(rot_dir, rotation_count); } diff --git a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_transform_test.cc b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_transform_test.cc index 1001b19..1403973 100644 --- a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_transform_test.cc +++ b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_normal_octahedron_transform_test.cc @@ -23,10 +23,10 @@ class PredictionSchemeNormalOctahedronTransformTest : public ::testing::Test { Transform; typedef Transform::Point2 Point2; - void TestComputeCorrection(const Transform &transform, const int32_t &ox, - const int32_t &oy, const int32_t &px, - const int32_t &py, const int32_t &cx, - const int32_t &cy) { + void TestComputeCorrection(const Transform &transform, const int32_t ox, + const int32_t oy, const int32_t px, + const int32_t py, const int32_t cx, + const int32_t cy) { const int32_t o[2] = {ox + 7, oy + 7}; const int32_t p[2] = {px + 7, py + 7}; int32_t corr[2] = {500, 500}; diff --git a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_transform_base.h b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_transform_base.h index 26f61fb..979c63c 100644 --- a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_transform_base.h +++ b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_wrap_transform_base.h @@ -73,7 +73,7 @@ class PredictionSchemeWrapTransformBase { return &clamped_value_[0]; } - // TODO(hemmer): Consider refactoring to avoid this dummy. + // TODO(b/199760123): Consider refactoring to avoid this dummy. int quantization_bits() const { DRACO_DCHECK(false); return -1; diff --git a/src/draco/compression/attributes/sequential_integer_attribute_decoder.cc b/src/draco/compression/attributes/sequential_integer_attribute_decoder.cc index 83f4212..45c643a 100644 --- a/src/draco/compression/attributes/sequential_integer_attribute_decoder.cc +++ b/src/draco/compression/attributes/sequential_integer_attribute_decoder.cc @@ -148,8 +148,9 @@ bool SequentialIntegerAttributeDecoder::DecodeIntegerValues( return false; } for (size_t i = 0; i < num_values; ++i) { - if (!in_buffer->Decode(portable_attribute_data + i, num_bytes)) + if (!in_buffer->Decode(portable_attribute_data + i, num_bytes)) { return false; + } } } } diff --git a/src/draco/compression/attributes/sequential_normal_attribute_encoder.cc b/src/draco/compression/attributes/sequential_normal_attribute_encoder.cc index 2e20e89..3c5ef0e 100644 --- a/src/draco/compression/attributes/sequential_normal_attribute_encoder.cc +++ b/src/draco/compression/attributes/sequential_normal_attribute_encoder.cc @@ -20,8 +20,9 @@ namespace draco { bool SequentialNormalAttributeEncoder::Init(PointCloudEncoder *encoder, int attribute_id) { - if (!SequentialIntegerAttributeEncoder::Init(encoder, attribute_id)) + if (!SequentialIntegerAttributeEncoder::Init(encoder, attribute_id)) { return false; + } // Currently this encoder works only for 3-component normal vectors. if (attribute()->num_components() != 3) { return false; diff --git a/src/draco/compression/encode_base.h b/src/draco/compression/encode_base.h index c501bc4..6211efc 100644 --- a/src/draco/compression/encode_base.h +++ b/src/draco/compression/encode_base.h @@ -98,7 +98,7 @@ class EncoderBase { "Invalid prediction scheme for attribute type."); } } - // TODO(hemmer): Try to enable more prediction schemes for normals. + // TODO(b/199760123): Try to enable more prediction schemes for normals. if (att_type == GeometryAttribute::NORMAL) { if (!(prediction_scheme == PREDICTION_DIFFERENCE || prediction_scheme == MESH_PREDICTION_GEOMETRIC_NORMAL)) { diff --git a/src/draco/compression/encode_test.cc b/src/draco/compression/encode_test.cc index fde4f6f..a163169 100644 --- a/src/draco/compression/encode_test.cc +++ b/src/draco/compression/encode_test.cc @@ -213,16 +213,14 @@ class EncodeTest : public ::testing::Test { draco::Decoder decoder; if (mesh) { - auto maybe_mesh = decoder.DecodeMeshFromBuffer(&decoder_buffer); - ASSERT_TRUE(maybe_mesh.ok()); - auto decoded_mesh = std::move(maybe_mesh).value(); + DRACO_ASSIGN_OR_ASSERT(auto decoded_mesh, + decoder.DecodeMeshFromBuffer(&decoder_buffer)); ASSERT_NE(decoded_mesh, nullptr); ASSERT_EQ(decoded_mesh->num_points(), encoder.num_encoded_points()); ASSERT_EQ(decoded_mesh->num_faces(), encoder.num_encoded_faces()); } else { - auto maybe_pc = decoder.DecodePointCloudFromBuffer(&decoder_buffer); - ASSERT_TRUE(maybe_pc.ok()); - auto decoded_pc = std::move(maybe_pc).value(); + DRACO_ASSIGN_OR_ASSERT( + auto decoded_pc, decoder.DecodePointCloudFromBuffer(&decoder_buffer)); ASSERT_EQ(decoded_pc->num_points(), encoder.num_encoded_points()); } } @@ -274,7 +272,7 @@ TEST_F(EncodeTest, TestLinesObj) { encoder.SetAttributeQuantization(draco::GeometryAttribute::POSITION, 16); draco::EncoderBuffer buffer; - ASSERT_TRUE(encoder.EncodePointCloudToBuffer(*pc, &buffer).ok()); + DRACO_ASSERT_OK(encoder.EncodePointCloudToBuffer(*pc, &buffer)); } TEST_F(EncodeTest, TestQuantizedInfinity) { @@ -315,7 +313,7 @@ TEST_F(EncodeTest, TestUnquantizedInfinity) { encoder.SetEncodingMethod(draco::POINT_CLOUD_SEQUENTIAL_ENCODING); draco::EncoderBuffer buffer; - ASSERT_TRUE(encoder.EncodePointCloudToBuffer(*pc, &buffer).ok()); + DRACO_ASSERT_OK(encoder.EncodePointCloudToBuffer(*pc, &buffer)); } TEST_F(EncodeTest, TestQuantizedAndUnquantizedAttributes) { @@ -330,7 +328,7 @@ TEST_F(EncodeTest, TestQuantizedAndUnquantizedAttributes) { encoder.SetAttributeQuantization(draco::GeometryAttribute::POSITION, 11); encoder.SetAttributeQuantization(draco::GeometryAttribute::NORMAL, 0); draco::EncoderBuffer buffer; - ASSERT_TRUE(encoder.EncodePointCloudToBuffer(*pc, &buffer).ok()); + DRACO_ASSERT_OK(encoder.EncodePointCloudToBuffer(*pc, &buffer)); } TEST_F(EncodeTest, TestKdTreeEncoding) { @@ -348,7 +346,7 @@ TEST_F(EncodeTest, TestKdTreeEncoding) { // Now set quantization for the position attribute which should make // the encoder happy. encoder.SetAttributeQuantization(draco::GeometryAttribute::POSITION, 16); - ASSERT_TRUE(encoder.EncodePointCloudToBuffer(*pc, &buffer).ok()); + DRACO_ASSERT_OK(encoder.EncodePointCloudToBuffer(*pc, &buffer)); } TEST_F(EncodeTest, TestTrackingOfNumberOfEncodedEntries) { @@ -373,7 +371,7 @@ TEST_F(EncodeTest, TestTrackingOfNumberOfEncodedEntriesNotSet) { draco::EncoderBuffer buffer; draco::Encoder encoder; - ASSERT_TRUE(encoder.EncodeMeshToBuffer(*mesh, &buffer).ok()); + DRACO_ASSERT_OK(encoder.EncodeMeshToBuffer(*mesh, &buffer)); ASSERT_EQ(encoder.num_encoded_points(), 0); ASSERT_EQ(encoder.num_encoded_faces(), 0); } diff --git a/src/draco/compression/entropy/ans.h b/src/draco/compression/entropy/ans.h index c71d589..313546f 100644 --- a/src/draco/compression/entropy/ans.h +++ b/src/draco/compression/entropy/ans.h @@ -391,7 +391,6 @@ class RAnsEncoder { ans_.buf[ans_.buf_offset++] = ans_.state % DRACO_ANS_IO_BASE; ans_.state /= DRACO_ANS_IO_BASE; } - // TODO(ostava): The division and multiplication should be optimized. ans_.state = (ans_.state / p) * rans_precision + ans_.state % p + sym->cum_prob; } diff --git a/src/draco/compression/entropy/symbol_decoding.cc b/src/draco/compression/entropy/symbol_decoding.cc index 93d2997..79e8118 100644 --- a/src/draco/compression/entropy/symbol_decoding.cc +++ b/src/draco/compression/entropy/symbol_decoding.cc @@ -72,7 +72,7 @@ bool DecodeTaggedSymbols(uint32_t num_values, int num_components, int value_id = 0; for (uint32_t i = 0; i < num_values; i += num_components) { // Decode the tag. - const int bit_length = tag_decoder.DecodeSymbol(); + const uint32_t bit_length = tag_decoder.DecodeSymbol(); // Decode the actual value. for (int j = 0; j < num_components; ++j) { uint32_t val; diff --git a/src/draco/compression/mesh/mesh_edgebreaker_decoder_impl.cc b/src/draco/compression/mesh/mesh_edgebreaker_decoder_impl.cc index 0bbbea4..4faad96 100644 --- a/src/draco/compression/mesh/mesh_edgebreaker_decoder_impl.cc +++ b/src/draco/compression/mesh/mesh_edgebreaker_decoder_impl.cc @@ -454,7 +454,7 @@ bool MeshEdgebreakerDecoderImpl::DecodeConnectivity() { #endif // Decode connectivity of non-position attributes. - if (attribute_data_.size() > 0) { + if (!attribute_data_.empty()) { #ifdef DRACO_BACKWARDS_COMPATIBILITY_SUPPORTED if (decoder_->bitstream_version() < DRACO_BITSTREAM_VERSION(2, 1)) { for (CornerIndex ci(0); ci < corner_table_->num_corners(); ci += 3) { @@ -800,7 +800,7 @@ int MeshEdgebreakerDecoderImpl::DecodeConnectivity( return -1; // Unexpected number of decoded vertices. } // Decode start faces and connect them to the faces from the active stack. - while (active_corner_stack.size() > 0) { + while (!active_corner_stack.empty()) { const CornerIndex corner = active_corner_stack.back(); active_corner_stack.pop_back(); const bool interior_face = diff --git a/src/draco/compression/mesh/mesh_edgebreaker_encoder.cc b/src/draco/compression/mesh/mesh_edgebreaker_encoder.cc index 5aff5d8..a7f3814 100644 --- a/src/draco/compression/mesh/mesh_edgebreaker_encoder.cc +++ b/src/draco/compression/mesh/mesh_edgebreaker_encoder.cc @@ -31,7 +31,6 @@ bool MeshEdgebreakerEncoder::InitializeEncoder() { impl_ = nullptr; // For tiny meshes it's usually better to use the basic edgebreaker as the // overhead of the predictive one may turn out to be too big. - // TODO(b/111065939): Check if this can be improved. const bool is_tiny_mesh = mesh()->num_faces() < 1000; int selected_edgebreaker_method = diff --git a/src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.cc b/src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.cc index 0791dc6..4bf6aa9 100644 --- a/src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.cc +++ b/src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.cc @@ -408,7 +408,7 @@ Status MeshEdgebreakerEncoderImpl::EncodeConnectivity() { init_face_connectivity_corners.begin(), init_face_connectivity_corners.end()); // Encode connectivity for all non-position attributes. - if (attribute_data_.size() > 0) { + if (!attribute_data_.empty()) { // Use the same order of corner that will be used by the decoder. visited_faces_.assign(mesh_->num_faces(), false); for (CornerIndex ci : processed_connectivity_corners_) { diff --git a/src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.h b/src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.h index fb33771..979e1d3 100644 --- a/src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.h +++ b/src/draco/compression/mesh/mesh_edgebreaker_encoder_impl.h @@ -177,7 +177,6 @@ class MeshEdgebreakerEncoderImpl : public MeshEdgebreakerEncoderImplInterface { uint32_t num_split_symbols_; // Struct holding data used for encoding each non-position attribute. - // TODO(ostava): This should be probably renamed to something better. struct AttributeData { AttributeData() : attribute_index(-1), is_connectivity_used(true) {} int attribute_index; diff --git a/src/draco/compression/mesh/mesh_edgebreaker_encoding_test.cc b/src/draco/compression/mesh/mesh_edgebreaker_encoding_test.cc index 8313882..523303b 100644 --- a/src/draco/compression/mesh/mesh_edgebreaker_encoding_test.cc +++ b/src/draco/compression/mesh/mesh_edgebreaker_encoding_test.cc @@ -44,7 +44,7 @@ class MeshEdgebreakerEncodingTest : public ::testing::Test { EncoderOptions encoder_options = EncoderOptions::CreateDefaultOptions(); encoder_options.SetSpeed(10 - compression_level, 10 - compression_level); encoder.SetMesh(*mesh); - ASSERT_TRUE(encoder.Encode(encoder_options, &buffer).ok()); + DRACO_ASSERT_OK(encoder.Encode(encoder_options, &buffer)); DecoderBuffer dec_buffer; dec_buffer.Init(buffer.data(), buffer.size()); @@ -52,15 +52,14 @@ class MeshEdgebreakerEncodingTest : public ::testing::Test { std::unique_ptr decoded_mesh(new Mesh()); DecoderOptions dec_options; - ASSERT_TRUE( - decoder.Decode(dec_options, &dec_buffer, decoded_mesh.get()).ok()); + DRACO_ASSERT_OK( + decoder.Decode(dec_options, &dec_buffer, decoded_mesh.get())); // Cleanup the input mesh to make sure that input and output can be // compared (edgebreaker method discards degenerated triangles and isolated // vertices). const MeshCleanupOptions options; - MeshCleanup cleanup; - ASSERT_TRUE(cleanup(mesh, options)) << "Failed to clean the input mesh."; + DRACO_ASSERT_OK(MeshCleanup::Cleanup(mesh, options)); MeshAreEquivalent eq; ASSERT_TRUE(eq(*mesh, *decoded_mesh.get())) @@ -102,8 +101,8 @@ TEST_F(MeshEdgebreakerEncodingTest, TestEncoderReuse) { EncoderOptions encoder_options = EncoderOptions::CreateDefaultOptions(); encoder.SetMesh(*mesh); EncoderBuffer buffer_0, buffer_1; - ASSERT_TRUE(encoder.Encode(encoder_options, &buffer_0).ok()); - ASSERT_TRUE(encoder.Encode(encoder_options, &buffer_1).ok()); + DRACO_ASSERT_OK(encoder.Encode(encoder_options, &buffer_0)); + DRACO_ASSERT_OK(encoder.Encode(encoder_options, &buffer_1)); // Make sure both buffer are identical. ASSERT_EQ(buffer_0.size(), buffer_1.size()); @@ -123,7 +122,7 @@ TEST_F(MeshEdgebreakerEncodingTest, TestDecoderReuse) { EncoderOptions encoder_options = EncoderOptions::CreateDefaultOptions(); encoder.SetMesh(*mesh); EncoderBuffer buffer; - ASSERT_TRUE(encoder.Encode(encoder_options, &buffer).ok()); + DRACO_ASSERT_OK(encoder.Encode(encoder_options, &buffer)); DecoderBuffer dec_buffer; dec_buffer.Init(buffer.data(), buffer.size()); @@ -133,13 +132,13 @@ TEST_F(MeshEdgebreakerEncodingTest, TestDecoderReuse) { // Decode the mesh two times. std::unique_ptr decoded_mesh_0(new Mesh()); DecoderOptions dec_options; - ASSERT_TRUE( - decoder.Decode(dec_options, &dec_buffer, decoded_mesh_0.get()).ok()); + DRACO_ASSERT_OK( + decoder.Decode(dec_options, &dec_buffer, decoded_mesh_0.get())); dec_buffer.Init(buffer.data(), buffer.size()); std::unique_ptr decoded_mesh_1(new Mesh()); - ASSERT_TRUE( - decoder.Decode(dec_options, &dec_buffer, decoded_mesh_1.get()).ok()); + DRACO_ASSERT_OK( + decoder.Decode(dec_options, &dec_buffer, decoded_mesh_1.get())); // Make sure both of the meshes are identical. MeshAreEquivalent eq; @@ -169,7 +168,7 @@ TEST_F(MeshEdgebreakerEncodingTest, TestSingleConnectivityEncoding) { encoder.SetAttributeQuantization(GeometryAttribute::TEX_COORD, 8); encoder.SetAttributeQuantization(GeometryAttribute::NORMAL, 8); encoder.SetEncodingMethod(MESH_EDGEBREAKER_ENCODING); - ASSERT_TRUE(encoder.EncodeMeshToBuffer(*mesh, &buffer).ok()); + DRACO_ASSERT_OK(encoder.EncodeMeshToBuffer(*mesh, &buffer)); DecoderBuffer dec_buffer; dec_buffer.Init(buffer.data(), buffer.size()); @@ -216,7 +215,7 @@ TEST_F(MeshEdgebreakerEncodingTest, TestWrongAttributeOrder) { encoder.SetAttributeQuantization(GeometryAttribute::POSITION, 8); encoder.SetAttributeQuantization(GeometryAttribute::NORMAL, 8); encoder.SetEncodingMethod(MESH_EDGEBREAKER_ENCODING); - ASSERT_TRUE(encoder.EncodeMeshToBuffer(*mesh, &buffer).ok()); + DRACO_ASSERT_OK(encoder.EncodeMeshToBuffer(*mesh, &buffer)); DecoderBuffer dec_buffer; dec_buffer.Init(buffer.data(), buffer.size()); diff --git a/src/draco/compression/mesh/mesh_edgebreaker_shared.h b/src/draco/compression/mesh/mesh_edgebreaker_shared.h index cb3c29d..c650bc3 100644 --- a/src/draco/compression/mesh/mesh_edgebreaker_shared.h +++ b/src/draco/compression/mesh/mesh_edgebreaker_shared.h @@ -50,8 +50,6 @@ namespace draco { // \ / S \ / / E \ // *-------* *-------* // -// TODO(ostava): Get rid of the topology bit pattern. It's important only for -// encoding but the algorithms should use EdgebreakerSymbol instead. enum EdgebreakerTopologyBitPattern { TOPOLOGY_C = 0x0, // 0 TOPOLOGY_S = 0x1, // 1 0 0 diff --git a/src/draco/compression/mesh/mesh_encoder_test.cc b/src/draco/compression/mesh/mesh_encoder_test.cc index 55f6836..2dfdb58 100644 --- a/src/draco/compression/mesh/mesh_encoder_test.cc +++ b/src/draco/compression/mesh/mesh_encoder_test.cc @@ -78,9 +78,10 @@ class MeshEncoderTest : public ::testing::TestWithParam { encoder.SetAttributeQuantization(i, 12); } EncoderBuffer buffer; - ASSERT_TRUE(encoder.EncodeToBuffer(&buffer).ok()) - << "Failed encoding test mesh " << file_name << " with method " - << GetParam().encoding_method; + const Status status = encoder.EncodeToBuffer(&buffer); + EXPECT_TRUE(status.ok()) << "Failed encoding test mesh " << file_name + << " with method " << GetParam().encoding_method; + DRACO_ASSERT_OK(status); // Check that the encoded mesh was really encoded with the selected method. DecoderBuffer decoder_buffer; decoder_buffer.Init(buffer.data(), buffer.size()); @@ -88,6 +89,7 @@ class MeshEncoderTest : public ::testing::TestWithParam { uint8_t encoded_method; ASSERT_TRUE(decoder_buffer.Decode(&encoded_method)); ASSERT_EQ(encoded_method, method); + if (!FLAGS_update_golden_files) { EXPECT_TRUE( CompareGoldenFile(golden_file_name, buffer.data(), buffer.size())) diff --git a/src/draco/compression/mesh/mesh_sequential_encoder.cc b/src/draco/compression/mesh/mesh_sequential_encoder.cc index 02ac777..fd8b113 100644 --- a/src/draco/compression/mesh/mesh_sequential_encoder.cc +++ b/src/draco/compression/mesh/mesh_sequential_encoder.cc @@ -32,8 +32,6 @@ Status MeshSequentialEncoder::EncodeConnectivity() { EncodeVarint(static_cast(mesh()->num_points()), buffer()); // We encode all attributes in the original (possibly duplicated) format. - // TODO(ostava): This may not be optimal if we have only one attribute or if - // all attributes share the same index mapping. if (options()->GetGlobalBool("compress_connectivity", false)) { // 0 = Encode compressed indices. buffer()->Encode(static_cast(0)); @@ -44,8 +42,6 @@ Status MeshSequentialEncoder::EncodeConnectivity() { // 1 = Encode indices directly. buffer()->Encode(static_cast(1)); // Store vertex indices using a smallest data type that fits their range. - // TODO(ostava): This can be potentially improved by using a tighter - // fit that is not bound by a bit-length of any particular data type. if (mesh()->num_points() < 256) { // Serialize indices as uint8_t. for (FaceIndex i(0); i < num_faces; ++i) { diff --git a/src/draco/compression/mesh/mesh_sequential_encoder.h b/src/draco/compression/mesh/mesh_sequential_encoder.h index 6726096..6e2b058 100644 --- a/src/draco/compression/mesh/mesh_sequential_encoder.h +++ b/src/draco/compression/mesh/mesh_sequential_encoder.h @@ -33,7 +33,6 @@ namespace draco { // Class that encodes mesh data using a simple binary representation of mesh's // connectivity and geometry. -// TODO(ostava): Use a better name. class MeshSequentialEncoder : public MeshEncoder { public: MeshSequentialEncoder(); diff --git a/src/draco/compression/mesh/traverser/mesh_attribute_indices_encoding_observer.h b/src/draco/compression/mesh/traverser/mesh_attribute_indices_encoding_observer.h index e66dd14..dd9738b 100644 --- a/src/draco/compression/mesh/traverser/mesh_attribute_indices_encoding_observer.h +++ b/src/draco/compression/mesh/traverser/mesh_attribute_indices_encoding_observer.h @@ -25,7 +25,7 @@ namespace draco { // values based on the traversal of the encoded mesh. The class should be used // as the TraversalObserverT member of a Traverser class such as the // DepthFirstTraverser (depth_first_traverser.h). -// TODO(hemmer): rename to AttributeIndicesCodingTraverserObserver +// TODO(b/199760123): Rename to AttributeIndicesCodingTraverserObserver. template class MeshAttributeIndicesEncodingObserver { public: diff --git a/src/draco/compression/mesh/traverser/mesh_traversal_sequencer.h b/src/draco/compression/mesh/traverser/mesh_traversal_sequencer.h index ebe1d5f..e55c93a 100644 --- a/src/draco/compression/mesh/traverser/mesh_traversal_sequencer.h +++ b/src/draco/compression/mesh/traverser/mesh_traversal_sequencer.h @@ -25,7 +25,7 @@ namespace draco { // Sequencer that generates point sequence in an order given by a deterministic // traversal on the mesh surface. Note that all attributes encoded with this // sequence must share the same connectivity. -// TODO(hemmer): Consider refactoring such that this is an observer. +// TODO(b/199760123): Consider refactoring such that this is an observer. template class MeshTraversalSequencer : public PointsSequencer { public: diff --git a/src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_decoder.h b/src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_decoder.h index 87bc2b7..fa1b1e2 100644 --- a/src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_decoder.h +++ b/src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_decoder.h @@ -227,7 +227,7 @@ bool DynamicIntegerPointsKdTreeDecoder::DecodeInternal( std::stack status_stack; status_stack.push(init_status); - // TODO(hemmer): use preallocated vector instead of stack. + // TODO(b/199760123): Use preallocated vector instead of stack. while (!status_stack.empty()) { const DecodingStatus status = status_stack.top(); status_stack.pop(); @@ -263,7 +263,8 @@ bool DynamicIntegerPointsKdTreeDecoder::DecodeInternal( // Fast decoding of remaining bits if number of points is 1 or 2. if (num_remaining_points <= 2) { - // TODO(hemmer): axes_ not necessary, remove would change bitstream! + // TODO(b/199760123): |axes_| not necessary, remove would change + // bitstream! axes_[0] = axis; for (uint32_t i = 1; i < dimension_; i++) { axes_[i] = DRACO_INCREMENT_MOD(axes_[i - 1], dimension_); diff --git a/src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.h b/src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.h index 14fa32d..65b3d07 100644 --- a/src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.h +++ b/src/draco/compression/point_cloud/algorithms/dynamic_integer_points_kd_tree_encoder.h @@ -280,7 +280,7 @@ void DynamicIntegerPointsKdTreeEncoder::EncodeInternal( std::stack status_stack; status_stack.push(init_status); - // TODO(hemmer): use preallocated vector instead of stack. + // TODO(b/199760123): Use preallocated vector instead of stack. while (!status_stack.empty()) { Status status = status_stack.top(); status_stack.pop(); @@ -305,7 +305,8 @@ void DynamicIntegerPointsKdTreeEncoder::EncodeInternal( // Fast encoding of remaining bits if number of points is 1 or 2. // Doing this also for 2 gives a slight additional speed up. if (num_remaining_points <= 2) { - // TODO(hemmer): axes_ not necessary, remove would change bitstream! + // TODO(b/199760123): |axes_| not necessary, remove would change + // bitstream! axes_[0] = axis; for (uint32_t i = 1; i < dimension_; i++) { axes_[i] = DRACO_INCREMENT_MOD(axes_[i - 1], dimension_); diff --git a/src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.h b/src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.h index 26ba94f..44c1b3d 100644 --- a/src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.h +++ b/src/draco/compression/point_cloud/algorithms/float_points_tree_encoder.h @@ -44,7 +44,7 @@ namespace draco { // there are more leading zeros, which is then compressed better by the // arithmetic encoding. -// TODO(hemmer): Remove class because it duplicates quantization code. +// TODO(b/199760123): Remove class because it duplicates quantization code. class FloatPointsTreeEncoder { public: explicit FloatPointsTreeEncoder(PointCloudCompressionMethod method); @@ -91,7 +91,7 @@ bool FloatPointsTreeEncoder::EncodePointCloud(InputIteratorT points_begin, // Collect necessary data for encoding. num_points_ = std::distance(points_begin, points_end); - // TODO(hemmer): Extend quantization tools to make this more automatic. + // TODO(b/199760123): Extend quantization tools to make this more automatic. // Compute range of points for quantization std::vector qpoints; qpoints.reserve(num_points_); diff --git a/src/draco/compression/point_cloud/algorithms/integer_points_kd_tree_decoder.h b/src/draco/compression/point_cloud/algorithms/integer_points_kd_tree_decoder.h index 94e523c..bc31af5 100644 --- a/src/draco/compression/point_cloud/algorithms/integer_points_kd_tree_decoder.h +++ b/src/draco/compression/point_cloud/algorithms/integer_points_kd_tree_decoder.h @@ -12,7 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. // -// TODO(hemmer): Make this a wrapper using DynamicIntegerPointsKdTreeDecoder. +// TODO(b/199760123): Make this a wrapper using +// DynamicIntegerPointsKdTreeDecoder. // // See integer_points_kd_tree_encoder.h for documentation. diff --git a/src/draco/compression/point_cloud/algorithms/integer_points_kd_tree_encoder.h b/src/draco/compression/point_cloud/algorithms/integer_points_kd_tree_encoder.h index b881109..654f14a 100644 --- a/src/draco/compression/point_cloud/algorithms/integer_points_kd_tree_encoder.h +++ b/src/draco/compression/point_cloud/algorithms/integer_points_kd_tree_encoder.h @@ -12,7 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. // -// TODO(hemmer): Make this a wrapper using DynamicIntegerPointsKdTreeEncoder. +// TODO(b/199760123): Make this a wrapper using +// DynamicIntegerPointsKdTreeEncoder. #ifndef DRACO_COMPRESSION_POINT_CLOUD_ALGORITHMS_INTEGER_POINTS_KD_TREE_ENCODER_H_ #define DRACO_COMPRESSION_POINT_CLOUD_ALGORITHMS_INTEGER_POINTS_KD_TREE_ENCODER_H_ diff --git a/src/draco/compression/point_cloud/algorithms/quantize_points_3.h b/src/draco/compression/point_cloud/algorithms/quantize_points_3.h index 01943ad..04aa1d9 100644 --- a/src/draco/compression/point_cloud/algorithms/quantize_points_3.h +++ b/src/draco/compression/point_cloud/algorithms/quantize_points_3.h @@ -22,7 +22,7 @@ namespace draco { -// TODO(hemmer): Make this a stable bounding box. +// TODO(b/199760123): Make this a stable bounding box. struct QuantizationInfo { uint32_t quantization_bits; float range; diff --git a/src/draco/compression/point_cloud/point_cloud_kd_tree_encoding_test.cc b/src/draco/compression/point_cloud/point_cloud_kd_tree_encoding_test.cc index 2249bb0..7a7b597 100644 --- a/src/draco/compression/point_cloud/point_cloud_kd_tree_encoding_test.cc +++ b/src/draco/compression/point_cloud/point_cloud_kd_tree_encoding_test.cc @@ -68,7 +68,7 @@ class PointCloudKdTreeEncodingTest : public ::testing::Test { ++compression_level) { options.SetSpeed(10 - compression_level, 10 - compression_level); encoder.SetPointCloud(pc); - ASSERT_TRUE(encoder.Encode(options, &buffer).ok()); + DRACO_ASSERT_OK(encoder.Encode(options, &buffer)); DecoderBuffer dec_buffer; dec_buffer.Init(buffer.data(), buffer.size()); @@ -76,7 +76,7 @@ class PointCloudKdTreeEncodingTest : public ::testing::Test { std::unique_ptr out_pc(new PointCloud()); DecoderOptions dec_options; - ASSERT_TRUE(decoder.Decode(dec_options, &dec_buffer, out_pc.get()).ok()); + DRACO_ASSERT_OK(decoder.Decode(dec_options, &dec_buffer, out_pc.get())); ComparePointClouds(pc, *out_pc); } diff --git a/src/draco/core/bounding_box.cc b/src/draco/core/bounding_box.cc index 8a07096..be0d209 100644 --- a/src/draco/core/bounding_box.cc +++ b/src/draco/core/bounding_box.cc @@ -20,9 +20,9 @@ BoundingBox::BoundingBox() : BoundingBox(Vector3f(std::numeric_limits::max(), std::numeric_limits::max(), std::numeric_limits::max()), - Vector3f(-std::numeric_limits::max(), - -std::numeric_limits::max(), - -std::numeric_limits::max())) {} + Vector3f(std::numeric_limits::lowest(), + std::numeric_limits::lowest(), + std::numeric_limits::lowest())) {} BoundingBox::BoundingBox(const Vector3f &min_point, const Vector3f &max_point) : min_point_(min_point), max_point_(max_point) {} diff --git a/src/draco/core/data_buffer.cc b/src/draco/core/data_buffer.cc index f0b43d6..96a3787 100644 --- a/src/draco/core/data_buffer.cc +++ b/src/draco/core/data_buffer.cc @@ -52,7 +52,7 @@ void DataBuffer::Resize(int64_t size) { } void DataBuffer::WriteDataToStream(std::ostream &stream) { - if (data_.size() == 0) { + if (data_.empty()) { return; } stream.write(reinterpret_cast(data_.data()), data_.size()); diff --git a/src/draco/core/decoder_buffer.h b/src/draco/core/decoder_buffer.h index 0559abb..be98e52 100644 --- a/src/draco/core/decoder_buffer.h +++ b/src/draco/core/decoder_buffer.h @@ -54,12 +54,11 @@ class DecoderBuffer { // Decodes up to 32 bits into out_val. Can be called only in between // StartBitDecoding and EndBitDecoding. Otherwise returns false. - bool DecodeLeastSignificantBits32(int nbits, uint32_t *out_value) { + bool DecodeLeastSignificantBits32(uint32_t nbits, uint32_t *out_value) { if (!bit_decoder_active()) { return false; } - bit_decoder_.GetBits(nbits, out_value); - return true; + return bit_decoder_.GetBits(nbits, out_value); } // Decodes an arbitrary data type. @@ -158,9 +157,10 @@ class DecoderBuffer { inline void ConsumeBits(int k) { bit_offset_ += k; } // Returns |nbits| bits in |x|. - inline bool GetBits(int32_t nbits, uint32_t *x) { - DRACO_DCHECK_GE(nbits, 0); - DRACO_DCHECK_LE(nbits, 32); + inline bool GetBits(uint32_t nbits, uint32_t *x) { + if (nbits > 32) { + return false; + } uint32_t value = 0; for (int32_t bit = 0; bit < nbits; ++bit) { value |= GetBit() << bit; diff --git a/src/draco/core/draco_index_type_vector.h b/src/draco/core/draco_index_type_vector.h index aae1e7a..0fefc43 100644 --- a/src/draco/core/draco_index_type_vector.h +++ b/src/draco/core/draco_index_type_vector.h @@ -28,7 +28,6 @@ namespace draco { // draco_index_type.h . // TODO(ostava): Make the interface more complete. It's currently missing // features such as iterators. -// TODO(vytyaz): Add more unit tests for this class. template class IndexTypeVector { public: diff --git a/src/draco/core/draco_test_utils.cc b/src/draco/core/draco_test_utils.cc index edca985..c7e46d2 100644 --- a/src/draco/core/draco_test_utils.cc +++ b/src/draco/core/draco_test_utils.cc @@ -55,11 +55,13 @@ bool CompareGoldenFile(const std::string &golden_file_name, const void *data, size_t remaining_data_size = data_size; int offset = 0; while ((extracted_size = in_file.read(buffer, buffer_size).gcount()) > 0) { - if (remaining_data_size <= 0) + if (remaining_data_size <= 0) { break; // Input and golden sizes are different. + } size_t size_to_check = extracted_size; - if (remaining_data_size < size_to_check) + if (remaining_data_size < size_to_check) { size_to_check = remaining_data_size; + } for (uint32_t i = 0; i < size_to_check; ++i) { if (buffer[i] != data_c8[offset++]) { LOG(INFO) << "Test output differed from golden file at byte " diff --git a/src/draco/core/draco_version.h b/src/draco/core/draco_version.h index 14a504a..dd3bc34 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.4.1"; +static const char kDracoVersion[] = "1.4.3"; const char *Version() { return kDracoVersion; } diff --git a/src/draco/core/macros.h b/src/draco/core/macros.h index 147bbaa..64647d1 100644 --- a/src/draco/core/macros.h +++ b/src/draco/core/macros.h @@ -90,6 +90,10 @@ namespace draco { #define DRACO_MACROS_IMPL_CONCAT_INNER_(x, y) x##y #define DRACO_MACROS_IMPL_CONCAT_(x, y) DRACO_MACROS_IMPL_CONCAT_INNER_(x, y) +#define DRACO_MACROS_IMPL_CONCAT_INNER_3_(x, y, z) x##y##z +#define DRACO_MACROS_IMPL_CONCAT_3_(x, y, z) \ + DRACO_MACROS_IMPL_CONCAT_INNER_3_(x, y, z) + // Expand the n-th argument of the macro. Used to select an argument based on // the number of entries in a variadic macro argument. Example usage: // @@ -100,9 +104,9 @@ namespace draco { // #define VARIADIC_MACRO(...) // DRACO_SELECT_NTH_FROM_3(__VA_ARGS__, FUNC_3, FUNC_2, FUNC_1) __VA_ARGS__ // -#define DRACO_SELECT_NTH_FROM_2(_1, _2, NAME) NAME -#define DRACO_SELECT_NTH_FROM_3(_1, _2, _3, NAME) NAME -#define DRACO_SELECT_NTH_FROM_4(_1, _2, _3, _4, NAME) NAME +#define DRACO_SELECT_NTH_FROM_2(_1, _2, NAME, ...) NAME +#define DRACO_SELECT_NTH_FROM_3(_1, _2, _3, NAME, ...) NAME +#define DRACO_SELECT_NTH_FROM_4(_1, _2, _3, _4, NAME, ...) NAME // Macro that converts the Draco bit-stream into one uint16_t number. // Useful mostly when checking version numbers. diff --git a/src/draco/core/options.h b/src/draco/core/options.h index 1bc4dc0..9dc22ce 100644 --- a/src/draco/core/options.h +++ b/src/draco/core/options.h @@ -71,8 +71,6 @@ class Options { private: // All entries are internally stored as strings and converted to the desired // return type based on the used Get* method. - // TODO(ostava): Consider adding type safety mechanism that would prevent - // unsafe operations such as a conversion from vector to int. std::map options_; }; diff --git a/src/draco/core/vector_d.h b/src/draco/core/vector_d.h index a3c46a4..a0ec2de 100644 --- a/src/draco/core/vector_d.h +++ b/src/draco/core/vector_d.h @@ -34,7 +34,7 @@ class VectorD { typedef ScalarT Scalar; typedef VectorD Self; - // TODO(hemmer): Deprecate. + // TODO(b/199760123): Deprecate. typedef ScalarT CoefficientType; VectorD() { @@ -45,7 +45,7 @@ class VectorD { // The following constructor does not compile in opt mode, which for now led // to the constructors further down, which is not ideal. - // TODO(hemmer): fix constructor below and remove others. + // TODO(b/199760123): Fix constructor below and remove others. // template // explicit VectorD(Args... args) : v_({args...}) {} @@ -111,7 +111,7 @@ class VectorD { Scalar &operator[](int i) { return v_[i]; } const Scalar &operator[](int i) const { return v_[i]; } - // TODO(hemmer): remove. + // TODO(b/199760123): Remove. // Similar to interface of Eigen library. Scalar &operator()(int i) { return v_[i]; } const Scalar &operator()(int i) const { return v_[i]; } diff --git a/src/draco/io/file_reader_factory.cc b/src/draco/io/file_reader_factory.cc index ac7b092..1426451 100644 --- a/src/draco/io/file_reader_factory.cc +++ b/src/draco/io/file_reader_factory.cc @@ -38,7 +38,6 @@ std::unique_ptr FileReaderFactory::OpenReader( } return reader; } - FILEREADER_LOG_ERROR("No file reader able to open input"); return nullptr; } diff --git a/src/draco/io/file_utils.cc b/src/draco/io/file_utils.cc index f93cbd8..02dd893 100644 --- a/src/draco/io/file_utils.cc +++ b/src/draco/io/file_utils.cc @@ -30,7 +30,7 @@ void SplitPath(const std::string &full_path, std::string *out_folder_path, std::string ReplaceFileExtension(const std::string &in_file_name, const std::string &new_extension) { - const auto pos = in_file_name.find_last_of("."); + const auto pos = in_file_name.find_last_of('.'); if (pos == std::string::npos) { // No extension found. return in_file_name + "." + new_extension; @@ -46,6 +46,22 @@ std::string LowercaseFileExtension(const std::string &filename) { return parser::ToLower(filename.substr(pos + 1)); } +std::string LowercaseMimeTypeExtension(const std::string &mime_type) { + const size_t pos = mime_type.find_last_of('/'); + if (pos == 0 || pos == std::string::npos || pos == mime_type.length() - 1) { + return ""; + } + return parser::ToLower(mime_type.substr(pos + 1)); +} + +std::string RemoveFileExtension(const std::string &filename) { + const size_t pos = filename.find_last_of('.'); + if (pos == 0 || pos == std::string::npos || pos == filename.length() - 1) { + return filename; + } + return filename.substr(0, pos); +} + std::string GetFullPath(const std::string &input_file_relative_path, const std::string &sibling_file_full_path) { const auto pos = sibling_file_full_path.find_last_of("/\\"); diff --git a/src/draco/io/file_utils.h b/src/draco/io/file_utils.h index 4b734e0..c928fdf 100644 --- a/src/draco/io/file_utils.h +++ b/src/draco/io/file_utils.h @@ -37,6 +37,13 @@ std::string ReplaceFileExtension(const std::string &in_file_name, // '.' (e.g. Linux hidden files), the first delimiter is ignored. std::string LowercaseFileExtension(const std::string &filename); +// Returns the mime type extension in lowercase if present, else "". Extension +// is defined as the string after the last '/ character. +std::string LowercaseMimeTypeExtension(const std::string &mime_type); + +// Returns the file name without extension. +std::string RemoveFileExtension(const std::string &filename); + // Given a path of the input file |input_file_relative_path| relative to the // parent directory of |sibling_file_full_path|, this function returns full path // to the input file. If |sibling_file_full_path| has no directory, the relative diff --git a/src/draco/io/mesh_io.cc b/src/draco/io/mesh_io.cc index e0dc69c..c5f1f52 100644 --- a/src/draco/io/mesh_io.cc +++ b/src/draco/io/mesh_io.cc @@ -46,16 +46,17 @@ StatusOr> ReadMeshFromFile( std::unique_ptr mesh(new Mesh()); // Analyze file extension. const std::string extension = LowercaseFileExtension(file_name); - if (extension != "gltf" && mesh_files) { - // The GLTF decoder will fill |mesh_files|, but for other file types we set - // the root file here to avoid duplicating code. + if (extension != "gltf" && extension != "obj" && mesh_files) { + // The GLTF/OBJ decoder will fill |mesh_files|, but for other file types we + // set the root file here to avoid duplicating code. mesh_files->push_back(file_name); } if (extension == "obj") { // Wavefront OBJ file format. ObjDecoder obj_decoder; obj_decoder.set_use_metadata(options.GetBool("use_metadata", false)); - const Status obj_status = obj_decoder.DecodeFromFile(file_name, mesh.get()); + const Status obj_status = + obj_decoder.DecodeFromFile(file_name, mesh.get(), mesh_files); if (!obj_status.ok()) { return obj_status; } diff --git a/src/draco/io/obj_decoder.cc b/src/draco/io/obj_decoder.cc index 9b4eab6..85d90df 100644 --- a/src/draco/io/obj_decoder.cc +++ b/src/draco/io/obj_decoder.cc @@ -39,12 +39,19 @@ ObjDecoder::ObjDecoder() deduplicate_input_values_(true), last_material_id_(0), use_metadata_(false), + mesh_files_(nullptr), out_mesh_(nullptr), out_point_cloud_(nullptr) {} Status ObjDecoder::DecodeFromFile(const std::string &file_name, Mesh *out_mesh) { + return DecodeFromFile(file_name, out_mesh, nullptr); +} + +Status ObjDecoder::DecodeFromFile(const std::string &file_name, Mesh *out_mesh, + std::vector *mesh_files) { out_mesh_ = out_mesh; + mesh_files_ = mesh_files; return DecodeFromFile(file_name, static_cast(out_mesh)); } @@ -90,6 +97,10 @@ Status ObjDecoder::DecodeInternal() { return status; } + if (mesh_files_ && !input_file_name_.empty()) { + mesh_files_->push_back(input_file_name_); + } + bool use_identity_mapping = false; if (num_obj_faces_ == 0) { // Mesh has no faces. In this case we try to read the geometry as a point @@ -478,6 +489,9 @@ bool ObjDecoder::ParseMaterialLib(Status *status) { parser::SkipLine(&line_buffer); if (!material_file_name_.empty()) { + if (mesh_files_) { + mesh_files_->push_back(material_file_name_); + } if (!ParseMaterialFile(material_file_name_, status)) { // Silently ignore problems with material files for now. return true; diff --git a/src/draco/io/obj_decoder.h b/src/draco/io/obj_decoder.h index baeab5b..2fbab82 100644 --- a/src/draco/io/obj_decoder.h +++ b/src/draco/io/obj_decoder.h @@ -34,8 +34,12 @@ class ObjDecoder { ObjDecoder(); // Decodes an obj file stored in the input file. - // Returns nullptr if the decoding failed. + // Optional argument |mesh_files| will be populated with all paths to files + // relevant to the loaded mesh. Status DecodeFromFile(const std::string &file_name, Mesh *out_mesh); + Status DecodeFromFile(const std::string &file_name, Mesh *out_mesh, + std::vector *mesh_files); + Status DecodeFromFile(const std::string &file_name, PointCloud *out_point_cloud); @@ -116,6 +120,8 @@ class ObjDecoder { bool use_metadata_; + std::vector *mesh_files_; + DecoderBuffer buffer_; // Data structure that stores the decoded data. |out_point_cloud_| must be diff --git a/src/draco/io/parser_utils.cc b/src/draco/io/parser_utils.cc index 12afacf..378de73 100644 --- a/src/draco/io/parser_utils.cc +++ b/src/draco/io/parser_utils.cc @@ -203,31 +203,40 @@ void ParseLine(DecoderBuffer *buffer, std::string *out_string) { out_string->clear(); } char c; - bool delim_reached = false; + int num_delims = 0; + char last_delim; while (buffer->Peek(&c)) { - // Check if |c| is a delimeter. We want to parse all delimeters until we - // reach a non-delimeter symbol. (E.g. we want to ignore '\r\n' at the end - // of the line). + // Check if |c| is a delimiter symbol. We want to identify all possible + // delimiters that can occur on different platforms (i.e. we want to detect + // '\r\n', '\r', '\n'). const bool is_delim = (c == '\r' || c == '\n'); - // If |c| is a delimeter or it is a non-delimeter symbol before any - // delimeter was found, we advance the buffer to the next character. - if (is_delim || !delim_reached) { - buffer->Advance(1); - } - if (is_delim) { - // Mark that we found a delimeter symbol. - delim_reached = true; - continue; + if (num_delims == 0) { + last_delim = c; + } else if (num_delims == 1) { + // We already parsed either '\r' or '\n'. Ensure the new delim symbol is + // '\n' and different from the previous symbol. + if (c == last_delim || c != '\n') { + return; // Same delimiter symbol already processed. + } + } else { + // Too many delimiter symbols. + return; + } + num_delims++; } - if (delim_reached) { - // We reached a non-delimeter symbol after a delimeter was already found. + + if (!is_delim && num_delims > 0) { + // We reached a non-delimiter symbol after a delimiter was already found. // Stop the parsing. return; } - // Otherwise we put the non-delimeter symbol into the output string. - if (out_string) { + + buffer->Advance(1); + + // We put the non-delimiter symbol into the output string. + if (!is_delim && out_string) { out_string->push_back(c); } } diff --git a/src/draco/io/ply_decoder_test.cc b/src/draco/io/ply_decoder_test.cc index 97977c8..1dd70d5 100644 --- a/src/draco/io/ply_decoder_test.cc +++ b/src/draco/io/ply_decoder_test.cc @@ -88,6 +88,7 @@ TEST_F(PlyDecoderTest, TestPlyDecodingAll) { // test_decoding("test_pos_color.ply"); // tested test_decoding("cube_quads.ply"); test_decoding("Box.ply"); + test_decoding("delim_test.ply"); } } // namespace draco diff --git a/src/draco/io/ply_reader_test.cc b/src/draco/io/ply_reader_test.cc index 05ff63d..9612f63 100644 --- a/src/draco/io/ply_reader_test.cc +++ b/src/draco/io/ply_reader_test.cc @@ -39,7 +39,7 @@ TEST_F(PlyReaderTest, TestReader) { buf.Init(data.data(), data.size()); PlyReader reader; Status status = reader.Read(&buf); - ASSERT_TRUE(status.ok()) << status; + DRACO_ASSERT_OK(status); ASSERT_EQ(reader.num_elements(), 2); ASSERT_EQ(reader.element(0).num_properties(), 7); ASSERT_EQ(reader.element(1).num_properties(), 1); @@ -64,14 +64,14 @@ TEST_F(PlyReaderTest, TestReaderAscii) { buf.Init(data.data(), data.size()); PlyReader reader; Status status = reader.Read(&buf); - ASSERT_TRUE(status.ok()) << status; + DRACO_ASSERT_OK(status); const std::string file_name_ascii = "test_pos_color_ascii.ply"; const std::vector data_ascii = ReadPlyFile(file_name_ascii); buf.Init(data_ascii.data(), data_ascii.size()); PlyReader reader_ascii; status = reader_ascii.Read(&buf); - ASSERT_TRUE(status.ok()) << status; + DRACO_ASSERT_OK(status); ASSERT_EQ(reader.num_elements(), reader_ascii.num_elements()); ASSERT_EQ(reader.element(0).num_properties(), reader_ascii.element(0).num_properties()); @@ -96,7 +96,7 @@ TEST_F(PlyReaderTest, TestReaderExtraWhitespace) { buf.Init(data.data(), data.size()); PlyReader reader; Status status = reader.Read(&buf); - ASSERT_TRUE(status.ok()) << status; + DRACO_ASSERT_OK(status); ASSERT_EQ(reader.num_elements(), 2); ASSERT_EQ(reader.element(0).num_properties(), 7); @@ -122,7 +122,7 @@ TEST_F(PlyReaderTest, TestReaderMoreDataTypes) { buf.Init(data.data(), data.size()); PlyReader reader; Status status = reader.Read(&buf); - ASSERT_TRUE(status.ok()) << status; + DRACO_ASSERT_OK(status); ASSERT_EQ(reader.num_elements(), 2); ASSERT_EQ(reader.element(0).num_properties(), 7); diff --git a/src/draco/javascript/emscripten/decoder_webidl_wrapper.cc b/src/draco/javascript/emscripten/decoder_webidl_wrapper.cc index 66fe77d..034f3c3 100644 --- a/src/draco/javascript/emscripten/decoder_webidl_wrapper.cc +++ b/src/draco/javascript/emscripten/decoder_webidl_wrapper.cc @@ -221,14 +221,13 @@ bool Decoder::GetAttributeFloatForAllPoints(const PointCloud &pc, const int components = pa.num_components(); const int num_points = pc.num_points(); const int num_entries = num_points * components; - const int kMaxAttributeFloatValues = 4; - float values[kMaxAttributeFloatValues] = {-2.0, -2.0, -2.0, -2.0}; + std::vector values(components, -2.f); int entry_id = 0; out_values->Resize(num_entries); for (draco::PointIndex i(0); i < num_points; ++i) { const draco::AttributeValueIndex val_index = pa.mapped_index(i); - if (!pa.ConvertValue(val_index, values)) { + if (!pa.ConvertValue(val_index, &values[0])) { return false; } for (int j = 0; j < components; ++j) { @@ -249,17 +248,16 @@ bool Decoder::GetAttributeFloatArrayForAllPoints(const PointCloud &pc, return false; } const bool requested_type_is_float = pa.data_type() == draco::DT_FLOAT32; - const int kMaxAttributeFloatValues = 4; - float values[kMaxAttributeFloatValues] = {-2.0, -2.0, -2.0, -2.0}; + std::vector values(components, -2.f); int entry_id = 0; float *const floats = reinterpret_cast(out_values); for (draco::PointIndex i(0); i < num_points; ++i) { const draco::AttributeValueIndex val_index = pa.mapped_index(i); if (requested_type_is_float) { - pa.GetValue(val_index, values); + pa.GetValue(val_index, &values[0]); } else { - if (!pa.ConvertValue(val_index, values)) { + if (!pa.ConvertValue(val_index, &values[0])) { return false; } } diff --git a/src/draco/javascript/emscripten/finalize.js b/src/draco/javascript/emscripten/finalize.js index fe2828e..e7133e4 100644 --- a/src/draco/javascript/emscripten/finalize.js +++ b/src/draco/javascript/emscripten/finalize.js @@ -12,6 +12,11 @@ // See the License for the specific language governing permissions and // limitations under the License. +// Store all pre-main callbacks into the module to make them accessible later in +// the |onRuntimeInitialized| function. See more details in +// "prepareCallbacks.js". +Module['mainCallbacks'] = __ATMAIN__; + // Calls the 'onModuleParsed' callback if provided. This file is included as the // last one in the generated javascript and it gives the caller a way to check // that all previous content was successfully processed. diff --git a/src/draco/javascript/emscripten/prepareCallbacks.js b/src/draco/javascript/emscripten/prepareCallbacks.js index 7e150bb..fea0063 100644 --- a/src/draco/javascript/emscripten/prepareCallbacks.js +++ b/src/draco/javascript/emscripten/prepareCallbacks.js @@ -21,6 +21,13 @@ var isModuleParsed = false; // function |onModuleLoaded| after both of these callbacks have been called. Module['onRuntimeInitialized'] = function() { isRuntimeInitialized = true; + // This calls any pending pre-main callbacks. We need to call them here + // because Draco library does not have any "main" function and Emscripten + // skips them. Unfortunately one of the callbacks initializes enum values and + // it needs to be called to ensure everything works properly. + // TODO(ostava): This looks like an Emscripten bug and we should remove it + // once it is fixed. + Module['callRuntimeCallbacks'](Module.mainCallbacks); if (isModuleParsed) { if (typeof Module['onModuleLoaded'] === 'function') { Module['onModuleLoaded'](Module); diff --git a/src/draco/mesh/mesh.h b/src/draco/mesh/mesh.h index f4506da..b1577c0 100644 --- a/src/draco/mesh/mesh.h +++ b/src/draco/mesh/mesh.h @@ -119,6 +119,10 @@ class Mesh : public PointCloud { const std::vector &unique_point_ids) override; #endif + // Exposes |faces_|. Use |faces_| at your own risk. DO NOT store the + // reference: the |faces_| object is destroyed with the mesh. + IndexTypeVector &faces() { return faces_; } + private: // Mesh specific per-attribute data. std::vector attribute_data_; diff --git a/src/draco/mesh/mesh_attribute_corner_table.h b/src/draco/mesh/mesh_attribute_corner_table.h index 7dad25c..6f02453 100644 --- a/src/draco/mesh/mesh_attribute_corner_table.h +++ b/src/draco/mesh/mesh_attribute_corner_table.h @@ -130,6 +130,12 @@ class MeshAttributeCornerTable { return false; } + bool IsDegenerated(FaceIndex face) const { + // Introducing seams can't change the degeneracy of the individual faces, + // therefore we can delegate the check to the original |corner_table_|. + return corner_table_->IsDegenerated(face); + } + bool no_interior_seams() const { return no_interior_seams_; } const CornerTable *corner_table() const { return corner_table_; } diff --git a/src/draco/mesh/mesh_cleanup.cc b/src/draco/mesh/mesh_cleanup.cc index 75b55f0..bc44c83 100644 --- a/src/draco/mesh/mesh_cleanup.cc +++ b/src/draco/mesh/mesh_cleanup.cc @@ -20,15 +20,15 @@ namespace draco { -bool MeshCleanup::operator()(Mesh *mesh, const MeshCleanupOptions &options) { +Status MeshCleanup::Cleanup(Mesh *mesh, const MeshCleanupOptions &options) { if (!options.remove_degenerated_faces && !options.remove_unused_attributes && !options.remove_duplicate_faces && !options.make_geometry_manifold) { - return true; // Nothing to cleanup. + return OkStatus(); // Nothing to cleanup. } const PointAttribute *const pos_att = mesh->GetNamedAttribute(GeometryAttribute::POSITION); if (pos_att == nullptr) { - return false; + return Status(Status::DRACO_ERROR, "Missing position attribute."); } if (options.remove_degenerated_faces) { @@ -43,7 +43,7 @@ bool MeshCleanup::operator()(Mesh *mesh, const MeshCleanupOptions &options) { RemoveUnusedAttributes(mesh); } - return true; + return OkStatus(); } void MeshCleanup::RemoveDegeneratedFaces(Mesh *mesh) { diff --git a/src/draco/mesh/mesh_cleanup.h b/src/draco/mesh/mesh_cleanup.h index 09aae2e..0acdc2a 100644 --- a/src/draco/mesh/mesh_cleanup.h +++ b/src/draco/mesh/mesh_cleanup.h @@ -22,36 +22,31 @@ namespace draco { // Options used by the MeshCleanup class. struct MeshCleanupOptions { - MeshCleanupOptions() - : remove_degenerated_faces(true), - remove_duplicate_faces(true), - remove_unused_attributes(true), - make_geometry_manifold(false) {} // If true, the cleanup tool removes any face where two or more vertices // share the same position index. - bool remove_degenerated_faces; + bool remove_degenerated_faces = true; // If true, the cleanup tool removes all duplicate faces. A pair of faces is // duplicate if both faces share the same position indices on all vertices // (that is, position values have to be duduplicated). Note that all // non-position properties are currently ignored. - bool remove_duplicate_faces; + bool remove_duplicate_faces = true; // If true, the cleanup tool removes any unused attribute value or unused // point id. For example, it can be used to remove isolated vertices. - bool remove_unused_attributes; + bool remove_unused_attributes = true; // If true, the cleanup tool splits vertices along non-manifold edges and // vertices. This ensures that the connectivity defined by position indices // is manifold. - bool make_geometry_manifold; + bool make_geometry_manifold = false; }; // Tool that can be used for removing bad or unused data from draco::Meshes. class MeshCleanup { public: // Performs in-place cleanup of the input mesh according to the input options. - bool operator()(Mesh *mesh, const MeshCleanupOptions &options); + static Status Cleanup(Mesh *mesh, const MeshCleanupOptions &options); private: static void RemoveDegeneratedFaces(Mesh *mesh); diff --git a/src/draco/mesh/mesh_cleanup_test.cc b/src/draco/mesh/mesh_cleanup_test.cc index 89c350e..76e5206 100644 --- a/src/draco/mesh/mesh_cleanup_test.cc +++ b/src/draco/mesh/mesh_cleanup_test.cc @@ -15,6 +15,7 @@ #include "draco/mesh/mesh_cleanup.h" #include "draco/core/draco_test_base.h" +#include "draco/core/draco_test_utils.h" #include "draco/core/vector_d.h" #include "draco/mesh/triangle_soup_mesh_builder.h" @@ -43,9 +44,7 @@ TEST_F(MeshCleanupTest, TestDegneratedFaces) { ASSERT_NE(mesh, nullptr) << "Failed to build the test mesh."; ASSERT_EQ(mesh->num_faces(), 2) << "Wrong number of faces in the input mesh."; MeshCleanupOptions cleanup_options; - MeshCleanup cleanup; - ASSERT_TRUE(cleanup(mesh.get(), cleanup_options)) - << "Failed to cleanup the mesh."; + DRACO_ASSERT_OK(MeshCleanup::Cleanup(mesh.get(), cleanup_options)); ASSERT_EQ(mesh->num_faces(), 1) << "Failed to remove degenerated faces."; } @@ -89,9 +88,7 @@ TEST_F(MeshCleanupTest, TestDegneratedFacesAndIsolatedVertices) { << "Wrong number of point ids in the input mesh."; ASSERT_EQ(mesh->attribute(int_att_id)->size(), 3); const MeshCleanupOptions cleanup_options; - MeshCleanup cleanup; - ASSERT_TRUE(cleanup(mesh.get(), cleanup_options)) - << "Failed to cleanup the mesh."; + DRACO_ASSERT_OK(MeshCleanup::Cleanup(mesh.get(), cleanup_options)); ASSERT_EQ(mesh->num_faces(), 1) << "Failed to remove degenerated faces."; ASSERT_EQ(mesh->num_points(), 3) << "Failed to remove isolated attribute indices."; @@ -133,9 +130,7 @@ TEST_F(MeshCleanupTest, TestAttributes) { ASSERT_EQ(mesh->attribute(1)->size(), 2u) << "Wrong number of generic attribute entries."; const MeshCleanupOptions cleanup_options; - MeshCleanup cleanup; - ASSERT_TRUE(cleanup(mesh.get(), cleanup_options)) - << "Failed to cleanup the mesh."; + DRACO_ASSERT_OK(MeshCleanup::Cleanup(mesh.get(), cleanup_options)); ASSERT_EQ(mesh->num_faces(), 1) << "Failed to remove degenerated faces."; ASSERT_EQ(mesh->num_points(), 3) << "Failed to remove isolated attribute indices."; @@ -184,8 +179,7 @@ TEST_F(MeshCleanupTest, TestDuplicateFaces) { ASSERT_NE(mesh, nullptr); ASSERT_EQ(mesh->num_faces(), 5); const MeshCleanupOptions cleanup_options; - MeshCleanup cleanup; - ASSERT_TRUE(cleanup(mesh.get(), cleanup_options)); + DRACO_ASSERT_OK(MeshCleanup::Cleanup(mesh.get(), cleanup_options)); ASSERT_EQ(mesh->num_faces(), 2); } diff --git a/src/draco/mesh/mesh_misc_functions.h b/src/draco/mesh/mesh_misc_functions.h index b450bc8..0a3bcf4 100644 --- a/src/draco/mesh/mesh_misc_functions.h +++ b/src/draco/mesh/mesh_misc_functions.h @@ -67,7 +67,6 @@ inline bool IsCornerOppositeToAttributeSeam(CornerIndex ci, // Interpolates an attribute value on a face using given barycentric // coordinates. InterpolatedVectorT should be a VectorD that corresponds to the // values stored in the attribute. -// TODO(ostava): Find a better place for this. template InterpolatedVectorT ComputeInterpolatedAttributeValueOnMeshFace( const Mesh &mesh, const PointAttribute &attribute, FaceIndex fi, diff --git a/src/draco/mesh/mesh_stripifier.h b/src/draco/mesh/mesh_stripifier.h index 262e3c7..8e8d8d9 100644 --- a/src/draco/mesh/mesh_stripifier.h +++ b/src/draco/mesh/mesh_stripifier.h @@ -71,8 +71,6 @@ class MeshStripifier { mesh_ = &mesh; num_strips_ = 0; num_encoded_faces_ = 0; - // TODO(ostava): We may be able to avoid computing the corner table if we - // already have it stored somewhere. corner_table_ = CreateCornerTableFromPositionAttribute(mesh_); if (corner_table_ == nullptr) { return false; diff --git a/src/draco/mesh/triangle_soup_mesh_builder.cc b/src/draco/mesh/triangle_soup_mesh_builder.cc index 60b0c50..cb767f8 100644 --- a/src/draco/mesh/triangle_soup_mesh_builder.cc +++ b/src/draco/mesh/triangle_soup_mesh_builder.cc @@ -41,8 +41,6 @@ void TriangleSoupMeshBuilder::SetAttributeValuesForFace( att->SetAttributeValue(AttributeValueIndex(start_index), corner_value_0); att->SetAttributeValue(AttributeValueIndex(start_index + 1), corner_value_1); att->SetAttributeValue(AttributeValueIndex(start_index + 2), corner_value_2); - // TODO(ostava): The below code should be called only for one attribute. - // It will work OK even for multiple attributes, but it's redundant. mesh_->SetFace(face_id, {{PointIndex(start_index), PointIndex(start_index + 1), PointIndex(start_index + 2)}}); diff --git a/src/draco/metadata/geometry_metadata.cc b/src/draco/metadata/geometry_metadata.cc index b838981..b6a882c 100644 --- a/src/draco/metadata/geometry_metadata.cc +++ b/src/draco/metadata/geometry_metadata.cc @@ -18,6 +18,19 @@ namespace draco { +AttributeMetadata::AttributeMetadata(const AttributeMetadata &metadata) + : Metadata(metadata) { + att_unique_id_ = metadata.att_unique_id_; +} + +GeometryMetadata::GeometryMetadata(const GeometryMetadata &metadata) + : Metadata(metadata) { + for (size_t i = 0; i < metadata.att_metadatas_.size(); ++i) { + att_metadatas_.push_back(std::unique_ptr( + new AttributeMetadata(*metadata.att_metadatas_[i]))); + } +} + const AttributeMetadata *GeometryMetadata::GetAttributeMetadataByStringEntry( const std::string &entry_name, const std::string &entry_value) const { for (auto &&att_metadata : att_metadatas_) { @@ -35,7 +48,7 @@ const AttributeMetadata *GeometryMetadata::GetAttributeMetadataByStringEntry( bool GeometryMetadata::AddAttributeMetadata( std::unique_ptr att_metadata) { - if (!att_metadata.get()) { + if (!att_metadata) { return false; } att_metadatas_.push_back(std::move(att_metadata)); diff --git a/src/draco/metadata/geometry_metadata.h b/src/draco/metadata/geometry_metadata.h index ec7ecb9..531bdef 100644 --- a/src/draco/metadata/geometry_metadata.h +++ b/src/draco/metadata/geometry_metadata.h @@ -25,6 +25,7 @@ namespace draco { class AttributeMetadata : public Metadata { public: AttributeMetadata() : att_unique_id_(0) {} + AttributeMetadata(const AttributeMetadata &metadata); explicit AttributeMetadata(const Metadata &metadata) : Metadata(metadata), att_unique_id_(0) {} @@ -57,6 +58,7 @@ struct AttributeMetadataHasher { class GeometryMetadata : public Metadata { public: GeometryMetadata() {} + GeometryMetadata(const GeometryMetadata &metadata); explicit GeometryMetadata(const Metadata &metadata) : Metadata(metadata) {} const AttributeMetadata *GetAttributeMetadataByStringEntry( diff --git a/src/draco/metadata/metadata.cc b/src/draco/metadata/metadata.cc index 9141907..51b4e93 100644 --- a/src/draco/metadata/metadata.cc +++ b/src/draco/metadata/metadata.cc @@ -122,6 +122,14 @@ const Metadata *Metadata::GetSubMetadata(const std::string &name) const { return sub_ptr->second.get(); } +Metadata *Metadata::sub_metadata(const std::string &name) { + auto sub_ptr = sub_metadatas_.find(name); + if (sub_ptr == sub_metadatas_.end()) { + return nullptr; + } + return sub_ptr->second.get(); +} + void Metadata::RemoveEntry(const std::string &name) { // Actually just remove "name", no need to check if it exists. auto entry_ptr = entries_.find(name); diff --git a/src/draco/metadata/metadata.h b/src/draco/metadata/metadata.h index 56d05e4..12c1ba9 100644 --- a/src/draco/metadata/metadata.h +++ b/src/draco/metadata/metadata.h @@ -147,6 +147,7 @@ class Metadata { bool AddSubMetadata(const std::string &name, std::unique_ptr sub_metadata); const Metadata *GetSubMetadata(const std::string &name) const; + Metadata *sub_metadata(const std::string &name); void RemoveEntry(const std::string &name); diff --git a/src/draco/metadata/metadata_test.cc b/src/draco/metadata/metadata_test.cc index cf7ae6e..03104e0 100644 --- a/src/draco/metadata/metadata_test.cc +++ b/src/draco/metadata/metadata_test.cc @@ -104,12 +104,16 @@ TEST_F(MetadataTest, TestNestedMetadata) { sub_metadata->AddEntryInt("int", 100); metadata.AddSubMetadata("sub0", std::move(sub_metadata)); - const auto sub_metadata_ptr = metadata.GetSubMetadata("sub0"); + const auto sub_metadata_ptr = metadata.sub_metadata("sub0"); ASSERT_NE(sub_metadata_ptr, nullptr); int32_t int_value = 0; ASSERT_TRUE(sub_metadata_ptr->GetEntryInt("int", &int_value)); ASSERT_EQ(int_value, 100); + + sub_metadata_ptr->AddEntryInt("new_entry", 20); + ASSERT_TRUE(sub_metadata_ptr->GetEntryInt("new_entry", &int_value)); + ASSERT_EQ(int_value, 20); } TEST_F(MetadataTest, TestHardCopyMetadata) { diff --git a/src/draco/point_cloud/point_cloud.cc b/src/draco/point_cloud/point_cloud.cc index a9f9ea2..55ad667 100644 --- a/src/draco/point_cloud/point_cloud.cc +++ b/src/draco/point_cloud/point_cloud.cc @@ -253,11 +253,11 @@ bool PointCloud::DeduplicateAttributeValues() { } #endif -// TODO(xiaoxumeng): Consider to cash the BBox. +// TODO(b/199760503): Consider to cache the BBox. BoundingBox PointCloud::ComputeBoundingBox() const { BoundingBox bounding_box; auto pc_att = GetNamedAttribute(GeometryAttribute::POSITION); - // TODO(xiaoxumeng): Make the BoundingBox a template type, it may not be easy + // TODO(b/199760503): Make the BoundingBox a template type, it may not be easy // because PointCloud is not a template. // Or simply add some preconditioning here to make sure the position attribute // is valid, because the current code works only if the position attribute is diff --git a/src/draco/tools/draco_decoder.cc b/src/draco/tools/draco_decoder.cc index 610709d..e7ffb20 100644 --- a/src/draco/tools/draco_decoder.cc +++ b/src/draco/tools/draco_decoder.cc @@ -126,7 +126,6 @@ int main(int argc, char **argv) { } // Save the decoded geometry into a file. - // TODO(fgalligan): Change extension code to look for '.'. const std::string extension = draco::parser::ToLower( options.output.size() >= 4 ? options.output.substr(options.output.size() - 4) @@ -140,7 +139,7 @@ int main(int argc, char **argv) { return -1; } } else { - if (!obj_encoder.EncodeToFile(*pc.get(), options.output)) { + if (!obj_encoder.EncodeToFile(*pc, options.output)) { printf("Failed to store the decoded point cloud as OBJ.\n"); return -1; } @@ -153,7 +152,7 @@ int main(int argc, char **argv) { return -1; } } else { - if (!ply_encoder.EncodeToFile(*pc.get(), options.output)) { + if (!ply_encoder.EncodeToFile(*pc, options.output)) { printf("Failed to store the decoded point cloud as PLY.\n"); return -1; } diff --git a/src/draco/tools/draco_encoder.cc b/src/draco/tools/draco_encoder.cc index 7e3632d..e3c7e26 100644 --- a/src/draco/tools/draco_encoder.cc +++ b/src/draco/tools/draco_encoder.cc @@ -350,14 +350,15 @@ int main(int argc, char **argv) { options.output = options.input + ".drc"; } - PrintOptions(*pc.get(), options); + PrintOptions(*pc, options); int ret = -1; const bool input_is_mesh = mesh && mesh->num_faces() > 0; - if (input_is_mesh) + if (input_is_mesh) { ret = EncodeMeshToFile(*mesh, options.output, &encoder); - else - ret = EncodePointCloudToFile(*pc.get(), options.output, &encoder); + } else { + ret = EncodePointCloudToFile(*pc, options.output, &encoder); + } if (ret != -1 && options.compression_level < 10) { printf( diff --git a/testdata/delim_test.ply b/testdata/delim_test.ply new file mode 100644 index 0000000..1f31500 Binary files /dev/null and b/testdata/delim_test.ply differ diff --git a/testdata/mat_test.mtl b/testdata/mat_test.mtl index 7403934..28de28b 100644 --- a/testdata/mat_test.mtl +++ b/testdata/mat_test.mtl @@ -5,6 +5,7 @@ newmtl mat0 newmtl mat1 Ka 0.61 0.15 0.69 Kd 0.61 0.15 0.69 + map_Kd black.png newmtl mat1 Ka 0.61 0.15 0.69 @@ -17,6 +18,7 @@ newmtl mat3 newmtl mat4 Ka 0.00 0.74 0.83 Kd 0.00 0.74 0.83 + map_Kd black.png newmtl mat5 Ka 0.01 0.61 0.90 @@ -25,6 +27,7 @@ newmtl mat5 newmtl mat6 Ka 0.97 0.73 0.82 Kd 0.97 0.73 0.82 + map_Kd black.png newmtl mat7 Ka 0.94 0.38 0.57 diff --git a/unity/Plugin/libdracodec_unity_android.tar.bz b/unity/Plugin/libdracodec_unity_android.tar.bz index fdabbb9..6f5e528 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 7d176a1..cbfcf37 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 e5a93b2..0088735 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 16c9f98..96f7577 100644 Binary files a/unity/Plugin/libdracodec_unity_windows.tar.bz and b/unity/Plugin/libdracodec_unity_windows.tar.bz differ